Changeset 603

Show
Ignore:
Timestamp:
11/15/07 16:49:08 (10 months ago)
Author:
seancribbs
Message:

Add flexibility to sitemap in shards extension.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/extensions/shards/app/views/admin/page/_node.rhtml

    r600 r603  
    11    <tr id="page-<%= page.id %>" class="node level-<%= level %><%= children_class %><%= virtual_class %>"> 
    2       <td class="page" style="padding-left: <%= padding_left(level) %>px"> 
    3         <span class="w1"> 
    4 <% if simple -%> 
    5           <%= icon %> 
    6           <%= node_title %> 
    7 <% else -%> 
    8           <%= expander %><a href="<%= page_edit_url(:id => page) %>" title="<%= page.url %>"><%= icon %> <%= node_title %></a>  
    9           <%= page_type %> 
    10           <%= spinner %> 
    11 <% end -%> 
    12         </span> 
    13       </td> 
    14 <% unless simple -%> 
    15       <td class="status <%= page.status.name.downcase %>-status"><%= page.status.name %></td> 
    16       <td class="add-child"><%= link_to image('add-child', :alt => 'add child'), page_new_url(:parent_id => page) %></td> 
    17       <td class="remove"><%= link_to image('remove', :alt => 'remove page'), page_remove_url(:id => page) %></td> 
    18       <%= render_region :node_row, :locals => {:page => page, :level => level} %> 
    19 <% end -%> 
     2      <% render_region :node, :locals => {:page => page, :level => level, :simple => simple} do |node| %> 
     3        <% node.title_column do %> 
     4        <td class="page" style="padding-left: <%= padding_left(level) %>px"> 
     5          <span class="w1"> 
     6          <% if simple -%> 
     7            <%= icon %> 
     8            <%= node_title %> 
     9          <% else -%> 
     10            <%= expander %><a href="<%= page_edit_url(:id => page) %>" title="<%= page.url %>"><%= icon %> <%= node_title %></a>  
     11            <%= page_type %> 
     12            <%= spinner %> 
     13            <% end -%> 
     14          </span> 
     15        </td> 
     16        <% end %> 
     17        <% node.status_column do %> 
     18          <% unless simple -%><td class="status <%= page.status.name.downcase %>-status"><%= page.status.name %></td><% end %> 
     19        <% end %> 
     20        <% node.add_child_column do %> 
     21          <% unless simple -%><td class="add-child"><%= link_to image('add-child', :alt => 'add child'), page_new_url(:parent_id => page) %></td><% end %> 
     22        <% end %> 
     23        <% node.remove_column do %> 
     24          <% unless simple %><td class="remove"><%= link_to image('remove', :alt => 'remove page'), page_remove_url(:id => page) %></td><% end %> 
     25        <% end %> 
     26      <% end %> 
    2027    </tr> 
    2128<% 
  • trunk/extensions/shards/app/views/admin/page/index.rhtml

    r590 r603  
    66    <tr> 
    77      <% render_region :sitemap_head do |sitemap_head| %> 
    8         <% sitemap_head.index_sitemap_column_headers do %> 
     8        <% sitemap_head.title_column_header do %> 
    99          <th class="page">Page</th> 
     10        <% end %> 
     11        <% sitemap_head.status_column_header do %> 
    1012          <th class="status">Status</th> 
    11           <th class="modify" colspan="2">Modify</th> 
     13        <% end %> 
     14        <% sitemap_head.modify_column_header do %> 
     15          <th class="modify" colspan="2">Modify</th>   
    1216        <% end %> 
    1317      <% end %> 
     
    1923<% else -%> 
    2024  <tr> 
    21     <td colspan="4" class="note">No Pages</td> 
     25    <td colspan="<%= admin.page.index.node.size %>" class="note">No Pages</td> 
    2226  </tr> 
    2327<% end -%> 
    2428  </tbody> 
    2529</table> 
    26 <script type="text/javascript"> 
    27 // <![CDATA[ 
    28   new SiteMap('site-map', <%= expanded_rows.to_json %>); 
    29 // ]]> 
    30 </script> 
    3130<%= render_region :bottom %> 
    3231<form action="<%= clear_cache_url %>" method="post"> 
  • trunk/extensions/shards/shards_extension.rb

    r562 r603  
    44 
    55class ShardsExtension < Radiant::Extension 
    6   version "0.1
    7   description "Enables facets-like manipulation of the administration user-interface." 
     6  version "0.2
     7  description "Enables flexible manipulation of the administration user-interface." 
    88  url "http://seancribbs.com" 
    99     
     
    1818    end 
    1919    admin.page = load_default_page_regions 
    20     Admin::PageController.class_eval { 
     20    Admin::PageController.class_eval do 
    2121      before_filter :only => :add_part do |c| 
    2222        c.send :instance_variable_set, '@template_name', 'edit' 
    2323      end 
    24     } 
     24    end 
    2525  end 
    2626   
     
    3939        end 
    4040        page.index = Shards::RegionSet.new do |index| 
    41           index.sitemap_head.concat %w{index_sitemap_column_headers} 
     41          index.sitemap_head.concat %w{title_column_header status_column_header 
     42                                      modify_column_header} 
     43          index.node.concat %w{title_column status_column add_child_column remove_column} 
    4244        end 
    43         page.remove = Shards::RegionSet.new 
     45        page.remove = page.index 
    4446        page.children = Shards::RegionSet.new    
    4547        page 
  • trunk/extensions/shards/test/functional/shards_extension_test.rb

    r562 r603  
    2323    assert_equal %w{edit_title edit_extended_metadata 
    2424                              edit_page_parts}, page.edit.form 
    25     assert_equal %w{ edit_layout_and_type edit_timestamp}, page.edit.parts_bottom 
     25    assert_equal %w{edit_layout_and_type edit_timestamp}, page.edit.parts_bottom 
    2626    assert_equal %w{edit_buttons}, page.edit.form_bottom 
    27     assert_equal %w{index_sitemap_column_headers}, page.index.sitemap_head 
     27    assert_equal %w{title_column_header status_column_header 
     28                                modify_column_header}, page.index.sitemap_head 
     29    assert_equal %w{title_column status_column add_child_column remove_column}, 
     30                  page.index.node 
     31    assert_same page.index, page.remove 
    2832  end 
    2933