-#false laziness w/view/cust_main/packages.html
-
-sub cust_popup_link {
- my($action, $label, $actionlabel, $color, $cust_main) = @_;
- $action .= '?'. $cust_main->custnum;
- popup_link($action, $label, $actionlabel, $color);
+my $status = $cust_main->status_label;
+$status .= ' (Cancelled)' if $cust_main->is_status_delay_cancel;
+$title_noescape .= ' (<B><FONT COLOR="#'. $cust_main->statuscolor. '">'. $status. '</FONT></B>)';
+$title .= " ($status)";
+
+#false laziness w/pref/pref.html and Conf.pm (cust_main-default_view)
+tie my %views, 'Tie::IxHash',
+ emt('Basics') => 'basics',
+ emt('Notes') => 'notes', #notes and files?
+;
+if ( $conf->config('ticket_system') ) {
+ $views{emt('Tickets')} = 'tickets';
+ $views{emt('Appointments')} = 'appointments'
+ if $curuser->access_right('View appointments');
+}
+$views{emt('Quotations')} = 'quotations';
+$views{emt('Packages')} = 'packages';
+$views{emt('Payment History')} = 'payment_history';
+$views{emt('Change History')} = 'change_history'
+ if $curuser->access_right('View customer history');
+$views{$conf->config('cust_main-custom_title') || emt('Custom')} = 'custom'
+ if $conf->config('cust_main-custom_link')
+ || $conf->config('cust_main-custom_content');
+
+my %viewname = reverse %views;
+
+my $view = $cgi->param('show') || $curuser->default_customer_view;
+
+if ($view eq 'last') {
+ # something took us away from the page and is now bouncing back
+ $view = get_page_pref('last_view', $custnum);
+} else {
+ # remember which view is open so we _can_ bounce back
+ set_page_pref('last_view', $custnum, $view);