From 2c757d7db4cb6a7b9655de13206fcc84fb7ce61f Mon Sep 17 00:00:00 2001 From: ivan Date: Sun, 14 May 2006 16:47:31 +0000 Subject: first part of ACL and re-skinning work and some other small stuff --- httemplate/elements/header.html | 289 ++++++++++++++++++++++++++++++++++++++-- 1 file changed, 277 insertions(+), 12 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 10e4e40f1..49814577e 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -2,20 +2,285 @@ my($title, $menubar) = ( shift, shift ); my $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. my $head = @_ ? shift : ''; #$head is for things that go in the section + my $conf = new FS::Conf; %> - - - - <%= $title %> - - - - - <%= $head %> - - > + + + + + <%= $title %> + + + + + + + + <% + + tie my %report_menu, 'Tie::IxHash', + 'Report one' => [ 'there', 'theretip' ], + 'Report too' => [ 'here', 'heretip' ], + ; + + tie my %config_employees, 'Tie::IxHash', + 'View/Edit employees' => [ $fsurl.'browse/access_user.html', 'Setup internal users' ], + 'View/Edit employee groups' => [ $fsurl.'browse/access_group.html', 'Employee groups allow you to control access to the backend' ], + ; + + tie my %config_export_svc_pkg, 'Tie::IxHash', + 'View/Edit exports' => [ $fsurl.'browse/part_export.cgi', 'Provisioning services to external machines, databases and APIs' ], + 'View/Edit service definitions' => [ $fsurl.'browse/part_svc.cgi', 'Services are items you offer to your customers' ], + 'View/Edit package definitions' => [ $fsurl.'browse/part_pkg.cgi', 'One or more services are grouped together into a package and given pricing information. Customers purchase packages, not services' ], + 'View/Edit package classes' => [ $fsurl.'browse/pkg_class.html', 'Package classes define groups of packages, for reporting and convenience purposes.' ], + ; + + tie my %config_agent, 'Tie::IxHash', + 'View/Edit agent types' => [ $fsurl.'browse/agent_type.cgi', 'Agent types define groups of package definitions that you can then assign to particular agents' ], + 'View/Edit agents' => [ $fsurl.'browse/agent.cgi', 'Agents are resellers of your service. Agents may be limited to a subset of your full offerings (via their type)' ], + ; + + tie my %config_billing, 'Tie::IxHash', + 'View/Edit payment gateways' => [ $fsurl.'browse/payment_gateway.html', 'Credit card and electronic check processors' ], + 'View/Edit invoice events' => [ $fsurl.'browse/part_bill_event.cgi', 'Actions for overdue invoices' ], + 'View/Edit prepaid cards' => [ $fsurl.'browse/prepay_credit.html', 'View outstanding cards, generate new cards' ], + 'View/Edit call rates and regions' => [ $fsurl.'browse/rate.cgi', 'Manage rate plans, regions and prefixes for VoIP and call billing' ], + 'View/Edit locales and tax rates' => [ $fsurl.'browse/cust_main_county.cgi', 'Change tax rates, or break down a country into states, or a state into counties and assign different tax rates to each' ], + ; + + tie my %config_dialup, 'Tie::IxHash', + 'View/Edit access numbers' => [ $fsurl.'browse/svc_acct_pop.cgi', 'Points of Presence' ], + ; + + tie my %config_broadband, 'Tie::IxHash', + 'View/Edit routers' => [ $fsurl.'browse/router.cgi', 'Broadband access routers' ], + 'View/Edit address blocks' => [ $fsurl.'browse/addr_block.cgi', 'Manage address blocks and block assignments to broadband routers' ], + ; + + tie my %config_misc, 'Tie::IxHash', + 'View/Edit advertising sources' => [ $fsurl.'browse/part_referral.cgi', 'Where a customer heard about your service. Tracked for informational purposes' ], + 'View/Edit virtual fields' => [ $fsurl.'browse/part_virtual_field.cgi', 'Locally defined fields', ], + 'View/Edit message catalog' => [ $fsurl.'browse/msgcat.cgi', 'Change error messages and other customizable labels' ], + 'View/Edit inventory classes and inventory' => [ $fsurl.'browse/inventory_class.html', 'Setup inventory classes and stock inventory' ], + ; + + tie my %config_menu, 'Tie::IxHash', + 'Settings' => [ $fsurl.'config/config-view.cgi', 'XXXconfigittip' ], + 'separator' => '', #its a separator! + 'Employees' => [ \%config_employees, 'XXXtooltip' ], + 'Provisioning, services and packages' + => [ \%config_export_svc_pkg, 'XXXtootip' ], + 'Resellers' => [ \%config_agent, 'XXXtootip' ], + 'Billing' => [ \%config_billing, 'XXXtootip' ], + 'Dialup' => [ \%config_dialup, 'XXXtootip' ], + 'Fixed (username-less) broadband' + => [ \%config_broadband, 'XXXtootip' ], + 'Miscellaneous' => [ \%config_misc, 'XXXtootip' ], + ; + + tie my %menu, 'Tie::IxHash', + 'Home' => [ $fsurl, 'hometip', ], + 'Top item one' => [ 'nowhere_yet', 'nowheretip', ], + 'Top item too' => [ 'nowhere_yet_either', 'eithertip', ], + 'Reports' => [ \%report_menu, 'reportmenutip' ], + 'Configuration' => [ \%config_menu, 'configmenutip' ], + ; + + use vars qw($gmenunum); + $gmenunum = 0; + + sub submenu { + my($submenu, $title) = @_; + my $menunum = $gmenunum++; + + #return two args: html, menuname + + "var myMenu$menunum = new WebFXMenu;\n". + #"myMenu$menunum.useAutoPosition = true;\n". + "myMenu$menunum.emptyText = '$title';\n". + + ( + join("\n", map { + + if ( !ref( $submenu->{$_} ) ) { + + "myMenu$menunum.add(new WebFXMenuSeparator());"; + + } else { + + my($url_or_submenu, $tooltip ) = @{ $submenu->{$_} }; + if ( ref($url_or_submenu) ) { + + my($subhtml, $submenuname ) = submenu($url_or_submenu, $_); #mmm, recursion + + "$subhtml\n". + "myMenu$menunum.add(new WebFXMenuItem(\"$_\", null, \"$tooltip\", $submenuname ));"; + + } else { + + "myMenu$menunum.add(new WebFXMenuItem(\"$_\", \"$url_or_submenu\", \"$tooltip\" ));"; + + } + + } + + } keys %$submenu ) + ). "\n". + "myMenu$menunum.width = 224\n", + + "myMenu$menunum"; + + } + + %> + + + + + <%= $head %> + + + STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0"> + + + + + + + + + +
+ freeside + + <%= $conf->config('company_name') %> Billing + Logged in as <%= getotaker %> 
Preferences 

+
+ + + + + <% if ( $conf->config('ticket_system') eq 'RT_Internal' ) { %> + <% eval "use RT;"; %> + + + <% } %> + + +
+ + Freeside v<%= $FS::VERSION %>
+ Documentation
+
+
+ + RT v<%= $RT::VERSION %>
+
Documentation
+
+
+ +
+ + + + + + + + + + + +
+ +
+ +
+
+
+ + +
+
+
+ + +
+
+ + + + + + + + + + @@ -248,13 +255,13 @@ -- cgit v1.2.1 From 64dc1bb0f70ccc0b828cc1d758cd82f040e0ec33 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 15 May 2006 13:57:15 +0000 Subject: move most of the crap on the "main menu" to the sidebar --- httemplate/elements/header.html | 169 +--------------------------------------- 1 file changed, 1 insertion(+), 168 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 0eb5695ce..2be2c7938 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -13,175 +13,8 @@ - - - - - <% - tie my %report_menu, 'Tie::IxHash', - 'Report one' => [ 'there', 'theretip' ], - 'Report too' => [ 'here', 'heretip' ], - ; - - tie my %config_employees, 'Tie::IxHash', - 'View/Edit employees' => [ $fsurl.'browse/access_user.html', 'Setup internal users' ], - 'View/Edit employee groups' => [ $fsurl.'browse/access_group.html', 'Employee groups allow you to control access to the backend' ], - ; - - tie my %config_export_svc_pkg, 'Tie::IxHash', - 'View/Edit exports' => [ $fsurl.'browse/part_export.cgi', 'Provisioning services to external machines, databases and APIs' ], - 'View/Edit service definitions' => [ $fsurl.'browse/part_svc.cgi', 'Services are items you offer to your customers' ], - 'View/Edit package definitions' => [ $fsurl.'browse/part_pkg.cgi', 'One or more services are grouped together into a package and given pricing information. Customers purchase packages, not services' ], - 'View/Edit package classes' => [ $fsurl.'browse/pkg_class.html', 'Package classes define groups of packages, for reporting and convenience purposes.' ], - ; - - tie my %config_agent, 'Tie::IxHash', - 'View/Edit agent types' => [ $fsurl.'browse/agent_type.cgi', 'Agent types define groups of package definitions that you can then assign to particular agents' ], - 'View/Edit agents' => [ $fsurl.'browse/agent.cgi', 'Agents are resellers of your service. Agents may be limited to a subset of your full offerings (via their type)' ], - ; - - tie my %config_billing, 'Tie::IxHash', - 'View/Edit payment gateways' => [ $fsurl.'browse/payment_gateway.html', 'Credit card and electronic check processors' ], - 'View/Edit invoice events' => [ $fsurl.'browse/part_bill_event.cgi', 'Actions for overdue invoices' ], - 'View/Edit prepaid cards' => [ $fsurl.'browse/prepay_credit.html', 'View outstanding cards, generate new cards' ], - 'View/Edit call rates and regions' => [ $fsurl.'browse/rate.cgi', 'Manage rate plans, regions and prefixes for VoIP and call billing' ], - 'View/Edit locales and tax rates' => [ $fsurl.'browse/cust_main_county.cgi', 'Change tax rates, or break down a country into states, or a state into counties and assign different tax rates to each' ], - ; - - tie my %config_dialup, 'Tie::IxHash', - 'View/Edit access numbers' => [ $fsurl.'browse/svc_acct_pop.cgi', 'Points of Presence' ], - ; - - tie my %config_broadband, 'Tie::IxHash', - 'View/Edit routers' => [ $fsurl.'browse/router.cgi', 'Broadband access routers' ], - 'View/Edit address blocks' => [ $fsurl.'browse/addr_block.cgi', 'Manage address blocks and block assignments to broadband routers' ], - ; - - tie my %config_misc, 'Tie::IxHash', - 'View/Edit advertising sources' => [ $fsurl.'browse/part_referral.cgi', 'Where a customer heard about your service. Tracked for informational purposes' ], - 'View/Edit virtual fields' => [ $fsurl.'browse/part_virtual_field.cgi', 'Locally defined fields', ], - 'View/Edit message catalog' => [ $fsurl.'browse/msgcat.cgi', 'Change error messages and other customizable labels' ], - 'View/Edit inventory classes and inventory' => [ $fsurl.'browse/inventory_class.html', 'Setup inventory classes and stock inventory' ], - ; - - tie my %config_menu, 'Tie::IxHash', - 'Settings' => [ $fsurl.'config/config-view.cgi', 'XXXconfigittip' ], - 'separator' => '', #its a separator! - 'Employees' => [ \%config_employees, 'XXXtooltip' ], - 'Provisioning, services and packages' - => [ \%config_export_svc_pkg, 'XXXtootip' ], - 'Resellers' => [ \%config_agent, 'XXXtootip' ], - 'Billing' => [ \%config_billing, 'XXXtootip' ], - 'Dialup' => [ \%config_dialup, 'XXXtootip' ], - 'Fixed (username-less) broadband' - => [ \%config_broadband, 'XXXtootip' ], - 'Miscellaneous' => [ \%config_misc, 'XXXtootip' ], - ; - - tie my %menu, 'Tie::IxHash', - 'Home' => [ $fsurl, 'hometip', ], - 'Top item one' => [ 'nowhere_yet', 'nowheretip', ], - 'Top item too' => [ 'nowhere_yet_either', 'eithertip', ], - 'Reports' => [ \%report_menu, 'reportmenutip' ], - 'Configuration' => [ \%config_menu, 'configmenutip' ], - ; - - use vars qw($gmenunum); - $gmenunum = 0; - - sub submenu { - my($submenu, $title) = @_; - my $menunum = $gmenunum++; - - #return two args: html, menuname - - "var myMenu$menunum = new WebFXMenu;\n". - #"myMenu$menunum.useAutoPosition = true;\n". - "myMenu$menunum.emptyText = '$title';\n". - - ( - join("\n", map { - - if ( !ref( $submenu->{$_} ) ) { - - "myMenu$menunum.add(new WebFXMenuSeparator());"; - - } else { - - my($url_or_submenu, $tooltip ) = @{ $submenu->{$_} }; - if ( ref($url_or_submenu) ) { - - my($subhtml, $submenuname ) = submenu($url_or_submenu, $_); #mmm, recursion - - "$subhtml\n". - "myMenu$menunum.add(new WebFXMenuItem(\"$_\", null, \"$tooltip\", $submenuname ));"; - - } else { - - "myMenu$menunum.add(new WebFXMenuItem(\"$_\", \"$url_or_submenu\", \"$tooltip\" ));"; - - } - - } - - } keys %$submenu ) - ). "\n". - "myMenu$menunum.width = 224\n", - - "myMenu$menunum"; - - } - - %> - + <%= include('menu.html', 'freeside_baseurl' => $fsurl ) %> - @@ -39,13 +45,11 @@ STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0">
+ +
+ + +
+ <%= $title %> +

- <%= $menubar ? "$menubar

" : '' %> + <%= $menubar !~ /^\s*$/ ? "$menubar

" : '' %> -- cgit v1.2.1 From 6d777ed1fafabab8c308c9ffa24f1dd48f33a9a5 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 15 May 2006 11:05:04 +0000 Subject: more ACL and re-skinning work, now with RT! --- httemplate/elements/header.html | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 49814577e..0eb5695ce 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -16,6 +16,7 @@ + <% tie my %report_menu, 'Tie::IxHash', @@ -183,10 +184,16 @@ + + @@ -200,7 +207,7 @@ freeside
- <%= $conf->config('company_name') %> Billing + <%= $conf->config('company_name') || 'ExampleCo' %> Logged in as <%= getotaker %> 
Preferences 

- +
- +
- + - @@ -77,34 +81,88 @@
- freeside - freeside <%= $conf->config('company_name') || 'ExampleCo' %> Logged in as <%= getotaker %> 
Preferences 

+
Logged in as <%= getotaker %> 
Preferences 
- + + +
- + + - + + + + - +
+ +
- +
- - +
+ Advanced +
+ <% if ( $FS::CurrentUser::CurrentUser->access_right('View invoices') ) { %> +
+ + <% if ( $FS::CurrentUser::CurrentUser->access_right('List invoices') ) { %> + Advanced + <% } %> +
+ +
+ <% } %> +
- - +
+ Advanced +
+ +
- - +
+ Advanced +
-- cgit v1.2.1 From 3ce7691203a7737406bf2d4442f7fd84b81f847e Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 23 Aug 2006 22:25:39 +0000 Subject: Will things ever be the same again? It's the final masonize --- httemplate/elements/header.html | 85 ++++++++++++++++++++++------------------- 1 file changed, 46 insertions(+), 39 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index ea8c418c3..ca74ca5b9 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -1,21 +1,22 @@ -<% - my($title, $menubar) = ( shift, shift ); - my $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. - my $head = @_ ? shift : ''; #$head is for things that go in the section - my $conf = new FS::Conf; +% +% my($title, $menubar) = ( shift, shift ); +% my $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. +% my $head = @_ ? shift : ''; #$head is for things that go in the section +% my $conf = new FS::Conf; +% +% -%> - <%= $title %> + <% $title %> - <%= include('menu.html', 'freeside_baseurl' => $fsurl ) %> + <% include('menu.html', 'freeside_baseurl' => $fsurl ) %> - <%= $head %> + <% $head %> - STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0"> + STYLE="margin-top:0; margin-bottom:0; margin-left:0; margin-right:0">
- + - @@ -59,20 +60,22 @@ - <% if ( $conf->config('ticket_system') eq 'RT_Internal' ) { %> - <% eval "use RT;"; %> +% if ( $conf->config('ticket_system') eq 'RT_Internal' ) { +% eval "use RT;"; + - <% } %> +% } +
freesidefreeside - <%= $conf->config('company_name') || 'ExampleCo' %> + <% $conf->config('company_name') || 'ExampleCo' %> Logged in as <%= getotaker %> 
Preferences 
+
Logged in as <% getotaker %> 
Preferences 
- Freeside v<%= $FS::VERSION %>
- Documentation
+ Freeside v<% $FS::VERSION %>
+ Documentation
- RT v<%= $RT::VERSION %>
+
RT v<% $RT::VERSION %>
Documentation
@@ -115,50 +118,54 @@ input.fsblackbuttonselected { - + @@ -168,8 +175,8 @@ input.fsblackbuttonselected {
-
+
-
+
- Advanced + Advanced
- <% if ( $FS::CurrentUser::CurrentUser->access_right('View invoices') ) { %> -
+% if ( $FS::CurrentUser::CurrentUser->access_right('View invoices') ) { + + - <% if ( $FS::CurrentUser::CurrentUser->access_right('List invoices') ) { %> - Advanced - <% } %> +% if ( $FS::CurrentUser::CurrentUser->access_right('List invoices') ) { + + Advanced +% } +
- <% } %> +% } +
-
+
- Advanced + Advanced
-
+
- Advanced + Advanced
- - + + - + % if ( $conf->config('ticket_system') eq 'RT_Internal' ) { @@ -188,7 +188,7 @@ input.fsblackbuttonselected { - - -- cgit v1.2.1 From 633c48448d9468690b7ad77eb6ff7c660a286658 Mon Sep 17 00:00:00 2001 From: ivan Date: Fri, 29 Dec 2006 08:51:34 +0000 Subject: service refactor! --- httemplate/elements/header.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index c543ac040..0e69b19ca 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -132,7 +132,7 @@ input.fsblackbuttonselected { @@ -155,10 +155,10 @@ input.fsblackbuttonselected { -- cgit v1.2.1 From f01e2ce0aa6c1925e6266d78797025ec68bfac07 Mon Sep 17 00:00:00 2001 From: ivan Date: Fri, 26 Jan 2007 08:04:37 +0000 Subject: top bar option! --- httemplate/elements/header.html | 68 ++++++++++++++++++++++++++++++++++------- 1 file changed, 57 insertions(+), 11 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index 0e69b19ca..1f5674885 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -1,11 +1,3 @@ -% -% my($title, $menubar) = ( shift, shift ); -% my $etc = @_ ? shift : ''; #$etc is for things like onLoad= etc. -% my $head = @_ ? shift : ''; #$head is for things that go in the section -% my $conf = new FS::Conf; -% -% - @@ -16,7 +8,10 @@ - <% include('menu.html', 'freeside_baseurl' => $fsurl ) %> + <% include('menu.html', 'freeside_baseurl' => $fsurl, + 'position' => $menu_position, + ) + %> + + + + + + + + + + + + +% } +
@@ -177,15 +184,15 @@ input.fsblackbuttonselected { document.write(myBar);
- +
- <%= $title %> + <% $title %>

- <%= $menubar !~ /^\s*$/ ? "$menubar

" : '' %> + <% $menubar !~ /^\s*$/ ? "$menubar

" : '' %> -- cgit v1.2.1 From 41d7858c23437581a98492627bcc3ef9ecfccf70 Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 23 Oct 2006 09:35:18 +0000 Subject: eek, VALIGN=top for the page --- httemplate/elements/header.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index ca74ca5b9..ce5401242 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -61,7 +61,7 @@
Freeside v<% $FS::VERSION %>
- Documentation
+ ">Documentation
+ <% $title %> -- cgit v1.2.1 From 3758ad3cb13752bbbebb2c42fcc398bdb1ffdc6a Mon Sep 17 00:00:00 2001 From: ivan Date: Mon, 13 Nov 2006 01:09:17 +0000 Subject: add preference page, start with just a password changer --- httemplate/elements/header.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'httemplate/elements/header.html') diff --git a/httemplate/elements/header.html b/httemplate/elements/header.html index ce5401242..c543ac040 100644 --- a/httemplate/elements/header.html +++ b/httemplate/elements/header.html @@ -50,7 +50,7 @@ <% $conf->config('company_name') || 'ExampleCo' %> Logged in as <% getotaker %> 
Preferences 
+
Logged in as <% getotaker %> 
Preferences 

- Advanced + Advanced
-
+
- Advanced - + Advanced +
+
+
@@ -172,13 +191,26 @@ input.fsblackbuttonselected {
+ + + +% if ( $menu_position eq 'left' ) { + - + +% } + + + + + +% if ( $menu_position eq 'left' ) { +