[freeside-commits] branch FREESIDE_4_BRANCH updated. 5747043b65207732f7c84cc16ea77d2da3f5813f

Ivan ivan at 420.am
Mon Nov 7 22:08:26 PST 2016


The branch, FREESIDE_4_BRANCH has been updated
       via  5747043b65207732f7c84cc16ea77d2da3f5813f (commit)
      from  d2f54bbc95b1a14e638ce51182f04b80c07641a6 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 5747043b65207732f7c84cc16ea77d2da3f5813f
Author: Ivan Kohler <ivan at freeside.biz>
Date:   Mon Nov 7 22:08:26 2016 -0800

    customer header for any page!

diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm
index 66cd1d7..4c87f93 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 0000000..ca0b522
--- /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 c5ee920..2254df4 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>

-----------------------------------------------------------------------

Summary of changes:
 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




More information about the freeside-commits mailing list