-<%= $url = "$selfurl?session=$session_id;action="; ''; %>
+<%= $url = "$selfurl?action="; ''; %>
<TABLE BORDER=0><TR>
-<TD VALIGN="top" HEIGHT=384 BGCOLOR="#dddddd">
+<TD VALIGN="top" BGCOLOR="<%= $menu_bgcolor || $box_bgcolor || '#c0c0c0' %>">
-<TABLE CELLSPACING=0 BORDER=0>
+<TABLE CELLSPACING=0 BORDER=0 HEIGHT="100%">
<%=
-my @menu = (
-{ title=>' ' },
-{ title=>'Overview', url=>'myaccount', size=>'+1', },
-{ title=>' ' },
+if ( $menu_top_image ) {
+ $OUT .= '<TR><TD STYLE="padding:0px"><IMG SRC="image.cgi?menu_top_image"></TD></TR>';
+}
-{ title=>'Purchase', size=>'+1', },
- { title=>'Purchase additional package*', url=>'order', 'indent'=>2 },
+my @menu = (
+ { title=>' ' },
+ { title=>'Overview', url=>'myaccount', size=>'+1', },
+ { title=>' ' },
+ { title=>'Purchase', size=>'+1', },
);
-if ( 1 ) { #XXXFIXME "enable selfservice prepay features" flag or something, eventually per-pkg or something really fancy
+unless ( $access_pkgnum ) {
+ push @menu,
+ { title=>'Purchase additional package',
+ url=>'customer_order_pkg', 'indent'=>2 };
+}
- push @menu, (
- { title=>'Recharge my account with a credit card',
- url=>'make_payment', indent=>2 },
- { title=>'Recharge my account with a prepaid card',
- url=>'recharge_prepay', indent=>2 },
- );
+my %payby_mode;
+@payby_mode{@cust_paybys} = @hide_payment_fields;
+# $payby_mode{FOO} is true if FOO is thirdparty, false if it's B::OP,
+# nonexistent if it's not supported
-}
+if ( $balance > 0 ) { #XXXFIXME "enable selfservice prepay features" flag or something, eventually per-pkg or something really fancy
-push @menu, (
+ if ( exists( $payby_mode{CARD} ) ) {
+ push @menu, { title => 'Recharge my account with a credit card',
+ url => $payby_mode{CARD}
+ ? 'make_thirdparty_payment&payby_method=CC'
+ : 'make_payment',
+ indent => 2,
+ }
+ }
-{ title=>' ' },
+ if ( exists( $payby_mode{CHEK} ) ) {
+ push @menu, { title => 'Recharge my account with a check',
+ url => $payby_mode{CHEK}
+ ? 'make_thirdparty_payment&payby_method=ECHECK'
+ : 'make_ach_payment',
+ indent => 2,
+ }
+ }
-{ title=>'Setup my services', url=>'provision', size=>'+1', },
+ if ( exists( $payby_mode{PREP} ) ) {
+ push @menu, { title => 'Recharge my account with a prepaid card',
+ url => 'recharge_prepay',
+ indent => 2,
+ }
+ }
-{ title=>' ' },
+ if ( exists( $payby_mode{PPAL} ) ) {
+ push @menu, { title => 'Recharge my account with PayPal',
+ url => 'make_thirdparty_payment&payby_method=PAYPAL',
+ indent => 2,
+ }
+ }
+}
-{ title=>'Change my information', size=>'+1', },
- { title=>'Change payment information*', url=>'change_bill', indent=>2 },
- { title=>'Change service address*', url=>'change_ship', indent=>2 },
- { title=>'Change password(s)', url=>'change_password', indent=>2 },
+push @menu,
+ { title=>' ' },
+ { title=>'View my usage', url=>'view_usage', size=>'+1', },
+ { title=>'Create a ticket', url=>'tktcreate', size=>'+1', },
+;
-{ title=>' ' },
+unless ( $access_pkgnum ) {
+ push @menu,
+ { title=>'Setup my services', url=>'provision', size=>'+1', },
+ ;
+}
-{ title=>'Logout', url=>'logout', size=>'+1', },
+push @menu,
+ { title=>' ' };
-);
+push @menu,
+ { title=>'Change my information', size=>'+1', };
+unless ( $access_pkgnum ) {
+ push @menu,
+ { title=>'Change billing address', url=>'change_bill', indent=>2 },
+ { title=>'Change service address', url=>'change_ship', indent=>2 },
+ { title=>'Change payment information', url=>'change_pay', indent=>2 },
+ ;
+}
+
+push @menu,
+ { title=>'Change password(s)', url=>'change_password', indent=>2 },
+ { title=>' ' },
+ { title=>'Logout', url=>'logout', size=>'+1', },
+;
+
+my %menu_disable = map { $_=>1 } @menu_disable;
foreach my $item ( @menu ) {
+ next if ( $menu_skipblanks && $item->{'title'} =~ /^\s*$/ )
+ || ( $menu_skipheadings && ! $item->{'url'} )
+ || $menu_disable{$item->{'title'}};
+
$OUT .= '<TR><TD';
- if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
- $OUT .= ' BGCOLOR="#eeeeee" '.
- ' STYLE="border-top: 1px solid black;'.
- ' border-left: 1px solid black;'.
- ' border-bottom: 1px solid black"';
+ if ( $menu_body_image ) {
+ if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
+ $OUT .= #' BGCOLOR="'. ( $body_bgcolor || '#eeeeee' ). '" '.
+ ' STYLE="background: url(image.cgi?menu_body_image) 0 bottom; '.
+ ' color:#3366CC"; '. #XXX config
+ ' " ';
+ } else {
+ $OUT .= ' STYLE="background: url(image.cgi?menu_body_image) 0 bottom" ';
+ }
} else {
- $OUT .= ' STYLE="border-right: 1px solid black"';
+ if ( exists $item->{'url'} && $action eq $item->{'url'} ) {
+ $OUT .= ' BGCOLOR="'. ( $body_bgcolor || '#eeeeee' ). '" '.
+ ' STYLE="border-top: 1px solid black;'.
+ ' border-left: 1px solid black;'.
+ ' border-bottom: 1px solid black"';
+ } else {
+ $OUT .= ' STYLE="border-right: 1px solid black"';
+ }
}
$OUT.='>';
- $OUT .= '<FONT SIZE="'. $item->{'size'}. '">'
- if exists $item->{'size'};
-
- $OUT .= ' ' x $item->{'indent'}
- if exists $item->{'indent'};
+ if ( $menu_skipheadings ) {
+ $OUT .= ' ';
+ } else {
+ $OUT .= ' ' x $item->{'indent'}
+ if exists $item->{'indent'};
+ }
$OUT .= '<A HREF="'. $url. $item->{'url'}. '">'
if exists $item->{'url'} && $action ne $item->{'url'};
+ $OUT .= '<FONT SIZE="'. ( $menu_fontsize || $item->{'size'} ). '">'
+ if $menu_fontsize || exists($item->{'size'});
+
$item->{'title'} =~ s/ / /g;
$OUT .= $item->{'title'};
}
-%>
+if ( $menu_bottom_image ) {
+ $OUT .= '<TR><TD STYLE="padding:0px"><IMG SRC="image.cgi?menu_bottom_image"></TD></TR>';
+} else {
+ $OUT .= '<TR><TD STYLE="border-right: 1px solid black" HEIGHT="100%"><BR><BR><BR><BR></TD></TR>';
+}
-<TR><TD STYLE="border-right: 1px solid black"><BR><BR>* coming soon</TD></TR>
+%>
</TABLE>