Changeset 1007

Show
Ignore:
Timestamp:
02/24/07 17:46:12 (3 years ago)
Author:
julians
Message:

Sort flat file view by size instead of path; move path to a separate table column in flat file view; minor layout improvements to navigation and flat view; fixes #119

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/app/controllers/browser_controller.rb

    r947 r1007  
    1717 
    1818    joins = "JOIN directories ON files.directory_id = directories.id" 
    19     order = "files.path
     19    order = "files.size desc
    2020    include_attributes = [ "name", "directory_id", "modified", "size", "uid" ] 
    2121    select = include_attributes.map {|attr| "files.#{attr} as #{attr}" }.join(", ") 
  • trunk/app/helpers/application_helper.rb

    r998 r1007  
    33 
    44  def self_and_ancestors_up_to(directory, parent_dir) 
    5     if not parent_dir.nil? and directory.id != parent_dir.id 
    6       directory.self_and_ancestors_up_to(parent_dir) 
     5    if parent_dir.nil? 
     6      directory.self_and_ancestors 
     7    elsif directory.id == parent_dir.id 
     8      [ directory ] 
    79    else 
    8       directory.self_and_ancestors 
     10      directory.self_and_ancestors_up_to(parent_dir) + [ parent_dir ] 
    911    end 
    1012  end 
  • trunk/app/views/browser/flat.rhtml

    r917 r1007  
    5353    <thead> 
    5454      <tr> 
     55        <th class="name">Name</th> 
    5556        <th class="path">Path</th> 
    5657        <th class="modified">Modified</th> 
     
    6364      <% @files.each do |file| %> 
    6465        <tr class="<%= cycle 'even', 'odd' %>"> 
     66          <td class="name"> 
     67            <%= file.name %> 
     68          </td> 
    6569          <td class="path"> 
    66              <% if not @server %><%= link_to file.directory.server.name, :overwrite_params => {:page => nil, :server => file.directory.server.name, :path => nil} %>:<% end %><% self_and_ancestors_up_to(file.directory, @directory).reverse.each do |parent| %><%= link_to parent.name, :overwrite_params => {:page => nil, :server => file.directory.server.name, :path => parent.path} %>/<% end %><%= file.name %> 
     70             <% if not @server %><%= link_to file.directory.server.name, :overwrite_params => {:page => nil, :server => file.directory.server.name, :path => nil} %>:<% else %><% if not (@directory.nil? or @directory.parent_id.nil?) %><%= link_to("..", :overwrite_params => {:page => nil, :path => @directory.parent.path}) %>/<% end %><% end %><% self_and_ancestors_up_to(file.directory, @directory).reverse.each do |parent| %><% if parent == @directory %><%= h parent.name.gsub(/ /, "&nbsp;") %><% else %><%= link_to(parent.name.gsub(/ /, "&nbsp;"), :overwrite_params => {:page => nil, :server => file.directory.server.name, :path => parent.path}) %><% end %>/<wbr/><% end %> 
    6771          </td> 
    6872          <td class="modified"> 
    6973            <span title="<%=h file.modified %>"><%= distance_of_time_in_words_to_now(file.modified) %> ago</span> 
    7074          </td> 
    71           <td class="owner_user"><%=h file.user.name %></td> 
    72           <td class="size"><%= ApplicationHelper.human_size_in(ApplicationHelper.human_units_of(file.size), file.size) %> <%= ApplicationHelper.human_units_of(file.size) %></td> 
     75          <td class="owner_user"><span><%=h file.user.name %></span></td> 
     76          <td class="size"><span><%= ApplicationHelper.human_size_in(ApplicationHelper.human_units_of(file.size), file.size) %> <%= ApplicationHelper.human_units_of(file.size) %></span></td> 
    7377        </tr> 
    7478      <% end %> 
  • trunk/app/views/browser/show.rhtml

    r954 r1007  
    44      <tr> 
    55        <th class="icon"></th> 
    6         <th class="name">Name</th> 
    7         <th class="modified">Modified</th> 
    8         <th class="user">User</th> 
    9         <th class="size">Size</th> 
     6        <% if @server %> 
     7          <th class="name"><span>Name</span></th> 
     8          <th class="modified"><span>Modified</span></th> 
     9          <th class="user"><span>User</span></th> 
     10        <% else %> 
     11          <th class="name Server"><span>Name</span></th> 
     12        <% end %> 
     13        <th class="size"><span>Size</span></th> 
    1014        <th class="bar"></th> 
    1115      </tr> 
     
    4751        <tr class="<%= cycle 'even', 'odd' %>"> 
    4852          <td class="icon Server"><%= link_to "", :overwrite_params => {:server => server.name, :path => nil} %></td> 
    49           <td class="name Server" colspan="3"><%= link_to server.name, :overwrite_params => {:server => server.name, :path => nil} %></td> 
    50           <td class="size Server"><%= link_to "#{ApplicationHelper::human_size_in(units, size)} #{units}", :overwrite_params => {:server => server.name, :path => nil} %></td> 
     53          <td class="name Server"><%= link_to "<span>#{server.name}</span>", :overwrite_params => {:server => server.name, :path => nil} %></td> 
     54          <td class="size Server"><%= link_to "<span>#{ApplicationHelper::human_size_in(units, size)} #{units}</span>", :overwrite_params => {:server => server.name, :path => nil} %></td> 
    5155          <td class="bar Server"><%= link_to bar(size, max_size, :class => "bar"), :overwrite_params => {:server => server.name, :path => nil} %></td> 
    5256        </tr> 
     
    7781        <td class="icon Dir"><%= link_to "", :overwrite_params => {:path => directory.path} %></td> 
    7882        <td class="name Dir" colspan="3"><%= link_to directory.name, :overwrite_params => {:path => directory.path} %></td> 
    79         <td class="size Dir"><%= link_to "#{ApplicationHelper::human_size_in(units, size)} #{units}", :overwrite_params => {:path => directory.path} %></td> 
     83        <td class="size Dir"><%= link_to "<span>#{ApplicationHelper::human_size_in(units, size)} #{units}</span>", :overwrite_params => {:path => directory.path} %></td> 
    8084        <td class="bar Dir"><%= link_to bar(size, max_size, :class => "bar"), :overwrite_params => {:path => directory.path} %></td> 
    8185      </tr> 
  • trunk/public/stylesheets/base.css

    r987 r1007  
    354354} 
    355355 
    356 #Content table#browser td.name { 
     356#Content table#browser th.name { 
    357357  width: 75%; 
    358358} 
    359359 
    360 #Content table#browser td.rev { 
     360#Content table#browser th.modified span, 
     361#Content table#browser th.user span, 
     362#Content table#browser th.size span 
     363{  
     364  xmargin-left: 1.2em !important; 
     365  xmargin-right: 1.2em !important; 
     366
     367 
     368#Content table#browser th.rev { 
    361369  width: 5%; 
    362370  background: yellow; 
    363371} 
    364372 
    365 #Content table#browser td.age { 
     373#Content table#browser th.age { 
    366374  width: 5%; 
    367375  background: yellow; 
    368376} 
    369377 
    370 #Content table#browser td.msg { 
     378#Content table#browser th.msg { 
    371379  width: 15%; 
    372380  background: yellow; 
     
    398406#Content table#flat-browser th.size, 
    399407#Content table#flat-browser td.size, 
     408#Content table#browser th.modified, 
     409#Content table#browser td.modified, 
    400410#Content table#browser th.size, 
    401411#Content table#browser td.size { 
     
    403413} 
    404414 
    405 #Content table#browser th.size 
    406 {  
    407   padding-left: 0.6em; 
    408   padding-right: 0.6em; 
    409 
    410  
     415#Content table#browser td.size span, 
     416#Content table#browser th.size span, 
    411417#Content table#browser td.owner_user span, 
    412 #Content table#browser td.size span, 
    413 #Content table#browser td.modified span {  
     418#Content table#browser th.owner_user span, 
     419#Content table#browser td.modified span, 
     420#Content table#browser th.modified span 
     421
    414422  margin-left: 0.6em; 
    415423  margin-right: 0.6em; 
    416424} 
    417425 
     426#Content table#browser td.owner_user span, 
     427#Content table#flat-browser td.owner_user span, 
     428#Content table#flat-browser td.size, 
     429#Content table#flat-browser td.modified, 
     430#Content table#flat-browser th.modified, 
     431#Content table#flat-browser th.size {  
     432  margin-left: 1.2em; 
     433  margin-right: 1.2em; 
     434} 
     435 
     436#Content table#flat-browser th.path, 
    418437#Content table#browser th.path, 
    419438#Content table#browser td.path, 
     439#Content table#flat-browser th.name, 
    420440#Content table#browser th.name, 
    421441#Content table#browser td.name { 
    422442  text-align: left !important; 
    423443} 
     444 
     445#Content table#flat-browser td.path {  
     446  white-space: normal !important;   
     447  padding-left: 1em; 
     448  text-indent: -1em; 
     449} 
     450 
     451#Content table#flat-browser th.modified, 
     452#Content table#flat-browser td.modified {  
     453  text-align: right; 
     454} 
     455 
     456#Content table#flat-browser td.owner_user {  
     457  text-align: center; 
     458} 
     459 
    424460 
    425461#Content table#browser td.msg { 
     
    586622  font-size: small; 
    587623} 
     624