[Jifty-commit] r6944 - in jifty/trunk/lib/Jifty/Plugin/Config: Action
Jifty commits
jifty-commit at lists.jifty.org
Wed May 6 12:14:47 EDT 2009
Author: sunnavy
Date: Wed May 6 12:14:45 2009
New Revision: 6944
Added:
jifty/trunk/lib/Jifty/Plugin/Config/Action/Restart.pm
Modified:
jifty/trunk/lib/Jifty/Plugin/Config/Dispatcher.pm
jifty/trunk/lib/Jifty/Plugin/Config/View.pm
Log:
tweak config plugin: add Restart action; now we have "save" and "save&restart" buttons
Added: jifty/trunk/lib/Jifty/Plugin/Config/Action/Restart.pm
==============================================================================
--- (empty file)
+++ jifty/trunk/lib/Jifty/Plugin/Config/Action/Restart.pm Wed May 6 12:14:45 2009
@@ -0,0 +1,33 @@
+package Jifty::Plugin::Config::Action::Restart;
+use strict;
+use warnings;
+
+use base qw/Jifty::Action/;
+
+=head2 NAME
+
+Jifty::Plugin::Config::Action::Restart - Restart action
+
+=cut
+
+
+=head2 arguments
+
+=cut
+
+sub arguments {
+ return {};
+}
+
+=head2 take_action
+
+=cut
+
+sub take_action {
+ my $self = shift;
+ Jifty->web->tangent( url => Jifty::Plugin::Config->restart_url . '?url=/' );
+ return 1;
+}
+
+1;
+
Modified: jifty/trunk/lib/Jifty/Plugin/Config/Dispatcher.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Plugin/Config/Dispatcher.pm (original)
+++ jifty/trunk/lib/Jifty/Plugin/Config/Dispatcher.pm Wed May 6 12:14:45 2009
@@ -38,6 +38,7 @@
before '*' => run {
Jifty->api->allow('Jifty::Plugin::Config::Action::Config');
+ Jifty->api->allow('Jifty::Plugin::Config::Action::Restart');
};
1;
Modified: jifty/trunk/lib/Jifty/Plugin/Config/View.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Plugin/Config/View.pm (original)
+++ jifty/trunk/lib/Jifty/Plugin/Config/View.pm Wed May 6 12:14:45 2009
@@ -9,10 +9,18 @@
my $restart_url = Jifty::Plugin::Config->restart_url;
template $config_url => sub {
my $config = new_action( class => 'Config' );
+ $config->order(1);
+ my $restart = new_action( class => 'Restart' );
+ $restart->order(2);
form {
render_action( $config );
- form_next_page( url => '/__jifty/config/restart.html' );
- form_submit( label => _('Save and Restart') );
+ form_submit( label => _('Save') );
+ form_submit(
+ label => _('Save and Restart'),
+ # WARN: though it's an array, it doesn't mean the actions are run
+ # in this order, please set ->order for each action to do this
+ submit => [ $config, $restart ],
+ );
}
};
More information about the Jifty-commit
mailing list