[Jifty-commit] r1523 - in jifty/trunk: . lib/Jifty/Test/WWW
share/web/static/js t t/TestApp/t
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Mon Jul 10 17:57:17 EDT 2006
Author: alexmv
Date: Mon Jul 10 17:57:15 2006
New Revision: 1523
Modified:
jifty/trunk/ (props changed)
jifty/trunk/lib/Jifty/Action.pm
jifty/trunk/lib/Jifty/Request.pm
jifty/trunk/lib/Jifty/Test/WWW/Mechanize.pm
jifty/trunk/share/web/static/js/jifty.js
jifty/trunk/t/03-form-protocol.t
jifty/trunk/t/TestApp/t/05-editactions-Cachable.t
jifty/trunk/t/TestApp/t/05-editactions-Record.t
Log:
r15166 at zoq-fot-pik: chmrr | 2006-07-10 17:57:04 -0400
* Double fallback goes the way of the dodo
Modified: jifty/trunk/lib/Jifty/Action.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Action.pm (original)
+++ jifty/trunk/lib/Jifty/Action.pm Mon Jul 10 17:57:15 2006
@@ -446,7 +446,7 @@
Jifty::Web::Form::Field->new(
%$info,
action => $self,
- input_name => $self->double_fallback_form_field_name($name),
+ input_name => $self->fallback_form_field_name($name),
sticky => 0,
default_value => ($self->argument_value($name) || $info->{'default_value'}),
render_as => 'Hidden'
@@ -500,7 +500,7 @@
# Otherwise, if we're not registered yet, do it in the button
my $arguments = $self->arguments;
$args{parameters}{ $self->register_name } = ref $self;
- $args{parameters}{ $self->double_fallback_form_field_name($_) }
+ $args{parameters}{ $self->fallback_form_field_name($_) }
= $self->argument_value($_) || $arguments->{$_}->{'default_value'}
for grep { $arguments->{$_}{constructor} } keys %{ $arguments };
}
@@ -590,25 +590,6 @@
return $self->_prefix_field(shift, "J:A:F:F");
}
-
-=head2 double_fallback_form_field_name ARGUMENT
-
-Turn one of this action's L<arguments|Jifty::Manual::Glossary/arguments> into
-a fully qualified "double fallback" name; takes the name of the field
-as an argument.
-
-This is specifically to support "constructor" hidden inputs, which
-need to be have even lower precedence than checkbox fallbacks.
-Probably we need a more flexible system, though.
-
-=cut
-
-sub double_fallback_form_field_name {
- my $self = shift;
- return $self->_prefix_field(shift, "J:A:F:F:F");
-}
-
-
=head2 error_div_id ARGUMENT
Turn one of this action's L<arguments|Jifty::Manual::Glossary/arguments> into
Modified: jifty/trunk/lib/Jifty/Request.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Request.pm (original)
+++ jifty/trunk/lib/Jifty/Request.pm Mon Jul 10 17:57:15 2006
@@ -162,6 +162,9 @@
my %arguments;
for my $arg (keys %{$a->{fields} || {}}) {
if (ref $a->{fields}{$arg}) {
+ # Double-fallback exists for historical reasons only;
+ # Jifty applications after July 10th, 2006 should
+ # never generate them.
for my $type (qw/doublefallback fallback value/) {
$arguments{$arg} = $a->{fields}{$arg}{$type}
if exists $a->{fields}{$arg}{$type};
@@ -425,7 +428,10 @@
$active_actions->{$_} = 1 for split '!', $args{'J:ACTIONS'};
} # else $active_actions stays undef
- # Mapping from argument types to data structure names
+
+ # Mapping from argument types to data structure names;
+ # Double-fallback exists for historical reasons only; Jifty
+ # applications after July 10th, 2006 should never generate them.
my %types = ("J:A:F:F:F" => "doublefallback", "J:A:F:F" => "fallback", "J:A:F" => "value");
# The "sort" here is key; it ensures that action registrations
@@ -963,10 +969,9 @@
The action's arguments are specified with query arguments of the form
C<J:A:F-I<argumentname>-I<moniker>>. To cope with checkboxes and the
-like (which don't submit anything when left unchecked) we provide two
-levels of fallback, which are checked if the first doesn't exist:
-C<J:A:F:F-I<argumentname>-I<moniker>> and
-C<J:A:F:F:F-I<argumentname>-I<moniker>>.
+like (which don't submit anything when left unchecked) we provide a
+level of fallback, which is checked if the first doesn't exist:
+C<J:A:F:F-I<argumentname>-I<moniker>>.
=head3 state variables
Modified: jifty/trunk/lib/Jifty/Test/WWW/Mechanize.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Test/WWW/Mechanize.pm (original)
+++ jifty/trunk/lib/Jifty/Test/WWW/Mechanize.pm Mon Jul 10 17:57:15 2006
@@ -56,7 +56,7 @@
my $moniker = $1;
for my $id (keys %args) {
- my $idfield = $f->find_input("J:A:F:F:F-$id-$moniker");
+ my $idfield = $f->find_input("J:A:F:F-$id-$moniker");
next INPUT unless $idfield and $idfield->value eq $args{$id};
}
Modified: jifty/trunk/share/web/static/js/jifty.js
==============================================================================
--- jifty/trunk/share/web/static/js/jifty.js (original)
+++ jifty/trunk/share/web/static/js/jifty.js Mon Jul 10 17:57:15 2006
@@ -289,8 +289,6 @@
return "value";
} else if (/^J:A:F:F-/.test(element.name)) {
return "fallback";
- } else if (/^J:A:F:F:F-/.test(element.name)) {
- return "doublefallback";
} else {
return null;
}
Modified: jifty/trunk/t/03-form-protocol.t
==============================================================================
--- jifty/trunk/t/03-form-protocol.t (original)
+++ jifty/trunk/t/03-form-protocol.t Mon Jul 10 17:57:15 2006
@@ -401,110 +401,6 @@
J:A:F-something-second: feepy
J:ACTIONS: mymoniker!second
fragments: {}
-=== double fallbacks being ignored (with single fallback)
---- form
-J:A-mymoniker: DoSomething
-J:A:F:F:F-id-mymoniker: 789
-J:A:F:F-id-mymoniker: 456
-J:A:F-id-mymoniker: 123
-J:A:F-something-mymoniker: else
-J:ACTIONS: mymoniker
---- request
-path: /
-state_variables: {}
-actions:
- mymoniker:
- moniker: mymoniker
- class: DoSomething
- active: 1
- has_run: 0
- arguments:
- id: 123
- something: else
-arguments:
- J:A-mymoniker: DoSomething
- J:A:F:F:F-id-mymoniker: 789
- J:A:F:F-id-mymoniker: 456
- J:A:F-id-mymoniker: 123
- J:A:F-something-mymoniker: else
- J:ACTIONS: mymoniker
-fragments: {}
-=== double fallbacks being ignored (without single fallback)
---- form
-J:A-mymoniker: DoSomething
-J:A:F:F:F-id-mymoniker: 789
-J:A:F-id-mymoniker: 123
-J:A:F-something-mymoniker: else
-J:ACTIONS: mymoniker
---- request
-path: /
-state_variables: {}
-actions:
- mymoniker:
- moniker: mymoniker
- class: DoSomething
- active: 1
- has_run: 0
- arguments:
- id: 123
- something: else
-arguments:
- J:A-mymoniker: DoSomething
- J:A:F:F:F-id-mymoniker: 789
- J:A:F-id-mymoniker: 123
- J:A:F-something-mymoniker: else
- J:ACTIONS: mymoniker
-fragments: {}
-=== double fallbacks being ignored (single fallback used)
---- form
-J:A-mymoniker: DoSomething
-J:A:F:F:F-id-mymoniker: 789
-J:A:F:F-id-mymoniker: 456
-J:A:F-something-mymoniker: else
-J:ACTIONS: mymoniker
---- request
-path: /
-state_variables: {}
-actions:
- mymoniker:
- moniker: mymoniker
- class: DoSomething
- active: 1
- has_run: 0
- arguments:
- id: 456
- something: else
-arguments:
- J:A-mymoniker: DoSomething
- J:A:F:F:F-id-mymoniker: 789
- J:A:F:F-id-mymoniker: 456
- J:A:F-something-mymoniker: else
- J:ACTIONS: mymoniker
-fragments: {}
-=== double fallbacks being used
---- form
-J:A-mymoniker: DoSomething
-J:A:F:F:F-id-mymoniker: 789
-J:A:F-something-mymoniker: else
-J:ACTIONS: mymoniker
---- request
-path: /
-state_variables: {}
-actions:
- mymoniker:
- moniker: mymoniker
- class: DoSomething
- active: 1
- has_run: 0
- arguments:
- id: 789
- something: else
-arguments:
- J:A-mymoniker: DoSomething
- J:A:F:F:F-id-mymoniker: 789
- J:A:F-something-mymoniker: else
- J:ACTIONS: mymoniker
-fragments: {}
=== just validating
---- form
J:A-mymoniker: DoSomething
Modified: jifty/trunk/t/TestApp/t/05-editactions-Cachable.t
==============================================================================
--- jifty/trunk/t/TestApp/t/05-editactions-Cachable.t (original)
+++ jifty/trunk/t/TestApp/t/05-editactions-Cachable.t Mon Jul 10 17:57:15 2006
@@ -31,7 +31,7 @@
my $mech = Jifty::Test::WWW::Mechanize->new();
# Test action to update
-$mech->get_ok($URL.'/editform?J:A-updateuser=TestApp::Action::UpdateUser&J:A:F:F:F-id-updateuser=1&J:A:F-name-updateuser=edituser&J:A:F-email-updateuser=newemail at example.com', "Form submitted");
+$mech->get_ok($URL.'/editform?J:A-updateuser=TestApp::Action::UpdateUser&J:A:F:F-id-updateuser=1&J:A:F-name-updateuser=edituser&J:A:F-email-updateuser=newemail at example.com', "Form submitted");
undef $o;
$o = TestApp::Model::User->new(current_user => $system_user);
$o->flush_cache;
Modified: jifty/trunk/t/TestApp/t/05-editactions-Record.t
==============================================================================
--- jifty/trunk/t/TestApp/t/05-editactions-Record.t (original)
+++ jifty/trunk/t/TestApp/t/05-editactions-Record.t Mon Jul 10 17:57:15 2006
@@ -34,7 +34,7 @@
my $mech = Jifty::Test::WWW::Mechanize->new();
# Test action to update
-$mech->get_ok($URL.'/editform?J:A-updateuser=TestApp::Action::UpdateUser&J:A:F:F:F-id-updateuser=1&J:A:F-name-updateuser=edituser&J:A:F-email-updateuser=newemail at example.com&J:A:F-tasty-updateuser=0', "Form submitted");
+$mech->get_ok($URL.'/editform?J:A-updateuser=TestApp::Action::UpdateUser&J:A:F:F-id-updateuser=1&J:A:F-name-updateuser=edituser&J:A:F-email-updateuser=newemail at example.com&J:A:F-tasty-updateuser=0', "Form submitted");
undef $o;
$o = TestApp::Model::User->new(current_user => $system_user);
$o->load($id);
More information about the Jifty-commit
mailing list