Sha256: b4d4c6f459c8999ffc79d2a668ab2f1b422fadf21cc6dc5e067bea10e9b0abad

Contents?: true

Size: 1.09 KB

Versions: 6

Compression:

Stored size: 1.09 KB

Contents

# frozen_string_literal: true

require 'singleton'
require 'inifile'
require 'rainbow'
require_relative 'version'

# Global parameters
class Application
  include Singleton
  attr_reader :config

  def initialize
    reset
  end

  def reset
    filename = File.join(Dir.pwd,
                         Version::CONFIGFILE)
    filename = File.join(File.dirname(__FILE__),
                         'files',
                          Version::CONFIGFILE) unless File.exist? filename

    begin
      @config = IniFile.load(filename)
    rescue StandardError => e
      puts e.display
      puts Rainbow('[ERROR] Revise configuration file:').red.bright
      puts Rainbow("        #{filename}").red.bright
      exit 1
    end
    stages = @config['questions']['stages'].split(',')
    @config['questions']['stages'] = stages.map(&:to_sym)

    fractions = @config['questions']['fractions'].split(',')
    @config['questions']['fractions'] = fractions + Array.new(5, '0')
    # require 'debug'; binding.break

    Rainbow.enabled = false
    Rainbow.enabled = true if @config['global']['color'].downcase == 'yes'
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
asker-tool-2.4.1 lib/asker/application.rb
asker-tool-2.4.0 lib/asker/application.rb
asker-tool-2.3.4 lib/asker/application.rb
asker-tool-2.3.3 lib/asker/application.rb
asker-tool-2.3.2 lib/asker/application.rb
asker-tool-2.3.1 lib/asker/application.rb