X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=httemplate%2Fview%2Fquotation.html;h=cabf30a17adb778c6397bb6c31ceee99eb7e3387;hp=4c913257eb681469820c8857d365174f043a726a;hb=20ab81a33d94f3267d553cc875dd3fdb08d14f29;hpb=3e34c2485163893b390e70bf9a5f357b32e57e21 diff --git a/httemplate/view/quotation.html b/httemplate/view/quotation.html index 4c913257e..cabf30a17 100755 --- a/httemplate/view/quotation.html +++ b/httemplate/view/quotation.html @@ -1,4 +1,9 @@ +% if ( $quotation->custnum ) { +<& /elements/header-cust_main.html, view=>'quotations', custnum=>$quotation->custnum &> +

Quotation #<% $quotationnum %>

+% } else { #eventually, header-prospect_main.html <& /elements/header.html, mt('Quotation View'), $menubar &> +<& /elements/init_overlib.html &> -%#XXX link to order... - -<%doc> - -XXX resending quotations - -% if ( $curuser->access_right('Resend invoices') ) { - - <% mt('Re-print this invoice') |h %> - -% if ( grep { $_ ne 'POST' } $cust_bill->cust_main->invoicing_list ) { - | <% mt('Re-email this invoice') |h %> -% } +% } -% if ( $conf->exists('hylafax') && length($cust_bill->cust_main->fax) ) { - | <% mt('Re-fax this invoice') |h %> -% } +% unless ( $quotation->disabled eq 'Y' ) { + +% my $inrow = 0; +% if ( $curuser->access_right('Order customer package') ) { + <& /elements/order_pkg_link.html, + 'label' => emt('Add package'), + 'actionlabel' => emt('Add package'), + map { $_ => $quotation->$_ } qw( quotationnum custnum prospectnum ) + &> +% $inrow++; +% } + +% if ( $curuser->access_right('One-time charge') ) { + <% $inrow ? ' | ' : '' %> +% my $query = 'quotationnum=' . $quotation->get('quotationnum'); +% if ($quotation->custnum) { +% $query .= ';custnum=' . $quotation->custnum; +% } else { +% $query .= ';prospectnum=' . $quotation->prospectnum; +% } + <% emt('One-time charge') %> +% $inrow++; +% } + +% if ( $can_generate_quotation ) { + <% $inrow ? ' | ' : '' %> + Edit quotation fields +% $inrow++; +% } + + <% $inrow ? '

' : '' %> + +% if ( 1 ) { #if ( $curuser->access_right('Send quotations') ) + + <& /elements/popup_link.html, + 'action' => "${p}misc/email-quotation.html". + "?quotationnum=$quotationnum", + 'label' => emt('Email this quotation'), + 'actionlabel' => emt('Select recipients'), + #'width' => 540, + #'height' => 336, + &> + +%# <% mt('Re-print this invoice') |h %> + +%#% if ( $conf->exists('hylafax') && length($cust_bill->cust_main->fax) ) { +%# | <% mt('Re-fax this invoice') |h %> +%#% } + +% } + +% if ( $conf->exists('quotation_latex') ) { + | <% mt('View typeset quotation PDF') |h %> +% }

-% } +% if ( $curuser->access_right('New customer') && $quotation->quotation_pkg ) { +% # if we end up with more than one option, combine these links and add an interstitial screen + Place order + | Order on hold +

+% } - - -% if ( $curuser->access_right('Order customer package') ) { - <& /elements/order_pkg_link.html, - 'label' => emt('Add package'), - 'actionlabel' => emt('Add package'), - map { $_ => $quotation->$_ } qw( quotationnum custnum prospectnum ) - &> % } -% if ( $conf->exists('quotation_latex') ) { - | <% mt('View typeset quotation PDF') |h %> +% if ( $curuser->access_right('Disable quotation') ) { +% if ( $quotation->disabled eq 'Y' ) { + <% emt('Enable this quotation') %> +% } else { + <% areyousure_link( + "${p}misc/disable-quotation.html?quotationnum=". $quotation->quotationnum, + emt('Are you sure you want to disable this quotation?'), + emt('Disable this quotation'), #tooltip + emt('Disable this quotation'), #link + ) %> +% } +

% } -% if ( $curuser->access_right('New customer') && $quotation->quotation_pkg ) { - | Place order +% if ( $error ) { +
<% emt('Error calculating quotation: [_1]', $error) %>
% } -

+% my $close_date = $quotation->close_date; +% my $confidence = $quotation->confidence; +% if ($close_date or length($confidence)) { + +% if ($close_date) { + + + + +% } +% if (length($confidence)) { + +% } +
Close Date:<% time2str($conf->config('date_format') || '%m/%d/%Y',$close_date) %>
Confidence:<% $confidence %>%
+% } % if ( $conf->exists('quotation_html') ) { <% join('', $quotation->print_html( preref_callback=>$preref_callback )) %> @@ -56,7 +121,11 @@ XXX resending quotations % } % #plaintext quotations?
<% join('', $quotation->print_text() ) %>
-<& /elements/footer.html &> +% if ( $quotation->custnum ) { + <& /elements/footer-cust_main.html &> +% } else { + <& /elements/footer.html &> +% } <%init> my $curuser = $FS::CurrentUser::CurrentUser; @@ -64,6 +133,8 @@ my $curuser = $FS::CurrentUser::CurrentUser; #die "access denied" # unless $curuser->access_right('View quotations'); +my $can_generate_quotation = $curuser->access_right('Generate quotation'); + my $quotationnum; my($query) = $cgi->keywords; if ( $query =~ /^(\d+)$/ ) { @@ -83,28 +154,32 @@ my $quotation = qsearchs({ }); die "Quotation #$quotationnum not found!" unless $quotation; -my $menubar; -if ( my $custnum = $quotation->custnum ) { - my $display_custnum = $quotation->cust_main->display_custnum; - $menubar = menubar( - emt("View this customer (#[_1])",$display_custnum) => "${p}view/cust_main.cgi?$custnum", - ); -} elsif ( my $prospectnum = $quotation->prospectnum ) { - $menubar = menubar( - emt("View this prospect (#[_1])",$prospectnum) => "${p}view/prospect_main.html?$prospectnum", - ); -} +my $error = $quotation->estimate; + +my $menubar = menubar( $quotation->cust_or_prospect_label_link($p) ); my $link = "quotationnum=$quotationnum"; #$link .= ';template='. uri_escape($template) if $template; #$link .= ';notice_name='. $notice_name if $notice_name; my $preref_callback = sub { - areyousure_link("${p}misc/delete-quotation_pkg.html?". shift->quotationpkgnum, + my $quotation_pkg = shift; + $can_generate_quotation ? + areyousure_link("${p}misc/delete-quotation_pkg.html?". $quotation_pkg->quotationpkgnum, emt('Are you sure you want to remove this package from the quotation?'), emt('Remove this package'), #tooltip qq(), #link - ); + ) . + include('/elements/popup_link.html', + action => "${p}edit/quotation_pkg_detail.html?pkgnum=" . + $quotation_pkg->quotationpkgnum, + html_label => qq(), + title => emt('Edit quotation details'), + actionlabel => emt('Edit quotation details'), + color => '#333399', + width => 763, + ) + : ''; }; sub areyousure_link {