[Rt-commit] r12191 - in rtfm/branches/2.3-EXPERIMENTAL: . inc/Module/Install lib/RT/FM t
falcone at bestpractical.com
falcone at bestpractical.com
Fri May 9 12:35:42 EDT 2008
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;
More information about the Rt-commit
mailing list