From 06c85c354d546ca68320c8c2a4fb3dbc34750e0a Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Mon, 7 Nov 2016 22:08:24 -0800 Subject: customer header for any page! --- FS/FS/Conf.pm | 2 +- httemplate/elements/header-cust_main.html | 96 +++++++++++++++++++++++++++++++ httemplate/view/cust_main.cgi | 70 +--------------------- 3 files changed, 98 insertions(+), 70 deletions(-) create mode 100644 httemplate/elements/header-cust_main.html diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 31759ed62..00042bd41 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -5548,7 +5548,7 @@ and customer address. Include units.', { 'key' => 'ie-compatibility_mode', - 'section' => 'UI', + 'section' => 'deprecated', 'description' => "Compatibility mode META tag for Internet Explorer, used on the customer view page. Not necessary in normal operation unless custom content (notes, cust_main-custom_link) is included on customer view that is incompatibile with newer IE verisons.", 'type' => 'select', 'select_enum' => [ '', '7', 'EmulateIE7', '8', 'EmulateIE8' ], diff --git a/httemplate/elements/header-cust_main.html b/httemplate/elements/header-cust_main.html new file mode 100644 index 000000000..ca0b52252 --- /dev/null +++ b/httemplate/elements/header-cust_main.html @@ -0,0 +1,96 @@ +<%doc> + +Examples: + + <& /elements/header-cust_main.html, + view => 'Basics', #required + cust_main => $cust_main, # cust_main or custnum is required + custnum => $custnum, # + &> + + +<& /elements/header.html, { + 'title' => $title, + 'title_noescape' => $title_noescape, + 'head' => $head, + 'nobr' => 1, + } +&> + +% my @part_tag = $cust_main->part_tag; +% if ( $conf->config('cust_tag-location') eq 'top' && @part_tag ) { + +% foreach my $part_tag ( @part_tag ) { + + + +% } +
+ tagcolor) + ? 'STYLE="background-color:#'.$part_tag->tagcolor.'"' + : '' + %>><% $part_tag->tagname.': '. $part_tag->tagdesc |h %> +
+% } + +<& /view/cust_main/menu.html, cust_main => $cust_main, show => $opt{'view'} &> +
+ +
+ +<& /elements/init_overlib.html &> + + + +
+<%init> + +my $curuser = $FS::CurrentUser::CurrentUser; + +my $conf = new FS::Conf; + +my %opt = @_; + +my $cust_main = $opt{'cust_main'} || qsearchs( { + 'table' => 'cust_main', + 'hashref' => { 'custnum' => $opt{'custnum'} }, + 'extra_sql' => ' AND '. $curuser->agentnums_sql, +}); +die "Customer not found!" unless $cust_main; + +my $title = mt("Customer").' #'. $cust_main->display_custnum. ': '; +my $title_noescape = $title. encode_entities($cust_main->name); +$title .= $cust_main->name; + +if ( $curuser->num_agents ) { + $title_noescape = + encode_entities($cust_main->agent->agent). " $title_noescape"; + $title = $cust_main->agent->agent. " $title"; +} + +my $status = $cust_main->status_label; +$status .= ' (Cancelled)' if $cust_main->is_status_delay_cancel; +$title_noescape .= ' ('. $status. ')'; +$title .= " ($status)"; + +my $ie_compat = $conf->config('ie-compatibility_mode'); +my $head = ''; +if ( $ie_compat ) { + $head = qq(); +} + + diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi index c5ee9203c..2254df489 100755 --- a/httemplate/view/cust_main.cgi +++ b/httemplate/view/cust_main.cgi @@ -1,51 +1,4 @@ -<& /elements/header.html, { - 'title' => $title, - 'title_noescape' => $title_noescape, - 'head' => $head, - 'nobr' => 1, - } -&> - -% my @part_tag = $cust_main->part_tag; -% if ( $conf->config('cust_tag-location') eq 'top' && @part_tag ) { - -% foreach my $part_tag ( @part_tag ) { - - - -% } -
- tagcolor) - ? 'STYLE="background-color:#'.$part_tag->tagcolor.'"' - : '' - %>><% $part_tag->tagname.': '. $part_tag->tagdesc |h %> -
-% } - -<& cust_main/menu.html, cust_main => $cust_main, show => $view &> -
- -
- -<& /elements/init_overlib.html &> - - - -
+<& /elements/header-cust_main.html, view=>$view, cust_main=>$cust_main &> % ### % # Basics @@ -225,21 +178,6 @@ my $cust_main = qsearchs( { }); die "Customer not found!" unless $cust_main; -my $title = mt("Customer").' #'. $cust_main->display_custnum. ': '; -my $title_noescape = $title. encode_entities($cust_main->name); -$title .= $cust_main->name; - -if ( $curuser->num_agents ) { - $title_noescape = - encode_entities($cust_main->agent->agent). " $title_noescape"; - $title = $cust_main->agent->agent. " $title"; -} - -my $status = $cust_main->status_label; -$status .= ' (Cancelled)' if $cust_main->is_status_delay_cancel; -$title_noescape .= ' ('. $status. ')'; -$title .= " ($status)"; - #false laziness w/pref/pref.html and Conf.pm (cust_main-default_view) tie my %views, 'Tie::IxHash', emt('Basics') => 'basics', @@ -273,10 +211,4 @@ if ($view eq 'last') { $view = 'basics' if $view eq 'jumbo'; -my $ie_compat = $conf->config('ie-compatibility_mode'); -my $head = ''; -if ( $ie_compat ) { - $head = qq(); -} - -- cgit v1.2.1 From 2549ea6e716605e930d5784e1c46c1ee163f1453 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Mon, 7 Nov 2016 22:09:26 -0800 Subject: remove deprecated ie-compatibility_mode conf --- FS/FS/Conf.pm | 8 -------- httemplate/elements/header-cust_main.html | 7 ------- 2 files changed, 15 deletions(-) diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 00042bd41..51af38bb6 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -5546,14 +5546,6 @@ and customer address. Include units.', 'type' => 'checkbox', }, - { - 'key' => 'ie-compatibility_mode', - 'section' => 'deprecated', - 'description' => "Compatibility mode META tag for Internet Explorer, used on the customer view page. Not necessary in normal operation unless custom content (notes, cust_main-custom_link) is included on customer view that is incompatibile with newer IE verisons.", - 'type' => 'select', - 'select_enum' => [ '', '7', 'EmulateIE7', '8', 'EmulateIE8' ], - }, - { 'key' => 'disable_payauto_default', 'section' => 'payments', diff --git a/httemplate/elements/header-cust_main.html b/httemplate/elements/header-cust_main.html index ca0b52252..859df837c 100644 --- a/httemplate/elements/header-cust_main.html +++ b/httemplate/elements/header-cust_main.html @@ -12,7 +12,6 @@ Examples: <& /elements/header.html, { 'title' => $title, 'title_noescape' => $title_noescape, - 'head' => $head, 'nobr' => 1, } &> @@ -87,10 +86,4 @@ $status .= ' (Cancelled)' if $cust_main->is_status_delay_cancel; $title_noescape .= ' ('. $status. ')'; $title .= " ($status)"; -my $ie_compat = $conf->config('ie-compatibility_mode'); -my $head = ''; -if ( $ie_compat ) { - $head = qq(); -} - -- cgit v1.2.1 From d1e8cab4d49eaab6373df48db134a74d9d2b5db2 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Mon, 7 Nov 2016 22:28:15 -0800 Subject: invoices look like they belong under customers --- httemplate/elements/footer-cust_main.html | 2 ++ httemplate/view/cust_bill.cgi | 13 +++---------- httemplate/view/cust_main.cgi | 3 +-- httemplate/view/cust_main/menu.html | 6 +++++- 4 files changed, 11 insertions(+), 13 deletions(-) create mode 100644 httemplate/elements/footer-cust_main.html diff --git a/httemplate/elements/footer-cust_main.html b/httemplate/elements/footer-cust_main.html new file mode 100644 index 000000000..c9a9cc215 --- /dev/null +++ b/httemplate/elements/footer-cust_main.html @@ -0,0 +1,2 @@ +
+<& /elements/footer.html &> diff --git a/httemplate/view/cust_bill.cgi b/httemplate/view/cust_bill.cgi index c7238e6a8..e35d7f1cf 100755 --- a/httemplate/view/cust_bill.cgi +++ b/httemplate/view/cust_bill.cgi @@ -1,13 +1,6 @@ -<& /elements/header.html, mt('Invoice View'), menubar( - emt("View this customer (#[_1])",$display_custnum) => "${p}view/cust_main.cgi?$custnum", -) &> +<& /elements/header-cust_main.html, view=>'payment_history', custnum=>$custnum &> - +

Invoice #<% $invnum %>

% if ( !$cust_bill->closed ) { # otherwise allow no changes % my $can_delete = $conf->exists('deleteinvoices') @@ -187,7 +180,7 @@ function change_invoice_mode(obj) {
<% join('', $cust_bill->print_text(\%opt) ) |h %>
% } -<& /elements/footer.html &> +<& /elements/footer-cust_main.html &> <%init> my $curuser = $FS::CurrentUser::CurrentUser; diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi index 2254df489..2e8d74625 100755 --- a/httemplate/view/cust_main.cgi +++ b/httemplate/view/cust_main.cgi @@ -148,8 +148,7 @@ % } % } -
-<& /elements/footer.html &> +<& /elements/footer-cust_main.html &> <%init> my $curuser = $FS::CurrentUser::CurrentUser; diff --git a/httemplate/view/cust_main/menu.html b/httemplate/view/cust_main/menu.html index d9190ee28..d12ec172f 100644 --- a/httemplate/view/cust_main/menu.html +++ b/httemplate/view/cust_main/menu.html @@ -688,7 +688,11 @@ sub entry2link { # the menu head: always a link back to this page $cgi->param('show', $entry->{show}); - $target = $cgi->self_url; + + #$target = $cgi->self_url; + #XXX support installs outside /freeside in 4.x + $target = "/freeside/view/cust_main.cgi?show=$show;custnum=". $cust_main->custnum; + $cgi->param('show', $show); my $a = qq[ Date: Mon, 7 Nov 2016 22:31:44 -0800 Subject: invoices look like they belong under customers --- httemplate/view/cust_main/menu.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/httemplate/view/cust_main/menu.html b/httemplate/view/cust_main/menu.html index d12ec172f..c6aa15cd0 100644 --- a/httemplate/view/cust_main/menu.html +++ b/httemplate/view/cust_main/menu.html @@ -691,7 +691,9 @@ sub entry2link { #$target = $cgi->self_url; #XXX support installs outside /freeside in 4.x - $target = "/freeside/view/cust_main.cgi?show=$show;custnum=". $cust_main->custnum; + $target = '/freeside/view/cust_main.cgi?'. + 'show='. $entry->{show}. + ';custnum='. $cust_main->custnum; $cgi->param('show', $show); -- cgit v1.2.1