[Rt-commit] rt branch, 5.0/user-summary-assets, updated. rt-5.0.0alpha1-207-g41ee08213c
Jim Brandt
jbrandt at bestpractical.com
Mon May 4 12:01:45 EDT 2020
The branch, 5.0/user-summary-assets has been updated
via 41ee08213c2076b3634f0265ce453dcc7999e7b3 (commit)
via 3bafa3717343532bb5adc2d5a7d410b7b8da842b (commit)
from f726997126b9295d882cf1bddeed39e22517b603 (commit)
Summary of changes:
share/html/Group/Elements/AssetList | 20 +++++++++-----------
share/html/Group/Elements/Portlets/GroupAssets | 2 +-
share/html/SelfService/Asset/index.html | 2 +-
share/html/User/Elements/AssetList | 19 +++++++++----------
share/html/User/Elements/Portlets/UserAssets | 2 +-
5 files changed, 21 insertions(+), 24 deletions(-)
- Log -----------------------------------------------------------------
commit 3bafa3717343532bb5adc2d5a7d410b7b8da842b
Author: Jim Brandt <jbrandt at bestpractical.com>
Date: Mon May 4 11:41:19 2020 -0400
Convert asset lists to FromSQL searches
Also use the Roles arg to define the query rather than the
hard-coded list previously. Roles can now be modified via
callback.
diff --git a/share/html/Group/Elements/AssetList b/share/html/Group/Elements/AssetList
index d35b03e98e..ccdeeec0b8 100644
--- a/share/html/Group/Elements/AssetList
+++ b/share/html/Group/Elements/AssetList
@@ -47,14 +47,7 @@
%# END BPS TAGGED BLOCK }}}
<%INIT>
my $assets = RT::Assets->new($session{CurrentUser});
-$m->callback( CallbackName => 'ModifyAssetSearch', %ARGS, Assets => $assets, Roles => \@Roles );
-for my $role (@Roles) {
- $assets->RoleLimit(
- TYPE => $role,
- VALUE => $Group->PrincipalId,
- SUBCLAUSE => "Role$role",
- );
-}
+
my $Format = q[
'<b><a href="__WebHomePath__/Asset/Display.html?id=__id__">__id__</a></b>/TITLE:#',
'<b><a href="__WebHomePath__/Asset/Display.html?id=__id__">__Name__</a></b>/TITLE:Name',
@@ -63,16 +56,21 @@ my $Format = q[
$m->callback( CallbackName => 'ModifyFormat', %ARGS, Format => \$Format );
my %QueryProperties = (
- Query => join(' OR ', map { "$_.id = ".$Group->PrincipalId } ('HeldBy', 'Contact', 'Owner') ),
+ Query => join(' OR ', map { "$_.id = ".$Group->PrincipalId } @Roles ),
OrderBy => 'id',
Order => 'ASC',
);
-
$m->callback( CallbackName => 'ModifyQueryProperties',
%ARGS,
QueryProperties => \%QueryProperties,
+ Roles => \@Roles,
);
+my ($ok, $msg) = $assets->FromSQL($QueryProperties{Query});
+RT->Logger->error('Unable to parse asset query ' . $QueryProperties{Query} . ' : $msg')
+ unless $ok;
+$m->callback( CallbackName => 'ModifyAssetSearch', %ARGS, Assets => $assets, Roles => \@Roles );
+
my $query_string = $m->comp('/Elements/QueryString',
Class => 'RT::Assets',
Query => $QueryProperties{Query},
@@ -110,6 +108,6 @@ my $bulk_update_url =
<%ARGS>
$Group
$Title
- at Roles
+ at Roles => ('HeldBy', 'Contact', 'Owner')
$HasResults => undef
</%ARGS>
diff --git a/share/html/Group/Elements/Portlets/GroupAssets b/share/html/Group/Elements/Portlets/GroupAssets
index 88aa7a2ee2..e4a4b563e7 100644
--- a/share/html/Group/Elements/Portlets/GroupAssets
+++ b/share/html/Group/Elements/Portlets/GroupAssets
@@ -46,7 +46,7 @@
%#
%# END BPS TAGGED BLOCK }}}
%# Roles => [''] triggers the magical RoleLimit behavior that matches any role
-<& /Group/Elements/AssetList, Group => $Group, Roles => [''], Title => loc('Assigned Assets') &>
+<& /Group/Elements/AssetList, Group => $Group, Title => loc('Assigned Assets') &>
<%ARGS>
$Group
</%ARGS>
diff --git a/share/html/User/Elements/AssetList b/share/html/User/Elements/AssetList
index 061a3a4361..ffd4a15c6e 100644
--- a/share/html/User/Elements/AssetList
+++ b/share/html/User/Elements/AssetList
@@ -47,14 +47,7 @@
%# END BPS TAGGED BLOCK }}}
<%init>
my $assets = RT::Assets->new($session{CurrentUser});
-$m->callback( CallbackName => 'ModifyAssetSearch', %ARGS, Assets => $assets, Roles => \@Roles );
-for my $role (@Roles) {
- $assets->RoleLimit(
- TYPE => $role,
- VALUE => $User->PrincipalId,
- SUBCLAUSE => "Role$role",
- );
-}
+
my $Format = q[
'<b><a href="__WebHomePath__/Asset/Display.html?id=__id__">__id__</a></b>/TITLE:#',
'<b><a href="__WebHomePath__/Asset/Display.html?id=__id__">__Name__</a></b>/TITLE:Name',
@@ -63,7 +56,7 @@ my $Format = q[
$m->callback( CallbackName => 'ModifyFormat', %ARGS, Format => \$Format );
my %QueryProperties = (
- Query => join(' OR ', map { "$_.id = ".$User->Id } ('HeldBy', 'Contact', 'Owner') ),
+ Query => join(' OR ', map { "$_.id = ".$User->Id } @Roles ),
OrderBy => 'id',
Order => 'ASC',
);
@@ -71,8 +64,14 @@ my %QueryProperties = (
$m->callback( CallbackName => 'ModifyQueryProperties',
%ARGS,
QueryProperties => \%QueryProperties,
+ Roles => \@Roles,
);
+my ($ok, $msg) = $assets->FromSQL($QueryProperties{Query});
+RT->Logger->error('Unable to parse asset query ' . $QueryProperties{Query} . ' : $msg')
+ unless $ok;
+$m->callback( CallbackName => 'ModifyAssetSearch', %ARGS, Assets => $assets, Roles => \@Roles );
+
my $query_string = $m->comp('/Elements/QueryString',
Class => 'RT::Assets',
Query => $QueryProperties{Query},
@@ -110,6 +109,6 @@ my $bulk_update_url =
<%args>
$User
$Title
- at Roles
+ at Roles => ('HeldBy', 'Contact', 'Owner')
$HasResults => undef
</%args>
diff --git a/share/html/User/Elements/Portlets/UserAssets b/share/html/User/Elements/Portlets/UserAssets
index e998fa01f0..54a03852ad 100644
--- a/share/html/User/Elements/Portlets/UserAssets
+++ b/share/html/User/Elements/Portlets/UserAssets
@@ -46,7 +46,7 @@
%#
%# END BPS TAGGED BLOCK }}}
%# Roles => [''] triggers the magical RoleLimit behavior that matches any role
-<& /User/Elements/AssetList, User => $User, Roles => [''], Title => loc('Assigned Assets') &>
+<& /User/Elements/AssetList, User => $User, Title => loc('Assigned Assets') &>
<%ARGS>
$User
</%ARGS>
commit 41ee08213c2076b3634f0265ce453dcc7999e7b3
Author: Jim Brandt <jbrandt at bestpractical.com>
Date: Mon May 4 11:46:16 2020 -0400
Show HeldBy assets in self service view
This is consistent with MyAsset for privileged users.
diff --git a/share/html/SelfService/Asset/index.html b/share/html/SelfService/Asset/index.html
index 9fd526f0e8..1bd1901087 100644
--- a/share/html/SelfService/Asset/index.html
+++ b/share/html/SelfService/Asset/index.html
@@ -46,4 +46,4 @@
%#
%# END BPS TAGGED BLOCK }}}
<& /SelfService/Elements/Header, Title => loc("My Assets") &>
-<& /User/Elements/AssetList, User => $session{'CurrentUser'}->UserObj, Roles => [''], Title => loc('My Assets') &>
+<& /User/Elements/AssetList, User => $session{'CurrentUser'}->UserObj, Roles => [qw(HeldBy)], Title => loc('My Assets') &>
-----------------------------------------------------------------------
More information about the rt-commit
mailing list