Module: Middleman::CloudflarePurge

Defined in:
lib/middleman-cloudflare_purge/extension.rb

Defined Under Namespace

Modules: Helpers Classes: Options

Class Method Summary collapse

Class Method Details

.load_configObject



30
31
32
33
34
35
36
37
38
39
40
41
42
# File 'lib/middleman-cloudflare_purge/extension.rb', line 30

def load_config
    root_path = ::Middleman::Application.root
    config_file = File.join(root_path, '.cloudflare_purge')

    if File.exists?(config_file)
        config = YAML.load(File.open(config_file, 'r'))
        config.each do |k, v|
            options[k] = v
        end
    else
        return {}
    end
end

.optionsObject



14
15
16
# File 'lib/middleman-cloudflare_purge/extension.rb', line 14

def options
    @@options
end

.purge(opts) ⇒ Object



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'lib/middleman-cloudflare_purge/extension.rb', line 44

def purge(opts)
    uri = URI('https://www.cloudflare.com/api_json.html')
    params = {
        tkn: options.token,
        email: options.email,
        z: options.domain,
        a: 'fpurge_ts',
        v: 1
    }

    res = Net::HTTP.post_form(uri, params)
    body = JSON.parse(res.body)

    if body['result'] == 'success'
        puts 'Success!'
    else
        abort body['msg']
    end
end

.registered(app, options_hash = {}) {|options| ... } ⇒ Object Also known as: included

Yields:



18
19
20
21
22
23
24
25
26
27
# File 'lib/middleman-cloudflare_purge/extension.rb', line 18

def registered(app, options_hash = {}, &block)
    options = Options.new(options_hash)
    yield options if block_given?

    @@options = options

    app.send :include, Helpers

    load_config
end