
sartak at bestpractical
Nov 20, 2009, 1:05 PM
Post #1 of 1
(191 views)
Permalink
|
|
rt branch, 3.999-trunk, updated. 9b52f01aa7da2a46c5b15b4928c7e6857710b671
|
|
The branch, 3.999-trunk has been updated via 9b52f01aa7da2a46c5b15b4928c7e6857710b671 (commit) from 2da50d21210eacbd22f43bf95efdc37dca6ff301 (commit) Summary of changes: lib/RT/Dispatcher.pm | 12 ++++++++++++ lib/RT/Model/QueueCollection.pm | 1 - lib/RT/View/Ticket/Create.pm | 28 +++++++++++++++++++++++----- 3 files changed, 35 insertions(+), 6 deletions(-) - Log ----------------------------------------------------------------- commit 9b52f01aa7da2a46c5b15b4928c7e6857710b671 Author: Shawn M Moore <sartak [at] bestpractical> Date: Fri Nov 20 16:04:46 2009 -0500 When you try to go to /ticket/create without a queue, show an intermediate page with clickable queues diff --git a/lib/RT/Dispatcher.pm b/lib/RT/Dispatcher.pm index 4a8cf1a..b801e14 100644 --- a/lib/RT/Dispatcher.pm +++ b/lib/RT/Dispatcher.pm @@ -746,6 +746,18 @@ before qr{^/Search/Build.html} => run { }; +on '/ticket/create' => run { + my $action = Jifty->web->request->action('create_ticket'); + my $queue = $action ? $action->argument('queue') : get('queue'); + if (!defined($queue)) { + show '/ticket/select-queue-for-create'; + } + else { + set(queue => $queue); + show '/ticket/create'; + } +}; + # Backward compatibility with old RT URLs before '/NoAuth/Logout.html' => run { redirect '/logout' }; diff --git a/lib/RT/Model/QueueCollection.pm b/lib/RT/Model/QueueCollection.pm index 7a32849..b24dcb0 100755 --- a/lib/RT/Model/QueueCollection.pm +++ b/lib/RT/Model/QueueCollection.pm @@ -131,6 +131,5 @@ sub add_record { $self->SUPER::add_record($Queue); } - 1; diff --git a/lib/RT/View/Ticket/Create.pm b/lib/RT/View/Ticket/Create.pm index f56b4bb..708fe6b 100644 --- a/lib/RT/View/Ticket/Create.pm +++ b/lib/RT/View/Ticket/Create.pm @@ -54,11 +54,7 @@ use Jifty::View::Declare -base; __PACKAGE__->use_mason_wrapper; template 'create' => page { title => _('Create a new ticket') } content { - # If we have a create_ticket action, pluck the queue out, otherwise, - # check the regular queue query parameter - my $action = Jifty->web->request->action('create_ticket'); - my $queue = $action ? $action->argument('queue') : get('queue'); - $queue or die "Queue not specified"; + my $queue = get('queue'); my $create = new_action( class => 'CreateTicket', @@ -74,5 +70,27 @@ template 'create' => page { title => _('Create a new ticket') } content { }; }; +template 'select-queue-for-create' => +page { title => _('Create a new ticket') } +content { + my $queues = RT::Model::QueueCollection->new; + $queues->unlimit; + + p { _("Please select a queue for your new ticket.") }; + ul { + while (my $queue = $queues->next) { + li { + hyperlink( + label => $queue->name, + url => '/ticket/create', + parameters => { + queue => $queue->id, + }, + ); + } + } + } +}; + 1; ----------------------------------------------------------------------- _______________________________________________ Rt-commit mailing list Rt-commit [at] lists http://lists.bestpractical.com/cgi-bin/mailman/listinfo/rt-commit
|