X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fmisc%2Forder_pkg.html;h=1efe7456e944c47b0c61ab4f67af2565072e04b3;hp=799165fe06da953f09352659ac4aa79e920f8d1c;hb=d2b55d07a9e6e64a38877136d7974ab93e14f1ed;hpb=c06ef78a4489576a58581a06d366a0d1f040d2e5
diff --git a/httemplate/misc/order_pkg.html b/httemplate/misc/order_pkg.html
index 799165fe0..1efe7456e 100644
--- a/httemplate/misc/order_pkg.html
+++ b/httemplate/misc/order_pkg.html
@@ -5,11 +5,6 @@
}
&>
-<& /elements/xmlhttp.html,
- 'url' => $p.'misc/xmlhttp-part_pkg_usageprice.html',
- 'subs' => [ 'get_part_pkg_usageprice' ],
-&>
-
<& /elements/init_calendar.html &>
@@ -35,7 +30,7 @@
<% mt('Sales') |h %>
% }
% if ( $show_sales_table ) {
- <% ntable("#cccccc") %>
+
% }
<& /elements/tr-select-sales.html,
@@ -58,7 +53,7 @@
% }
<% mt('Package') |h %>
-<% ntable("#cccccc") %>
+
% if ( $part_pkg ) {
@@ -90,18 +85,38 @@
<% mt('Start') |h %>
- param('start') eq '' ? 'CHECKED' : ''%>>Now
+ param('start') eq '' ? 'CHECKED' : ''%>
+ <% $pkgpart ? '' : 'DISABLED' %>
+ >Now
- param('start') eq 'on_hold' ? 'CHECKED' : ''%>>On hold
+ param('start') eq 'on_hold' ? 'CHECKED' : ''%>
+ <% $pkgpart ? '' : 'DISABLED' %>
+ >On hold
- param('start') eq 'date' ? 'CHECKED' : ''%>>On date
+ param('start') eq 'date' ? 'CHECKED' : ''%>
+ <% $pkgpart ? '' : 'DISABLED' %>
+ >On date
+
+ <& /elements/input-date-field.html,
+ { 'name' => 'start_date',
+ 'format' => $date_format,
+ 'value' => '',
+ 'noinit' => 1,
+ }
+ &>
- <& /elements/input-date-field.html,{
- 'name' => 'start_date',
- 'format' => $date_format,
- 'value' => '',
- 'noinit' => 1,
- } &>
@@ -121,43 +136,17 @@
-%#so:
-%# - hide until you selecdt a pacakge with add-ons
-%# -lookup and display the available add-ons when
-%# -add them to the (recur if there is one, otherwise setup) price and display magically like processing fees do on edit/cust_pay.cgi
-
-%# better label?
-<% mt('Usage add-ons') |h %>
-
-
+<& /elements/table-cust_pkg_usageprice.html,
+ 'pkgpart' => $pkgpart
+&>
% my $discount_cust_pkg = $curuser->access_right('Discount customer package');
% my $waive_setup_fee = $curuser->access_right('Waive setup fee');
%
% if ( $discount_cust_pkg || $waive_setup_fee ) {
<% mt('Discounting') |h %>
- <% ntable("#cccccc") %>
-
-% if ( $waive_setup_fee ) {
-
- <% mt('Waive setup fee') |h %>
-
-
-% }
-
-% if ( $discount_cust_pkg ) {
- <& /elements/tr-select-discount.html,
- 'element_etc' => 'DISABLED',
- 'colspan' => 7,
- 'cgi' => $cgi,
- &>
-% }
-
+
+ <& /elements/tr-select-pkg-discount.html &>
% }
@@ -167,7 +156,7 @@
% my $contact_title = $lock_locationnum ? 'Contact'
% : 'Contact and Location';
<% mt($contact_title) |h %>
-<% ntable("#cccccc") %>
+
<& /elements/tr-select-contact.html,
'cgi' => $cgi,
@@ -206,6 +195,52 @@
% }
+% if ($quotationnum) {
+
+<% mt('Quotation details') |h %>
+
+
+
+
+
+ >
+ <% emt('Details will only appear on quotation') %>
+
+ >
+ <% emt('Copy details to invoice when placing order') %>
+
+
+
+
+<& /edit/elements/detail-table.html,
+ id => 'QuotationDetailTable',
+ details => $details->{'quotation_detail'},
+ field => 'quotation_detail',
+ &>
+
+% } else {
+
+<% mt('Invoice details') |h %>
+
+<& /edit/elements/detail-table.html,
+ id => 'InvoiceDetailTable',
+ details => $details->{'invoice_detail'},
+ field => 'invoice_detail',
+ &>
+
+
+
+<% mt('Package comments') |h %>
+
+% }
+
+
% my $onclick = $cgi->param('lock_locationnum')
% ? 'document.OrderPkgForm.submit()'
@@ -255,6 +290,23 @@ if ( $cgi->param('quotationnum') =~ /^(\d+)$/ ) {
$quotationnum = $1;
}
+my $details = {
+ 'invoice_detail' => [],
+ 'package_comment' => [],
+ 'quotation_detail' => [],
+};
+foreach my $field ( $cgi->param ) {
+ foreach my $detailtype ( keys %$details ) {
+ if ($field =~ /^$detailtype(\d+)$/) {
+ $details->{$detailtype}->[$1] = $cgi->param($field);
+ }
+ }
+}
+foreach my $detailtype ( keys %$details ) {
+ @{ $details->{$detailtype} } = grep { length($_) } @{ $details->{$detailtype} };
+}
+my $copy_on_order = $cgi->param('copy_on_order');
+
die 'no custnum or prospectnum' unless $cust_main || $prospect_main;
my $agent = $cust_main ? $cust_main->agent