From ff6497ea46fbc9df73c5bd43a032fd5b028dc2fd Mon Sep 17 00:00:00 2001 From: Thaleia Tagaraki Date: Sat, 2 Dec 2017 17:59:31 +0200 Subject: [PATCH] Add default currencies --- .rubocop_todo.yml | 2 +- .../{date_time_helper.rb => date_time_currency_helper.rb} | 6 +++++- app/views/admin/tickets/_form.html.haml | 2 +- dotenv.example | 2 ++ spec/features/tickets_spec.rb | 1 + ...ime_helper_spec.rb => date_time_currency_helper_spec.rb} | 2 +- 6 files changed, 11 insertions(+), 4 deletions(-) rename app/helpers/{date_time_helper.rb => date_time_currency_helper.rb} (86%) rename spec/helpers/{date_time_helper_spec.rb => date_time_currency_helper_spec.rb} (94%) diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 5486bd0c..7c89de62 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -542,7 +542,7 @@ Style/NumericLiteralPrefix: Exclude: - 'spec/controllers/admin/conferences_controller_spec.rb' - 'spec/controllers/conference_registration_controller_spec.rb' - - 'spec/helpers/date_time_helper_spec.rb' + - 'spec/helpers/date_time_currency_helper_spec.rb' - 'spec/models/conference_spec.rb' - 'spec/models/email_settings_spec.rb' - 'spec/models/registration_spec.rb' diff --git a/app/helpers/date_time_helper.rb b/app/helpers/date_time_currency_helper.rb similarity index 86% rename from app/helpers/date_time_helper.rb rename to app/helpers/date_time_currency_helper.rb index a8e4f660..b9982a1c 100644 --- a/app/helpers/date_time_helper.rb +++ b/app/helpers/date_time_currency_helper.rb @@ -1,4 +1,4 @@ -module DateTimeHelper +module DateTimeCurrencyHelper ## # Includes functions related to date or time manipulations ## @@ -34,4 +34,8 @@ module DateTimeHelper "#{h} h #{min.round} min" end end + + def currencies + default_currencies = YAML::load(ENV['OSEM_DEFAULT_CURRENCIES']) + end end diff --git a/app/views/admin/tickets/_form.html.haml b/app/views/admin/tickets/_form.html.haml index f66cea51..67a47e6c 100644 --- a/app/views/admin/tickets/_form.html.haml +++ b/app/views/admin/tickets/_form.html.haml @@ -12,7 +12,7 @@ = f.input :title, input_html: { autofocus: true } = f.input :description, input_html: { rows: 5, data: { provide: 'markdown-editable' } } = f.input :price - = f.input :price_currency, as: :select, class: 'form-control', collection: ['USD', 'EUR', 'GBP', 'INR', 'CNY', 'CHF'], include_blank: false + = f.input :price_currency, as: :select, class: 'form-control', collection: currencies, include_blank: false = f.input :registration_ticket, hint: 'A registration ticket is with which user register for the conference.' %p.text-right = f.action :submit, as: :button, button_html: { class: 'btn btn-primary' } diff --git a/dotenv.example b/dotenv.example index 10b5680b..1ea7a98b 100644 --- a/dotenv.example +++ b/dotenv.example @@ -80,3 +80,5 @@ RECAPTCHA_SECRET_KEY="" # The url of the redis server OSEM_REDIS_URL='redis://localhost:6379/1' + +OSEM_DEFAULT_CURRENCIES="['USD', 'EURO', 'GBP', 'INR', 'CNY']" diff --git a/spec/features/tickets_spec.rb b/spec/features/tickets_spec.rb index ab513cd1..c6faffe1 100644 --- a/spec/features/tickets_spec.rb +++ b/spec/features/tickets_spec.rb @@ -1,6 +1,7 @@ require 'spec_helper' feature Ticket do + ENV['OSEM_DEFAULT_CURRENCIES'] = "['USD', 'EURO', 'GBP', 'INR', 'CNY']" let!(:conference) { create(:conference, title: 'ExampleCon') } let!(:organizer_role) { Role.find_by(name: 'organizer', resource: conference) } let!(:organizer) { create(:user, email: 'admin@example.com', role_ids: [organizer_role.id]) } diff --git a/spec/helpers/date_time_helper_spec.rb b/spec/helpers/date_time_currency_helper_spec.rb similarity index 94% rename from spec/helpers/date_time_helper_spec.rb rename to spec/helpers/date_time_currency_helper_spec.rb index 09c7e4a4..deb324b4 100644 --- a/spec/helpers/date_time_helper_spec.rb +++ b/spec/helpers/date_time_currency_helper_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe DateTimeHelper, type: :helper do +describe DateTimeCurrencyHelper, type: :helper do describe 'format_datetime' do it 'returns nothing if there is no parameter' do