Commit 2d577cae9d71e8f293b87f5b6de04c3f130ecd22

Authored by gitlabhq
1 parent fc34fc86

branch/tag remember - to session instead of cookie

app/controllers/application_controller.rb
@@ -43,11 +43,14 @@ class ApplicationController < ActionController::Base @@ -43,11 +43,14 @@ class ApplicationController < ActionController::Base
43 end 43 end
44 44
45 def refs_from_cookie 45 def refs_from_cookie
46 - # branch is high priority so we should reset  
47 - # it if tag selected  
48 - cookies[:branch] = nil if params[:tag]  
49 -  
50 - params[:branch] ||= cookies[:branch]  
51 - params[:tag] ||= cookies[:tag] 46 + if @project && session[:ui] &&
  47 + session[:ui][@project.id]
  48 + project_session = session[:ui][@project.id]
  49 + project_session[:branch] = nil if params[:tag]
  50 + params[:branch] ||= project_session[:branch]
  51 + params[:tag] ||= project_session[:tag]
  52 + end
  53 + rescue
  54 + session[:ui] = nil
52 end 55 end
53 end 56 end
app/helpers/projects_helper.rb
@@ -3,4 +3,12 @@ module ProjectsHelper @@ -3,4 +3,12 @@ module ProjectsHelper
3 cookies["project_view"] ||= "tile" 3 cookies["project_view"] ||= "tile"
4 cookies["project_view"] == type ? nil : "display:none" 4 cookies["project_view"] == type ? nil : "display:none"
5 end 5 end
  6 +
  7 + def remember_refs
  8 + session[:ui] ||= {}
  9 + session[:ui][@project.id] = {
  10 + :branch => params[:branch],
  11 + :tag => params[:tag]
  12 + }
  13 + end
6 end 14 end
app/views/commits/index.html.haml
@@ -14,9 +14,4 @@ @@ -14,9 +14,4 @@
14 %div{:id => dom_id(@project)} 14 %div{:id => dom_id(@project)}
15 = render "commits" 15 = render "commits"
16 16
17 -  
18 -:javascript  
19 - $(function(){  
20 - $.cookie('branch', '#{params[:branch]}', { expires: 1 });  
21 - $.cookie('tag', '#{params[:tag]}', { expires: 1 });  
22 - }); 17 +- remember_refs
app/views/projects/_tree.html.haml
@@ -46,11 +46,7 @@ @@ -46,11 +46,7 @@
46 = render :partial => "projects/tree_item", :locals => { :content => content } 46 = render :partial => "projects/tree_item", :locals => { :content => content }
47 47
48 48
49 -:javascript  
50 - $(function(){  
51 - $.cookie('branch', '#{params[:branch]}', { expires: 1 });  
52 - $.cookie('tag', '#{params[:tag]}', { expires: 1 });  
53 - }); 49 +- remember_refs
54 50
55 :javascript 51 :javascript
56 $(function(){ 52 $(function(){