summaryrefslogtreecommitdiff
path: root/httemplate
diff options
context:
space:
mode:
Diffstat (limited to 'httemplate')
-rw-r--r--httemplate/elements/menu.html7
-rwxr-xr-xhttemplate/search/svc_acct.cgi10
2 files changed, 17 insertions, 0 deletions
diff --git a/httemplate/elements/menu.html b/httemplate/elements/menu.html
index 5c0314ced..3d346f97a 100644
--- a/httemplate/elements/menu.html
+++ b/httemplate/elements/menu.html
@@ -128,6 +128,13 @@ foreach my $svcdb ( FS::part_svc->svc_tables() ) {
];
}
+ if ( $svcdb = 'svc_acct' ) {
+ $report_svc{"All $lcname never logged in"} =
+ [ svc_url( %svc_url, 'query' => "magic=nologin;sortby=svcnum" ),
+ '',
+ ];
+ }
+
if ( $curuser->access_right('View/link unlinked services') ) {
$report_svc{"Unlinked $lcname"} =
[ svc_url( %svc_url, 'query' => "magic=unlinked;sortby=". $sorts->[0] ),
diff --git a/httemplate/search/svc_acct.cgi b/httemplate/search/svc_acct.cgi
index 62fb9821b..62b276748 100755
--- a/httemplate/search/svc_acct.cgi
+++ b/httemplate/search/svc_acct.cgi
@@ -80,6 +80,16 @@ if ( $cgi->param('magic') =~ /^(all|unlinked)$/ ) {
$orderby = "ORDER BY $sortby";
}
+} elsif ( $cgi->param('magic') =~ /^nologin$/ ) {
+
+ if ( $cgi->param('sortby') =~ /^(\w+)$/ ) {
+ my $sortby = $1;
+ $sortby = "LOWER($sortby)"
+ if $sortby eq 'username';
+ push @extra_sql, "last_login IS NULL";
+ $orderby = "ORDER BY $sortby";
+ }
+
} elsif ( $cgi->param('popnum') =~ /^(\d+)$/ ) {
push @extra_sql, "popnum = $1";
$orderby = "ORDER BY LOWER(username)";