diff options
author | ivan <ivan> | 2009-06-17 02:39:09 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-06-17 02:39:09 +0000 |
commit | 3a02c437eadd9a39f7e56056ca987a4846650209 (patch) | |
tree | 377c23a23f9c8590ea1523172c9eb928153c4079 /httemplate | |
parent | 8588f3c0bfbcbeb58dd25a57b5ea375cec00279a (diff) |
finish up initial work on customer view tabs (ensure links back to customer view call include show=packages if default view isn't jumbo or packages already), RT#5586
Diffstat (limited to 'httemplate')
-rwxr-xr-x | httemplate/edit/process/REAL_cust_pkg.cgi | 10 | ||||
-rwxr-xr-x | httemplate/edit/process/part_pkg.cgi | 8 | ||||
-rw-r--r-- | httemplate/edit/process/quick-cust_pkg.cgi | 9 | ||||
-rw-r--r-- | httemplate/elements/menubar.html | 4 | ||||
-rwxr-xr-x | httemplate/misc/process/link.cgi | 10 | ||||
-rw-r--r-- | httemplate/pref/pref.html | 2 | ||||
-rw-r--r-- | httemplate/search/cust_event.html | 7 | ||||
-rwxr-xr-x | httemplate/search/cust_main.cgi | 10 | ||||
-rwxr-xr-x | httemplate/search/cust_pkg.cgi | 15 | ||||
-rwxr-xr-x | httemplate/view/cust_main.cgi | 7 |
10 files changed, 63 insertions, 19 deletions
diff --git a/httemplate/edit/process/REAL_cust_pkg.cgi b/httemplate/edit/process/REAL_cust_pkg.cgi index ebcb7e4ba..c99ddc288 100755 --- a/httemplate/edit/process/REAL_cust_pkg.cgi +++ b/httemplate/edit/process/REAL_cust_pkg.cgi @@ -3,12 +3,18 @@ <% $cgi->redirect(popurl(2). "REAL_cust_pkg.cgi?". $cgi->query_string ) %> %} else { % my $custnum = $new->custnum; -<% $cgi->redirect(popurl(3). "view/cust_main.cgi?$custnum#cust_pkg$pkgnum" ) %> +% my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ +% ? '' +% : ';show=packages'; +% my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment +<% $cgi->redirect(popurl(3). "view/cust_main.cgi?custnum=$custnum$show;fragment=$frag#$frag" ) %> %} <%init> +my $curuser = $FS::CurrentUser::CurrentUser; + die "access denied" - unless $FS::CurrentUser::CurrentUser->access_right('Edit customer package dates'); + unless $curuser->access_right('Edit customer package dates'); my $pkgnum = $cgi->param('pkgnum') or die; my $old = qsearchs('cust_pkg',{'pkgnum'=>$pkgnum}); diff --git a/httemplate/edit/process/part_pkg.cgi b/httemplate/edit/process/part_pkg.cgi index 96c5b36b7..3116b7b28 100755 --- a/httemplate/edit/process/part_pkg.cgi +++ b/httemplate/edit/process/part_pkg.cgi @@ -134,7 +134,13 @@ my $args_callback = sub { my $redirect_callback = sub { #my( $cgi, $new ) = @_; return '' unless $custnum; - popurl(3). "view/cust_main.cgi?keywords=$custnum;dummy="; + my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ + ? '' + : ';show=packages'; + #my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment + + #can we link back to the specific customized package? it would be nice... + popurl(3). "view/cust_main.cgi?custnum=$custnum$show;dummy="; }; #these should probably move to @args above and be processed by part_pkg.pm... diff --git a/httemplate/edit/process/quick-cust_pkg.cgi b/httemplate/edit/process/quick-cust_pkg.cgi index 9c2474330..57c696e7e 100644 --- a/httemplate/edit/process/quick-cust_pkg.cgi +++ b/httemplate/edit/process/quick-cust_pkg.cgi @@ -3,12 +3,15 @@ <% $cgi->redirect(popurl(3). 'misc/order_pkg.html?'. $cgi->query_string ) %> %} else { % my $frag = "cust_pkg". $cust_pkg->pkgnum; +% my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ +% ? '' +% : ';show=packages'; <% header('Package ordered') %> <SCRIPT TYPE="text/javascript"> // XXX fancy ajax rebuild table at some point, but a page reload will do for now // XXX chop off trailing #target and replace... ? - window.top.location = '<% popurl(3). "view/cust_main.cgi?keywords=$custnum;fragment=$frag#$frag" %>'; + window.top.location = '<% popurl(3). "view/cust_main.cgi?custnum=$custnum$show;fragment=$frag#$frag" %>'; </SCRIPT> @@ -16,8 +19,10 @@ %} <%init> +my $curuser = $FS::CurrentUser::CurrentUser; + die "access denied" - unless $FS::CurrentUser::CurrentUser->access_right('Order customer package'); + unless $curuser->access_right('Order customer package'); #untaint custnum (probably not necessary, searching for it is escape enough) $cgi->param('custnum') =~ /^(\d+)$/ diff --git a/httemplate/elements/menubar.html b/httemplate/elements/menubar.html index 4d2700cc5..46f61b3cd 100644 --- a/httemplate/elements/menubar.html +++ b/httemplate/elements/menubar.html @@ -5,7 +5,9 @@ Example: include( '/elements/menubar.html', #options hashref (optional) - { 'newstyle' => 1, #may become the default at some point + { 'newstyle' => 1, #may become the default at some point + 'url_base' => '', #prepended to menubar URLs, for convenience + 'selected' => '', #currently selected label }, #menubar entries (required) diff --git a/httemplate/misc/process/link.cgi b/httemplate/misc/process/link.cgi index df15dca72..77546f3f7 100755 --- a/httemplate/misc/process/link.cgi +++ b/httemplate/misc/process/link.cgi @@ -1,14 +1,20 @@ %unless ($error) { % #no errors, so let's view this customer. % my $custnum = $new->cust_pkg->custnum; -<% $cgi->redirect(popurl(3). "view/cust_main.cgi?$custnum#cust_pkg$pkgnum" ) %> +% my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ +% ? '' +% : ';show=packages'; +% my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment +<% $cgi->redirect(popurl(3). "view/cust_main.cgi?custnum=$custnum$show;fragment=$frag#$frag" ) %> %} else { % errorpage($error); %} <%init> +my $curuser = $FS::CurrentUser::CurrentUser; + die "access denied" - unless $FS::CurrentUser::CurrentUser->access_right('View/link unlinked services'); + unless $curuser->access_right('View/link unlinked services'); my $DEBUG = 0; diff --git a/httemplate/pref/pref.html b/httemplate/pref/pref.html index 81800bf26..8bdf6c09c 100644 --- a/httemplate/pref/pref.html +++ b/httemplate/pref/pref.html @@ -126,7 +126,7 @@ Vonage integration (see <a href="https://secure.click2callu.com/">Click2Call</a> <% include('/elements/footer.html') %> <%once> - #false laziness w/view/cust_main.cgi + #false laziness w/view/cust_main.cgi and Conf.pm (cust_main-default_view) tie my %customer_views, 'Tie::IxHash', 'Basics' => 'basics', diff --git a/httemplate/search/cust_event.html b/httemplate/search/cust_event.html index d55b5c6d2..e8164c280 100644 --- a/httemplate/search/cust_event.html +++ b/httemplate/search/cust_event.html @@ -124,7 +124,12 @@ my $trigger_link = sub { my $eventtable = $cust_event->eventtable; if ( $eventtable eq 'cust_pkg' ) { my $custnum = $cust_event->cust_main_custnum; - [ "${p}view/cust_main.cgi?$custnum#cust_pkg", 'tablenum' ]; + my $show = $FS::CurrentUser::CurrentUser->default_customer_view =~ /^(jumbo|packages)$/ + ? '' + : ';show=packages'; + my $pkgnum = $cust_event->tablenum; + my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment + [ "${p}view/cust_main.cgi?custnum=$custnum$show;fragment=$frag#cust_pkg", 'tablenum' ]; } else { [ "${p}view/$eventtable.cgi?", 'tablenum' ]; } diff --git a/httemplate/search/cust_main.cgi b/httemplate/search/cust_main.cgi index 36e4374ee..658069b08 100755 --- a/httemplate/search/cust_main.cgi +++ b/httemplate/search/cust_main.cgi @@ -1,5 +1,7 @@ +%my $curuser = $FS::CurrentUser::CurrentUser; +% %die "access denied" -% unless $FS::CurrentUser::CurrentUser->access_right('List customers'); +% unless $curuser->access_right('List customers'); % %my $conf = new FS::Conf; %my $maxrecords = $conf->config('maxsearchrecordsperpage'); @@ -485,7 +487,11 @@ % % my $pkg = $part_pkg->pkg; % my $comment = $part_pkg->comment; -% my $pkgview = "${p}view/cust_main.cgi?$custnum#cust_pkg$pkgnum"; +% my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ +% ? '' +% : ';show=packages'; +% my $frag = "cust_pkg$pkgnum"; #hack for IE ignoring real #fragment +% my $pkgview = "${p}view/cust_main.cgi?custnum=$custnum$show;fragment=$frag#$frag"; % my @cust_svc = @{shift @lol_cust_svc}; % #my(@cust_svc) = qsearch( 'cust_svc', { 'pkgnum' => $_->pkgnum } ); % my $rowspan = scalar(@cust_svc) || 1; diff --git a/httemplate/search/cust_pkg.cgi b/httemplate/search/cust_pkg.cgi index e797e35e9..2a702801c 100755 --- a/httemplate/search/cust_pkg.cgi +++ b/httemplate/search/cust_pkg.cgi @@ -147,8 +147,10 @@ %> <%init> +my $curuser = $FS::CurrentUser::CurrentUser; + die "access denied" - unless $FS::CurrentUser::CurrentUser->access_right('List packages'); + unless $curuser->access_right('List packages'); my $conf = new FS::Conf; my $money_char = $conf->config('money_char') || '$'; @@ -192,8 +194,17 @@ foreach my $field (qw( setup last_bill bill adjourn susp expire cancel )) { my $sql_query = FS::cust_pkg->search_sql(\%search_hash); my $count_query = delete($sql_query->{'count_query'}); +my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ + ? '' + : ';show=packages'; + my $link = sub { - [ "${p}view/cust_main.cgi?".shift->custnum.'#cust_pkg', 'pkgnum' ]; + my $self = shift; + my $frag = 'cust_pkg'. $self->pkgnum; #hack for IE ignoring real #fragment + [ "${p}view/cust_main.cgi?custnum=".$self->custnum. + "$show;fragment=$frag#cust_pkg", + 'pkgnum' + ]; }; my $clink = sub { diff --git a/httemplate/view/cust_main.cgi b/httemplate/view/cust_main.cgi index 00856a021..88fd03713 100755 --- a/httemplate/view/cust_main.cgi +++ b/httemplate/view/cust_main.cgi @@ -207,7 +207,7 @@ my $cust_main = qsearchs( { }); die "Customer not found!" unless $cust_main; -#false laziness w/pref/pref.html +#false laziness w/pref/pref.html and Conf.pm (cust_main-default_view) tie my %views, 'Tie::IxHash', 'Basics' => 'basics', 'Notes' => 'notes', #notes and files? @@ -222,9 +222,6 @@ $views{'Jumbo'} = 'jumbo'; my %viewname = reverse %views; - -my $view = $cgi->param('show') - || $curuser->option('default_customer_view') - || 'jumbo'; #'Basics' in 1.9.1? +my $view = $cgi->param('show') || $curuser->default_customer_view; </%init> |