diff options
author | Ivan Kohler <ivan@freeside.biz> | 2016-11-07 22:08:26 -0800 |
---|---|---|
committer | Ivan Kohler <ivan@freeside.biz> | 2016-11-07 22:08:26 -0800 |
commit | 5747043b65207732f7c84cc16ea77d2da3f5813f (patch) | |
tree | 021cd5f029db9e7ec4c6ca7416ddd5a0459157a1 | |
parent | d2f54bbc95b1a14e638ce51182f04b80c07641a6 (diff) |
customer header for any page!
-rw-r--r-- | FS/FS/Conf.pm | 2 | ||||
-rw-r--r-- | httemplate/elements/header-cust_main.html | 96 | ||||
-rwxr-xr-x | httemplate/view/cust_main.cgi | 70 |
3 files changed, 98 insertions, 70 deletions
diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 66cd1d7e9..4c87f9396 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -5583,7 +5583,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, # + &> + +</%doc> +<& /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 ) { +<TABLE STYLE="margin-bottom:8px" CELLSPACING=2> +% foreach my $part_tag ( @part_tag ) { +<TR> + <TD> + <FONT SIZE="+1" + <% length($part_tag->tagcolor) + ? 'STYLE="background-color:#'.$part_tag->tagcolor.'"' + : '' + %>><% $part_tag->tagname.': '. $part_tag->tagdesc |h %></FONT> + </TD> +</TR> +% } +</TABLE> +% } + +<& /view/cust_main/menu.html, cust_main => $cust_main, show => $opt{'view'} &> +<BR> + +<DIV CLASS="fstabcontainer"> + +<& /elements/init_overlib.html &> + +<SCRIPT TYPE="text/javascript"> +function areyousure(href, message) { + if (confirm(message) == true) + window.location.href = href; +} +function areyousure_popup(message, action, actionlabel) { + if (confirm(message) == true) { +<% include('/elements/popup_link_onclick.html', + 'js_action' => 'action', + 'js_actionlabel' => 'actionlabel', + ) %> + } +} +</SCRIPT> + +<br> +<%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 .= ' (<B><FONT COLOR="#'. $cust_main->statuscolor. '">'. $status. '</FONT></B>)'; +$title .= " ($status)"; + +my $ie_compat = $conf->config('ie-compatibility_mode'); +my $head = ''; +if ( $ie_compat ) { + $head = qq(<meta http-equiv="X-UA-Compatible" content="IE=$ie_compat" />); +} + +</%init> 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 ) { -<TABLE STYLE="margin-bottom:8px" CELLSPACING=2> -% foreach my $part_tag ( @part_tag ) { -<TR> - <TD> - <FONT SIZE="+1" - <% length($part_tag->tagcolor) - ? 'STYLE="background-color:#'.$part_tag->tagcolor.'"' - : '' - %>><% $part_tag->tagname.': '. $part_tag->tagdesc |h %></FONT> - </TD> -</TR> -% } -</TABLE> -% } - -<& cust_main/menu.html, cust_main => $cust_main, show => $view &> -<BR> - -<DIV CLASS="fstabcontainer"> - -<& /elements/init_overlib.html &> - -<SCRIPT TYPE="text/javascript"> -function areyousure(href, message) { - if (confirm(message) == true) - window.location.href = href; -} -function areyousure_popup(message, action, actionlabel) { - if (confirm(message) == true) { -<% include('/elements/popup_link_onclick.html', - 'js_action' => 'action', - 'js_actionlabel' => 'actionlabel', - ) %> - } -} -</SCRIPT> - -<br> +<& /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 .= ' (<B><FONT COLOR="#'. $cust_main->statuscolor. '">'. $status. '</FONT></B>)'; -$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(<meta http-equiv="X-UA-Compatible" content="IE=$ie_compat" />); -} - </%init> |