Module: TranslationCms

Defined in:
lib/translation_cms.rb,
lib/translation_cms/slug.rb,
lib/translation_cms/utils.rb,
lib/translation_cms/engine.rb,
lib/translation_cms/country.rb,
lib/translation_cms/version.rb,
lib/translation_cms/api/base.rb,
lib/translation_cms/taggable.rb,
lib/translation_cms/api/order.rb,
lib/translation_cms/api/logger.rb,
lib/translation_cms/api/report.rb,
lib/translation_cms/api/writer.rb,
lib/translation_cms/api_struct.rb,
lib/translation_cms/order_form.rb,
lib/translation_cms/white_list.rb,
lib/translation_cms/api/payment.rb,
lib/translation_cms/api/real_ip.rb,
lib/translation_cms/api/request.rb,
lib/translation_cms/api/service.rb,
lib/translation_cms/api/session.rb,
lib/translation_cms/api/setting.rb,
lib/translation_cms/failure_app.rb,
lib/translation_cms/import/base.rb,
lib/translation_cms/import/post.rb,
lib/translation_cms/api/category.rb,
lib/translation_cms/api/customer.rb,
lib/translation_cms/api/language.rb,
lib/translation_cms/api/password.rb,
lib/translation_cms/api/uploader.rb,
lib/translation_cms/authenticate.rb,
lib/translation_cms/inline_asset.rb,
lib/translation_cms/api/paginator.rb,
lib/translation_cms/api/requestor.rb,
lib/translation_cms/api/attachment.rb,
lib/translation_cms/api/free_quote.rb,
lib/translation_cms/api/rates/base.rb,
lib/translation_cms/api/subscriber.rb,
lib/translation_cms/api/translator.rb,
lib/translation_cms/paypal_express.rb,
lib/translation_cms/api/certificate.rb,
lib/translation_cms/api/clear_cache.rb,
lib/translation_cms/api/order_event.rb,
lib/translation_cms/authenticatable.rb,
lib/translation_cms/humanize_fields.rb,
lib/translation_cms/api/profile/base.rb,
lib/translation_cms/api/cancel_reason.rb,
lib/translation_cms/api/order_feature.rb,
lib/translation_cms/api/order_package.rb,
lib/translation_cms/api/rates/feature.rb,
lib/translation_cms/api/rates/service.rb,
lib/translation_cms/api/rates/urgency.rb,
lib/translation_cms/api/customers/base.rb,
lib/translation_cms/api/customers/note.rb,
lib/translation_cms/api/discounts/base.rb,
lib/translation_cms/api/materials/base.rb,
lib/translation_cms/api/materials/text.rb,
lib/translation_cms/api/profile/export.rb,
lib/translation_cms/api/rates/currency.rb,
lib/translation_cms/api/rates/language.rb,
lib/translation_cms/api/customers/order.rb,
lib/translation_cms/api/profile/control.rb,
lib/translation_cms/api/writer_language.rb,
lib/translation_cms/api/customers/ticket.rb,
lib/translation_cms/api/customers/writer.rb,
lib/translation_cms/api/discounts/ticket.rb,
lib/translation_cms/api/materials/weburl.rb,
lib/translation_cms/api/rates/commission.rb,
lib/translation_cms/api/satellite_secret.rb,
lib/translation_cms/routers/posts_router.rb,
lib/translation_cms/sync_asset_destroyer.rb,
lib/translation_cms/api/customers/feature.rb,
lib/translation_cms/api/customers/payment.rb,
lib/translation_cms/api/customers/profile.rb,
lib/translation_cms/api/order_translation.rb,
lib/translation_cms/api/payments/checkout.rb,
lib/translation_cms/api/rates/certificate.rb,
lib/translation_cms/google_drive/document.rb,
lib/translation_cms/routers/writer_router.rb,
lib/translation_cms/api/customers/feedback.rb,
lib/translation_cms/api/discounts/lifetime.rb,
lib/translation_cms/api/industry_expertise.rb,
lib/translation_cms/routers/blogger_router.rb,
lib/translation_cms/routers/service_router.rb,
lib/translation_cms/api/customers/violation.rb,
lib/translation_cms/api/rates/work_capacity.rb,
lib/translation_cms/routers/redirect_router.rb,
lib/translation_cms/strategies/access_token.rb,
lib/translation_cms/api/customers/department.rb,
lib/translation_cms/api/materials/attachment.rb,
lib/translation_cms/api/profile/confirmation.rb,
lib/translation_cms/api/satellite_attachment.rb,
lib/translation_cms/api/customer_notification.rb,
lib/translation_cms/api/customers/letter_type.rb,
lib/translation_cms/api/customers/ticket_note.rb,
lib/translation_cms/routers/free_quote_router.rb,
lib/translation_cms/api/customers/notification.rb,
lib/translation_cms/strategies/migration_token.rb,
lib/translation_cms/api/customers/subject_query.rb,
lib/translation_cms/routers/testimonials_router.rb,
lib/translation_cms/api/customers/discounts/base.rb,
lib/translation_cms/api/customers/feedbacks/base.rb,
lib/translation_cms/routers/landing_pages_router.rb,
lib/translation_cms/api/customers/billing_address.rb,
lib/translation_cms/api/customers/feedbacks/order.rb,
lib/translation_cms/api/customers/personal_coupon.rb,
lib/translation_cms/routers/specific_pages_router.rb,
lib/translation_cms/api/customers/discounts/coupon.rb,
lib/translation_cms/api/customers/feedbacks/writer.rb,
lib/translation_cms/api/materials/ticket_attachment.rb,
lib/translation_cms/handle_invalid_percent_encoding.rb,
lib/translation_cms/api/customers/discounts/lifetime.rb,
lib/translation_cms/api/customers/reference_material.rb,
lib/translation_cms/api/customers/payment_transaction.rb,
lib/translation_cms/api/customers/phone_verifications.rb,
lib/translation_cms/api/customers/affiliate_program/base.rb,
lib/translation_cms/api/customers/feedback_order_feedback.rb,
lib/translation_cms/api/customers/affiliate_program/member.rb,
lib/translation_cms/api/customers/discounts/personal_coupon.rb,
lib/translation_cms/api/customers/affiliate_program/commission.rb

Defined Under Namespace

Modules: Api, Authenticatable, Authenticate, GoogleDrive, HumanizeFields, Import, InlineAsset, Routers, Slug, Strategies, Taggable, Utils, WhiteList Classes: ApiStruct, Country, Engine, FailureApp, HandleInvalidPercentEncoding, OrderForm, PaypalExpress, SyncAssetDestroyer

Constant Summary collapse

NOFOLLOW_SLUGS =
%w[privacy privacy-policy terms-of-use terms terms-and-conditions
money-back-guarantee money-back subscriber].freeze
{
  delicious: 'http://www.delicious.com/post?url={{url}}&title={{title}}',
  digg: 'http://www.digg.com/submit?url={{url}}&title={{title}}',
  facebook: 'http://www.facebook.com/share.php?s=100&p[url]={{url}}&p[title]={{title}}&\
               p[summary]={{description}}&p[images][0]={{image}}',
  reddit: 'http://www.reddit.com/submit?url={{url}}&title={{title}}',
  stumbleupon: 'http://www.stumbleupon.com/submit?url={{url}}&title={{title}}',
  technorati: 'http://www.technorati.com/faves?add={{url}}&title={{title}}',
  twitter: 'http://twitter.com/share?text={{twitter}}&url={{url}}',
  email: 'mailto:?subject={{title}}&body={{title}}: {{url}}',
  vkontakte: 'http://vk.com/share.php?url={{url}}&title={{title}}&description={{description}}&\
               image={{image}}&noparse=true',
  pinterest: 'http://pinterest.com/pin/create/button/?url={{url}}&media={{image}}&\
               description={{description}}',
  linkedin: 'https://www.linkedin.com/shareArticle?mini=true&url={{url}}&title={{title}}',
  google: 'https://plus.google.com/share?url={{url}}'
}.freeze
VERSION =
'0.1.5'

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.available_file_providersObject

Returns the value of attribute available_file_providers.



213
214
215
# File 'lib/translation_cms.rb', line 213

def available_file_providers
  @available_file_providers
end

.crm_hostObject

Returns the value of attribute crm_host.



35
36
37
# File 'lib/translation_cms.rb', line 35

def crm_host
  @crm_host
end

.crm_urlObject

Returns the value of attribute crm_url.



35
36
37
# File 'lib/translation_cms.rb', line 35

def crm_url
  @crm_url
end

.default_currency_formatObject

Returns the value of attribute default_currency_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def default_currency_format
  @default_currency_format
end

.default_date_formatObject

Returns the value of attribute default_date_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def default_date_format
  @default_date_format
end

.default_datetime_formatObject

Returns the value of attribute default_datetime_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def default_datetime_format
  @default_datetime_format
end

.default_time_formatObject

Returns the value of attribute default_time_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def default_time_format
  @default_time_format
end

.ecommerceObject

Returns the value of attribute ecommerce.



35
36
37
# File 'lib/translation_cms.rb', line 35

def ecommerce
  @ecommerce
end

.filter_pretty_date_formatObject

Returns the value of attribute filter_pretty_date_format.



35
36
37
# File 'lib/translation_cms.rb', line 35

def filter_pretty_date_format
  @filter_pretty_date_format
end

.filter_raw_date_formatObject

Returns the value of attribute filter_raw_date_format.



35
36
37
# File 'lib/translation_cms.rb', line 35

def filter_raw_date_format
  @filter_raw_date_format
end

.is_password_confirmationObject

Returns the value of attribute is_password_confirmation.



35
36
37
# File 'lib/translation_cms.rb', line 35

def is_password_confirmation
  @is_password_confirmation
end

.is_paypal_expressObject

Returns the value of attribute is_paypal_express.



35
36
37
# File 'lib/translation_cms.rb', line 35

def is_paypal_express
  @is_paypal_express
end

.json_microdata_enableObject

Returns the value of attribute json_microdata_enable.



35
36
37
# File 'lib/translation_cms.rb', line 35

def json_microdata_enable
  @json_microdata_enable
end

.momentjs_date_formatObject

Returns the value of attribute momentjs_date_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def momentjs_date_format
  @momentjs_date_format
end

.momentjs_datetime_formatObject

Returns the value of attribute momentjs_datetime_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def momentjs_datetime_format
  @momentjs_datetime_format
end

.momentjs_time_formatObject

Returns the value of attribute momentjs_time_format.



213
214
215
# File 'lib/translation_cms.rb', line 213

def momentjs_time_format
  @momentjs_time_format
end

.term_pagesObject

Returns the value of attribute term_pages.



213
214
215
# File 'lib/translation_cms.rb', line 213

def term_pages
  @term_pages
end

Class Method Details

.configure {|_self| ... } ⇒ Object

Yields:

  • (_self)

Yield Parameters:



42
43
44
# File 'lib/translation_cms.rb', line 42

def configure
  yield(self)
end

.initialize!Object



229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
# File 'lib/translation_cms.rb', line 229

def initialize!
  @json_microdata_enable = false
  @is_password_confirmation = false
  @available_file_providers = %w[default google_drive dropbox box]
  @default_currency_format = '$ 0,000.00'
  @default_time_format = '%l:MM %p'
  @default_date_format = '%-d %B %Y'
  @default_datetime_format = '%-d %B %Y, %l:MM %p'

  @momentjs_time_format = 'hh:mm A'
  @momentjs_date_format = 'D MMMM YYYY'
  @momentjs_datetime_format = 'D MMMM YYYY, hh:mm A'

  @filter_pretty_date_format = 'mm/dd/yy'
  @filter_raw_date_format = 'mm/dd/yy'

  @term_pages = %w[terms]

  Warden::Strategies.add(:access_token, TranslationCms::Strategies::AccessToken)
  Warden::Strategies.add(:migration_token, TranslationCms::Strategies::MigrationToken)
  Devise.mappings[:account] = Devise::Mapping.new(:account, class_name: TranslationCms::Api::Customer,
                                                            failure_app: TranslationCms::FailureApp)

  ActiveMerchant::Billing::Base.mode = :test unless Rails.env.production?
  ActionView::Base.include ActiveMerchant::Billing::Integrations::ActionViewHelper

  CarrierWave::Config.configure_carrierwave!
end

.root_pathObject



225
226
227
# File 'lib/translation_cms.rb', line 225

def root_path
  @root_path ||= Pathname.new(File.dirname(File.expand_path(__dir__)))
end

.settingsObject



258
259
260
# File 'lib/translation_cms.rb', line 258

def settings
  TranslationCms::Api::Setting.all!.first
end

.test_specs(name) ⇒ Object

Launch routes and models tests



264
265
266
267
268
269
270
271
272
273
# File 'lib/translation_cms.rb', line 264

def test_specs(name)
  FactoryGirl.definition_file_paths = [File.expand_path('../spec/factories', __dir__)]
  FactoryGirl.find_definitions
  if name.blank?
    RSpec::Core::Runner.run([File.join(root_path, 'spec')], $stderr, $stdout)
  else
    files = Dir["#{root_path}/spec/**/#{name}*_spec.rb"]
    RSpec::Core::Runner.run([files], $stderr, $stdout)
  end
end