
falcone at bestpractical
May 9, 2008, 9:35 AM
Post #1 of 1
(27 views)
Permalink
|
|
r12191 - in rtfm/branches/2.3-EXPERIMENTAL: . inc/Module/Install lib/RT/FM t
|
|
Author: falcone Date: Fri May 9 12:35:42 2008 New Revision: 12191 Added: rtfm/branches/2.3-EXPERIMENTAL/lib/RT/FM/Introduction.pod Removed: rtfm/branches/2.3-EXPERIMENTAL/docs/todo Modified: rtfm/branches/2.3-EXPERIMENTAL/ (props changed) rtfm/branches/2.3-EXPERIMENTAL/MANIFEST rtfm/branches/2.3-EXPERIMENTAL/README rtfm/branches/2.3-EXPERIMENTAL/TODO rtfm/branches/2.3-EXPERIMENTAL/inc/Module/Install/RTx.pm rtfm/branches/2.3-EXPERIMENTAL/t/utils.pl Log: r32347[at]ketch: falcone | 2008-05-08 16:57:12 -0400 merge doc changes from 2.2 r32348[at]ketch: falcone | 2008-05-08 16:59:15 -0400 * remove documentation of deleted config option r32349[at]ketch: falcone | 2008-05-08 16:59:28 -0400 * remove 2.2.2 release notes r32350[at]ketch: falcone | 2008-05-08 17:12:02 -0400 * fix up MANIFEST r32398[at]ketch: falcone | 2008-05-09 10:59:38 -0400 * fix errant checkin after local substitution Modified: rtfm/branches/2.3-EXPERIMENTAL/MANIFEST ============================================================================== --- rtfm/branches/2.3-EXPERIMENTAL/MANIFEST (original) +++ rtfm/branches/2.3-EXPERIMENTAL/MANIFEST Fri May 9 12:35:42 2008 @@ -3,7 +3,6 @@ docs/adding_ticketing docs/developers_guide docs/schema.html -docs/todo docs/whatwsitgoodfor etc/acl.mysql etc/acl.Oracle @@ -64,6 +63,7 @@ html/Callbacks/RTFM/Elements/Tabs/Default html/Callbacks/RTFM/RTIR/Elements/Tabs/Default html/Callbacks/RTFM/SelfService/Elements/Tabs/Default +html/Callbacks/RTFM/Ticket/Create.html/BeforeMessageBox html/Callbacks/RTFM/Ticket/Elements/Tabs/Default html/Callbacks/RTFM/Ticket/Update.html/BeforeMessageBox html/NoAuth/webrtfm.css @@ -92,6 +92,7 @@ html/RTFM/Article/History.html html/RTFM/Article/PreCreate.html html/RTFM/Article/Search.html +html/RTFM/Elements/BeforeMessageBox html/RTFM/Elements/CreateArticle html/RTFM/Elements/Error html/RTFM/Elements/GotoArticle @@ -131,6 +132,7 @@ lib/RT/FM/Class_Overlay.pm lib/RT/FM/ClassCollection.pm lib/RT/FM/ClassCollection_Overlay.pm +lib/RT/FM/Introduction.pod lib/RT/FM/ObjectTopic.pm lib/RT/FM/ObjectTopicCollection.pm lib/RT/FM/ObjectTopicCollection_Overlay.pm Modified: rtfm/branches/2.3-EXPERIMENTAL/README ============================================================================== --- rtfm/branches/2.3-EXPERIMENTAL/README (original) +++ rtfm/branches/2.3-EXPERIMENTAL/README Fri May 9 12:35:42 2008 @@ -16,6 +16,8 @@ Installation instructions: -------------------------- +NOTE that upgrade steps are described below. + 1) Install RT 3.4.2 or newer 2) Once RT appears to be happily installed, cd into the directory you @@ -29,14 +31,19 @@ 6) stop and start your web server +7) Before you can add content to RTFM articles, you will need to configure + classes and custom fields. For details, see lib/RT/FM/Introduction.pod + ---------------------------------------------- Upgrade instructions can be found in UPGRADING ----------------------------------------------- +Further reading: +----------------------------------------------------- -After Installation: -------------------- +You can read pod files using perldoc utility that comes with perl. +1) lib/RT/FM/Introduction.pod - quick overview +2) lib/RT/FM/Config.pod - RTFM's config options Staff users should be now have a new "RTFM" menu item RT's top level menu. As an administrator, you should go create some "Classes" of articles in RTFM. @@ -49,8 +56,6 @@ Once you've created your custom fields, go into your classes and click on "Custom Fields" and add the Custom Fields you want to each class. -Grant some ACLs to your users and start creating articles. - Each Article will belong to a particular Class, but Articles can also be grouped using Topics. Topics are created by administrators on Classes using the 'Topics' submenu of the RTFM Class configuration. The @@ -84,6 +89,31 @@ widget that lets you search for and include RTFM articles in your reply. (They're editable, of course). +You can also bind articles to topics. Topics are created by administrators +on classes using the 'Topics' submenu of the RTFM class configuration. +The configuration screen for the class has a tab for 'topics'. Typing the +name (and optionally description) of the topic, and then clicking the button +at the appropriate location. This should allow you to build a tree of topics. +This tree of topics should show up when creating or modifying articles +in the class. These can be arbitrarily nested categories. + +Articles topics can be set from the 'Modify' screen for the article -- +simply select as many topics as you desire from the list at the bottom +of the screen. + +Of course, RTFM integrates with RT. You can extract the body of a +ticket into an article. Within RT, you should now see an "Extract to +article" button in the upper right hand corner of RT's UI when working +with tickets. When you click that button, RTFM will ask you which +Class to create your new article in. Once you click on a class name, +the Ticket's transactions will be displayed, along with a set of +select boxes. For each transaction, you can pick which Freeform, Text, +or WikiText field that transaction should be extracted to. From there +on in, it's just regular article creation. And the integration +doesn't stop there! When replying to or commenting on tickets, there's +a new UI widget that lets you search for and include RTFM articles in +your reply. (They're editable, of course). + New in 2.4, you can use Topics to organize a set of Queue specific Articles. Simply create a global Topic called 'Queues' and then create Topics under Queues named after each of your Queues. Within each Queue @@ -100,7 +130,8 @@ After choosing Topic 1 or Topic 2, you will be given a list of relevant articles to choose. - +Bugs reporting and discussion lists: +----------------------------------------------------- You probably want to discuss RTFM on rt-users[at]lists.bestpractical.com. (Send mail to rt-users-request[at]lists.fsck.com to subscribe) @@ -109,7 +140,6 @@ at open bug reports at http://rt3.fsck.com/. Log in as guest/guest to see the content of bug reports. - Best, Jesse Vincent Best Practical Solutions, LLC Modified: rtfm/branches/2.3-EXPERIMENTAL/TODO ============================================================================== --- rtfm/branches/2.3-EXPERIMENTAL/TODO (original) +++ rtfm/branches/2.3-EXPERIMENTAL/TODO Fri May 9 12:35:42 2008 @@ -14,3 +14,69 @@ Seals of approval Email -> Article gateway, with at least some categorization and metadata fill in . + + +=== content of docs/todo file + + +Upgrades + + Document RTFM 2.0 -> new upgrade procedure + + + +Admin + + Add menus to associate custom fields with a given class + + +Testing + + +Links: + + + When extracting an article from an RT link, shall add functionality to automatically create the relationship and provide links between the original ticket and the newly created article. + + + +Custom fields: + + Add back wikitext fields + +Hierarchy: + + + Hierarchy selection on article creation + + +M. Menu + + FAQ Class page: Show linkable hierarchies with an option to show all (like a table of contents). + + +Access control: + + Configuration should not be shown unless the user has + permissions to Configure a class. + +N. Formatting + + Custom field UI display cleanup: + Needs to be more space between each custom field + (ie, Answer and Question need more separation). + +Search UI + + If link "Show advanced search options" is selected, + the Search section should appear at the top of the page. + + Saved searches + + Bookmarkable searches + + Search in upper right shall query article id, name and summary. + + Add: Search all custom fields for _____ + + Search by hierachy Modified: rtfm/branches/2.3-EXPERIMENTAL/inc/Module/Install/RTx.pm ============================================================================== --- rtfm/branches/2.3-EXPERIMENTAL/inc/Module/Install/RTx.pm (original) +++ rtfm/branches/2.3-EXPERIMENTAL/inc/Module/Install/RTx.pm Fri May 9 12:35:42 2008 @@ -1,11 +1,15 @@ #line 1 package Module::Install::RTx; -use Module::Install::Base; -[at]ISA = qw(Module::Install::Base); - -$Module::Install::RTx::VERSION = '0.20'; +use 5.008; use strict; +use warnings; +no warnings 'once'; + +use Module::Install::Base; +use base 'Module::Install::Base'; +our $VERSION = '0.22'; + use FindBin; use File::Glob (); use File::Basename (); @@ -21,10 +25,10 @@ $self->name("$RTx-$name") unless $self->name; + $self->all_from( -e "$name.pm" ? "$name.pm" : "lib/$RTx/$fname.pm" ) + unless $self->version; $self->abstract("RT $name Extension") unless $self->abstract; - $self->version_from( -e "$name.pm" ? "$name.pm" : "lib/$RTx/$fname.pm" ) - unless $self->version; my @prefixes = (qw(/opt /usr/local /home /usr /sw )); my $prefix = $ENV{PREFIX}; @@ -49,6 +53,7 @@ } my $lib_path = File::Basename::dirname( $INC{'RT.pm'} ); + my $local_lib_path = "$RT::LocalPath/lib"; print "Using RT configuration from $INC{'RT.pm'}:\n"; unshift @INC, "$RT::LocalPath/lib" if $RT::LocalPath; @@ -60,11 +65,14 @@ my $with_subdirs = $ENV{WITH_SUBDIRS}; @ARGV = grep { /WITH_SUBDIRS=(.*)/ ? ( ( $with_subdirs = $1 ), 0 ) : 1 } @ARGV; - my %subdirs = map { $_ => 1 } split( /\s*,\s*/, $with_subdirs ); + + my %subdirs; + %subdirs = map { $_ => 1 } split( /\s*,\s*/, $with_subdirs ) + if defined $with_subdirs; foreach (qw(bin etc html po sbin var)) { next unless -d "$FindBin::Bin/$_"; - next if %subdirs and !$subdirs{$_}; + next if keys %subdirs and !$subdirs{$_}; $self->no_index( directory => $_ ); no strict 'refs'; @@ -73,7 +81,7 @@ } $path{$_} .= "/$name" for grep $path{$_}, qw(etc po var); - $path{lib} = "$RT::LocalPath/lib" unless %subdirs and !$subdirs{'lib'}; + $path{lib} = "$RT::LocalPath/lib" unless keys %subdirs and !$subdirs{'lib'}; # If we're running on RT 3.8 with plugin support, we really wany # to install libs, mason templates and po files into plugin specific @@ -118,10 +126,10 @@ $self->load('RTxFactory'); $self->postamble(<< "."); factory :: -\t\$(NOECHO) \$(PERL) -Ilib -I"$lib_path" -Minc::Module::Install -e"RTxFactory(qw($RTx $name))" +\t\$(NOECHO) \$(PERL) -Ilib -I"$local_lib_path" -I"$lib_path" -Minc::Module::Install -e"RTxFactory(qw($RTx $name))" dropdb :: -\t\$(NOECHO) \$(PERL) -Ilib -I"$lib_path" -Minc::Module::Install -e"RTxFactory(qw($RTx $name drop))" +\t\$(NOECHO) \$(PERL) -Ilib -I"$local_lib_path" -I"$lib_path" -Minc::Module::Install -e"RTxFactory(qw($RTx $name drop))" . } @@ -146,13 +154,13 @@ print "For first-time installation, type 'make initdb'.\n"; my $initdb = ''; $initdb .= <<"." if $has_etc{schema}; -\t\$(NOECHO) \$(PERL) -Ilib -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(schema))" +\t\$(NOECHO) \$(PERL) -Ilib -I"$local_lib_path" -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(schema))" . $initdb .= <<"." if $has_etc{acl}; -\t\$(NOECHO) \$(PERL) -Ilib -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(acl))" +\t\$(NOECHO) \$(PERL) -Ilib -I"$local_lib_path" -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(acl))" . $initdb .= <<"." if $has_etc{initialdata}; -\t\$(NOECHO) \$(PERL) -Ilib -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(insert))" +\t\$(NOECHO) \$(PERL) -Ilib -I"$local_lib_path" -I"$lib_path" -Minc::Module::Install -e"RTxInitDB(qw(insert))" . $self->postamble("initdb ::\n$initdb\n"); $self->postamble("initialize-database ::\n$initdb\n"); @@ -172,6 +180,4 @@ __END__ -#line 239 - -#line 260 +#line 281 Added: rtfm/branches/2.3-EXPERIMENTAL/lib/RT/FM/Introduction.pod ============================================================================== --- (empty file) +++ rtfm/branches/2.3-EXPERIMENTAL/lib/RT/FM/Introduction.pod Fri May 9 12:35:42 2008 @@ -0,0 +1,47 @@ + +=head1 INTRODUCTION + +=head2 Basics + +Staff users should be now have a new "RTFM" menu item RT's top level menu. +As an administrator, you should go create some "Classes" of articles in RTFM. +Classes are equivalent to RT's queues. Unlike RTFM 1.0, RTFM 2.0 doesn't have a +single "body" section for each article. Everything is a custom field (except +for name, summary and some other basic metadata). So, you need to go create +some custom fields. + +Once you've created your custom fields, go into your classes and click +on "Custom Fields" and add the Custom Fields you want to each class. + +Grant some ACLs to your users and start creating articles. + +You can also bind articles to topics. Topics are created by administrators +on classes using the 'Topics' submenu of the RTFM class configuration. +The configuration screen for the class has a tab for 'topics'. Typing the +name (and optionally description) of the topic, and then clicking the button +at the appropriate location. This should allow you to build a tree of topics. +This tree of topics should show up when creating or modifying articles +in the class. These can be arbitrarily nested categories. + +Articles topics can be set from the 'Modify' screen for the article -- +simply select as many topics as you desire from the list at the bottom +of the screen. + +Of course, RTFM integrates with RT. You can extract the body of a +ticket into an article. Within RT, you should now see an "Extract to +article" button in the upper right hand corner of RT's UI when working +with tickets. When you click that button, RTFM will ask you which +Class to create your new article in. Once you click on a class name, +the Ticket's transactions will be displayed, along with a set of +select boxes. For each transaction, you can pick which Freeform, Text, +or WikiText field that transaction should be extracted to. From there +on in, it's just regular article creation. And the integration +doesn't stop there! When replying to or commenting on tickets, there's +a new UI widget that lets you search for and include RTFM articles in +your reply. (They're editable, of course). + +=head2 Config options + +You can read about that in F<lib/RT/FM/Config.pod> + +=cut Modified: rtfm/branches/2.3-EXPERIMENTAL/t/utils.pl ============================================================================== --- rtfm/branches/2.3-EXPERIMENTAL/t/utils.pl (original) +++ rtfm/branches/2.3-EXPERIMENTAL/t/utils.pl Fri May 9 12:35:42 2008 @@ -5,7 +5,7 @@ BEGIN { ### after: push @INC, qw(@RT_LIB_PATH@); - push @INC, qw(/Users/falcone/svk/customers/apnic/rt-3.6.6/local/lib /Users/falcone/svk/customers/apnic/rt-3.6.6//lib); + push @INC, qw(/opt/rt3/local/lib /opt/rt3/lib); } 1; _______________________________________________ Rt-commit mailing list Rt-commit[at]lists.bestpractical.com http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-commit
|