summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-07-17 15:11:03 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-07-17 15:11:03 +0300
commit8587e3a357add7371b2286f3ab642c9ea8f58e2e (patch)
treed993f8d071117495e8a746e74907182e137d2544 /app/models
parent2a37db4c9ee8353d2d576a9a7d0edf57e988634e (diff)
downloadgitlab-ce-8587e3a357add7371b2286f3ab642c9ea8f58e2e.tar.gz
create corresponding events when create branch/tag with UI
Diffstat (limited to 'app/models')
-rw-r--r--app/models/event.rb14
-rw-r--r--app/models/repository.rb8
2 files changed, 19 insertions, 3 deletions
diff --git a/app/models/event.rb b/app/models/event.rb
index 3ed2a6aa765..759e84bb55a 100644
--- a/app/models/event.rb
+++ b/app/models/event.rb
@@ -55,14 +55,22 @@ class Event < ActiveRecord::Base
end
end
- def create_rm_ref(project, user, ref, prefix = 'refs/heads')
+ def create_ref_event(project, user, ref, action = 'add', prefix = 'refs/heads')
+ if action.to_s == 'add'
+ before = '00000000'
+ after = ref.commit.id
+ else
+ before = ref.commit.id
+ after = '00000000'
+ end
+
Event.create(
project: project,
action: Event::PUSHED,
data: {
ref: "#{prefix}/#{ref.name}",
- before: ref.commit.id,
- after: '00000000'
+ before: before,
+ after: after
},
author_id: user.id
)
diff --git a/app/models/repository.rb b/app/models/repository.rb
index 1915fb07de0..588cabfbae0 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -35,6 +35,14 @@ class Repository
commits
end
+ def find_branch(name)
+ branches.find { |branch| branch.name == name }
+ end
+
+ def find_tag(name)
+ tags.find { |tag| tag.name == name }
+ end
+
def add_branch(branch_name, ref)
Rails.cache.delete(cache_key(:branch_names))