Merge 15722:15806 from head and adjust new views to rails 2 style names.
authorTom Hughes <tom@compton.nu>
Tue, 9 Jun 2009 21:50:37 +0000 (21:50 +0000)
committerTom Hughes <tom@compton.nu>
Tue, 9 Jun 2009 21:50:37 +0000 (21:50 +0000)
1  2 
app/controllers/changeset_controller.rb
app/views/changeset/_changeset.html.erb
app/views/changeset/_changeset_paging_nav.html.erb
app/views/changeset/list.html.erb
app/views/changeset/list.rss.builder
app/views/layouts/site.html.erb
app/views/layouts/site.rss.builder
app/views/user/view.html.erb
config/locales/en.yml
config/routes.rb

@@@ -255,47 -255,70 +255,47 @@@ class ChangesetController < Application
    # list edits (open changesets) in reverse chronological order
    def list
      conditions = conditions_nonempty
 -    
 -    
 -   # @changesets = Changeset.find(:all, :order => "closed_at DESC", :conditions => ['closed_at < ?', DateTime.now], :limit=> 20)
 -   
 -   
 -   #@edit_pages, @edits = paginate(:changesets,
 -   #                                :include => [:user, :changeset_tags],
 -   #                                :conditions => conditions,
 -   #                                :order => "changesets.created_at DESC",
 -   #                                :per_page => 20)
 -   #
 -    
 -   @edits =  Changeset.find(:all,
 -                                   :order => "changesets.created_at DESC",
 -                                   :conditions => conditions,
 -                                   :limit => 20)
 -    
 -  end
 -  
 -  ##
 -  # list edits (changesets) belonging to a user
 -  def list_user
 -    user = User.find_by_display_name(params[:display_name], :conditions => {:visible => true})
 -    
 -    if user
 -      @display_name = user.display_name
 -      if not user.data_public? and @user != user
 -        @edits = nil
 -        render
 -      else
 -        conditions = cond_merge conditions, ['user_id = ?', user.id]
 -        conditions = cond_merge conditions, conditions_nonempty
 -        @edit_pages, @edits = paginate(:changesets,
 -                                        :include => [:user, :changeset_tags],
 -                                        :conditions => conditions,
 -                                        :order => "changesets.created_at DESC",
 -                                        :per_page => 20)
 +
 +    if params[:display_name]
 +      user = User.find_by_display_name(params[:display_name], :conditions => { :visible => true })
 +
 +      if user 
 +        if user.data_public? or user == @user
 +          conditions = cond_merge conditions, ['user_id = ?', user.id]
 +        else
 +          conditions = cond_merge conditions, ['false']
 +        end
-       elsif params[:format] == 'rhtml'
++      elsif request.format == :html
 +        @title = t 'user.no_such_user.title'
 +        @not_found_user = params[:display_name]
 +        render :template => 'user/no_such_user', :status => :not_found
        end
 -    else
 -      @not_found_user = params[:display_name]
 -      render :template => 'user/no_such_user', :status => :not_found
      end
 -  end
 -  
 -  ##
 -  # list changesets in a bbox
 -  def list_bbox
 -    # support 'bbox' param or alternatively 'minlon', 'minlat' etc      
 -    if params['bbox']
 -       bbox = params['bbox']
 -    elsif params['minlon'] and params['minlat'] and params['maxlon'] and params['maxlat']
 -       bbox = h(params['minlon']) + ',' + h(params['minlat']) + ',' + h(params['maxlon']) + ',' + h(params['maxlat'])
 +
 +    if params[:bbox]
 +      bbox = params[:bbox]
 +    elsif params[:minlon] and params[:minlat] and params[:maxlon] and params[:maxlat]
 +      bbox = params[:minlon] + ',' + params[:minlat] + ',' + params[:maxlon] + ',' + params[:maxlat]
 +    end
 +
 +    if bbox
 +      conditions = cond_merge conditions, conditions_bbox(bbox)
 +      bbox = BoundingBox.from_s(bbox)
 +      bbox_link = "<a href='#{url_for(:controller => "site", :action => "index", :minlon => bbox.min_lon, :minlat => bbox.min_lat, :maxlon => bbox.max_lon, :maxlat => bbox.max_lat, :box => "yes")}'>#{bbox.to_s}</a>"
 +    end
 +
 +    @title =  t 'changeset.list.title'
 +
 +    if user and bbox
 +      @description = t 'changeset.list.description_user_bbox', :user => user.display_name, :bbox => bbox_link
 +    elsif user
 +      @description = t 'changeset.list.description_user', :user => user.display_name
 +    elsif bbox
 +      @description = t 'changeset.list.description_bbox', :bbox => bbox_link
      else
 -      #TODO: fix bugs in location determination for history tab (and other tabs) then uncomment this redirect
 -      #redirect_to :action => 'list'
 -      
 -      # For now just render immediately, and skip the db
 -      render
 -      return
 +      @description = t 'changeset.list.description'
      end
 -       
 -    conditions = conditions_bbox(bbox);
 -    conditions = cond_merge conditions, conditions_nonempty
 -    
 +
      @edit_pages, @edits = paginate(:changesets,
                                     :include => [:user, :changeset_tags],
                                     :conditions => conditions,
Simple merge
index 0251367,0000000..0251367
mode 100644,000000..100644
--- /dev/null
Simple merge
index 90198e8,0000000..90198e8
mode 100644,000000..100644
--- /dev/null
@@@ -4,14 -4,14 +4,14 @@@
  <!-- Displaying user's own profile page -->
  <%= link_to t('user.view.my diary'), :controller => 'diary_entry', :action => 'list', :display_name => @user.display_name %>
  | <%= link_to t('user.view.new diary entry'), :controller => 'diary_entry', :action => 'new', :display_name => @user.display_name %>
- | <%= link_to t('user.view.my edits'), :controller => 'changeset', :action => 'list', :display_name => @user.display_name, :format => 'rhtml' %>
 -| <%= link_to t('user.view.my edits'), :controller => 'changeset', :action => 'list_user', :display_name => @user.display_name %>
++| <%= link_to t('user.view.my edits'), :controller => 'changeset', :action => 'list', :display_name => @user.display_name %>
  | <%= link_to t('user.view.my traces'), :controller => 'trace', :action=>'mine' %>
  | <%= link_to t('user.view.my settings'), :controller => 'user', :action => 'account', :display_name => @user.display_name %>
  <% else %>
  <!-- Displaying another user's profile page -->
  <%= link_to t('user.view.send message'), :controller => 'message', :action => 'new', :user_id => @this_user.id %>
  | <%= link_to t('user.view.diary'), :controller => 'diary_entry', :action => 'list', :display_name => @this_user.display_name %>
- | <%= link_to t('user.view.edits'), :controller => 'changeset', :action => 'list', :display_name => @this_user.display_name, :format => 'rhtml' %>
 -| <%= link_to t('user.view.edits'), :controller => 'changeset', :action => 'list_user', :display_name => @this_user.display_name %>
++| <%= link_to t('user.view.edits'), :controller => 'changeset', :action => 'list', :display_name => @this_user.display_name %>
  | <%= link_to t('user.view.traces'), :controller => 'trace', :action => 'view', :display_name => @this_user.display_name %>
  | <% if @user and @user.is_friends_with?(@this_user) %>
    <%= link_to t('user.view.remove as friend'), :controller => 'user', :action => 'remove_friend', :display_name => @this_user.display_name %>
Simple merge
@@@ -82,15 -82,13 +82,15 @@@ ActionController::Routing::Routes.draw 
    map.connect '/browse/relation/:id', :controller => 'browse', :action => 'relation', :id => /\d+/
    map.connect '/browse/relation/:id/history', :controller => 'browse', :action => 'relation_history', :id => /\d+/
    map.connect '/browse/changeset/:id', :controller => 'browse', :action => 'changeset', :id => /\d+/
-   map.connect '/browse/changesets', :controller => 'changeset', :action => 'list', :format => 'rhtml'
-   map.connect '/browse/changesets/rss', :controller => 'changeset', :action => 'list', :format => 'rxml'
+   map.connect '/browse/changesets', :controller => 'changeset', :action => 'list'
++  map.connect '/browse/changesets/rss', :controller => 'changeset', :action => 'list', :format => :rss
    
    # web site
-   map.root :controller => 'site', :action => 'index', :format => 'rhtml'
+   map.root :controller => 'site', :action => 'index'
    map.connect '/', :controller => 'site', :action => 'index'
    map.connect '/edit', :controller => 'site', :action => 'edit'
-   map.connect '/history', :controller => 'changeset', :action => 'list', :format => 'rhtml'
-   map.connect '/history/rss', :controller => 'changeset', :action => 'list', :format => 'rxml'
 -  map.connect '/history', :controller => 'changeset', :action => 'list_bbox'
++  map.connect '/history', :controller => 'changeset', :action => 'list'
++  map.connect '/history/rss', :controller => 'changeset', :action => 'list', :format => :rss
    map.connect '/export', :controller => 'site', :action => 'export'
    map.connect '/login', :controller => 'user', :action => 'login'
    map.connect '/logout', :controller => 'user', :action => 'logout'
  
    # user pages
    map.connect '/user/:display_name', :controller => 'user', :action => 'view'
-   map.connect '/user/:display_name/edits', :controller => 'changeset', :action => 'list', :format => 'rhtml'
-   map.connect '/user/:display_name/edits/rss', :controller => 'changeset', :action => 'list', :format => 'rxml'
 -  map.connect '/user/:display_name/edits', :controller => 'changeset', :action => 'list_user'
++  map.connect '/user/:display_name/edits', :controller => 'changeset', :action => 'list'
++  map.connect '/user/:display_name/edits/rss', :controller => 'changeset', :action => 'list', :format =>:rss
    map.connect '/user/:display_name/make_friend', :controller => 'user', :action => 'make_friend'
    map.connect '/user/:display_name/remove_friend', :controller => 'user', :action => 'remove_friend'
    map.connect '/user/:display_name/diary', :controller => 'diary_entry', :action => 'list'