Skip to content

Commit 257b403

Browse files
author
Alex Kravets
committed
first init
0 parents  commit 257b403

File tree

10 files changed

+108
-0
lines changed

10 files changed

+108
-0
lines changed

README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
admin/
2+
helpers.rb
3+
admin_users.rb
4+
models/
5+
helper.rb
6+
uploaders/
7+
file_uploader.rb

Rakefile

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
require 'rubygems/package_task'
2+
3+
spec = Gem::Specification.load(Dir['*.gemspec'].first)
4+
gem = Gem::PackageTask.new(spec)
5+
gem.define()
6+
7+
#gem push pkg/activeadmin-settings-version.gem

activeadmin-settings.gemspec

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# -*- encoding: utf-8 -*-
2+
require File.expand_path('../lib/activeadmin-settings/version', __FILE__)
3+
4+
Gem::Specification.new do |gem|
5+
gem.authors = ["Alex Kravets"]
6+
gem.email = ["[email protected]"]
7+
gem.description = "Settings plugin for activeadmin."
8+
gem.summary = ""
9+
gem.homepage = "https://github.com/alexkravets/activeadmin-settings"
10+
11+
gem.files = `git ls-files`.split($\)
12+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
13+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
14+
gem.name = "activeadmin-settings"
15+
gem.require_paths = ["lib"]
16+
gem.version = ActiveadminSettings::VERSION
17+
18+
#gem.add_dependency("mime-types")
19+
#gem.add_dependency("orm_adapter")
20+
end

lib/activeadmin-settings.rb

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
require "activeadmin-settings/version"
2+
3+
module ActiveadminSettings
4+
require 'activeadmin-settings/engine'
5+
require 'activeadmin-settings/helper'
6+
require 'activeadmin-settings/configuration'
7+
8+
def self.configuration
9+
@configuration ||= Configuration.load(::Rails.root.join("config/activeadmin_settings.yml"))
10+
end
11+
end

lib/activeadmin-settings/.DS_Store

6 KB
Binary file not shown.
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
module ActiveadminSettings
2+
class Configuration
3+
class Function < String
4+
def encode_json(encoder)
5+
self
6+
end
7+
end
8+
9+
attr_reader :options
10+
11+
def initialize(options)
12+
@options = options
13+
end
14+
15+
def options_for_redactor
16+
options
17+
end
18+
19+
def merge(options)
20+
self.class.new(self.options.merge(options))
21+
end
22+
23+
def load(filename)
24+
options.merge!(YAML::load(ERB.new(IO.read(filename)).result))
25+
end
26+
27+
def self.load(filename)
28+
config = new({})
29+
config.load(filename) if File.exists?(filename)
30+
config
31+
end
32+
end
33+
end

lib/activeadmin-settings/engine.rb

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
module ActiveadminSettings
2+
class Engine < Rails::Engine
3+
isolate_namespace ActiveadminSettings
4+
initializer "helper" do |app|
5+
ActiveSupport.on_load(:action_view) do
6+
include ActiveadminSettings::Helpers
7+
end
8+
end
9+
end
10+
end

lib/activeadmin-settings/helper.rb

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
module ActiveadminSettings
2+
module Helpers
3+
def string_setting_tag(name, value, description="")
4+
return "Error: Option name is required." if name.empty?
5+
6+
params = { :type => :string, :name => name, :string => value, :description => description }
7+
Setting.get_or_create(params)
8+
end
9+
10+
def file_setting_tag(name, default_value="", description="")
11+
return "Error: Option name is required." if name.empty?
12+
13+
params = { :type => :file, :name => name, :string => default_value, :description => description }
14+
Setting.get_or_create(params)
15+
end
16+
end
17+
end

lib/activeadmin-settings/version.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
module ActiveadminSettings
2+
VERSION = "0.1.0"
3+
end

lib/generators/activeadmin-settings/install_generator.rb

Whitespace-only changes.

0 commit comments

Comments
 (0)