1 <%= $url = "$selfurl?action="; ''; %>
3 <TD VALIGN="top" BGCOLOR="<%= $menu_bgcolor || $box_bgcolor || '#c0c0c0' %>">
5 <TABLE CELLSPACING=0 BORDER=0 HEIGHT="100%">
9 if ( $menu_top_image ) {
10 $OUT .= '<TR><TD STYLE="padding:0px"><IMG SRC="image.cgi?name=menu_top_image;agentnum='. $agentnum. '"></TD></TR>';
15 { title=>'Overview', url=>'myaccount', size=>'+1', },
17 { title=>'Purchase', size=>'+1', },
20 unless ( $access_pkgnum ) {
22 { title=>'Purchase additional package',
23 url=>'customer_order_pkg', 'indent'=>2 };
27 @payby_mode{@cust_paybys} = @hide_payment_fields;
28 # $payby_mode{FOO} is true if FOO is thirdparty, false if it's B::OP,
29 # nonexistent if it's not supported
31 if ( ($balance || 0) > 0 ) { #XXXFIXME "enable selfservice prepay features" flag or something, eventually per-pkg or something really fancy
33 if ( exists( $payby_mode{CARD} ) ) {
34 push @menu, { title => 'Recharge my account with a credit card',
35 url => $payby_mode{CARD}
36 ? 'make_thirdparty_payment&payby_method=CC'
42 if ( exists( $payby_mode{CHEK} ) ) {
43 push @menu, { title => 'Recharge my account with a check',
44 url => $payby_mode{CHEK}
45 ? 'make_thirdparty_payment&payby_method=ECHECK'
51 if ( exists( $payby_mode{PREPAY} ) ) {
52 push @menu, { title => 'Recharge my account with a prepaid card',
53 url => 'recharge_prepay',
58 if ( exists( $payby_mode{PPAL} ) ) {
59 push @menu, { title => 'Recharge my account with PayPal',
60 url => 'make_thirdparty_payment&payby_method=PAYPAL',
70 { title=>'View Payment History', url=>'history', size=>'+1' },
73 unless( $hide_usage ){
75 { title=>'View my usage', url=>'view_usage', size=>'+1', }
79 { title=>'Create a ticket', url=>'tktcreate', size=>'+1', },
82 unless ( $access_pkgnum ) {
84 { title=>'Setup my services', url=>'provision', size=>'+1', },
92 { title=>'Change my information', size=>'+1', };
94 unless ( $access_pkgnum ) {
96 { title=>'Change billing address', url=>'change_bill', indent=>2 },
97 { title=>'Change service address', url=>'change_ship', indent=>2 },
98 { title=>'Change payment information', url=>'change_pay', indent=>2 },
103 { title=>'Change password(s)', url=>'change_password', indent=>2 },
105 { title=>'Logout', url=>'logout', size=>'+1', },
108 my %menu_disable = map { $_=>1 } @menu_disable;
109 foreach my $item ( @menu ) {
111 next if ( $menu_skipblanks && $item->{'title'} =~ /^\s*$/ )
112 || ( $menu_skipheadings && ! $item->{'url'} )
113 || $menu_disable{$item->{'title'}};
116 if ( $menu_body_image ) {
117 if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
118 $OUT .= #' BGCOLOR="'. ( $body_bgcolor || '#eeeeee' ). '" '.
119 ' STYLE="background: url(image.cgi?name=menu_body_image;agentnum='. $agentnum. ') 0 bottom; '.
120 ' color:#3366CC"; '. #XXX config
123 $OUT .= ' STYLE="background: url(image.cgi?name=menu_body_imagei;agentnum='. $agentnum. ') 0 bottom" ';
126 if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
127 $OUT .= ' BGCOLOR="'. ( $body_bgcolor || '#eeeeee' ). '" '.
128 ' STYLE="border-top: 1px solid black;'.
129 ' border-left: 1px solid black;'.
130 ' border-bottom: 1px solid black"';
132 $OUT .= ' STYLE="border-right: 1px solid black"';
137 if ( $menu_skipheadings ) {
138 $OUT .= ' ';
140 $OUT .= ' ' x $item->{'indent'}
141 if exists $item->{'indent'};
144 $OUT .= '<A HREF="'. $url. $item->{'url'}. '">'
145 if exists $item->{'url'} && $action ne $item->{'url'};
147 $OUT .= '<FONT SIZE="'. ( $menu_fontsize || $item->{'size'} ). '">'
148 if $menu_fontsize || exists($item->{'size'});
150 $item->{'title'} =~ s/ / /g;
151 $OUT .= $item->{'title'};
154 if exists $item->{'size'};
157 if exists $item->{'url'} && $action ne $item->{'url'};
159 $OUT .= '</TD></TR>';
163 if ( $menu_bottom_image ) {
164 $OUT .= '<TR><TD STYLE="padding:0px"><IMG SRC="image.cgi?name=menu_bottom_image;agentnum='. $agentnum. '"></TD></TR>';
166 $OUT .= '<TR><TD STYLE="border-right: 1px solid black" HEIGHT="100%"><BR><BR><BR><BR></TD></TR>';