[Jifty-commit] r7389 - in jifty/trunk: share/web/static/js

Jifty commits jifty-commit at lists.jifty.org
Thu Aug 13 21:38:20 EDT 2009


Author: sartak
Date: Thu Aug 13 21:38:17 2009
New Revision: 7389

Modified:
   jifty/trunk/lib/Jifty/Web/Form/Element.pm
   jifty/trunk/lib/Jifty/Web/Form/Field.pm
   jifty/trunk/share/web/static/js/jifty.js

Log:
Change the API such that preload affects all fragments

Modified: jifty/trunk/lib/Jifty/Web/Form/Element.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Web/Form/Element.pm	(original)
+++ jifty/trunk/lib/Jifty/Web/Form/Element.pm	Thu Aug 13 21:38:17 2009
@@ -420,6 +420,8 @@
         my $confirm;
         my $beforeclick;
         my $action_arguments = {};
+        my $preload;
+
         for my $hook (grep {ref $_ eq "HASH"} (@{$value})) {
             my %args;
 
@@ -495,7 +497,7 @@
             $args{toggle} = 1 if $hook->{toggle};
 
             # Preloading functionality
-            $args{preload} = $hook->{preload} if $hook->{preload};
+            $preload = $hook->{preload} if $hook->{preload};
 
             # Effects
             $args{$_} = $hook->{$_} for grep {exists $hook->{$_}} qw/effect effect_args remove_effect remove_effect_args/;
@@ -510,6 +512,7 @@
             action_arguments => $action_arguments,
             confirm          => $confirm,
             beforeclick      => $beforeclick,
+            preload          => $preload,
         };
     }
 
@@ -544,6 +547,7 @@
                     action_arguments => $trigger_structure->{action_arguments},
                     fragments    => $fragments,
                     continuation => $self->continuation,
+                    preload      => $trigger_structure->{preload},
                 },
                 { singlequote => 1 },
             );

Modified: jifty/trunk/lib/Jifty/Web/Form/Field.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Web/Form/Field.pm	(original)
+++ jifty/trunk/lib/Jifty/Web/Form/Field.pm	Thu Aug 13 21:38:17 2009
@@ -734,22 +734,15 @@
     my $self = shift;
 
     my $structure = $self->_javascript_attrs_structure;
-    my @preloaded;
-
-    for my $trigger (keys %$structure) {
-        my $trigger_structure = $structure->{$trigger};
-        my $fragments = $trigger_structure->{fragments};
-
-        for my $fragment (@$fragments) {
-            next unless $fragment->{preload};
-            push @preloaded, $fragment;
-        }
-    }
+    return unless $structure->{preload};
 
-    return if !@preloaded;
+    my @preloaded;
 
     my $preload_json = Jifty::JSON::objToJson(
-        { fragments   => \@preloaded },
+        {
+            fragments => $structure->{fragments},
+            preload   => $structure->{preload},
+        },
         { singlequote => 1 },
     );
 

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	Thu Aug 13 21:38:17 2009
@@ -1521,18 +1521,11 @@
 Jifty.preloaded_regions = {};
 
 Jifty.preload = function (named_args, trigger) {
-    var fragments = named_args['fragments'];
+    var args = named_args.clone();
+    args.hide_wait_message = 1;
+    args.actions = [];
 
-    for (i = 0; i < fragments.length; ++i) {
-        var fragment = fragments[i];
-
-        Jifty.update({
-            hide_wait_message: 1,
-            preload: 1,
-            actions: [],
-            fragments: [fragment]
-        }, trigger);
-    }
+    Jifty.update(args, trigger);
 }
 
 function update ( named_args, trigger ) {


More information about the Jifty-commit mailing list