summaryrefslogtreecommitdiff
path: root/app/models
diff options
context:
space:
mode:
authortiagonbotelho <tiagonbotelho@hotmail.com>2016-03-01 01:55:36 +0000
committerYorick Peterse <yorickpeterse@gmail.com>2016-03-07 21:59:39 +0100
commita14b98f858cadf60c67db4cbd23aa10ae0d5213b (patch)
treed49c658b5babf33ef08eeedd96bb053688996910 /app/models
parentd9e646a796795de43b23a27b74289f44255810e3 (diff)
downloadgitlab-ce-a14b98f858cadf60c67db4cbd23aa10ae0d5213b.tar.gz
implements project languages saving them onto the database
Diffstat (limited to 'app/models')
-rw-r--r--app/models/.project.rb.swobin0 -> 49152 bytes
-rw-r--r--app/models/project.rb12
2 files changed, 12 insertions, 0 deletions
diff --git a/app/models/.project.rb.swo b/app/models/.project.rb.swo
new file mode 100644
index 00000000000..5d264ccfaaa
--- /dev/null
+++ b/app/models/.project.rb.swo
Binary files differ
diff --git a/app/models/project.rb b/app/models/project.rb
index 3b565ef809a..4d2ff11cc11 100644
--- a/app/models/project.rb
+++ b/app/models/project.rb
@@ -86,6 +86,18 @@ class Project < ActiveRecord::Base
end
end
+ # checks if the language main language of the project changed
+ before_save :check_main_language
+ def check_main_language
+ if !repository.empty? && self.changed?
+ language = Linguist::Repository.new(
+ repository.rugged,
+ repository.rugged.head.target_id).language
+
+ self.main_language = language
+ end
+ end
+
ActsAsTaggableOn.strict_case_match = true
acts_as_taggable_on :tags