X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fview%2Fcust_main%2Fmenu.html;h=ff001bb67e818c16535ecf2fff9762535708c872;hb=0ed195595b5c7ea404c8848d9d1881ada4214489;hp=13b3963fb618b6c587f5fad139d551e37a3e4efd;hpb=a4bdb7786f9ef6ef318ca6ce465e33a39d2d4653;p=freeside.git diff --git a/httemplate/view/cust_main/menu.html b/httemplate/view/cust_main/menu.html index 13b3963fb..ff001bb67 100644 --- a/httemplate/view/cust_main/menu.html +++ b/httemplate/view/cust_main/menu.html @@ -14,18 +14,26 @@ #menu_ul a { display: block; - margin: 0; + margin-left: 0; + margin-right: 1em; + margin-bottom: -1px; + margin-top: 0; padding: .5em .75em; - background: #ffffff; + background: #e0e0e0; color: #525151; white-space: nowrap; text-decoration: none; - border-top: thin solid #CFDEFF; + border-top-left-radius: .5em; + border-top-right-radius: .5em; } #menu_ul a.current_show { font-weight: bold; - background: #cfdeff; + background: #FFFFFF; + border-top: thin solid #7e0079; + border-left: thin solid #7e0079; + border-right: thin solid #7e0079; + border-bottom: thin solid #ffffff; } #menu_ul ul { @@ -36,7 +44,10 @@ top: 100%; left: 0; background: #ffffff; - border-bottom: thin solid #CFDEFF; + border: thin solid #7e0079; + z-index:8888; + border-radius: 2px; + box-shadow: #333333 1px 1px 2px; } #menu_ul ul li { @@ -46,13 +57,13 @@ } #menu_ul ul a { - border-top: thin solid #CFDEFF; color: #333333; background: transparent; + border-bottom: none; + border-radius: 0; } #menu_ul a:hover { - background: #cfdeff; text-decoration: underline; color: #7e0079; } @@ -101,6 +112,9 @@ my $conf = FS::Conf->new; my %payby = map { $_ => 1 } $conf->config('payby'); +# cached for conditions, to avoid looking it up twice +my $invoicing_list_emailonly = $cust_main->invoicing_list_emailonly; + # nice declarative menu; should be a parameter to some kind of menu generator my @menu = ( [ @@ -109,12 +123,12 @@ my @menu = ( }, { label => 'Edit customer', - url => 'edit/cust_main.cgi?$custnum', + url => "edit/cust_main.cgi?$custnum", acl => 'Edit customer' }, { label => 'Edit contacts', - url => 'edit/cust_main-contacts.html?$custnum', + url => "edit/cust_main-contacts.html?$custnum", }, # separator { @@ -129,7 +143,7 @@ my @menu = ( }, { label => 'Suspend', - popup => 'misc/suspend_cust.html?custnum=$custnum', + popup => "misc/suspend_cust.html?custnum=$custnum", acl => 'Suspend customer', condition => sub { shift->unsuspended_pkgs > 0 }, actionlabel => 'Confirm Suspension', @@ -137,14 +151,14 @@ my @menu = ( }, { label => 'Unsuspend', - popup => 'misc/unsuspend_cust.html?custnum=$custnum', + popup => "misc/unsuspend_cust.html?custnum=$custnum", acl => 'Unsuspend customer', condition => sub { shift->suspended_pkgs > 0 }, actionlabel => 'Confirm Unsuspension', }, { label => 'Cancel', - popup => 'misc/suspend_cust.html?custnum=$custnum', + popup => "misc/suspend_cust.html?custnum=$custnum", acl => 'Cancel customer', condition => sub { shift->ncancelled_pkgs > 0 }, actionlabel => 'Confirm Cancellation', @@ -152,7 +166,7 @@ my @menu = ( }, { label => 'Merge', - popup => 'misc/merge_cust.html?custnum=$custnum', + popup => "misc/merge_cust.html?custnum=$custnum", acl => 'Merge customer', actionlabel => 'Merge customer', width => 569, @@ -160,13 +174,13 @@ my @menu = ( }, { label => 'Refer a new customer', - url => 'edit/cust_main.cgi?referral_custnum=$custnum', + url => "edit/cust_main.cgi?referral_custnum=$custnum", confexists => '!disable_customer_referrals', }, # should have a separator here { label => 'View this customer\'s referrals', - url => 'search/cust_main.cgi?referral_custnum=$custnum', + url => "search/cust_main.cgi?referral_custnum=$custnum", confexists => '!disable_customer_referrals', condition => sub { FS::cust_main->count('referral_custnum = ?', shift->custnum) > 0 @@ -174,7 +188,7 @@ my @menu = ( }, { label => 'View billing events', - url => 'search/cust_event.html?custnum=$custnum', + url => "search/cust_event.html?custnum=$custnum", acl => [ 'Billing event reports', 'View customer billing events' ], }, @@ -183,10 +197,12 @@ my @menu = ( url => sub { my $cust_main = shift; my $agentnum = $cust_main->agentnum; - 'misc/email-customers.html?table=cust_main;search_hash='. - 'agent_virt_agentnum='.$agentnum.';custnum=$custnum'; + 'misc/email-customers.html?table=cust_main;'. + 'agent_virt_agentnum='.$agentnum.";custnum=$custnum;url=". + uri_escape($cgi->self_url); }, - condition => sub { shift->invoicing_list_emailonly }, + condition => sub { $invoicing_list_emailonly }, + acl => 'Bulk send customer notices', }, ], [ @@ -196,7 +212,7 @@ my @menu = ( }, { label => 'Add note', - popup => 'edit/cust_main_note.cgi?custnum=$custnum', + popup => "edit/cust_main_note.cgi?custnum=$custnum", actionlabel => 'Add note', confexists => '!cust_main-disable_notes', acl => 'Add customer note', @@ -205,7 +221,7 @@ my @menu = ( }, { label => 'Attach file', - popup => 'edit/cust_main_attach.cgi?custnum=$custnum', + popup => "edit/cust_main_attach.cgi?custnum=$custnum", actionlabel => 'Upload file', confexists => '!disable_cust_attachment', acl => 'Add attachment', @@ -227,6 +243,13 @@ my @menu = ( confexists => 'ticket_system', acl => 'View appointments', }, + { + label => 'Schedule new appointment', + confexists => 'ticket_system', + acl => 'Make appointment', + popup => "elements/make_appointment.html?custnum=$custnum", + actionlabel => 'Schedule appointment', + }, ], [ { @@ -234,8 +257,8 @@ my @menu = ( show => 'quotations', }, { - label => 'Add quotation', - url => 'edit/quotation.html?custnum=$custnum', + label => 'Create new quotation', + url => "edit/quotation.html?custnum=$custnum", acl => 'Generate quotation', }, ], @@ -246,7 +269,7 @@ my @menu = ( }, { label => 'New qualification', - popup => 'misc/qual.html?custnum=$custnum', + popup => "misc/qual.html?custnum=$custnum", actionlabel => 'New qualification', color => '#333399', width => 763, @@ -255,7 +278,7 @@ my @menu = ( }, { label => 'Order new package', - popup => 'misc/order_pkg.html?custnum=$custnum', + popup => "misc/order_pkg.html?custnum=$custnum", actionlabel => 'Order new package', color => '#333399', width => 960, @@ -274,7 +297,7 @@ my @menu = ( }, { label => 'Move services between packages', - popup => 'edit/bulk-cust_svc-pkgnum.html?custnum=$custnum', + popup => "edit/bulk-cust_svc-pkgnum.html?custnum=$custnum", actionlabel => 'Move services', width => 968, height => 575, @@ -282,26 +305,26 @@ my @menu = ( }, { label => 'Bulk order and cancel packages', - url => 'edit/cust_pkg.cgi?$custnum', + url => "edit/cust_pkg.cgi?$custnum", acl => 'Bulk change customer packages', }, # separator { label => 'Package reports', - url => 'search/report_cust_pkg?custnum=$custnum', + url => "search/report_cust_pkg?custnum=$custnum", }, { label => 'View qualifications', - url => 'search/qual.cgi?custnum=$custnum', + url => "search/qual.cgi?custnum=$custnum", acl => 'Qualify service', }, { label => 'View accounts', - url => 'search/report_svc_acct.html?custnum=$custnum', + url => "search/report_svc_acct.html?custnum=$custnum", }, { label => 'View CDRs', - url => 'search/report_cdr.html?custnum=$custnum', + url => "search/report_cdr.html?custnum=$custnum", }, ], [ @@ -312,7 +335,7 @@ my @menu = ( # manual payment entry via edit/cust_pay { label => 'Enter check payment', - popup => 'edit/cust_pay.cgi?popup=1;payby=BILL;custnum=$custnum', + popup => "edit/cust_pay.cgi?popup=1;payby=BILL;custnum=$custnum", actionlabel => 'Enter check payment', width => 763, height => 392, @@ -321,7 +344,7 @@ my @menu = ( }, { label => 'Enter cash payment', - popup => 'edit/cust_pay.cgi?popup=1;payby=CASH;custnum=$custnum', + popup => "edit/cust_pay.cgi?popup=1;payby=CASH;custnum=$custnum", actionlabel => 'Enter cash payment', width => 763, height => 392, @@ -330,7 +353,7 @@ my @menu = ( }, { label => 'Enter Western Union payment', - popup => 'edit/cust_pay.cgi?popup=1;payby=WEST;custnum=$custnum', + popup => "edit/cust_pay.cgi?popup=1;payby=WEST;custnum=$custnum", actionlabel => 'Enter Western Union payment', width => 763, height => 392, @@ -339,7 +362,7 @@ my @menu = ( }, { label => 'Post manual (offline/POS) credit card payment', - popup => 'edit/cust_pay.cgi?popup=1;payby=MCRD;custnum=$custnum', + popup => "edit/cust_pay.cgi?popup=1;payby=MCRD;custnum=$custnum", actionlabel => 'Enter credit card payment', width => 763, height => 392, @@ -348,7 +371,7 @@ my @menu = ( }, { label => 'Post manual (offline/POS) electronic check', - popup => 'edit/cust_pay.cgi?popup=1;payby=MCHK;custnum=$custnum', + popup => "edit/cust_pay.cgi?popup=1;payby=MCHK;custnum=$custnum", actionlabel => 'Enter credit card payment', width => 763, height => 392, @@ -358,27 +381,27 @@ my @menu = ( # realtime payments via payment.cgi { label => 'Process credit card payment', - url => 'misc/payment.cgi?payby=CARD;custnum=$custnum', + url => "misc/payment.cgi?payby=CARD;custnum=$custnum", acl => [ 'Process payment', 'Process credit card payment', ], condition => sub { $payby{CARD} or $payby{DCRD} }, }, { label => 'Process electronic check payment', - url => 'misc/payment.cgi?payby=CHEK;custnum=$custnum', + url => "misc/payment.cgi?payby=CHEK;custnum=$custnum", acl => [ 'Process payment', 'Process Echeck payment', ], condition => sub { $payby{CHEK} or $payby{DCHK} }, }, #separator? { label => 'Enter credit', - popup => 'edit/cust_credit.cgi?custnum=$custnum', + popup => "edit/cust_credit.cgi?custnum=$custnum", actionlabel => 'Enter credit', width => 763, acl => 'Post credit', }, { label => 'Credit line items', - popup => 'edit/credit-cust_bill_pkg.html?custnum=$custnum', + popup => "edit/credit-cust_bill_pkg.html?custnum=$custnum", actionlabel => 'Credit line items', width => 968, height => 575, @@ -389,7 +412,7 @@ my @menu = ( }, { label => 'Enter check refund', - popup => 'edit/cust_refund.cgi?popup=1;payby=BILL;custnum=$custnum', + popup => "edit/cust_refund.cgi?popup=1;payby=BILL;custnum=$custnum", actionlabel => 'Enter check refund', width => 440, acl => ['Post refund', 'Post check refund'], @@ -397,7 +420,7 @@ my @menu = ( }, { label => 'Enter cash refund', - popup => 'edit/cust_refund.cgi?popup=1;payby=CASH;custnum=$custnum', + popup => "edit/cust_refund.cgi?popup=1;payby=CASH;custnum=$custnum", actionlabel => 'Enter cash refund', width => 392, acl => ['Post refund', 'Post cash refund'], @@ -405,7 +428,7 @@ my @menu = ( }, { label => 'Enter manual (offline/POS) credit card refund', - popup => 'edit/cust_refund.cgi?popup=1;payby=MCRD;custnum=$custnum', + popup => "edit/cust_refund.cgi?popup=1;payby=MCRD;custnum=$custnum", actionlabel => 'Enter credit card refund', width => 440, acl => ['Post refund' ], @@ -413,7 +436,7 @@ my @menu = ( }, { label => 'Enter manual (offline/POS) electronic check refund', - popup => 'edit/cust_refund.cgi?popup=1;payby=MCHK;custnum=$custnum', + popup => "edit/cust_refund.cgi?popup=1;payby=MCHK;custnum=$custnum", actionlabel => 'Enter electronic check refund', width => 440, acl => ['Post refund' ], @@ -421,7 +444,7 @@ my @menu = ( }, { label => 'Add tax adjustment', - popup => 'edit/cust_tax_adjustment.html?custnum=$custnum', + popup => "edit/cust_tax_adjustment.html?custnum=$custnum", actionlabel => 'Add tax adjustment', height => 200, confexists => 'enable_tax_adjustments', @@ -429,37 +452,49 @@ my @menu = ( }, # separator, definitely { - label => 'Download statement', - url => 'view/cust_main_statement-pdf.cgi?$custnum', - acl => 'List invoices', + label => 'Download PDF statement', + url => "view/cust_main_statement-pdf.cgi?$custnum", + acl => 'View legacy typeset statements', condition => sub { FS::cust_bill->count('custnum = ?', shift->custnum) > 0 }, }, { label => 'Search invoices', - url => 'search/report_cust_bill.html?custnum=$custnum', + url => "search/report_cust_bill.html?custnum=$custnum", acl => 'List invoices', }, { label => 'View tax exemptions', - url => 'search/cust_tax_exempt_pkg.cgi?custnum=$custnum', + url => "search/cust_tax_exempt_pkg.cgi?custnum=$custnum", acl => 'View customer tax exemptions', }, { label => 'View tax adjustments', - url => 'search/cust_tax_adjustment.html?custnum=$custnum', + url => "search/cust_tax_adjustment.html?custnum=$custnum", confexists => 'enable_tax_adjustments', acl => 'Add customer tax adjustment', }, { label => 'View pending payments', - url => 'search/cust_pay_pending.html?magic=_date;statusNOT=done;custnum=$custnum', + url => "search/cust_pay_pending.html?magic=_date;statusNOT=done;custnum=$custnum", acl => 'View pending payments', condition => sub { FS::cust_pay_pending->count('custnum = ?', shift->custnum) > 0 }, }, + { + label => 'Email statement to this customer', + url => sub { + my $cust_main = shift; + my $agentnum = $cust_main->agentnum; + 'misc/email-customer-statement.html?table=cust_main;'. + 'agent_virt_agentnum='.$agentnum.";custnum=$custnum;url=". + uri_escape($cgi->self_url); + }, + condition => sub { $invoicing_list_emailonly }, + acl => 'Resend invoices', + }, ], [ { @@ -522,6 +557,7 @@ foreach my $submenu (@menu) { } $a .= qq[>$label ]; + $cgi->param('show', $opt{show}); } elsif ( $entry->{popup} ) {