tr8n 3.2.1 → 3.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +1 -1
- data/README.rdoc +19 -13
- data/app/controllers/tr8n/base_controller.rb +5 -1
- data/app/controllers/tr8n/language_controller.rb +2 -2
- data/app/models/tr8n/base_filter.rb +21 -0
- data/app/models/tr8n/daily_language_metric.rb +46 -22
- data/app/models/tr8n/date_rule.rb +41 -22
- data/app/models/tr8n/gender_list_rule.rb +41 -22
- data/app/models/tr8n/gender_rule.rb +41 -22
- data/app/models/tr8n/glossary.rb +44 -27
- data/app/models/tr8n/glossary_filter.rb +56 -33
- data/app/models/tr8n/ip_location.rb +23 -0
- data/app/models/tr8n/ip_location_filter.rb +57 -34
- data/app/models/tr8n/language.rb +28 -0
- data/app/models/tr8n/language_case.rb +27 -0
- data/app/models/tr8n/language_case_filter.rb +53 -30
- data/app/models/tr8n/language_case_rule.rb +24 -0
- data/app/models/tr8n/language_case_rule_filter.rb +53 -30
- data/app/models/tr8n/language_case_value_map.rb +24 -0
- data/app/models/tr8n/language_case_value_map_filter.rb +68 -45
- data/app/models/tr8n/language_filter.rb +23 -0
- data/app/models/tr8n/language_forum_abuse_report.rb +56 -33
- data/app/models/tr8n/language_forum_abuse_report_filter.rb +57 -34
- data/app/models/tr8n/language_forum_message.rb +69 -46
- data/app/models/tr8n/language_forum_message_filter.rb +61 -38
- data/app/models/tr8n/language_forum_topic.rb +62 -41
- data/app/models/tr8n/language_forum_topic_filter.rb +61 -38
- data/app/models/tr8n/language_metric.rb +28 -1
- data/app/models/tr8n/language_metric_filter.rb +23 -0
- data/app/models/tr8n/language_rule.rb +23 -0
- data/app/models/tr8n/language_rule_filter.rb +72 -49
- data/app/models/tr8n/language_user.rb +86 -61
- data/app/models/tr8n/language_user_filter.rb +57 -34
- data/app/models/tr8n/list_rule.rb +41 -22
- data/app/models/tr8n/monthly_language_metric.rb +46 -22
- data/app/models/tr8n/numeric_rule.rb +41 -22
- data/app/models/tr8n/sync_log.rb +21 -0
- data/app/models/tr8n/sync_log_filter.rb +48 -27
- data/app/models/tr8n/total_language_metric.rb +46 -22
- data/app/models/tr8n/translation.rb +28 -0
- data/app/models/tr8n/translation_domain.rb +76 -56
- data/app/models/tr8n/translation_domain_filter.rb +49 -26
- data/app/models/tr8n/translation_filter.rb +57 -34
- data/app/models/tr8n/translation_key.rb +44 -8
- data/app/models/tr8n/translation_key_comment.rb +60 -37
- data/app/models/tr8n/translation_key_comment_filter.rb +53 -30
- data/app/models/tr8n/translation_key_filter.rb +68 -45
- data/app/models/tr8n/translation_key_lock.rb +81 -59
- data/app/models/tr8n/translation_key_lock_filter.rb +53 -30
- data/app/models/tr8n/translation_key_source.rb +22 -0
- data/app/models/tr8n/translation_key_source_filter.rb +53 -30
- data/app/models/tr8n/translation_source.rb +20 -0
- data/app/models/tr8n/translation_source_filter.rb +53 -30
- data/app/models/tr8n/translation_source_language.rb +58 -39
- data/app/models/tr8n/translation_vote.rb +56 -35
- data/app/models/tr8n/translation_vote_filter.rb +57 -34
- data/app/models/tr8n/translator.rb +38 -0
- data/app/models/tr8n/translator_filter.rb +73 -50
- data/app/models/tr8n/translator_following.rb +58 -38
- data/app/models/tr8n/translator_following_filter.rb +57 -34
- data/app/models/tr8n/translator_log.rb +25 -0
- data/app/models/tr8n/translator_log_filter.rb +72 -49
- data/app/models/tr8n/translator_metric.rb +27 -0
- data/app/models/tr8n/translator_metric_filter.rb +61 -38
- data/app/models/tr8n/translator_report.rb +23 -0
- data/app/models/tr8n/translator_report_filter.rb +53 -30
- data/app/models/tr8n/value_rule.rb +41 -22
- data/bin/{tr8n.rb → tr8n} +0 -0
- data/file +94 -0
- data/lib/tasks/dev.rake +162 -0
- data/lib/tr8n/config.rb +5 -1
- data/lib/tr8n/version.rb +1 -1
- data/local/tr8n_server/config/tr8n/config.yml +2 -1
- data/local/tr8n_server/db/schema.rb +0 -2
- metadata +45 -43
@@ -20,9 +20,33 @@
|
|
20
20
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
21
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
22
|
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageCaseValueMap Schema Information
|
25
|
+
#
|
26
|
+
# Table name: tr8n_language_case_value_maps
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# keyword varchar(255) not null
|
30
|
+
# language_id integer not null
|
31
|
+
# translator_id integer
|
32
|
+
# map text
|
33
|
+
# reported boolean
|
34
|
+
# created_at datetime
|
35
|
+
# updated_at datetime
|
36
|
+
#
|
37
|
+
# Indexes
|
38
|
+
#
|
39
|
+
# index_tr8n_language_case_value_maps_on_translator_id (translator_id)
|
40
|
+
# index_tr8n_language_case_value_maps_on_keyword_and_language_id (keyword, language_id)
|
41
|
+
#
|
42
|
+
#++
|
23
43
|
|
24
44
|
class Tr8n::LanguageCaseValueMap < ActiveRecord::Base
|
25
45
|
set_table_name :tr8n_language_case_value_maps
|
46
|
+
|
47
|
+
attr_accessible :keyword, :language_id, :translator_id, :map, :reported
|
48
|
+
attr_accessible :language, :translator
|
49
|
+
|
26
50
|
after_save :clear_cache
|
27
51
|
after_destroy :clear_cache
|
28
52
|
|
@@ -1,45 +1,68 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
-
# a copy of this software and associated documentation files (the
|
6
|
-
# "Software"), to deal in the Software without restriction, including
|
7
|
-
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
-
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
-
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
-
# the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
-
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
-
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
-
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
-
#++
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageCaseValueMapFilter Schema Information
|
25
|
+
#
|
26
|
+
# Table name: will_filter_filters
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# type varchar(255)
|
30
|
+
# name varchar(255)
|
31
|
+
# data text
|
32
|
+
# user_id integer
|
33
|
+
# model_class_name varchar(255)
|
34
|
+
# created_at datetime
|
35
|
+
# updated_at datetime
|
36
|
+
#
|
37
|
+
# Indexes
|
38
|
+
#
|
39
|
+
# index_will_filter_filters_on_user_id (user_id)
|
40
|
+
#
|
41
|
+
#++
|
42
|
+
|
43
|
+
class Tr8n::LanguageCaseValueMapFilter < Tr8n::BaseFilter
|
44
|
+
|
45
|
+
def model_class
|
46
|
+
Tr8n::LanguageCaseValueMap
|
47
|
+
end
|
48
|
+
|
49
|
+
def definition
|
50
|
+
defs = super
|
51
|
+
defs[:language_id][:is] = :list
|
52
|
+
defs[:language_id][:is_not] = :list
|
53
|
+
defs
|
54
|
+
end
|
55
|
+
|
56
|
+
def value_options_for(criteria_key)
|
57
|
+
if criteria_key == :language_id
|
58
|
+
return Tr8n::Language.filter_options
|
59
|
+
end
|
60
|
+
|
61
|
+
return []
|
62
|
+
end
|
63
|
+
|
64
|
+
def inner_joins
|
65
|
+
[:language, :translator]
|
66
|
+
end
|
67
|
+
|
68
|
+
end
|
@@ -20,9 +20,32 @@
|
|
20
20
|
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
21
|
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
22
|
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageFilter Schema Information
|
25
|
+
#
|
26
|
+
# Table name: will_filter_filters
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# type varchar(255)
|
30
|
+
# name varchar(255)
|
31
|
+
# data text
|
32
|
+
# user_id integer
|
33
|
+
# model_class_name varchar(255)
|
34
|
+
# created_at datetime
|
35
|
+
# updated_at datetime
|
36
|
+
#
|
37
|
+
# Indexes
|
38
|
+
#
|
39
|
+
# index_will_filter_filters_on_user_id (user_id)
|
40
|
+
#
|
41
|
+
#++
|
23
42
|
|
24
43
|
class Tr8n::LanguageFilter < Tr8n::BaseFilter
|
25
44
|
|
45
|
+
def model_class
|
46
|
+
Tr8n::Language
|
47
|
+
end
|
48
|
+
|
26
49
|
def definition
|
27
50
|
defs = super
|
28
51
|
defs[:fallback_language_id][:is] = :list
|
@@ -1,33 +1,56 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
-
# a copy of this software and associated documentation files (the
|
6
|
-
# "Software"), to deal in the Software without restriction, including
|
7
|
-
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
-
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
-
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
-
# the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
-
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
-
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
-
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
-
#++
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageForumAbuseReport Schema Information
|
25
|
+
#
|
26
|
+
# Table name: tr8n_language_forum_abuse_reports
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# language_id integer not null
|
30
|
+
# translator_id integer not null
|
31
|
+
# language_forum_message_id integer not null
|
32
|
+
# reason varchar(255)
|
33
|
+
# created_at datetime
|
34
|
+
# updated_at datetime
|
35
|
+
#
|
36
|
+
# Indexes
|
37
|
+
#
|
38
|
+
# tr8n_forum_reports_message_id (language_forum_message_id)
|
39
|
+
# tr8n_forum_reports_lang_id_translator_id (language_id, translator_id)
|
40
|
+
# tr8n_forum_reports_lang_id (language_id)
|
41
|
+
#
|
42
|
+
#++
|
43
|
+
|
44
|
+
class Tr8n::LanguageForumAbuseReport < ActiveRecord::Base
|
45
|
+
set_table_name :tr8n_language_forum_abuse_reports
|
46
|
+
|
47
|
+
attr_accessible :language_id, :translator_id, :language_forum_message_id, :reason
|
48
|
+
attr_accessible :language, :translator, :language_forum_message
|
49
|
+
|
50
|
+
belongs_to :language, :class_name => "Tr8n::Language"
|
51
|
+
belongs_to :translator, :class_name => "Tr8n::Translator"
|
52
|
+
belongs_to :language_forum_message, :class_name => "Tr8n::LanguageForumMessage"
|
53
|
+
|
54
|
+
alias :message :language_forum_message
|
55
|
+
|
56
|
+
end
|
@@ -1,34 +1,57 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
-
# a copy of this software and associated documentation files (the
|
6
|
-
# "Software"), to deal in the Software without restriction, including
|
7
|
-
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
-
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
-
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
-
# the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
-
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
-
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
-
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
-
#++
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageForumAbuseReportFilter Schema Information
|
25
|
+
#
|
26
|
+
# Table name: will_filter_filters
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# type varchar(255)
|
30
|
+
# name varchar(255)
|
31
|
+
# data text
|
32
|
+
# user_id integer
|
33
|
+
# model_class_name varchar(255)
|
34
|
+
# created_at datetime
|
35
|
+
# updated_at datetime
|
36
|
+
#
|
37
|
+
# Indexes
|
38
|
+
#
|
39
|
+
# index_will_filter_filters_on_user_id (user_id)
|
40
|
+
#
|
41
|
+
#++
|
42
|
+
|
43
|
+
class Tr8n::LanguageForumAbuseReportFilter < Tr8n::BaseFilter
|
44
|
+
|
45
|
+
def model_class
|
46
|
+
Tr8n::LanguageForumAbuseReport
|
47
|
+
end
|
48
|
+
|
49
|
+
def inner_joins
|
50
|
+
[["Tr8n::Language", :language_id], ["Tr8n::LanguageForumMessage", :language_forum_message_id], ["Tr8n::Translator", :translator_id]]
|
51
|
+
end
|
52
|
+
|
53
|
+
def inner_joins
|
54
|
+
[:language, :language_forum_message, :translator]
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
@@ -1,46 +1,69 @@
|
|
1
|
-
#--
|
2
|
-
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
-
#
|
4
|
-
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
-
# a copy of this software and associated documentation files (the
|
6
|
-
# "Software"), to deal in the Software without restriction, including
|
7
|
-
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
-
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
-
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
-
# the following conditions:
|
11
|
-
#
|
12
|
-
# The above copyright notice and this permission notice shall be
|
13
|
-
# included in all copies or substantial portions of the Software.
|
14
|
-
#
|
15
|
-
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
-
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
-
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
-
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
-
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
-
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
-
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
-
#++
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
1
|
+
#--
|
2
|
+
# Copyright (c) 2010-2012 Michael Berkovich, tr8n.net
|
3
|
+
#
|
4
|
+
# Permission is hereby granted, free of charge, to any person obtaining
|
5
|
+
# a copy of this software and associated documentation files (the
|
6
|
+
# "Software"), to deal in the Software without restriction, including
|
7
|
+
# without limitation the rights to use, copy, modify, merge, publish,
|
8
|
+
# distribute, sublicense, and/or sell copies of the Software, and to
|
9
|
+
# permit persons to whom the Software is furnished to do so, subject to
|
10
|
+
# the following conditions:
|
11
|
+
#
|
12
|
+
# The above copyright notice and this permission notice shall be
|
13
|
+
# included in all copies or substantial portions of the Software.
|
14
|
+
#
|
15
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
16
|
+
# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
17
|
+
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
18
|
+
# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
19
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
20
|
+
# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
21
|
+
# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
22
|
+
#++
|
23
|
+
#
|
24
|
+
#-- Tr8n::LanguageForumMessage Schema Information
|
25
|
+
#
|
26
|
+
# Table name: tr8n_language_forum_messages
|
27
|
+
#
|
28
|
+
# id INTEGER not null, primary key
|
29
|
+
# language_id integer not null
|
30
|
+
# language_forum_topic_id integer not null
|
31
|
+
# translator_id integer not null
|
32
|
+
# message text not null
|
33
|
+
# created_at datetime
|
34
|
+
# updated_at datetime
|
35
|
+
#
|
36
|
+
# Indexes
|
37
|
+
#
|
38
|
+
# tr8n_forum_msgs_lang_id_topic_id (language_id, language_forum_topic_id)
|
39
|
+
# tr8n_forums_msgs_translator_id (translator_id)
|
40
|
+
# tr8n_forum_msgs_lang_id (language_id)
|
41
|
+
#
|
42
|
+
#++
|
43
|
+
|
44
|
+
class Tr8n::LanguageForumMessage < ActiveRecord::Base
|
45
|
+
set_table_name :tr8n_language_forum_messages
|
46
|
+
|
47
|
+
attr_accessible :language_id, :language_forum_topic_id, :translator_id, :message
|
48
|
+
attr_accessible :language, :translator, :language_forum_topic
|
49
|
+
|
50
|
+
belongs_to :language, :class_name => "Tr8n::Language"
|
51
|
+
belongs_to :translator, :class_name => "Tr8n::Translator"
|
52
|
+
belongs_to :language_forum_topic, :class_name => "Tr8n::LanguageForumTopic"
|
53
|
+
|
54
|
+
has_many :language_forum_abuse_reports, :class_name => "Tr8n::LanguageForumAbuseReport", :dependent => :destroy
|
55
|
+
|
56
|
+
alias :topic :language_forum_topic
|
57
|
+
|
58
|
+
def submit_abuse_report(reporter)
|
59
|
+
report = Tr8n::LanguageForumAbuseReport.where("language_forum_message_id = ? and translator_id = ?", self.id, reporter.id).first
|
60
|
+
report ||= Tr8n::LanguageForumAbuseReport.create(:language_forum_message => self, :translator => reporter, :language => language)
|
61
|
+
translator.update_attributes(:reported => true)
|
62
|
+
report
|
63
|
+
end
|
64
|
+
|
65
|
+
def toHTML
|
66
|
+
return "" unless message
|
67
|
+
ERB::Util.html_escape(message).gsub("\n", "<br>")
|
68
|
+
end
|
69
|
+
end
|