redmine_crm 0.0.14 → 0.0.16

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 98f6edf8cd9c627f119640dc72c109b501716c0e
4
- data.tar.gz: a361e4228e0087d21df1a61a1eade63e4d470c91
3
+ metadata.gz: 8476cc7f68dab5781c42ea785cdf2ceee5cd110f
4
+ data.tar.gz: 803b10a20986f745450fb3137b69c69d6fa53158
5
5
  SHA512:
6
- metadata.gz: 16c88a5ab553ce3a01d141be49929b402f7e4f4d252c7dc9b0c476d5b1d6e9f51ab5773728a4d47c4f0fcd229829ae22e96e280f45f19b9cb6b124f013925fc4
7
- data.tar.gz: 49ce508bdf8fa137cd395c6f46c726cd9760561b311e33c948ad65ac0775150262488584a7b2abbdbb49002786369cc4230aaa40abf35e47045537e82be21996
6
+ metadata.gz: 8a3fbac887b278b4f45ca4dc48adc508ed5876e9a5ff8bb531a6b837a8a8d9b4b0ff8d6a05df5165701030c2ec3e9c50a5f622660f25a474be2eba13b6e0e1b8
7
+ data.tar.gz: c14842d725949500bd2d91121f6817864908b138c899883f0b28bd83318f7c700ac18cf47bc9c8af3e4705c43084eaa845bbac697016a1e2c48906f3a3fb07db
data/doc/CHANGELOG CHANGED
@@ -4,6 +4,15 @@ Redmine crm gem - general functions for plugins (tags, vote, viewing, currency)
4
4
  Copyright (C) 2011-2015 RedmineCRM
5
5
  http://www.redminecrm.com/
6
6
 
7
+ == 2015-09-26 v0.0.16
8
+
9
+ * Totally remove dependency from Contact plugin
10
+
11
+ == 2015-09-24 v0.0.15
12
+
13
+ * Fixed bug for available tag when model not have a relation with a project
14
+ * Added transfer of parameters for formatting a price
15
+
7
16
  == 2015-09-23 v0.0.14
8
17
 
9
18
  * Fixed bug in viewed? function
@@ -30,16 +30,15 @@ module RedmineCrm
30
30
  def format(value, currency, *rules)
31
31
  # support for old format parameters
32
32
  rules = normalize_formatting_rules(rules)
33
- # byebug
34
- rules = Currency.default_formatting_rules.merge(rules)
35
33
  if currency
36
34
  rules = self.localize_formatting_rules(rules, currency)
37
35
  rules = self.translate_formatting_rules(rules, currency.code) if rules[:translate]
38
- rules[:decimal_mark] = currency.decimal_mark unless rules[:decimal_mark]
36
+ rules[:decimal_mark] = currency.decimal_mark if rules[:decimal_mark].nil?
39
37
  rules[:decimal_places] = currency.decimal_places
40
38
  rules[:subunit_to_unit] = currency.subunit_to_unit
41
- rules[:thousands_separator] = currency.thousands_separator unless rules[:thousands_separator]
39
+ rules[:thousands_separator] = currency.thousands_separator if rules[:thousands_separator].nil?
42
40
  end
41
+ rules = Currency.default_formatting_rules.merge(rules){|key, v1, v2| v2.nil? ? v1 : v2}
43
42
 
44
43
  # if fractional == 0
45
44
  if rules[:display_free].respond_to?(:to_str)
@@ -50,9 +49,6 @@ module RedmineCrm
50
49
  # end
51
50
 
52
51
  symbol_value = currency.try(:symbol) || ""
53
- # decimal_mark = rules["decimal_mark"]
54
- # decimal_places
55
-
56
52
 
57
53
  formatted = value.abs.to_s
58
54
 
@@ -79,7 +75,6 @@ module RedmineCrm
79
75
  thousands_separator_value = rules[:thousands_separator] || ''
80
76
  end
81
77
  decimal_mark = rules[:decimal_mark]
82
-
83
78
  # Apply thousands_separator
84
79
  formatted.gsub!(regexp_format(formatted, rules, decimal_mark, symbol_value),
85
80
  "\\1#{thousands_separator_value}")
@@ -206,8 +201,8 @@ module RedmineCrm
206
201
  rules = rules.pop
207
202
  rules = { rules => true } if rules.is_a?(Symbol)
208
203
  end
209
- rules[:decimal_mark] = rules[:separator] || ContactsSetting.decimal_separator || rules[:decimal_mark]
210
- rules[:thousands_separator] = rules[:delimiter] || ContactsSetting.thousands_delimiter || rules[:thousands_separator]
204
+ rules[:decimal_mark] = rules[:separator] || rules[:decimal_mark]
205
+ rules[:thousands_separator] = rules[:delimiter] || rules[:thousands_separator]
211
206
  rules
212
207
  end
213
208
 
@@ -5,8 +5,9 @@ require 'action_view'
5
5
  module RedmineCrm
6
6
  module MoneyHelper
7
7
 
8
- def object_price(obj, price_field = :price)
9
- price_to_currency(obj.try(price_field), obj.currency, :symbol => true).to_s if obj.respond_to?(:currency)
8
+ def object_price(obj, price_field = :price, options = {})
9
+ options.merge!({:symbol => true})
10
+ price_to_currency(obj.try(price_field), obj.currency, options).to_s if obj.respond_to?(:currency)
10
11
  end
11
12
 
12
13
  def prices_collection_by_currency(prices_collection, options={})
@@ -29,14 +30,10 @@ module RedmineCrm
29
30
  end
30
31
  end
31
32
 
32
- def collection_for_currencies_select(default_currency = ContactsSetting.default_currency)
33
- major_currencies_collection(default_currency)
34
- end
35
-
36
- def major_currencies_collection(default_currency)
37
- currencies = []
33
+ def collection_for_currencies_select(default_currency='USD')
34
+ currencies = []
38
35
  currencies << default_currency.to_s unless default_currency.blank?
39
- currencies |= ContactsSetting.major_currencies
36
+ currencies |= %w(USD EUR GBP RUB CHF)
40
37
  currencies.map do |c|
41
38
  currency = RedmineCrm::Currency.find(c)
42
39
  ["#{currency.iso_code} (#{currency.symbol})", currency.iso_code] if currency
@@ -57,7 +54,7 @@ module RedmineCrm
57
54
  currency = "USD" unless currency.is_a?(String)
58
55
  currency = RedmineCrm::Currency.find(currency)
59
56
 
60
- return RedmineCrm::Currency.format(price.to_f, currency)# if currency
57
+ return RedmineCrm::Currency.format(price.to_f, currency, options)# if currency
61
58
  price.to_s
62
59
  end
63
60
 
@@ -93,16 +93,17 @@ module RedmineCrm
93
93
  #Example: Question.available_tags(@project_id )
94
94
  def available_tags(project=nil, limit=30)
95
95
  scope = Tag.where({})
96
- scope = scope.where("#{Project.table_name}.id = ?", project) if project
97
96
  class_name = quote_value(base_class.name, nil)
98
97
  join = []
99
98
  join << "JOIN #{Tagging.table_name} ON #{Tagging.table_name}.tag_id = #{Tag.table_name}.id "
100
99
  join << "JOIN #{table_name} ON #{table_name}.id = #{Tagging.table_name}.taggable_id
101
100
  AND #{Tagging.table_name}.taggable_type = #{class_name} "
102
- if project
103
- join << "JOIN #{Project.table_name} ON #{Project.table_name}.id = #{table_name}.project_id"
104
- else
105
- scope = scope.where("#{table_name}.project_id IS NULL")
101
+ if self.attribute_names.include? "project_id"
102
+ if project
103
+ join << "JOIN #{Project.table_name} ON #{Project.table_name}.id = #{table_name}.project_id"
104
+ else
105
+ scope = scope.where("#{table_name}.project_id IS NULL")
106
+ end
106
107
  end
107
108
 
108
109
  group_fields = ""
@@ -1,3 +1,3 @@
1
1
  module RedmineCrm
2
- VERSION = "0.0.14"
2
+ VERSION = "0.0.16"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redmine_crm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.14
4
+ version: 0.0.16
5
5
  platform: ruby
6
6
  authors:
7
7
  - RedmineCRM
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-09-23 00:00:00.000000000 Z
11
+ date: 2015-09-26 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: plugins for Redmine
14
14
  email: