RT#38881: BILL illegal payby in 4.x [update_payby]
[freeside.git] / httemplate / elements / one_time_charge_link.html
1 <%doc>
2
3 Example:
4
5   <& /elements/one_time_charge_link.html,
6
7      #one of these is required (except when form_only is true)
8      'custnum'     => $custnum,
9      'prospectnum' => $prospectnum,
10
11      'no_form'   => 0,
12      'form_only' => 0,
13   &>
14
15 </%doc>
16 %
17 % unless ( $opt{form_only} ) {
18 %
19 <SCRIPT TYPE="text/javascript">
20
21 function taxproductmagic(which) {
22
23   var str = '';
24   var elements = which.form.elements;
25   for (var i = 0; i<elements.length; i++) {
26
27     if (elements[i].name == 'taxproductnum'){
28       document.getElementById('taxproductnum').value = elements[i].value;
29       continue;
30     }
31     if (elements[i].name == 'taxproductnum_description'){
32       continue;
33     }
34
35     if (str.length){str += ';';}
36
37     var value = '';
38     if ( elements[i].type == 'checkbox' || elements[i].type == 'radio' ) {
39       if ( elements[i].checked == true ) {
40         value = elements[i].value;
41       //} else {
42       //  value = '';
43       }
44     } else {
45       value = elements[i].value;
46     }
47     str += elements[i].name + '=' + escape(value);
48
49   }
50   document.getElementById('charge_storage').value = str;
51   cClick();
52   overlib( OLiframeContent('<% $p %>/browse/part_pkg_taxproduct.cgi?_type=select&id=taxproductnum&onclick=taxproductquickchargemagic&taxproductnum='+document.getElementById('taxproductnum').value, 1000, 400, 'tax_product_popup'), CAPTION, 'Select product', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK);
53 }
54
55 function taxproductquickchargemagic() {
56   var str = document.getElementById('charge_storage').value;
57   if (str.length){str += ';';}
58   str += 'magic=taxproductnum;taxproductnum=';
59   str += escape(document.getElementById('taxproductnum').value);
60   cClick();
61   overlib( OLiframeContent('<% $p %>/edit/quick-charge.html?'+str, 545, 336, 'One-time charge'), CAPTION, 'One-time charge', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK, BGCOLOR, '#333399', CGCOLOR, '#333399', CLOSETEXT, <% mt('Close') |js_string %>);
62
63 }
64
65 function taxoverridemagic(which) {
66   var str = '';
67   var elements = which.ownerDocument.QuickChargeForm.elements;
68   for (var i = 0; i<elements.length; i++) {
69     if (elements[i].name == 'tax_override'){
70       document.getElementById('tax_override').value = elements[i].value;
71       continue;
72     }
73     if (str.length){str += ';';}
74     str += elements[i].name + '=' + escape(elements[i].value);
75   }
76   document.getElementById('charge_storage').value = str;
77   cClick();
78   overlib( OLiframeContent('<% $p %>/edit/part_pkg_taxoverride.html?element_name=tax_override;onclick=taxoverridequickchargemagic;selected='+document.getElementById('tax_override').value, 1100, 600, 'tax_product_popup'), CAPTION, 'Edit product tax overrides', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK);
79 }
80
81 function taxoverridequickchargemagic() {
82   var str = document.getElementById('charge_storage').value;
83   if (str.length){str += ';';}
84   str += 'magic=taxoverride;tax_override=';
85   str += document.getElementById('tax_override').value;
86   cClick();
87   overlib( OLiframeContent('<% $p %>/edit/quick-charge.html?'+str, 545, 336, 'One-time charge'), CAPTION, 'One-time charge', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK, BGCOLOR, '#333399', CGCOLOR, '#333399', CLOSETEXT, <% mt('Close') |js_string %>);
88
89 }
90
91 </SCRIPT>
92 % }
93 %
94 % unless ( $opt{no_form} ) {
95 <FORM NAME='quickcharge' STYLE="margin:0; padding:0; display:inline">
96 % for (qw(
97 %   taxproductnum tax_override charge_storage taxproductnum_description
98 % )) {
99     <INPUT NAME="<% $_ %>" ID="<% $_ %>" TYPE="hidden">
100 % }
101 </FORM>
102 % }
103 %
104 % unless ( $opt{form_only} ) {
105 <& /elements/popup_link.html,
106      'action'      => $p. 'edit/quick-charge.html?'. $query,
107      'label'       => emt('One-time charge'),
108      'actionlabel' => emt('One-time charge'),
109      'color'       => '#333399',
110      'width'       => 763,
111      'height'      => 460, #more for more room for lines of add'l description?
112 &>
113 % }
114 %
115 <%init>
116
117 my %opt = @_;
118
119 my $query = $opt{custnum} ? 'custnum='.$opt{custnum}
120                           : 'prospectnum='.$opt{prospectnum};
121 $query .= ';quotationnum='.$opt{quotationnum} if $opt{quotationnum};
122
123 </%init>