[Rt-commit] r6148 - rtir/branches/2.0-TESTING/etc/upgrade/1.9.0

ruz at bestpractical.com ruz at bestpractical.com
Tue Oct 3 18:22:22 EDT 2006


Author: ruz
Date: Tue Oct  3 18:22:22 2006
New Revision: 6148

Modified:
   rtir/branches/2.0-TESTING/etc/upgrade/1.9.0/content

Log:
* add RTFM data to the upgrade script

Modified: rtir/branches/2.0-TESTING/etc/upgrade/1.9.0/content
==============================================================================
--- rtir/branches/2.0-TESTING/etc/upgrade/1.9.0/content	(original)
+++ rtir/branches/2.0-TESTING/etc/upgrade/1.9.0/content	Tue Oct  3 18:22:22 2006
@@ -414,3 +414,53 @@
     },
 } );
 
+ at Final = ( sub {
+    $| = 1;
+    my $CurrentUser = RT::CurrentUser->new();
+    $CurrentUser->LoadByName('RT_System');
+
+    require RT::FM::Class;
+    my $class = RT::FM::Class->new($CurrentUser);
+    $class->Load('Templates');
+    unless ($class->Id) {
+        print "  Creating 'Templates' RTFM class..";
+        my ($id, $msg) = $class->Create(
+            Name => 'Templates',
+            Description => 'Response templates',
+            HotList => 1
+        );
+        die $msg unless $id;
+        print "Done\n";
+    }
+
+    my $response = RT::CustomField->new($CurrentUser);
+    $response->Load('Response');
+    unless ($response->Id and $response->LookupType eq RT::FM::Article->CustomFieldLookupType) {
+        print "  Creating 'Response' RTFM custom field..";
+        my ($id, $msg) = $response->Create(
+            Name => 'Response',
+            Type => 'Text',
+            Description => 'Response to be inserted into the ticket',
+            LookupType => RT::FM::Article->CustomFieldLookupType,
+        );
+        die $msg unless $id;
+        print "Done\n";
+    }
+
+    $response->AddToObject($class);
+    $class->SetAttribute(Name => "Skip-$_", Content => 1)
+        for ("Name", "Summary", "CF-Title-".$response->Id);
+
+    my $group = RT::Group->new($CurrentUser);
+    $group->LoadUserDefinedGroup( "DutyTeam" );
+    die "Can't load group" unless $group->Id;
+
+    $group->PrincipalObj->GrantRight( Right => $_, Object => $response )
+        for qw/SeeCustomField ModifyCustomField/;
+
+    $group->PrincipalObj->GrantRight( Right => $_, Object => $class )
+        for qw/AdminClass AdminTopics CreateArticle ModifyArticle ModifyArticleTopics
+               SeeClass ShowArticle ShowArticleHistory DeleteArticle/;
+
+    print "Done.\n";
+} );


More information about the Rt-commit mailing list