Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com>2011-10-14 19:08:25 +0400
committerDmitriy Zaporozhets <dzaporozhets@sphereconsultinginc.com>2011-10-14 19:08:25 +0400
commit5dc5ef7bcde5f50033f4d8df685d99854547fe26 (patch)
tree66864cde96f292d7309f320ea2126480e7285a7e /app
parent06f72627a04d54d2be5289dff9882850e2d48077 (diff)
branch/tag memorization
Diffstat (limited to 'app')
-rw-r--r--app/controllers/application_controller.rb9
-rw-r--r--app/controllers/commits_controller.rb1
-rw-r--r--app/controllers/projects_controller.rb2
-rw-r--r--app/views/commits/index.html.haml7
-rw-r--r--app/views/projects/_tree.html.haml7
5 files changed, 26 insertions, 0 deletions
diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb
index 829126fee05..783648f7627 100644
--- a/app/controllers/application_controller.rb
+++ b/app/controllers/application_controller.rb
@@ -41,4 +41,13 @@ class ApplicationController < ActionController::Base
super
end
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]
+ end
end
diff --git a/app/controllers/commits_controller.rb b/app/controllers/commits_controller.rb
index d7daec13f0f..61a1a54f84d 100644
--- a/app/controllers/commits_controller.rb
+++ b/app/controllers/commits_controller.rb
@@ -8,6 +8,7 @@ class CommitsController < ApplicationController
before_filter :authorize_read_project!
def index
+ refs_from_cookie
@repo = project.repo
@branch = if !params[:branch].blank?
params[:branch]
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 080a6ee62f6..f9f4226f6f0 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -16,6 +16,7 @@ class ProjectsController < ApplicationController
end
def show
+ refs_from_cookie
@repo = project.repo
@commit = @repo.commits.first
@tree = @commit.tree
@@ -32,6 +33,7 @@ class ProjectsController < ApplicationController
end
def tree
+ refs_from_cookie
@repo = project.repo
@branch = if !params[:branch].blank?
params[:branch]
diff --git a/app/views/commits/index.html.haml b/app/views/commits/index.html.haml
index 0e231e4ec2a..f7e8b087b22 100644
--- a/app/views/commits/index.html.haml
+++ b/app/views/commits/index.html.haml
@@ -13,3 +13,10 @@
%h3{:style => "color:#555"} /#{params[:path]}
%div{:id => dom_id(@project)}
= render "commits"
+
+
+:javascript
+ $(function(){
+ $.cookie('branch', '#{params[:branch]}', { expires: 1 });
+ $.cookie('tag', '#{params[:tag]}', { expires: 1 });
+ });
diff --git a/app/views/projects/_tree.html.haml b/app/views/projects/_tree.html.haml
index af3a209a8ab..d84599ad0c1 100644
--- a/app/views/projects/_tree.html.haml
+++ b/app/views/projects/_tree.html.haml
@@ -45,6 +45,13 @@
- contents.select{ |i| i.is_a?(Grit::Blob)}.each do |content|
= render :partial => "projects/tree_item", :locals => { :content => content }
+
+:javascript
+ $(function(){
+ $.cookie('branch', '#{params[:branch]}', { expires: 1 });
+ $.cookie('tag', '#{params[:tag]}', { expires: 1 });
+ });
+
:javascript
$(function(){
$('select#branch').selectmenu({style:'popup', width:200});