[Jifty-commit] r2745 - in jifty: . branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model

jifty-commit at lists.jifty.org jifty-commit at lists.jifty.org
Wed Jan 31 15:59:40 EST 2007


Author: sterling
Date: Wed Jan 31 15:59:39 2007
New Revision: 2745

Added:
   jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/edit
Modified:
   jifty/   (props changed)
   jifty/branches/virtual-models/plugins/ModelBuilder/lib/Jifty/Plugin/ModelBuilder/Dispatcher.pm
   jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/update
   jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/view
   jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/update
   jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/view

Log:
 r2761 at riddle:  andrew | 2007-01-31 14:58:44 -0600
 Moved model editting into its own page and fixed some column update and other bugs.


Modified: jifty/branches/virtual-models/plugins/ModelBuilder/lib/Jifty/Plugin/ModelBuilder/Dispatcher.pm
==============================================================================
--- jifty/branches/virtual-models/plugins/ModelBuilder/lib/Jifty/Plugin/ModelBuilder/Dispatcher.pm	(original)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/lib/Jifty/Plugin/ModelBuilder/Dispatcher.pm	Wed Jan 31 15:59:39 2007
@@ -22,4 +22,34 @@
     }
 };
 
+under '__jifty/builder/model' => [
+
+    on '*' => run {
+        my $id = $1;
+
+        my $model_class = Jifty::Model::ModelClass->new;
+
+        if ($id =~ /^(\d+)$/) {
+            $model_class->load($id);
+        }
+
+        else {
+            $model_class->load_by_cols( name => $id );
+        }
+
+        if ($model_class->id) {
+            set model_class => $model_class;
+            show '/__jifty/builder/model/edit';
+        }
+
+        else {
+            warn "Could not load model for id or name: $id";
+        }
+    },
+
+    on '' => run {
+        show '/__jifty/builder/model/list';
+    },
+];
+
 1;

Added: jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/edit
==============================================================================
--- (empty file)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/edit	Wed Jan 31 15:59:39 2007
@@ -0,0 +1,27 @@
+<&|/_elements/wrapper, title => _('Edit Model %1', $model_class->name) &>
+
+<h2><% _('Edit Model %1', $model_class->name) %></h2>
+
+<% Jifty->web->form->start %>
+<% Jifty->web->region(
+    name     => 'update-model-' . $model_class->id,
+    path     => '/__jifty/builder/model/fragments/model/update',
+    defaults => { 
+        id        => $model_class->id,
+        collapsed => 0,
+    },
+) %>
+<% Jifty->web->form->end %>
+
+<h2>Done?</h2>
+
+<% Jifty->web->return(
+    label => _('Go back'),
+    to    => '/__jifty/builder/model/list',
+) %>
+
+</&>
+
+<%args>
+$model_class
+</%args>

Modified: jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/update
==============================================================================
--- jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/update	(original)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/update	Wed Jan 31 15:59:39 2007
@@ -1,30 +1,27 @@
-<div class="jifty_admin update item ModelClass">
+<div class="jifty_admin update item ModelClassColumn">
 <div class="editlink">
 <% Jifty->web->link(
     label   => _('Save'),
     onclick => [
         { submit => $update },
         {
-            replace_with => '/__jifty/builder/model/fragments/model/view',
+            replace_with => '/__jifty/builder/model/fragments/column/view',
             args         => { id => $id },
         },
     ],
 ) %>
 <% Jifty->web->link(
-    label     => _('Cancel'),
-    onlick    => {
-        replace_with => '/__jifty/builder/model/fragments/model/view',
+    label  => _('Cancel'),
+    onlick => {
+        replace_with => '/__jifty/builder/model/fragments/column/view',
         args         => { id => $id },
     },
-    as_button => 1,
 ) %>
 </div>
 
-<% $update->hidden( model_class => $model_class ) %>
-
 %# XXX See ./new for comments on field order.
 
-<% $update->form_field('name') %>
+<% $update->form_value('name') %>
 <% $update->form_field('label') %>
 <% $update->form_field('storage_type') %>
 <% $update->form_field('default_value') %>
@@ -46,7 +43,7 @@
 $id
 </%args>
 <%init>
-my $model_column = Jifty::Model::ModelClass->new;
+my $model_column = Jifty::Model::ModelClassColumn->new;
 $model_column->load($id);
 
 my $update = Jifty->web->new_action(

Modified: jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/view
==============================================================================
--- jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/view	(original)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/column/view	Wed Jan 31 15:59:39 2007
@@ -12,7 +12,7 @@
     class   => 'editlink',
     label   => _('Edit'),
     onclick => {
-        replace_with => '/__jifty/builder/model/fragments/model/update',
+        replace_with => '/__jifty/builder/model/fragments/column/update',
         args         => { id => $id },
     }
 ) %>

Modified: jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/update
==============================================================================
--- jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/update	(original)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/update	Wed Jan 31 15:59:39 2007
@@ -1,26 +1,42 @@
 <div class="jifty_admin update item ModelClass">
 <div class="editlink">
-<% Jifty->web->link(
-    label   => _('Save'),
-    onclick => [
-        { submit => $update },
-        {
+
+% if (Jifty->web->caller) {
+    <% Jifty->web->link(
+        label   => _('Save'),
+        onclick => [
+            { submit => $update },
+            { refresh_self => 1 },
+        ],
+    ) %>
+    <% Jifty->web->return(
+        label     => _('Done'),
+        submit    => [],
+        to        => '/__jifty/builder/model/list',
+    ) %>
+% } else {
+    <% Jifty->web->link(
+        label   => _('Save'),
+        onclick => [
+            { submit => $update },
+            {
+                replace_with => '/__jifty/builder/model/fragments/model/view',
+                args         => { id => $id },
+            },
+        ],
+    ) %>
+    <% Jifty->web->link(
+        label     => _('Cancel'),
+        onclick   => {
             replace_with => '/__jifty/builder/model/fragments/model/view',
             args         => { id => $id },
         },
-    ],
-) %>
-<% Jifty->web->link(
-    label     => _('Cancel'),
-    onclick   => {
-        replace_with => '/__jifty/builder/model/fragments/model/view',
-        args         => { id => $id },
-    },
-    as_button => 1,
-) %>
+        as_button => 1,
+    ) %>
+% }
 </div>
 
-<% $update->form_field('name') %>
+<% $update->form_value('name') %>
 <% $update->form_field('description') %>
 
 <div class="master-detail">

Modified: jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/view
==============================================================================
--- jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/view	(original)
+++ jifty/branches/virtual-models/plugins/ModelBuilder/share/web/templates/__jifty/builder/model/fragments/model/view	Wed Jan 31 15:59:39 2007
@@ -1,4 +1,4 @@
-<div class="jifty_admin read item ModelClass">
+<div class="jifty_admin read item inline ModelClass">
 <% Jifty->web->form->submit(
     class   => 'editlink',
     label   => _('Delete'),
@@ -8,18 +8,15 @@
         { delete  => Jifty->web->current_region->qualified_name },
     ],
 ) %>
-<% Jifty->web->link(
-    class   => 'editlink',
-    label   => _('Edit'),
-    onclick => {
-        replace_with => '/__jifty/builder/model/fragments/model/update',
-        args         => { id => $id },
-    },
+<% Jifty->web->tangent(
+    class => 'editlink',
+    label => _('Edit'),
+    url   => '/__jifty/builder/model/' . $model_class->name,
 ) %>
 <% Jifty->web->link(
-    class   => 'editlink',
-    label   => _('Records'),
-    url     => '/__jifty/admin/model/' . $model_class->name,
+    class => 'editlink',
+    label => _('Records'),
+    url   => '/__jifty/admin/model/' . $model_class->name,
 ) %>
 
 <% $delete->hidden( id => $id ) %>


More information about the Jifty-commit mailing list