[Rt-commit] [rtir] 01/02: Allow reports to be run when Constituency CF is disabled
Jim Brandt
jbrandt at bestpractical.com
Wed Jun 11 11:31:41 EDT 2014
This is an automated email from the git hooks/post-receive script.
jbrandt pushed a commit to branch 3.0/reports-without-constituencies
in repository rtir.
commit f66a376eadb6d1d0b7e1434cc3c8557a4aaef06b
Author: Jim Brandt <jbrandt at bestpractical.com>
Date: Tue Jun 3 15:09:33 2014 -0400
Allow reports to be run when Constituency CF is disabled
With this commit, the Constituency CF is now loaded as the
current user rather than the SystemUser because only users
with access to the Constituency CF should see it in the
reporting menu. However, it is a behavior change that may be
noticed by some users with more customized rights configurations.
Resolves Issues: 30040
---
html/RTIR/Reporting/Report.html | 11 ++++++++++-
html/RTIR/Reporting/index.html | 18 +++++++++++++-----
2 files changed, 23 insertions(+), 6 deletions(-)
diff --git a/html/RTIR/Reporting/Report.html b/html/RTIR/Reporting/Report.html
index ae492bb..304af8d 100644
--- a/html/RTIR/Reporting/Report.html
+++ b/html/RTIR/Reporting/Report.html
@@ -46,7 +46,13 @@
%#
%# END BPS TAGGED BLOCK }}}
<%PERL>
-$m->comp("SELF:Heading$ReportAs", Text => loc('RTIR Periodic Report for [_1]', $Constituency) );
+if ( $Constituency ){
+ $m->comp("SELF:Heading$ReportAs", Text => loc('RTIR Periodic Report for [_1]', $Constituency) );
+}
+else{
+ $m->comp("SELF:Heading$ReportAs", Text => loc('RTIR Periodic Report') );
+}
+
$m->comp("SELF:TwoColumnsTable$ReportAs",
Body => [
[ loc('Start date'), $rtstart->AsString ],
@@ -121,6 +127,9 @@ my $filter_by_incident_field = sub {
%$res = %$tickets;
}
+ # No filter on Constituency if that feature isn't being used
+ return $res if $field eq 'Constituency' and not $condition;
+
while( my($id, $t) = each %$res ) {
my $value = $get_incident_field->( $t, $field );
delete $res->{$id} if $value? $value ne $condition: $condition;
diff --git a/html/RTIR/Reporting/index.html b/html/RTIR/Reporting/index.html
index 6de5b82..9b76078 100644
--- a/html/RTIR/Reporting/index.html
+++ b/html/RTIR/Reporting/index.html
@@ -50,6 +50,7 @@
<form action="index.html" method="post">
<table>
+% unless ( $ConstituencyDisabled ){
<tr>
<td class="label"><&|/l&>Constituency</&>:</td>
<td class="value">
@@ -61,6 +62,7 @@
&>
</td>
</tr>
+% }
<tr>
<td class="label"><&|/l&>Start Date:</&></td>
<td class="input">
@@ -92,9 +94,18 @@
</form>
<%INIT>
+my $QueueObj = RT::Queue->new($session{'CurrentUser'});
+$QueueObj->Load('Incidents');
+
+my $ConstituencyDisabled = 0;
+my $constituency_cf = RT::CustomField->new($session{'CurrentUser'});
+my ($ok, $msg) = $constituency_cf->LoadByName(Queue => $QueueObj->Id, Name => 'Constituency');
+if ( not $ok or $constituency_cf->Disabled ){
+ $ConstituencyDisabled = 1;
+}
+
if ( $ARGS{'HTMLReport'} || $ARGS{'TextReport'} || $ARGS{'SpreadsheetReport'} ) {
- unless ( $ARGS{'Constituency'} ) {
- my $constituency_cf = RT::IR::GetCustomField('Constituency');
+ unless ( $ARGS{'Constituency'} or $ConstituencyDisabled ) {
$ARGS{'Constituency'} = delete $ARGS{ 'Object-RT::Ticket--CustomField-'. $constituency_cf->Id .'-Values' };
}
my $ext = 'html';
@@ -105,9 +116,6 @@ if ( $ARGS{'HTMLReport'} || $ARGS{'TextReport'} || $ARGS{'SpreadsheetReport'} )
$m->redirect($url);
}
-my $QueueObj = RT::Queue->new($session{'CurrentUser'});
-$QueueObj->Load('Incidents');
-
my $now = RT::Date->new(RT->SystemUser);
$now->SetToNow();
my $end = RT::Date->new(RT->SystemUser);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the rt-commit
mailing list