summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2016-04-26 12:10:43 -0700
committerMark Wells <mark@freeside.biz>2016-04-27 13:07:37 -0700
commit90eaa5512c9cd3ff34b34c9e2426ff2fa39e27dd (patch)
treea2ced525c9eb3cd206aa80ab2a70d52dc5e4cfc0 /httemplate
parentefc6cac18e49cee959026359718f525048164bd7 (diff)
more robust testing platform, #37340
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/elements/error.html1
-rw-r--r--httemplate/elements/errorpage.html5
-rw-r--r--httemplate/elements/header-full.html251
-rw-r--r--httemplate/elements/header.html246
4 files changed, 260 insertions, 243 deletions
diff --git a/httemplate/elements/error.html b/httemplate/elements/error.html
index f65785d10..f9664bd65 100644
--- a/httemplate/elements/error.html
+++ b/httemplate/elements/error.html
@@ -1,4 +1,5 @@
% if ( $cgi->param('error') ) {
+% $m->notes('error', $cgi->param('error'));
<FONT SIZE="+1" COLOR="#ff0000"><% mt("Error: [_1]", $cgi->param('error')) |h %></FONT>
<BR><BR>
% }
diff --git a/httemplate/elements/errorpage.html b/httemplate/elements/errorpage.html
index 0f9808da0..7d66e7ce0 100644
--- a/httemplate/elements/errorpage.html
+++ b/httemplate/elements/errorpage.html
@@ -1,10 +1,11 @@
+% my $error = shift;
+% $m->notes('error', $error);
<& /elements/header.html, mt("Error") &>
% while (@_) {
-<P><FONT SIZE="+1" COLOR="#ff0000"><% shift |h %></FONT>
+<P><FONT SIZE="+1" COLOR="#ff0000"><% $error |h %></FONT>
%}
-
% $m->flush_buffer();
% $HTML::Mason::Commands::m->abort();
diff --git a/httemplate/elements/header-full.html b/httemplate/elements/header-full.html
new file mode 100644
index 000000000..9b2482859
--- /dev/null
+++ b/httemplate/elements/header-full.html
@@ -0,0 +1,251 @@
+<<<<<<< HEAD
+<%doc>
+
+Example:
+
+ include( '/elements/header.html',
+ {
+ 'title' => 'Title',
+ 'menubar' => \@menubar,
+ 'etc' => '', #included in <BODY> tag, for things like onLoad=
+ 'head' => '', #included before closing </HEAD> tag
+ 'nobr' => 0, #1 for no <BR><BR> after the title
+ 'no_jquery' => #for use from RT, which loads its own
+ }
+ );
+
+ #old-style
+ include( '/elements/header.html', 'Title', $menubar, $etc, $head);
+
+</%doc>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+%#<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+%# above is what RT declares, should we switch now? hopefully no glitches result
+%# or just fuck it, XHTML died anyway, HTML 5 or bust?
+<HTML>
+ <HEAD>
+ <TITLE>
+ <% encode_entities($title) || $title_noescape |n %>
+ </TITLE>
+ <!-- per RT, to prevent IE compatibility mode -->
+ <meta http-equiv="X-UA-Compatible" content="IE=edge" />
+ <!-- The X-UA-Compatible <meta> tag above must be very early in <head> -->
+ <META HTTP-Equiv="Cache-Control" Content="no-cache">
+ <META HTTP-Equiv="Pragma" Content="no-cache">
+ <META HTTP-Equiv="Expires" Content="0">
+% if ( $mobile ) {
+ <META NAME="viewport" content="width=device-width height=device-height user-scalable=yes">
+% }
+
+ <% include('menu.html', 'freeside_baseurl' => $fsurl,
+ 'position' => $menu_position,
+ 'nocss' => $nocss,
+ 'mobile' => $mobile,
+ ) |n
+ %>
+
+% unless ( $no_jquery ) {
+ <link rel="stylesheet" href="<% $fsurl %>elements/jquery-ui.min.css">
+ <SCRIPT SRC="<% $fsurl %>elements/jquery.js"></SCRIPT>
+ <SCRIPT SRC="<% $fsurl %>elements/jquery-ui.min.js"></SCRIPT>
+% }
+
+ <% include('init_overlib.html') |n %>
+ <% include('rs_init_object.html') |n %>
+ <% include('logout.html') |n %>
+% my $timeout = $conf->config('logout-timeout');
+% if ( $timeout && $timeout =~ /^\s*\d+\s*$/ ) {
+ <script type="text/javascript">
+ setTimeout('logout()', <% 60000 * $timeout %>);
+ </script>
+% }
+
+ <% $head |n %>
+
+%# announce our base path, and the Mason comp path of this page
+ <script type="text/javascript">
+ window.fsurl = <% $fsurl |js_string %>;
+ window.request_comp_path = <% $m->request_comp->path |js_string %>;
+ </script>
+
+ </HEAD>
+ <BODY BGCOLOR="#f8f8f8" <% $etc |n %> STYLE="margin-top:0; margin-bottom:0; margin-left:0px; margin-right:0px">
+ <table width="100%" CELLPADDING=0 CELLSPACING=0 STYLE="padding-left:0px; padding-right:4px" CLASS="fshead">
+ <tr>
+ <td BGCOLOR="#ffffff"><% $company_url ? qq(<A HREF="$company_url">) : '' |n %><IMG BORDER=0 ALT="freeside" HEIGHT="36" SRC="<%$fsurl%>view/REAL_logo.cgi"><% $company_url ? '</A>' : '' |n %></td>
+ <td align=left BGCOLOR="#ffffff"> <!-- valign="top" -->
+ <font size=6><% $company_name || 'ExampleCo' %></font>
+ </td>
+ <td align=right valign=top BGCOLOR="#ffffff"><FONT SIZE="-1">Logged in as <b><% getotaker %>&nbsp;</b> <FONT SIZE="-2"><a href="javascript:void(0);" onClick="logout();">logout</a></FONT><br></FONT><FONT SIZE="-2"><a href="<%$fsurl%>pref/pref.html" STYLE="color: #000000">Preferences</a>
+% if ( $conf->config("ticket_system")
+% && FS::TicketSystem->access_right(\%session, 'ModifySelf') ) {
+ | <a href="<%$fsurl%>rt/Prefs/Other.html" STYLE="color: #000000">Ticketing preferences</a>
+% }
+ <BR></FONT>
+ </td>
+ </tr>
+ </table>
+
+ <TABLE WIDTH="100%" CELLSPACING=0 CELLPADDING=0>
+
+<link href="<%$fsurl%>elements/freeside-menu.css" type="text/css" rel="stylesheet">
+
+% if ( $menu_position eq 'top' ) {
+
+ <TR CLASS="fsmenubar">
+
+% if ( $mobile ) {
+
+ <TD STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079;width:auto" BGCOLOR="#cccccc">
+ <SCRIPT TYPE="text/javascript">
+ document.write(myBar.toString());
+ </SCRIPT>
+ </TD>
+ <TD STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079;width:auto" BGCOLOR="#cccccc">
+ <% include('searchbar-combined.html') |n %>
+ </TD>
+
+% } else {
+
+ <TD COLSPAN="7" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
+ <SCRIPT TYPE="text/javascript">
+ document.write(myBar);
+ </SCRIPT>
+ </TD>
+
+ </TR>
+
+ <TR CLASS="fssearchbar">
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
+ <% include('searchbar-prospect.html') |n %>
+ </TD>
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
+ <% include('searchbar-cust_main.html') |n %>
+ </TD>
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="center">
+ <% include('searchbar-address2.html') |n %>
+ </TD>
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right">
+ <% include('searchbar-cust_bill.html') |n %>
+ </TD>
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
+ <% include('searchbar-cust_svc.html') |n %>
+ </TD>
+
+ <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px;padding-right:2px">
+ <% include('searchbar-ticket.html') |n %>
+ </TD>
+% }
+
+ </TR>
+ </TABLE>
+
+% } else { #$menu_position eq 'left'
+
+ <TR CLASS="fsmenubar">
+
+ <TD COLSPAN="7" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
+ </TD>
+
+ </TR>
+
+% }
+
+
+ <TABLE WIDTH="100%" HEIGHT="100%" CELLSPACING=0 CELLPADDING=4>
+
+ <TR HEIGHT="100%">
+
+% if ( $menu_position eq 'left' ) {
+
+ <TD BGCOLOR="#cccccc" ALIGN="left" HEIGHT="100%" WIDTH="154" VALIGN="top" ALIGN="right" CLASS="fsmenubar">
+ <SCRIPT TYPE="text/javascript">
+ document.write(myBar);
+ </SCRIPT>
+
+ <BR>
+ <% include('searchbar-prospect.html') |n %>
+ <% include('searchbar-cust_main.html') |n %>
+ <% include('searchbar-address2.html') |n %>
+ <% include('searchbar-cust_bill.html') |n %>
+ <% include('searchbar-cust_svc.html') |n %>
+ <% include('searchbar-ticket.html') |n %>
+
+ </TD>
+
+% }
+%# page content starts here
+ <TD CLASS="background" HEIGHT="100%" VALIGN="top"> <!-- WIDTH="100%"> -->
+
+ <FONT SIZE=6>
+ <% $title_noescape || encode_entities($title) %>
+ </FONT>
+
+% unless ( $nobr ) {
+ <BR><BR>
+% }
+
+ <% $menubar !~ /^\s*$/ ? "$menubar<BR><BR>" : '' %>
+
+<%init>
+
+my( $title, $title_noescape, $menubar, $etc, $head ) = ( '', '', '', '', '' );
+my( $nobr, $nocss, $no_jquery ) = ( 0, 0, 0 );
+
+my $mobile;
+
+if ( ref($_[0]) ) {
+ my $opt = shift;
+ $title = $opt->{title};
+ $title_noescape = $opt->{title_noescape};
+ $menubar = $opt->{menubar};
+ $etc = $opt->{etc};
+ $head = $opt->{head};
+ $nobr = $opt->{nobr};
+ $nocss = $opt->{nocss};
+ $mobile = $opt->{mobile};
+ $no_jquery = exists($opt->{no_jquery}) ? $opt->{no_jquery} : 1; #v3 only, 0 on v4+
+} else {
+ ($title, $menubar) = ( shift, shift );
+ $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc.
+ $head = @_ ? shift : ''; #$head is for things that go in the <HEAD> section
+}
+
+my $conf = new FS::Conf;
+
+my $curuser = $FS::CurrentUser::CurrentUser;
+
+my $menu_position = $curuser->option('menu_position')
+ || 'top'; #new default for 1.9
+
+if ( !defined($mobile) ) {
+ $mobile = $curuser->option('mobile_menu',1) && FS::UI::Web::is_mobile();
+}
+if ( $cgi->param('mobile') =~ /^(\d)$/ ) { # allow client to override
+ $mobile = $1;
+}
+
+my($company_name, $company_url);
+my @agentnums = $curuser->agentnums;
+if ( scalar(@agentnums) == 1 ) {
+ $company_name = $conf->config('company_name', $agentnums[0] );
+ $company_url = $conf->config('company_url', $agentnums[0] );
+} else {
+ $company_name = $conf->config('company_name');
+ $company_url = $conf->config('company_url');
+}
+
+</%init>
+=======
+% # for testing, disable the page menus/search boxes
+% if ( $FS::CurrentUser::CurrentUser->option('header-minimal') ) {
+<& header-minimal.html, @_ &>
+% } else {
+<& header-full.html, @_ &>
+% }
+>>>>>>> cb6214a... more robust testing platform, #37340
diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html
index a67538d11..c6b10e301 100644
--- a/httemplate/elements/header.html
+++ b/httemplate/elements/header.html
@@ -1,242 +1,6 @@
-<%doc>
-
-Example:
-
- include( '/elements/header.html',
- {
- 'title' => 'Title',
- 'menubar' => \@menubar,
- 'etc' => '', #included in <BODY> tag, for things like onLoad=
- 'head' => '', #included before closing </HEAD> tag
- 'nobr' => 0, #1 for no <BR><BR> after the title
- 'no_jquery' => #for use from RT, which loads its own
- }
- );
-
- #old-style
- include( '/elements/header.html', 'Title', $menubar, $etc, $head);
-
-</%doc>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
-%#<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-%# above is what RT declares, should we switch now? hopefully no glitches result
-%# or just fuck it, XHTML died anyway, HTML 5 or bust?
-<HTML>
- <HEAD>
- <TITLE>
- <% encode_entities($title) || $title_noescape |n %>
- </TITLE>
- <!-- per RT, to prevent IE compatibility mode -->
- <meta http-equiv="X-UA-Compatible" content="IE=edge" />
- <!-- The X-UA-Compatible <meta> tag above must be very early in <head> -->
- <META HTTP-Equiv="Cache-Control" Content="no-cache">
- <META HTTP-Equiv="Pragma" Content="no-cache">
- <META HTTP-Equiv="Expires" Content="0">
-% if ( $mobile ) {
- <META NAME="viewport" content="width=device-width height=device-height user-scalable=yes">
+% # for testing, disable the page menus/search boxes
+% if ( $FS::CurrentUser::CurrentUser->option('header-minimal') ) {
+<& header-minimal.html, @_ &>
+% } else {
+<& header-full.html, @_ &>
% }
-
- <% include('menu.html', 'freeside_baseurl' => $fsurl,
- 'position' => $menu_position,
- 'nocss' => $nocss,
- 'mobile' => $mobile,
- ) |n
- %>
-
-% unless ( $no_jquery ) {
- <link rel="stylesheet" href="<% $fsurl %>elements/jquery-ui.min.css">
- <SCRIPT SRC="<% $fsurl %>elements/jquery.js"></SCRIPT>
- <SCRIPT SRC="<% $fsurl %>elements/jquery-ui.min.js"></SCRIPT>
-% }
-
- <% include('init_overlib.html') |n %>
- <% include('rs_init_object.html') |n %>
- <% include('logout.html') |n %>
-% my $timeout = $conf->config('logout-timeout');
-% if ( $timeout && $timeout =~ /^\s*\d+\s*$/ ) {
- <script type="text/javascript">
- setTimeout('logout()', <% 60000 * $timeout %>);
- </script>
-% }
-
- <% $head |n %>
-
-%# announce our base path, and the Mason comp path of this page
- <script type="text/javascript">
- window.fsurl = <% $fsurl |js_string %>;
- window.request_comp_path = <% $m->request_comp->path |js_string %>;
- </script>
-
- </HEAD>
- <BODY BGCOLOR="#f8f8f8" <% $etc |n %> STYLE="margin-top:0; margin-bottom:0; margin-left:0px; margin-right:0px">
- <table width="100%" CELLPADDING=0 CELLSPACING=0 STYLE="padding-left:0px; padding-right:4px" CLASS="fshead">
- <tr>
- <td BGCOLOR="#ffffff"><% $company_url ? qq(<A HREF="$company_url">) : '' |n %><IMG BORDER=0 ALT="freeside" HEIGHT="36" SRC="<%$fsurl%>view/REAL_logo.cgi"><% $company_url ? '</A>' : '' |n %></td>
- <td align=left BGCOLOR="#ffffff"> <!-- valign="top" -->
- <font size=6><% $company_name || 'ExampleCo' %></font>
- </td>
- <td align=right valign=top BGCOLOR="#ffffff"><FONT SIZE="-1">Logged in as <b><% getotaker %>&nbsp;</b> <FONT SIZE="-2"><a href="javascript:void(0);" onClick="logout();">logout</a></FONT><br></FONT><FONT SIZE="-2"><a href="<%$fsurl%>pref/pref.html" STYLE="color: #000000">Preferences</a>
-% if ( $conf->config("ticket_system")
-% && FS::TicketSystem->access_right(\%session, 'ModifySelf') ) {
- | <a href="<%$fsurl%>rt/Prefs/Other.html" STYLE="color: #000000">Ticketing preferences</a>
-% }
- <BR></FONT>
- </td>
- </tr>
- </table>
-
- <TABLE WIDTH="100%" CELLSPACING=0 CELLPADDING=0>
-
-<link href="<%$fsurl%>elements/freeside-menu.css" type="text/css" rel="stylesheet">
-
-% if ( $menu_position eq 'top' ) {
-
- <TR CLASS="fsmenubar">
-
-% if ( $mobile ) {
-
- <TD STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079;width:auto" BGCOLOR="#cccccc">
- <SCRIPT TYPE="text/javascript">
- document.write(myBar.toString());
- </SCRIPT>
- </TD>
- <TD STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079;width:auto" BGCOLOR="#cccccc">
- <% include('searchbar-combined.html') |n %>
- </TD>
-
-% } else {
-
- <TD COLSPAN="7" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
- <SCRIPT TYPE="text/javascript">
- document.write(myBar);
- </SCRIPT>
- </TD>
-
- </TR>
-
- <TR CLASS="fssearchbar">
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
- <% include('searchbar-prospect.html') |n %>
- </TD>
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
- <% include('searchbar-cust_main.html') |n %>
- </TD>
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="center">
- <% include('searchbar-address2.html') |n %>
- </TD>
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right">
- <% include('searchbar-cust_bill.html') |n %>
- </TD>
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px">
- <% include('searchbar-cust_svc.html') |n %>
- </TD>
-
- <TD COLSPAN=1 BGCOLOR="#cccccc" ALIGN="right" STYLE="padding-left:2px;padding-right:2px">
- <% include('searchbar-ticket.html') |n %>
- </TD>
-% }
-
- </TR>
- </TABLE>
-
-% } else { #$menu_position eq 'left'
-
- <TR CLASS="fsmenubar">
-
- <TD COLSPAN="7" WIDTH="100%" STYLE="padding:1px 0px 0px 0px;border-top: 1px solid #7e0079" BGCOLOR="#cccccc">
- </TD>
-
- </TR>
-
-% }
-
-
- <TABLE WIDTH="100%" HEIGHT="100%" CELLSPACING=0 CELLPADDING=4>
-
- <TR HEIGHT="100%">
-
-% if ( $menu_position eq 'left' ) {
-
- <TD BGCOLOR="#cccccc" ALIGN="left" HEIGHT="100%" WIDTH="154" VALIGN="top" ALIGN="right" CLASS="fsmenubar">
- <SCRIPT TYPE="text/javascript">
- document.write(myBar);
- </SCRIPT>
-
- <BR>
- <% include('searchbar-prospect.html') |n %>
- <% include('searchbar-cust_main.html') |n %>
- <% include('searchbar-address2.html') |n %>
- <% include('searchbar-cust_bill.html') |n %>
- <% include('searchbar-cust_svc.html') |n %>
- <% include('searchbar-ticket.html') |n %>
-
- </TD>
-
-% }
-%# page content starts here
- <TD CLASS="background" HEIGHT="100%" VALIGN="top"> <!-- WIDTH="100%"> -->
-
- <FONT SIZE=6>
- <% $title_noescape || encode_entities($title) %>
- </FONT>
-
-% unless ( $nobr ) {
- <BR><BR>
-% }
-
- <% $menubar !~ /^\s*$/ ? "$menubar<BR><BR>" : '' %>
-
-<%init>
-
-my( $title, $title_noescape, $menubar, $etc, $head ) = ( '', '', '', '', '' );
-my( $nobr, $nocss, $no_jquery ) = ( 0, 0, 0 );
-
-my $mobile;
-
-if ( ref($_[0]) ) {
- my $opt = shift;
- $title = $opt->{title};
- $title_noescape = $opt->{title_noescape};
- $menubar = $opt->{menubar};
- $etc = $opt->{etc};
- $head = $opt->{head};
- $nobr = $opt->{nobr};
- $nocss = $opt->{nocss};
- $mobile = $opt->{mobile};
- $no_jquery = exists($opt->{no_jquery}) ? $opt->{no_jquery} : 1; #v3 only, 0 on v4+
-} else {
- ($title, $menubar) = ( shift, shift );
- $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc.
- $head = @_ ? shift : ''; #$head is for things that go in the <HEAD> section
-}
-
-my $conf = new FS::Conf;
-
-my $curuser = $FS::CurrentUser::CurrentUser;
-
-my $menu_position = $curuser->option('menu_position')
- || 'top'; #new default for 1.9
-
-if ( !defined($mobile) ) {
- $mobile = $curuser->option('mobile_menu',1) && FS::UI::Web::is_mobile();
-}
-if ( $cgi->param('mobile') =~ /^(\d)$/ ) { # allow client to override
- $mobile = $1;
-}
-
-my($company_name, $company_url);
-my @agentnums = $curuser->agentnums;
-if ( scalar(@agentnums) == 1 ) {
- $company_name = $conf->config('company_name', $agentnums[0] );
- $company_url = $conf->config('company_url', $agentnums[0] );
-} else {
- $company_name = $conf->config('company_name');
- $company_url = $conf->config('company_url');
-}
-
-</%init>