camaleon_ecommerce 1.1 → 1.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.
Files changed (70) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/plugins/ecommerce/admin_product.js.coffee +83 -0
  3. data/app/assets/javascripts/plugins/ecommerce/cart.js +3 -0
  4. data/app/controllers/plugins/ecommerce/admin/coupons_controller.rb +6 -12
  5. data/app/controllers/plugins/ecommerce/admin/orders_controller.rb +2 -8
  6. data/app/controllers/plugins/ecommerce/admin/payment_methods_controller.rb +7 -12
  7. data/app/controllers/plugins/ecommerce/admin/prices_controller.rb +0 -8
  8. data/app/controllers/plugins/ecommerce/admin/settings_controller.rb +0 -8
  9. data/app/controllers/plugins/ecommerce/admin/shipping_methods_controller.rb +6 -14
  10. data/app/controllers/plugins/ecommerce/admin/tax_rates_controller.rb +6 -12
  11. data/app/controllers/plugins/ecommerce/admin_controller.rb +27 -8
  12. data/app/controllers/plugins/ecommerce/front/checkout_controller.rb +42 -75
  13. data/app/controllers/plugins/ecommerce/front/orders_controller.rb +2 -10
  14. data/app/controllers/plugins/ecommerce/front_controller.rb +0 -8
  15. data/app/decorators/plugins/ecommerce/coupon_decorator.rb +0 -8
  16. data/app/decorators/plugins/ecommerce/product_decorator.rb +86 -35
  17. data/app/decorators/plugins/ecommerce/product_item_decorator.rb +27 -3
  18. data/app/decorators/plugins/ecommerce/product_variation_decorator.rb +18 -0
  19. data/app/helpers/plugins/ecommerce/ecommerce_email_helper.rb +11 -13
  20. data/app/helpers/plugins/ecommerce/ecommerce_functions_helper.rb +25 -11
  21. data/app/helpers/plugins/ecommerce/ecommerce_helper.rb +22 -27
  22. data/app/helpers/plugins/ecommerce/ecommerce_payment_helper.rb +1 -56
  23. data/app/models/plugins/ecommerce/attribute.rb +9 -0
  24. data/app/models/plugins/ecommerce/cart.rb +46 -28
  25. data/app/models/plugins/ecommerce/coupon.rb +0 -8
  26. data/app/models/plugins/ecommerce/legacy_cart.rb +50 -0
  27. data/app/models/plugins/ecommerce/legacy_order.rb +48 -0
  28. data/app/models/plugins/ecommerce/order.rb +0 -8
  29. data/app/models/plugins/ecommerce/order_detail.rb +0 -9
  30. data/app/models/plugins/ecommerce/payment_method.rb +0 -8
  31. data/app/models/plugins/ecommerce/product_item.rb +3 -10
  32. data/app/models/plugins/ecommerce/product_variation.rb +9 -0
  33. data/app/models/plugins/ecommerce/shipping_method.rb +0 -8
  34. data/app/models/plugins/ecommerce/tax_rate.rb +0 -8
  35. data/app/services/plugins/ecommerce/cart_service.rb +149 -0
  36. data/app/services/plugins/ecommerce/order_service.rb +26 -0
  37. data/app/services/plugins/ecommerce/product_item_service.rb +29 -0
  38. data/app/services/plugins/ecommerce/product_service.rb +17 -0
  39. data/app/services/plugins/ecommerce/site_service.rb +21 -0
  40. data/app/services/plugins/ecommerce/user_cart_service.rb +12 -0
  41. data/app/services/plugins/ecommerce/user_product_service.rb +29 -0
  42. data/app/services/plugins/ecommerce/util_service.rb +5 -0
  43. data/app/views/plugins/ecommerce/admin/orders/form.html.erb +28 -16
  44. data/app/views/plugins/ecommerce/admin/orders/index.html.erb +7 -1
  45. data/app/views/plugins/ecommerce/admin/payment_methods/form.html.erb +11 -1
  46. data/app/views/plugins/ecommerce/admin/product_attributes.html.erb +95 -0
  47. data/app/views/plugins/ecommerce/admin/products/_variations.html.erb +72 -0
  48. data/app/views/plugins/ecommerce/front/checkout/cart_index.html.erb +5 -5
  49. data/app/views/plugins/ecommerce/front/orders/show.html.erb +96 -89
  50. data/app/views/plugins/ecommerce/partials/_cart_widget.html.erb +3 -3
  51. data/app/views/plugins/ecommerce/partials/checkout/_details.html.erb +1 -1
  52. data/app/views/plugins/ecommerce/partials/checkout/_payments.html.erb +6 -1
  53. data/app/views/plugins/ecommerce/partials/checkout/_products_detail.html.erb +1 -1
  54. data/app/views/plugins/ecommerce/partials/checkout/_user_info.html.erb +26 -22
  55. data/app/views/post_types/commerce/single.html.erb +28 -12
  56. data/config/camaleon_plugin.json +4 -12
  57. data/config/custom_models.rb +10 -0
  58. data/config/locales/en.yml +3 -0
  59. data/config/locales/es.yml +112 -54
  60. data/config/routes.rb +2 -0
  61. data/db/migrate/20160527184747_add_new_cart_structure.rb +7 -4
  62. data/db/migrate/20160620200501_add_product_attributes_structure.rb +21 -0
  63. data/db/migrate/20160825174848_set_cama_post_decorator_class.rb +13 -0
  64. data/db/migrate/20160825232739_migrate_order_data.rb +87 -0
  65. data/lib/ecommerce/version.rb +1 -1
  66. metadata +22 -7
  67. data/app/assets/javascripts/plugins/ecommerce/admin.js +0 -0
  68. data/app/assets/javascripts/plugins/ecommerce/fix_form.js +0 -7
  69. data/config/currency_en.json +0 -154
  70. data/config/currency_es.json +0 -154
data/config/routes.rb CHANGED
@@ -42,6 +42,8 @@ Rails.application.routes.draw do
42
42
  namespace 'plugins' do
43
43
  namespace 'ecommerce' do
44
44
  get 'index' => 'admin#index'
45
+ get 'product_attributes' => 'admin#product_attributes'
46
+ post 'product_attributes' => 'admin#save_product_attributes'
45
47
  resources :orders, controller: 'admin/orders' do
46
48
  get 'mark_accepted'
47
49
  get 'mark_bank_confirmed'
@@ -1,11 +1,13 @@
1
1
  class AddNewCartStructure < ActiveRecord::Migration
2
2
  def change
3
3
  create_table :plugins_ecommerce_orders do |t|
4
- t.string :name, :slug, :kind, :coupon, :the_coupon_amount, :currency_code, :payment_data
4
+ t.string :name, :slug, :kind, :coupon, :the_coupon_amount
5
+ t.string :currency_code, :payment_data
5
6
  t.string :status, default: 'unpaid'
6
7
  t.integer :shipping_method_id, :user_id, :site_id, :payment_method_id, index: true
7
8
  t.timestamp :paid_at, :received_at, :accepted_at, :shipped_at, :closed_at
8
- t.string :cache_the_total, :cache_the_sub_total, :cache_the_tax, :cache_the_weight, :cache_the_discounts, :cache_the_shipping
9
+ t.string :cache_the_total, :cache_the_sub_total, :cache_the_tax
10
+ t.string :cache_the_weight, :cache_the_discounts, :cache_the_shipping
9
11
  t.decimal :amount, :precision => 8, :scale => 2
10
12
  t.text :description
11
13
  t.timestamps null: false
@@ -13,9 +15,10 @@ class AddNewCartStructure < ActiveRecord::Migration
13
15
 
14
16
  create_table :plugins_ecommerce_products do |t|
15
17
  t.integer :qty, :product_id, :order_id, index: true
16
- t.string :cache_the_price, :cache_the_title, :cache_the_tax, :cache_the_sub_total
18
+ t.string :cache_the_price, :cache_the_title, :cache_the_tax
19
+ t.string :cache_the_sub_total
17
20
  end
18
21
 
19
- drop_table :plugins_order_details
22
+ #drop_table :plugins_order_details
20
23
  end
21
24
  end
@@ -0,0 +1,21 @@
1
+ class AddProductAttributesStructure < ActiveRecord::Migration
2
+ def change
3
+ create_table :plugins_ecommerce_attributes do |t|
4
+ t.string :key, :label
5
+ t.integer :parent_id, index: true
6
+ t.integer :site_id, index: true
7
+ t.integer :position, default: 0
8
+ end
9
+
10
+ create_table :plugins_ecommerce_product_variations do |t|
11
+ t.decimal :amount, :precision => 8, :scale => 2
12
+ t.belongs_to :product, index: true
13
+ t.string :photo, :sku
14
+ t.integer :weight
15
+ t.integer :position, :qty, default: 0
16
+ t.string :attribute_ids
17
+ end
18
+
19
+ add_column :plugins_ecommerce_products, :variation_id, :integer
20
+ end
21
+ end
@@ -0,0 +1,13 @@
1
+ class SetCamaPostDecoratorClass < ActiveRecord::Migration
2
+ def change
3
+ CamaleonCms::Site.reset_column_information
4
+ CamaleonCms::PostType.reset_column_information
5
+ CamaleonCms::Site.find_each do |site|
6
+ post_type = site.post_types.where(slug: 'commerce').first
7
+ if post_type
8
+ post_type.set_options(cama_post_decorator_class: 'Plugins::Ecommerce::ProductDecorator')
9
+ post_type.save(validate: false)
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,87 @@
1
+ class MigrateOrderData < ActiveRecord::Migration
2
+ def change
3
+ if table_exists?('plugins_order_details') && Plugins::Ecommerce::LegacyOrder.count > 0
4
+ Plugins::Ecommerce::LegacyOrder.reset_column_information
5
+
6
+ CamaleonCms::Meta.where(object_class: 'Plugins::Ecommerce::Order').
7
+ update_all(object_class: 'Plugins::Ecommerce::LegacyOrder')
8
+
9
+ # Plugins::Ecommerce::Order.transaction { Plugins::Ecommerce::Order.destroy_all }
10
+
11
+ product_post_type = CamaleonCms::PostType.where(slug: 'commerce').first
12
+ raise 'Product post type must exist' unless product_post_type
13
+
14
+ Plugins::Ecommerce::LegacyOrder.order(:created_at).find_each do |legacy_order|
15
+ details = legacy_order.decorate.details
16
+ order = Plugins::Ecommerce::Order.new(
17
+ name: legacy_order.name,
18
+ description: legacy_order.description,
19
+ slug: legacy_order.slug,
20
+ status: legacy_order.status,
21
+ created_at: legacy_order.created_at,
22
+ updated_at: legacy_order.updated_at,
23
+ received_at: details.received_at,
24
+ accepted_at: details.accepted_at,
25
+ shipped_at: details.shipped_at,
26
+ closed_at: details.closed_at,
27
+ user_id: legacy_order.user_id,
28
+ # not 100% sure on parent_id -> site_id mapping
29
+ site_id: legacy_order.parent_id,
30
+ # not mapped fields because they are always nil in my orders:
31
+ # count, term_group, term_order
32
+ )
33
+ order.save(validate: false)
34
+
35
+ legacy_order.metas.each do |legacy_meta|
36
+ meta = CamaleonCms::Meta.new(
37
+ object_class: 'Plugins::Ecommerce::Cart',
38
+ objectid: order.id,
39
+ key: legacy_meta.key,
40
+ value: legacy_meta.value,
41
+ )
42
+ meta.save(validate: false)
43
+ end
44
+
45
+ order.reload
46
+ payment_meta = order.get_meta('payment')
47
+ if payment_meta
48
+ order.set_meta('payment_method_id', payment_meta['payment_id'])
49
+ order.payment_method_id = payment_meta['payment_id']
50
+ order.shipping_method_id = payment_meta['shipping_method']
51
+ order.coupon = payment_meta['coupon_code'],
52
+ order.the_coupon_amount = payment_meta['coupon_amount'],
53
+ order.save(validate: false)
54
+ end
55
+
56
+ if order.user
57
+ order.user.set_option('phone', details.phone)
58
+ end
59
+
60
+ order.get_meta('products').each do |key, product|
61
+ p = product_post_type.posts.where(id: product['product_id']).first
62
+ p = Plugins::Ecommerce::ProductDecorator.new(p)
63
+ order.product_items.create(
64
+ product_id: product['product_id'],
65
+ qty: product['qty'],
66
+ cache_the_price: p.the_price,
67
+ cache_the_title: p.title,
68
+ cache_the_tax: '$%.2f' % p.the_tax,
69
+ cache_the_sub_total: '$%.2f' % (product['price'].to_f*product['qty'].to_f),
70
+ )
71
+ end
72
+
73
+ order.reload
74
+ c = Plugins::Ecommerce::CartDecorator.new(order)
75
+ order.update_columns(
76
+ amount: order.total_amount,
77
+ cache_the_total: c.the_price,
78
+ cache_the_sub_total: c.the_sub_total,
79
+ cache_the_tax: c.the_tax_total,
80
+ cache_the_weight: c.the_weight_total,
81
+ cache_the_discounts: c.the_total_discounts,
82
+ cache_the_shipping: c.the_total_shipping,
83
+ )
84
+ end
85
+ end
86
+ end
87
+ end
@@ -1,3 +1,3 @@
1
1
  module Ecommerce
2
- VERSION = '1.1'
2
+ VERSION = '1.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: camaleon_ecommerce
3
3
  version: !ruby/object:Gem::Version
4
- version: '1.1'
4
+ version: '1.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Owen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-06-17 00:00:00.000000000 Z
11
+ date: 2016-10-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -90,9 +90,8 @@ files:
90
90
  - MIT-LICENSE
91
91
  - README.rdoc
92
92
  - Rakefile
93
- - app/assets/javascripts/plugins/ecommerce/admin.js
93
+ - app/assets/javascripts/plugins/ecommerce/admin_product.js.coffee
94
94
  - app/assets/javascripts/plugins/ecommerce/cart.js
95
- - app/assets/javascripts/plugins/ecommerce/fix_form.js
96
95
  - app/assets/javascripts/plugins/ecommerce/jquery.creditCardValidator.js
97
96
  - app/assets/stylesheets/plugins/ecommerce/admin.scss
98
97
  - app/assets/stylesheets/plugins/ecommerce/checkout.css.scss
@@ -113,18 +112,31 @@ files:
113
112
  - app/decorators/plugins/ecommerce/order_decorator.rb
114
113
  - app/decorators/plugins/ecommerce/product_decorator.rb
115
114
  - app/decorators/plugins/ecommerce/product_item_decorator.rb
115
+ - app/decorators/plugins/ecommerce/product_variation_decorator.rb
116
116
  - app/helpers/plugins/ecommerce/ecommerce_email_helper.rb
117
117
  - app/helpers/plugins/ecommerce/ecommerce_functions_helper.rb
118
118
  - app/helpers/plugins/ecommerce/ecommerce_helper.rb
119
119
  - app/helpers/plugins/ecommerce/ecommerce_payment_helper.rb
120
+ - app/models/plugins/ecommerce/attribute.rb
120
121
  - app/models/plugins/ecommerce/cart.rb
121
122
  - app/models/plugins/ecommerce/coupon.rb
123
+ - app/models/plugins/ecommerce/legacy_cart.rb
124
+ - app/models/plugins/ecommerce/legacy_order.rb
122
125
  - app/models/plugins/ecommerce/order.rb
123
126
  - app/models/plugins/ecommerce/order_detail.rb
124
127
  - app/models/plugins/ecommerce/payment_method.rb
125
128
  - app/models/plugins/ecommerce/product_item.rb
129
+ - app/models/plugins/ecommerce/product_variation.rb
126
130
  - app/models/plugins/ecommerce/shipping_method.rb
127
131
  - app/models/plugins/ecommerce/tax_rate.rb
132
+ - app/services/plugins/ecommerce/cart_service.rb
133
+ - app/services/plugins/ecommerce/order_service.rb
134
+ - app/services/plugins/ecommerce/product_item_service.rb
135
+ - app/services/plugins/ecommerce/product_service.rb
136
+ - app/services/plugins/ecommerce/site_service.rb
137
+ - app/services/plugins/ecommerce/user_cart_service.rb
138
+ - app/services/plugins/ecommerce/user_product_service.rb
139
+ - app/services/plugins/ecommerce/util_service.rb
128
140
  - app/views/camaleon_cms/html_mailer/order_canceled.html.erb
129
141
  - app/views/camaleon_cms/html_mailer/order_confirmed.html.erb
130
142
  - app/views/camaleon_cms/html_mailer/order_received.html.erb
@@ -142,6 +154,8 @@ files:
142
154
  - app/views/plugins/ecommerce/admin/prices/form.html.erb
143
155
  - app/views/plugins/ecommerce/admin/prices/index.html.erb
144
156
  - app/views/plugins/ecommerce/admin/prices/show.html.erb
157
+ - app/views/plugins/ecommerce/admin/product_attributes.html.erb
158
+ - app/views/plugins/ecommerce/admin/products/_variations.html.erb
145
159
  - app/views/plugins/ecommerce/admin/products/index.html.erb
146
160
  - app/views/plugins/ecommerce/admin/settings/index.html.erb
147
161
  - app/views/plugins/ecommerce/admin/shipping_methods/form.html.erb
@@ -165,8 +179,6 @@ files:
165
179
  - app/views/post_types/commerce/single.html.erb
166
180
  - config/camaleon_plugin.json
167
181
  - config/currency.json
168
- - config/currency_en.json
169
- - config/currency_es.json
170
182
  - config/custom_models.rb
171
183
  - config/locales/en.yml
172
184
  - config/locales/es.yml
@@ -175,6 +187,9 @@ files:
175
187
  - db/migrate/20160502221327_add_cama_ecommerce_structure_plugin.rb
176
188
  - db/migrate/20160504162311_move_featured_attribute_of_products.rb
177
189
  - db/migrate/20160527184747_add_new_cart_structure.rb
190
+ - db/migrate/20160620200501_add_product_attributes_structure.rb
191
+ - db/migrate/20160825174848_set_cama_post_decorator_class.rb
192
+ - db/migrate/20160825232739_migrate_order_data.rb
178
193
  - lib/camaleon_ecommerce.rb
179
194
  - lib/ecommerce.rb
180
195
  - lib/ecommerce/engine.rb
@@ -200,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
200
215
  version: '0'
201
216
  requirements: []
202
217
  rubyforge_project:
203
- rubygems_version: 2.5.1
218
+ rubygems_version: 2.4.8
204
219
  signing_key:
205
220
  specification_version: 4
206
221
  summary: ": Summary of Ecommerce."
File without changes
@@ -1,7 +0,0 @@
1
- jQuery(function($){
2
- $( '#form-post' ).on( "change", '.editor-custom-fields input[name="field_options[ecommerce_weight][values][]"], .editor-custom-fields .input-value.number', function() {
3
- setTimeout(function(){
4
- $(this).val(Math.abs($(this).val()) || 0);
5
- }.bind(this), 60)
6
- });
7
- });
@@ -1,154 +0,0 @@
1
- {
2
- "USD": {
3
- "symbol": "$",
4
- "name": "US Dollar",
5
- "symbol_native": "$",
6
- "decimal_digits": 2,
7
- "rounding": 0,
8
- "code": "USD",
9
- "name_plural": "US dollars"
10
- },
11
- "CAD": {
12
- "symbol": "CA$",
13
- "name": "Canadian Dollar",
14
- "symbol_native": "$",
15
- "decimal_digits": 2,
16
- "rounding": 0,
17
- "code": "CAD",
18
- "name_plural": "Canadian dollars"
19
- },
20
- "EUR": {
21
- "symbol": "€",
22
- "name": "Euro",
23
- "symbol_native": "€",
24
- "decimal_digits": 2,
25
- "rounding": 0,
26
- "code": "EUR",
27
- "name_plural": "euros"
28
- },
29
- "AUD": {
30
- "symbol": "AU$",
31
- "name": "Australian Dollar",
32
- "symbol_native": "$",
33
- "decimal_digits": 2,
34
- "rounding": 0,
35
- "code": "AUD",
36
- "name_plural": "Australian dollars"
37
- },
38
- "GBP": {
39
- "symbol": "£",
40
- "name": "British Pound Sterling",
41
- "symbol_native": "£",
42
- "decimal_digits": 2,
43
- "rounding": 0,
44
- "code": "GBP",
45
- "name_plural": "British pounds sterling"
46
- },
47
- "CZK": {
48
- "symbol": "Kč",
49
- "name": "Czech Republic Koruna",
50
- "symbol_native": "Kč",
51
- "decimal_digits": 2,
52
- "rounding": 0,
53
- "code": "CZK",
54
- "name_plural": "Czech Republic korunas"
55
- },
56
- "DKK": {
57
- "symbol": "Dkr",
58
- "name": "Danish Krone",
59
- "symbol_native": "kr",
60
- "decimal_digits": 2,
61
- "rounding": 0,
62
- "code": "DKK",
63
- "name_plural": "Danish kroner"
64
- },
65
-
66
- "HKD": {
67
- "symbol": "HK$",
68
- "name": "Hong Kong Dollar",
69
- "symbol_native": "$",
70
- "decimal_digits": 2,
71
- "rounding": 0,
72
- "code": "HKD",
73
- "name_plural": "Hong Kong dollars"
74
- },
75
-
76
- "HUF": {
77
- "symbol": "Ft",
78
- "name": "Hungarian Forint",
79
- "symbol_native": "Ft",
80
- "decimal_digits": 0,
81
- "rounding": 0,
82
- "code": "HUF",
83
- "name_plural": "Hungarian forints"
84
- },
85
-
86
- "JPY": {
87
- "symbol": "¥",
88
- "name": "Japanese Yen",
89
- "symbol_native": "¥",
90
- "decimal_digits": 0,
91
- "rounding": 0,
92
- "code": "JPY",
93
- "name_plural": "Japanese yen"
94
- },
95
-
96
- "NOK": {
97
- "symbol": "Nkr",
98
- "name": "Norwegian Krone",
99
- "symbol_native": "kr",
100
- "decimal_digits": 2,
101
- "rounding": 0,
102
- "code": "NOK",
103
- "name_plural": "Norwegian kroner"
104
- },
105
-
106
- "NZD": {
107
- "symbol": "NZ$",
108
- "name": "New Zealand Dollar",
109
- "symbol_native": "$",
110
- "decimal_digits": 2,
111
- "rounding": 0,
112
- "code": "NZD",
113
- "name_plural": "New Zealand dollars"
114
- },
115
-
116
- "PLN": {
117
- "symbol": "zł",
118
- "name": "Polish Zloty",
119
- "symbol_native": "zł",
120
- "decimal_digits": 2,
121
- "rounding": 0,
122
- "code": "PLN",
123
- "name_plural": "Polish zlotys"
124
- },
125
-
126
- "SEK": {
127
- "symbol": "Skr",
128
- "name": "Swedish Krona",
129
- "symbol_native": "kr",
130
- "decimal_digits": 2,
131
- "rounding": 0,
132
- "code": "SEK",
133
- "name_plural": "Swedish kronor"
134
- },
135
- "SGD": {
136
- "symbol": "S$",
137
- "name": "Singapore Dollar",
138
- "symbol_native": "$",
139
- "decimal_digits": 2,
140
- "rounding": 0,
141
- "code": "SGD",
142
- "name_plural": "Singapore dollars"
143
- },
144
- "CHF": {
145
- "symbol": "CHF",
146
- "name": "Swiss Franc",
147
- "symbol_native": "CHF",
148
- "decimal_digits": 2,
149
- "rounding": 0.05,
150
- "code": "CHF",
151
- "name_plural": "Swiss francs"
152
- }
153
-
154
- }
@@ -1,154 +0,0 @@
1
- {
2
- "USD": {
3
- "symbol": "$",
4
- "name": "Dólar Americano",
5
- "symbol_native": "$",
6
- "decimal_digits": 2,
7
- "rounding": 0,
8
- "code": "USD",
9
- "name_plural": "Dólares estadounidenses"
10
- },
11
- "CAD": {
12
- "symbol": "CA$",
13
- "name": "Dólar Canadiense",
14
- "symbol_native": "$",
15
- "decimal_digits": 2,
16
- "rounding": 0,
17
- "code": "CAD",
18
- "name_plural": "Dólares canadienses"
19
- },
20
- "EUR": {
21
- "symbol": "€",
22
- "name": "Euro",
23
- "symbol_native": "€",
24
- "decimal_digits": 2,
25
- "rounding": 0,
26
- "code": "EUR",
27
- "name_plural": "euros"
28
- },
29
- "AUD": {
30
- "symbol": "AU$",
31
- "name": "Dólar Australiano",
32
- "symbol_native": "$",
33
- "decimal_digits": 2,
34
- "rounding": 0,
35
- "code": "AUD",
36
- "name_plural": "Dólares australianos"
37
- },
38
- "GBP": {
39
- "symbol": "£",
40
- "name": "Libra Esterlina Británica",
41
- "symbol_native": "£",
42
- "decimal_digits": 2,
43
- "rounding": 0,
44
- "code": "GBP",
45
- "name_plural": "Libras esterlinas"
46
- },
47
- "CZK": {
48
- "symbol": "Kč",
49
- "name": "Corona Checa",
50
- "symbol_native": "Kč",
51
- "decimal_digits": 2,
52
- "rounding": 0,
53
- "code": "CZK",
54
- "name_plural": "Coronas República Checa"
55
- },
56
- "DKK": {
57
- "symbol": "Dkr",
58
- "name": "Corona Danesa",
59
- "symbol_native": "kr",
60
- "decimal_digits": 2,
61
- "rounding": 0,
62
- "code": "DKK",
63
- "name_plural": "Coronas danesas"
64
- },
65
-
66
- "HKD": {
67
- "symbol": "HK$",
68
- "name": "Dólar de Hong Kong",
69
- "symbol_native": "$",
70
- "decimal_digits": 2,
71
- "rounding": 0,
72
- "code": "HKD",
73
- "name_plural": "Dólares de Hong Kong"
74
- },
75
-
76
- "HUF": {
77
- "symbol": "Ft",
78
- "name": "Florín Húngaro",
79
- "symbol_native": "Ft",
80
- "decimal_digits": 0,
81
- "rounding": 0,
82
- "code": "HUF",
83
- "name_plural": "Florín húngaro"
84
- },
85
-
86
- "JPY": {
87
- "symbol": "¥",
88
- "name": "Yen Japonés",
89
- "symbol_native": "¥",
90
- "decimal_digits": 0,
91
- "rounding": 0,
92
- "code": "JPY",
93
- "name_plural": "Yen Japonés"
94
- },
95
-
96
- "NOK": {
97
- "symbol": "Nkr",
98
- "name": "Corona Noruega",
99
- "symbol_native": "kr",
100
- "decimal_digits": 2,
101
- "rounding": 0,
102
- "code": "NOK",
103
- "name_plural": "Coronas noruegas"
104
- },
105
-
106
- "NZD": {
107
- "symbol": "NZ$",
108
- "name": "Dólar de Nueva Zelanda",
109
- "symbol_native": "$",
110
- "decimal_digits": 2,
111
- "rounding": 0,
112
- "code": "NZD",
113
- "name_plural": "Dólares de Nueva Zelanda"
114
- },
115
-
116
- "PLN": {
117
- "symbol": "zł",
118
- "name": "Zloty Polaco",
119
- "symbol_native": "zł",
120
- "decimal_digits": 2,
121
- "rounding": 0,
122
- "code": "PLN",
123
- "name_plural": "Zlotys Polacos"
124
- },
125
-
126
- "SEK": {
127
- "symbol": "Skr",
128
- "name": "Corona Sueca",
129
- "symbol_native": "kr",
130
- "decimal_digits": 2,
131
- "rounding": 0,
132
- "code": "SEK",
133
- "name_plural": "Coronas Suecas"
134
- },
135
- "SGD": {
136
- "symbol": "S$",
137
- "name": "Dólar de Singapur",
138
- "symbol_native": "$",
139
- "decimal_digits": 2,
140
- "rounding": 0,
141
- "code": "SGD",
142
- "name_plural": "Dólares de Singapur"
143
- },
144
- "CHF": {
145
- "symbol": "CHF",
146
- "name": "Franco Suizo",
147
- "symbol_native": "CHF",
148
- "decimal_digits": 2,
149
- "rounding": 0.05,
150
- "code": "CHF",
151
- "name_plural": "Francos Suizos"
152
- }
153
-
154
- }