Module: FlowcommerceSpree

Defined in:
lib/flowcommerce_spree/api.rb,
lib/flowcommerce_spree.rb,
lib/flowcommerce_spree/engine.rb,
lib/flowcommerce_spree/session.rb,
lib/flowcommerce_spree/version.rb,
lib/flowcommerce_spree/refresher.rb,
lib/flowcommerce_spree/test_support.rb,
app/models/flowcommerce_spree/settings.rb,
lib/flowcommerce_spree/experience_service.rb,
app/services/flowcommerce_spree/order_sync.rb,
lib/flowcommerce_spree/logging_http_client.rb,
lib/flowcommerce_spree/logging_http_handler.rb,
app/services/flowcommerce_spree/order_updater.rb,
app/helpers/flowcommerce_spree/application_helper.rb,
app/services/flowcommerce_spree/import_experiences.rb,
app/controllers/flowcommerce_spree/orders_controller.rb,
app/controllers/flowcommerce_spree/webhooks_controller.rb,
app/controllers/flowcommerce_spree/inventory_controller.rb,
app/services/flowcommerce_spree/import_experience_items.rb,
app/services/flowcommerce_spree/webhooks/capture_upserted_v2.rb,
app/services/flowcommerce_spree/webhooks/local_item_upserted.rb,
app/services/flowcommerce_spree/webhooks/fraud_status_changed.rb,
app/services/flowcommerce_spree/webhooks/experience_upserted_v2.rb,
app/services/flowcommerce_spree/webhooks/card_authorization_upserted_v2.rb

Overview

Communicates with flow.io API, easy access to basic shop frontend and backend needs

Defined Under Namespace

Modules: Api, ApplicationHelper, ExperienceService, TestSupport, Webhooks Classes: Engine, ImportExperienceItems, ImportExperiences, InventoryController, LoggingHttpClient, LoggingHttpHandler, OrderSync, OrderUpdater, OrdersController, Refresher, Session, Settings, WebhooksController

Constant Summary collapse

API_KEY =
ENV.fetch('FLOW_TOKEN', 'test_key')
VERSION =
'0.0.5'

Class Method Summary collapse

Class Method Details

.client(logger: FlowcommerceSpree.logger, **opts) ⇒ Object



19
20
21
# File 'lib/flowcommerce_spree.rb', line 19

def self.client(logger: FlowcommerceSpree.logger, **opts)
  FlowCommerce.instance(http_handler: LoggingHttpHandler.new(logger: logger), **opts)
end

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

Yields:

  • (_self)

Yield Parameters:



23
24
25
# File 'lib/flowcommerce_spree.rb', line 23

def self.configure
  yield self if block_given?
end

.loggerObject



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/flowcommerce_spree.rb', line 27

def self.logger
  logger = ActiveSupport::Logger.new(STDOUT)

  logger_formatter = proc do |severity, datetime, _progname, msg|
    "\n#{datetime}, #{severity}: #{msg}\n"
  end

  logger.formatter = logger_formatter

  # Broadcast the log into the file besides STDOUT, if `log` folder exists
  if Dir.exist?('log')
    file_logger = ActiveSupport::Logger.new('log/flowcommerce_spree.log', 3, 10_485_760)
    file_logger.formatter = logger_formatter

    logger.extend(ActiveSupport::Logger.broadcast(file_logger))
  end
  logger
end