[Rt-commit] rt branch, 4.0/transaction-columnmap, created. rt-4.0.4-197-g4b3bec1

Kevin Falcone falcone at bestpractical.com
Fri Jan 13 19:28:16 EST 2012


The branch, 4.0/transaction-columnmap has been created
        at  4b3bec12b1976122390f719f60464044597addf9 (commit)

- Log -----------------------------------------------------------------
commit 4b3bec12b1976122390f719f60464044597addf9
Author: Kevin Falcone <falcone at bestpractical.com>
Date:   Fri Jan 13 19:27:08 2012 -0500

    First stab at a ColumnMap for Transactions
    
    We may want to add the rest of the columns, but I suspect that
    Object* and Description are generally the most useful ones.

diff --git a/share/html/Elements/RT__Transaction/ColumnMap b/share/html/Elements/RT__Transaction/ColumnMap
new file mode 100644
index 0000000..c0653d5
--- /dev/null
+++ b/share/html/Elements/RT__Transaction/ColumnMap
@@ -0,0 +1,127 @@
+%# BEGIN BPS TAGGED BLOCK {{{
+%#
+%# COPYRIGHT:
+%#
+%# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC
+%#                                          <sales at bestpractical.com>
+%#
+%# (Except where explicitly superseded by other copyright notices)
+%#
+%#
+%# LICENSE:
+%#
+%# This work is made available to you under the terms of Version 2 of
+%# the GNU General Public License. A copy of that license should have
+%# been provided with this software, but in any event can be snarfed
+%# from www.gnu.org.
+%#
+%# This work is distributed in the hope that it will be useful, but
+%# WITHOUT ANY WARRANTY; without even the implied warranty of
+%# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+%# General Public License for more details.
+%#
+%# You should have received a copy of the GNU General Public License
+%# along with this program; if not, write to the Free Software
+%# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+%# 02110-1301 or visit their web page on the internet at
+%# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html.
+%#
+%#
+%# CONTRIBUTION SUBMISSION POLICY:
+%#
+%# (The following paragraph is not intended to limit the rights granted
+%# to you to modify and distribute this software under the terms of
+%# the GNU General Public License and is only of importance to you if
+%# you choose to contribute your changes and enhancements to the
+%# community by submitting them to Best Practical Solutions, LLC.)
+%#
+%# By intentionally submitting any modifications, corrections or
+%# derivatives to this work, or any other work intended for use with
+%# Request Tracker, to Best Practical Solutions, LLC, you confirm that
+%# you are the copyright holder for those contributions and you grant
+%# Best Practical Solutions,  LLC a nonexclusive, worldwide, irrevocable,
+%# royalty-free, perpetual, license to use, copy, create derivative
+%# works based on those contributions, and sublicense and distribute
+%# those contributions and any derivatives thereof.
+%#
+%# END BPS TAGGED BLOCK }}}
+<%ARGS>
+$Name
+$Attr => undef
+</%ARGS>
+<%ONCE>
+my $COLUMN_MAP = {
+    id => {
+        title     => '#', # loc
+        attribute => 'id',
+        value     => sub { return $_[0]->id },
+    },
+    ObjectType => {
+        title     => 'ObjectType', # loc
+        attribute => 'ObjectType',
+        value     => sub { return $_[0]->ObjectType() },
+    },
+    ObjectId => {
+        title     => 'ObjectId', # loc
+        attribute => 'ObjectId',
+        value     => sub { return $_[0]->ObjectId() },
+    },
+    Type => {
+        title     => 'Type', # loc
+        attribute => 'Type',
+        value     => sub { return $_[0]->Type() },
+    },
+    Field => {
+        title     => 'Field', # loc
+        attribute => 'Field',
+        value     => sub { return $_[0]->Field() },
+    },
+    OldValue => {
+        title     => 'OldValue', # loc
+        attribute => 'OldValue',
+        value     => sub { return $_[0]->OldValue() },
+    },
+    NewValue => {
+        title     => 'NewValue', # loc
+        attribute => 'NewValue',
+        value     => sub { return $_[0]->NewValue() },
+    },
+    TimeTaken => {
+        title     => 'TimeTaken', # loc
+        attribute => 'TimeTaken',
+        value     => sub { return $_[0]->TimeTaken() },
+    },
+    Description => {
+        title     => 'Description', # loc
+        attribute => 'Description',
+        value     => sub { return $_[0]->Description() },
+    },
+    BriefDescription => {
+        title     => 'BriefDescription', # loc
+        attribute => 'BriefDescription',
+        value     => sub { return $_[0]->BriefDescription() },
+    },
+    ObjectName => {
+        title     => 'Name', # loc
+        attribute => 'ObjectName',
+        value     => sub { my $object = $_[0]->Object;
+            # this is awful, but can() doesn't work (AUTOLOAD), and we don't
+            # have any sort of standard Description field, since not everything
+            # has a Name.
+            if ( $_[0]->ObjectType eq 'RT::Ticket' ) {
+                return $object->Subject;
+            } elsif ( $object->_Accessible('Name','read') ) {
+                return $object->Name;
+            } else {
+                return loc('No Name');
+            }
+        },
+    },
+};
+
+
+</%ONCE>
+<%INIT>
+$m->callback( COLUMN_MAP => $COLUMN_MAP, CallbackName => 'ColumnMap', CallbackOnce => 1 );
+return GetColumnMapEntry( Map => $COLUMN_MAP, Name => $Name, Attribute => $Attr );
+</%INIT>

-----------------------------------------------------------------------


More information about the Rt-commit mailing list