From: gitlabhq Date: Fri, 14 Oct 2011 15:33:05 +0000 (+0300) Subject: branch/tag remember - to session instead of cookie X-Git-Tag: v1.2.0pre~141 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=2d577cae9d71e8f293b87f5b6de04c3f130ecd22;p=wvm%2Fgitlab.git branch/tag remember - to session instead of cookie --- diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 783648f76..8d3087673 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -43,11 +43,14 @@ class ApplicationController < ActionController::Base end def refs_from_cookie - # branch is high priority so we should reset - # it if tag selected - cookies[:branch] = nil if params[:tag] - - params[:branch] ||= cookies[:branch] - params[:tag] ||= cookies[:tag] + if @project && session[:ui] && + session[:ui][@project.id] + project_session = session[:ui][@project.id] + project_session[:branch] = nil if params[:tag] + params[:branch] ||= project_session[:branch] + params[:tag] ||= project_session[:tag] + end + rescue + session[:ui] = nil end end diff --git a/app/helpers/projects_helper.rb b/app/helpers/projects_helper.rb index d570dff46..5dae0c323 100644 --- a/app/helpers/projects_helper.rb +++ b/app/helpers/projects_helper.rb @@ -3,4 +3,12 @@ module ProjectsHelper cookies["project_view"] ||= "tile" cookies["project_view"] == type ? nil : "display:none" end + + def remember_refs + session[:ui] ||= {} + session[:ui][@project.id] = { + :branch => params[:branch], + :tag => params[:tag] + } + end end diff --git a/app/views/commits/index.html.haml b/app/views/commits/index.html.haml index f7e8b087b..2d184861e 100644 --- a/app/views/commits/index.html.haml +++ b/app/views/commits/index.html.haml @@ -14,9 +14,4 @@ %div{:id => dom_id(@project)} = render "commits" - -:javascript - $(function(){ - $.cookie('branch', '#{params[:branch]}', { expires: 1 }); - $.cookie('tag', '#{params[:tag]}', { expires: 1 }); - }); +- remember_refs diff --git a/app/views/projects/_tree.html.haml b/app/views/projects/_tree.html.haml index d84599ad0..4d7e3d7ce 100644 --- a/app/views/projects/_tree.html.haml +++ b/app/views/projects/_tree.html.haml @@ -46,11 +46,7 @@ = render :partial => "projects/tree_item", :locals => { :content => content } -:javascript - $(function(){ - $.cookie('branch', '#{params[:branch]}', { expires: 1 }); - $.cookie('tag', '#{params[:tag]}', { expires: 1 }); - }); +- remember_refs :javascript $(function(){