Merge branch 'master' of git.freeside.biz:/home/git/freeside
authorJonathan Prykop <jonathan@freeside.biz>
Tue, 8 Nov 2016 08:49:39 +0000 (02:49 -0600)
committerJonathan Prykop <jonathan@freeside.biz>
Tue, 8 Nov 2016 08:49:39 +0000 (02:49 -0600)
FS/FS/Conf.pm
httemplate/elements/footer-cust_main.html [new file with mode: 0644]
httemplate/elements/header-cust_main.html [new file with mode: 0644]
httemplate/view/cust_bill.cgi
httemplate/view/cust_main.cgi
httemplate/view/cust_main/menu.html

index 31759ed..51af38b 100644 (file)
@@ -5547,14 +5547,6 @@ and customer address. Include units.',
   },
 
   {
-    'key'         => 'ie-compatibility_mode',
-    'section'     => 'UI',
-    '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',
     'description' => 'Disable the "Charge future payments to this (card|check) automatically" checkbox from defaulting to checked.',
diff --git a/httemplate/elements/footer-cust_main.html b/httemplate/elements/footer-cust_main.html
new file mode 100644 (file)
index 0000000..c9a9cc2
--- /dev/null
@@ -0,0 +1,2 @@
+</DIV>
+<& /elements/footer.html &>
diff --git a/httemplate/elements/header-cust_main.html b/httemplate/elements/header-cust_main.html
new file mode 100644 (file)
index 0000000..859df83
--- /dev/null
@@ -0,0 +1,89 @@
+<%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,
+             '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)";
+
+</%init>
index c7238e6..e35d7f1 100755 (executable)
@@ -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 &>
 
-<SCRIPT TYPE="text/javascript">
-function areyousure(href, message) {
-  if (confirm(message) == true)
-    window.location.href = href;
-}
-</SCRIPT>
+<h2>Invoice #<% $invnum %></h2>
 
 % if ( !$cust_bill->closed ) { # otherwise allow no changes
 %   my $can_delete = $conf->exists('deleteinvoices')
@@ -187,7 +180,7 @@ function change_invoice_mode(obj) {
   <PRE><% join('', $cust_bill->print_text(\%opt) ) |h %></PRE>
 % } 
 
-<& /elements/footer.html &>
+<& /elements/footer-cust_main.html &>
 <%init>
 
 my $curuser = $FS::CurrentUser::CurrentUser;
index c5ee920..2e8d746 100755 (executable)
@@ -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
@@ -195,8 +148,7 @@ function areyousure_popup(message, action, actionlabel) {
 %   }
 % }
 
-</DIV>
-<& /elements/footer.html &>
+<& /elements/footer-cust_main.html &>
 <%init>
 
 my $curuser = $FS::CurrentUser::CurrentUser;
@@ -225,21 +177,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 +210,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>
index d9190ee..c6aa15c 100644 (file)
@@ -688,7 +688,13 @@ 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='. $entry->{show}.
+                  ';custnum='. $cust_main->custnum;
+
       $cgi->param('show', $show);
 
       my $a = qq[ <A HREF="$target"];