Skip to content

Commit

Permalink
web: don't show the same set of data columns in any group table
Browse files Browse the repository at this point in the history
  • Loading branch information
donald committed Jul 13, 2016
1 parent cd2469d commit 6551ba1
Showing 1 changed file with 65 additions and 56 deletions.
121 changes: 65 additions & 56 deletions web/pages/mxq/mxq.in
Original file line number Diff line number Diff line change
Expand Up @@ -414,14 +414,40 @@ EOF
return $out;
}

sub group_table_rows {
my ($sth,$head)=@_;
my $out='';
sub group_table {

$out.='<table class="groups">';
my ($sql_clause,$sql_binds)=@_;

$sql_clause||='true';

my $out;
my (@cols,@head);

$out.=$q->Tr($q->th($head));
$out .= '<h2>Active Groups</h2>';

@cols=qw(
group_id group_name job_threads user_name
group_mtime
group_status
group_jobs
group_jobs_inq group_jobs_running
group_jobs_finished group_jobs_failed group_jobs_cancelled group_jobs_unknown
);

@head=qw(
group_id group_name threads user_name
group_mtime
group_status
jobs
inq running
finished failed cancelled unknown
);

my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_group WHERE '.$sql_clause.' AND (group_jobs_running>0 OR group_jobs_inq>0) ORDER BY group_id DESC');
$sth->execute(@$sql_binds);

$out.='<table class="groups">';
$out.=$q->Tr($q->th(\@head));
while (my $row=$sth->fetchrow_arrayref()) {
my ($group_id,$group_name,$job_threads,$user_name,$group_mtime,$group_status,
$group_jobs,$group_jobs_inq,$group_jobs_running,$group_jobs_finished,$group_jobs_failed,$group_jobs_cancelled,$group_jobs_unknown
Expand All @@ -441,70 +467,53 @@ sub group_table_rows {
$q->td({class=>'number'},$group_jobs_failed),
$q->td({class=>'number'},$group_jobs_cancelled),
$q->td({class=>'number'},$group_jobs_unknown)

);
}
$out.='</table>';
return $out;
}

sub group_table {

my ($sql_clause,$sql_binds)=@_;

$sql_clause||='true';

my $out;

my @cols=qw(
group_id group_name job_threads user_name group_mtime group_status
group_jobs group_jobs_inq group_jobs_running group_jobs_finished group_jobs_failed group_jobs_cancelled group_jobs_unknown
);
my @head=qw(
group_id group_name threads user_name group_mtime group_status
jobs inq running finished failed cancelled unknown
);


$out .= '<h2>Active Groups</h2>';

my $sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_group WHERE '.$sql_clause.' AND (group_jobs_running>0 OR group_jobs_inq>0) ORDER BY group_id DESC');
$sth->execute(@$sql_binds);
$out.=group_table_rows($sth,\@head);
$out .= '<h2>Finished Groups (last 7 days) </h2>';

@cols=qw(
group_id
group_name
job_threads
user_name
group_date_end
group_status
group_jobs
group_jobs_finished
group_jobs_failed
group_jobs_cancelled
group_jobs_unknown
group_id group_name job_threads user_name
group_date_end
group_status
group_jobs
group_jobs_finished group_jobs_failed group_jobs_cancelled group_jobs_unknown
);

@head=qw(
group_id
group_name
threads
user_name
date_end
group_status
jobs
finished
failed
cancelled
unknown
group_id group_name threads user_name
date_end
group_status
jobs
finished failed cancelled unknown
);

$out .= '<h2>Finished Groups (last 7 days) </h2>';

$sth=$dbh->prepare('SELECT '.join(',',@cols).' FROM mxq_group WHERE '.$sql_clause.' AND (group_jobs_running=0 AND group_jobs_inq=0) AND group_mtime >= DATE_SUB(NOW(),INTERVAL 7 DAY) ORDER BY group_id DESC');
$sth->execute(@$sql_binds);
$out.=group_table_rows($sth,\@head);

$out.='<table class="groups">';
$out.=$q->Tr($q->th(\@head));
while (my $row=$sth->fetchrow_arrayref()) {
my ($group_id,$group_name,$job_threads,$user_name,$group_date_end,$group_status,
$group_jobs,$group_jobs_finished,$group_jobs_failed,$group_jobs_cancelled,$group_jobs_unknown
)=@$row;

$out.=$q->Tr(
$q->td({class=>'number'},$q->a({href=>selfurl("/group/$group_id")},$group_id)),
$q->td($group_name),
$q->td({class=>'number'},$job_threads),
$q->td($q->a({href=>my_url('groups',{user_name=>$user_name})},$user_name)),
$q->td($group_date_end),
$q->td(group_status($group_status)),
$q->td({class=>'number'},$group_jobs),
$q->td({class=>'number'},$group_jobs_finished),
$q->td({class=>'number'},$group_jobs_failed),
$q->td({class=>'number'},$group_jobs_cancelled),
$q->td({class=>'number'},$group_jobs_unknown)
);
}
$out.='</table>';

return $out;
}
Expand Down

0 comments on commit 6551ba1

Please sign in to comment.