diff --git a/Bowerfile b/Bowerfile
index 54a754dd..19bf4d4b 100644
--- a/Bowerfile
+++ b/Bowerfile
@@ -11,7 +11,7 @@ asset 'leaflet'
asset 'data-tables', :github => 'DataTables/DataTables'
asset 'flot', :github => 'flot/flot'
asset 'knob', :github => 'aterrien/jQuery-Knob'
-asset 'uniform', :github => 'AudithSoftworks/Uniform', :ref => 'v2.2.0'
+asset 'uniform', :github => 'AudithSoftworks/Uniform'
asset 'jquery-ui', :github => 'jquery/jquery-ui#1.11.4'
asset 'jquery-filthypillow', :github => 'Rademade/jquery.filthypillow#master'
asset 'magnific-popup', :github => 'dimsemenov/Magnific-Popup'
@@ -31,3 +31,6 @@ asset 'jquery-form', :github => 'malsup/form'
asset 'jquery-serialize', :github => 'macek/jquery-serialize-object'
asset 'jquery-formrestrict', :github => 'treyhunner/jquery-formrestrict'
asset 'jquery-validation', :github => 'jzaefferer/jquery-validation#v1.13.1'
+
+#Thead
+asset 'floatThead', :github => 'mkoryak/floatThead'
diff --git a/README.md b/README.md
index 651f3ac9..0421e66e 100644
--- a/README.md
+++ b/README.md
@@ -16,82 +16,15 @@ rademade_admin
**Best rails admin panel!**
-
-How to use it
+Live demo
--------------
+1. [http://admin.rademade.com/login](http://admin.rademade.com/login)
+2. Login: mrtom@rademade.com
+3. Password: 123456
-1) Add `gem 'rademade_admin'` to Gemfile
-
-2) Update `config/initializers/assets.rb` with line:
-```ruby
-config.assets.precompile += %w(rademade_admin.css rademade_admin.js)
-```
-
-3) Mount rails engine at routing.rb `mount RademadeAdmin::Engine => '/admin'`
-
-4) Create `User` model and other needed models
-```ruby
-class User < ActiveRecord::Base
- include RademadeAdmin::UserModule
-
- has_secure_password
-
- validates :password, length: { minimum: 8 }, allow_nil: true
-
- def self.get_by_email(email)
- where(email: email).first
- end
-
- alias valid_password? authenticate
-
- def to_s
- email
- end
-
-end
-```
-
-
-5) Add rademade_admin initializer `initializers/rademade_admin.rb`
-```ruby
-RademadeAdmin.configure do |config|
- config.admin_class = User
-end
-
-```
-
-6) Create admin controller. Example `app/controllers/rademade_admin/users_controller.rb`
-```ruby
-class RademadeAdmin::UsersController < RademadeAdmin::ModelController
-
- # You can leave controller absolutely empty!
-
- options do
- list do
- email
- end
- form do
- first_name
- email
- password :hint => 'Or leave it empty'
- end
- end
-
-end
-```
-
-7) Add `admin_resources` to `routers.rb`
-```ruby
-namespace :rademade_admin, :path => 'admin' do
- admin_resources :users
-end
-```
-
-8) Install assets with bower `rake rademade_admin:bower:install`
-
-9) Start rails `rails s`
-
-**Good luck :)**
+How to install
+--------------
+[https://github.com/Rademade/rademade_admin/wiki/install](https://github.com/Rademade/rademade_admin/wiki/install)
Supported options
@@ -99,6 +32,9 @@ Supported options
```ruby
options do
model 'ModelName'
+
+ # Fixed table head if need
+ fixed_thead true
# Navigation menu settings
parent_menu 'ModelName'
diff --git a/app/assets/javascripts/app/common/uploader.coffee b/app/assets/javascripts/app/common/uploader.coffee
index 69e5cded..198cbc85 100644
--- a/app/assets/javascripts/app/common/uploader.coffee
+++ b/app/assets/javascripts/app/common/uploader.coffee
@@ -23,7 +23,7 @@ class @Uploader extends Backbone.View
updateUploader : (result) =>
@$el.find('[data-preview-item]').replaceWith(result.html)
@$el.find('.upload-holder.hide').removeClass('hide')
- @$hidden.val(result.file[@$uploader.data('column')].url)
+ @$hidden.val(result.file.url)
ImagePreview.initPlugin()
showLoader : () ->
diff --git a/app/assets/javascripts/app/select2/related/collection-view.coffee b/app/assets/javascripts/app/select2/related/collection-view.coffee
index 4876480c..c7181e3e 100644
--- a/app/assets/javascripts/app/select2/related/collection-view.coffee
+++ b/app/assets/javascripts/app/select2/related/collection-view.coffee
@@ -24,6 +24,8 @@ class @Select2Input.RelatedCollectionView extends Backbone.View
views = []
collection = new Select2Input.RelatedCollection
collection.setSortable $list.data('sortable')
+ collection.setDeletable $list.data('deletable')
+
$list.find('li').each () ->
relatedView = Select2Input.RelatedView.init $(this)
views.push relatedView
diff --git a/app/assets/javascripts/app/select2/related/collection.coffee b/app/assets/javascripts/app/select2/related/collection.coffee
index ad04582c..b55ab798 100644
--- a/app/assets/javascripts/app/select2/related/collection.coffee
+++ b/app/assets/javascripts/app/select2/related/collection.coffee
@@ -16,9 +16,15 @@ class @Select2Input.RelatedCollection extends Backbone.Collection
setSortable : (sortable) ->
@sortable = sortable
+ setDeletable : (deletable) ->
+ @deletable = deletable
+
isSortable : () ->
@sortable
+ isDeletable : () ->
+ @deletable
+
resort : () ->
@sort()
@_triggerChange()
diff --git a/app/assets/javascripts/app/select2/related/view.coffee b/app/assets/javascripts/app/select2/related/view.coffee
index 0b9e6f7b..e5bf434f 100644
--- a/app/assets/javascripts/app/select2/related/view.coffee
+++ b/app/assets/javascripts/app/select2/related/view.coffee
@@ -32,9 +32,16 @@ class @Select2Input.RelatedView extends Backbone.View
else
false
+ isDeletable: () ->
+ if @model.collection
+ @model.collection.isDeletable()
+ else
+ false
+
_getHtml : (data) ->
JST['app/templates/related-item'] _.extend
isSortable : @isSortable()
+ isDeletable : @isDeletable()
, data
@init : ($el) ->
diff --git a/app/assets/javascripts/app/templates/related-item.jst.ejs b/app/assets/javascripts/app/templates/related-item.jst.ejs
index ef3d0d5c..12226c65 100644
--- a/app/assets/javascripts/app/templates/related-item.jst.ejs
+++ b/app/assets/javascripts/app/templates/related-item.jst.ejs
@@ -3,4 +3,8 @@ if (isSortable) {
%><%
}
%>
-
\ No newline at end of file
+<%
+if (isDeletable) {
+ %><%
+}
+%>
\ No newline at end of file
diff --git a/app/assets/javascripts/rademade_admin.coffee b/app/assets/javascripts/rademade_admin.coffee
index 7aa1e4d7..8042da40 100644
--- a/app/assets/javascripts/rademade_admin.coffee
+++ b/app/assets/javascripts/rademade_admin.coffee
@@ -4,13 +4,6 @@
#= require jquery-ujs
#= require jquery-ui/ui/core
#= require jquery-ui/ui/widget
-#= require jquery-ui/ui/mouse
-#= require jquery-ui/ui/draggable
-#= require jquery-ui/ui/resizable
-#= require jquery-ui/ui/sortable
-#= require jquery-ui/ui/slider
-#= require jquery-ui/ui/tabs
-#= require jquery-ui/ui/datepicker
#= require touch-punch/jquery.ui.touch-punch
#= require jcrop/js/jquery.Jcrop
#= require jquery-filthypillow/jquery.filthypillow
@@ -32,12 +25,14 @@
#= require flot/jquery.flot.resize
#= require flot/jquery.flot.stack
#= require knob/js/jquery.knob
-#= require uniform/dist/jquery.uniform.min
+#= require uniform/src/js/jquery.uniform
#= require data-tables/media/js/jquery.dataTables
+#= require floatThead/dist/jquery.floatThead
#= require wysihtml5/dist/wysihtml5-0.3.0
#= require underscore/underscore
#= require backbone/backbone
#= require backbone-notifier/js/backbone.notifier
+#= require jquery-ujs
#= require_tree ./ckeditor
#= require_tree ./settings
#= require_tree ./form
diff --git a/app/assets/javascripts/settings/ajax-csrf.coffee b/app/assets/javascripts/settings/ajax-csrf.coffee
index 5d1be7f0..145820ad 100644
--- a/app/assets/javascripts/settings/ajax-csrf.coffee
+++ b/app/assets/javascripts/settings/ajax-csrf.coffee
@@ -1,4 +1,8 @@
$ ->
$.ajaxSetup(headers : {
'X-CSRF-Token' : $('meta[name="csrf-token"]').attr('content')
- })
\ No newline at end of file
+ })
+
+ $(document).on 'page:load ready init-plugins', () ->
+ $('table.fixed-thead').floatThead
+ position: 'fixed'
diff --git a/app/assets/stylesheets/rademade_admin.sass b/app/assets/stylesheets/rademade_admin.sass
index df508851..4000d365 100644
--- a/app/assets/stylesheets/rademade_admin.sass
+++ b/app/assets/stylesheets/rademade_admin.sass
@@ -4,7 +4,7 @@
*= require jquery-ui/themes/base/core
*= require jquery-ui/themes/base/slider
*= require jquery-ui/themes/base/datepicker
- *= require uniform/themes/default/css/uniform.default
+ *= require uniform/dist/css/default.css
*= require jcrop/css/jquery.Jcrop
*= require leaflet/dist/leaflet
*= require backbone-notifier/css/notifier-base
diff --git a/app/controllers/rademade_admin/file_controller.rb b/app/controllers/rademade_admin/file_controller.rb
index abe5cb9f..08f5339a 100644
--- a/app/controllers/rademade_admin/file_controller.rb
+++ b/app/controllers/rademade_admin/file_controller.rb
@@ -6,7 +6,7 @@ def upload
uploader.store!(params[param_key])
render :json => {
:html => RademadeAdmin::Upload::Preview::File.new(uploader).preview_html,
- :file => uploader
+ :file => JSON.parse(uploader.to_json).merge(url: uploader.url)
}
rescue CarrierWave::UploadError => e
show_error(e)
diff --git a/app/services/model_controller/model_options.rb b/app/services/model_controller/model_options.rb
index 7fdc6b01..485dad22 100644
--- a/app/services/model_controller/model_options.rb
+++ b/app/services/model_controller/model_options.rb
@@ -7,6 +7,7 @@ module ModelOptions
# - model
# - name
# - parent_menu (todo extract to menu method)
+ # - fixed_thead
# - menu_count
# - list
# - form
@@ -28,6 +29,10 @@ def parent_menu_item
configuration.parent_menu_item
end
+ def fixed_thead_value
+ configuration.fixed_thead_value
+ end
+
def model_class
configuration.model_class
end
diff --git a/app/views/rademade_admin/_blocks/_list.html.erb b/app/views/rademade_admin/_blocks/_list.html.erb
index 9003a6fb..f897f715 100644
--- a/app/views/rademade_admin/_blocks/_list.html.erb
+++ b/app/views/rademade_admin/_blocks/_list.html.erb
@@ -17,7 +17,7 @@ end %>
concat render @template_service.search_block
%>
-
<%
+ <%
concat render @template_service.table_head_block
concat render @template_service.table_head_list
%>
diff --git a/app/views/rademade_admin/_blocks/_navigation.html.erb b/app/views/rademade_admin/_blocks/_navigation.html.erb
index 0c598fe8..8bc5295c 100644
--- a/app/views/rademade_admin/_blocks/_navigation.html.erb
+++ b/app/views/rademade_admin/_blocks/_navigation.html.erb
@@ -10,7 +10,6 @@
<%= @current_user %><%
concat link_to '', rademade_admin_route(:logout_sessions_url), {
- :method => :delete,
:class => 'user-settings'
}
%>
@@ -19,4 +18,4 @@
Rademade Admin
-
\ No newline at end of file
+
diff --git a/app/views/rademade_admin/_blocks/button/_destroy.html.erb b/app/views/rademade_admin/_blocks/button/_destroy.html.erb
index 4c71934b..c034de43 100644
--- a/app/views/rademade_admin/_blocks/button/_destroy.html.erb
+++ b/app/views/rademade_admin/_blocks/button/_destroy.html.erb
@@ -1,5 +1,5 @@
<%
-if can? :destroy, @model
+if can? :destroy, item
delete_uri = admin_delete_uri(item)
unless delete_uri.nil?
%><%= form_tag(delete_uri, :method => :delete, :class => 'inline-el', :data => { :'delete-item-form' => '' }) do
@@ -10,4 +10,4 @@ if can? :destroy, @model
<%
end
end
-end %>
\ No newline at end of file
+end %>
diff --git a/config/initializers/bower_rails.rb b/config/initializers/bower_rails.rb
deleted file mode 100644
index 32389809..00000000
--- a/config/initializers/bower_rails.rb
+++ /dev/null
@@ -1,6 +0,0 @@
-# -*- encoding : utf-8 -*-
-BowerRails.configure do |bower_rails|
- bower_rails.install_before_precompile = true
- bower_rails.resolve_before_precompile = true
- bower_rails.clean_before_precompile = true
-end
diff --git a/lib/rademade_admin/engine.rb b/lib/rademade_admin/engine.rb
index 83bf6a0d..1f9a5222 100644
--- a/lib/rademade_admin/engine.rb
+++ b/lib/rademade_admin/engine.rb
@@ -12,7 +12,22 @@ class Engine < ::Rails::Engine
config.assets.paths << "#{config.root}/vendor/assets/javascript/bower_components"
initializer 'ckeditor.assets_precompile', :group => :all do |app|
- app.config.assets.precompile += %w(rademade_admin.css rademade_admin.js ckeditor/* rademade_admin/fav1.ico)
+ filter_ckeditor_assets = Proc.new do |logical_path|
+ File.fnmatch('ckeditor/*', logical_path) \
+ && ! [
+ 'ckeditor/CHANGES',
+ 'ckeditor/LICENSE',
+ 'ckeditor/README',
+ 'ckeditor/plugins/scayt/CHANGELOG',
+ 'ckeditor/plugins/scayt/LICENSE',
+ 'ckeditor/plugins/scayt/README',
+ 'ckeditor/plugins/wsc/LICENSE',
+ 'ckeditor/plugins/wsc/README',
+ 'ckeditor/skins/moono/readme',
+ ].include?(logical_path)
+ end
+ app.config.assets.precompile << filter_ckeditor_assets
+ app.config.assets.precompile += %w(rademade_admin.css rademade_admin.js rademade_admin/fav1.ico)
end
$LOAD_PATH << "#{config.root}/app/services/"
@@ -29,4 +44,4 @@ class Engine < ::Rails::Engine
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/rademade_admin/input/related_select_input/related_list.rb b/lib/rademade_admin/input/related_select_input/related_list.rb
index 8a43934b..86b2cebc 100644
--- a/lib/rademade_admin/input/related_select_input/related_list.rb
+++ b/lib/rademade_admin/input/related_select_input/related_list.rb
@@ -10,7 +10,8 @@ def related_list_html
template.content_tag(:ul, related_list_items_html, {
:class => 'select2-items-list',
:data => {
- :sortable => sortable_relation?
+ :sortable => sortable_relation?,
+ :deletable => destroyable_relation?
}
})
end
@@ -51,7 +52,7 @@ def related_list_item_remove_html
template.content_tag(:button, I18n.t('rademade_admin.relation.destroy'), {
:'data-remove' => '',
:class => 'select2-item-remove'
- })
+ }) if destroyable_relation?
end
def related_item_class
@@ -64,6 +65,10 @@ def sortable_relation?
related_data_item.relation.sortable?
end
+ def destroyable_relation?
+ related_data_item.relation.destroyable?
+ end
+
end
end
end
diff --git a/lib/rademade_admin/model/adapter/data/active_record.rb b/lib/rademade_admin/model/adapter/data/active_record.rb
index b7bf0ef1..0be0749e 100644
--- a/lib/rademade_admin/model/adapter/data/active_record.rb
+++ b/lib/rademade_admin/model/adapter/data/active_record.rb
@@ -33,6 +33,7 @@ def _map_relations
:name => name,
:from => @model,
:to => to_class,
+ :destroyable => _relation_destroyable?(relation_info),
:getter => name,
:setter => :"#{name}=",
:type => type,
@@ -47,6 +48,30 @@ def _map_relations
relations
end
+ def _relation_destroyable?(relation_info)
+ !_validates_association?(relation_info) &&
+ !_validates_presence?(relation_info)
+ end
+
+ def _validates_association?(relation_info)
+ _model_validates?(@model,
+ relation_info.name,
+ ::ActiveRecord::Validations::AssociatedValidator)
+ end
+
+ def _validates_presence?(relation_info)
+ _model_validates?(relation_info.klass,
+ relation_info.foreign_key,
+ ::ActiveRecord::Validations::PresenceValidator)
+ end
+
+ def _model_validates?(model, name, validator_class)
+ model.validators.select do |validator|
+ validator.class == validator_class &&
+ validator.attributes.include?(name)
+ end.any?
+ end
+
def _add_non_localizable_fields(fields)
@model.attribute_types.each do |field_name, field_data|
name = field_name.to_sym
diff --git a/lib/rademade_admin/model/adapter/data/mongoid.rb b/lib/rademade_admin/model/adapter/data/mongoid.rb
index 723f89c1..de36c6e6 100644
--- a/lib/rademade_admin/model/adapter/data/mongoid.rb
+++ b/lib/rademade_admin/model/adapter/data/mongoid.rb
@@ -49,6 +49,7 @@ def _map_relations
:type => type,
:many => type == :has_many,
:has_many => has_many_relations.include?(type),
+ :destroyable => _relation_destroyable?,
:sortable => is_sortable,
:sortable_field => is_sortable ? relation_info.sortable_field : nil,
:foreign_key => relation_info.foreign_key ? relation_info.foreign_key.to_sym : nil
@@ -57,6 +58,10 @@ def _map_relations
relations
end
+ def _relation_destroyable?
+ true
+ end
+
def _model_fields
@model.fields.keys.map(&:to_sym)
end
diff --git a/lib/rademade_admin/model/adapter/data/sequel.rb b/lib/rademade_admin/model/adapter/data/sequel.rb
index 4730ca7a..657ab74f 100644
--- a/lib/rademade_admin/model/adapter/data/sequel.rb
+++ b/lib/rademade_admin/model/adapter/data/sequel.rb
@@ -47,6 +47,7 @@ def _map_relations
:type => relation_info[:type],
:many => relation_info[:type] == :one_to_many,
:has_many => has_many,
+ :destroyable => _relation_destroyable?,
:sortable => false,
:foreign_key => relation_info[:key]
})
@@ -54,6 +55,10 @@ def _map_relations
relations
end
+ def _relation_destroyable?
+ true
+ end
+
def _to_many_setter(relation_info, getter)
Proc.new do |new_items|
old_items = self.send(getter)
diff --git a/lib/rademade_admin/model/adapter/query/postgresql.rb b/lib/rademade_admin/model/adapter/query/postgresql.rb
index b12c7d37..dfc7fe79 100644
--- a/lib/rademade_admin/model/adapter/query/postgresql.rb
+++ b/lib/rademade_admin/model/adapter/query/postgresql.rb
@@ -10,8 +10,10 @@ class Postgresql < RademadeAdmin::Model::Adapter::Query::ActiveRecord
protected
def build_where_condition(field: nil, value: nil)
+ field = table_field(field)
+
if value.is_a? Regexp
- ["LOWER(#{field}) ~ ?", [value.source]]
+ ["LOWER(#{field}) ~* ?", [value.source]]
elsif value.is_a? Array
["#{field} IN (?)", [value]]
else
@@ -22,4 +24,4 @@ def build_where_condition(field: nil, value: nil)
end
end
end
-end
\ No newline at end of file
+end
diff --git a/lib/rademade_admin/model/adapter/query/sql.rb b/lib/rademade_admin/model/adapter/query/sql.rb
index 861a13d4..f76e9319 100644
--- a/lib/rademade_admin/model/adapter/query/sql.rb
+++ b/lib/rademade_admin/model/adapter/query/sql.rb
@@ -30,15 +30,19 @@ def collect_where_conditions(where_conditions)
end
def build_where_condition(field: nil, value: nil)
- field = "`#{field}`"
+ field = table_field(field)
if value.is_a? Regexp
- ["LOWER(#{field}) REGEXP ?", [value.source]]
+ ["LOWER(#{field}) REGEXP LOWER(?)", [value.source]]
elsif value.is_a? Array
["#{field} IN (?)", [value]]
else
["#{field} = ?", [value]]
end
end
+
+ def table_field(field)
+ "#{@model.table_name}.#{field}"
+ end
end
end
end
diff --git a/lib/rademade_admin/model/configuration.rb b/lib/rademade_admin/model/configuration.rb
index 4913d7e4..5b46cac6 100644
--- a/lib/rademade_admin/model/configuration.rb
+++ b/lib/rademade_admin/model/configuration.rb
@@ -3,7 +3,7 @@ module RademadeAdmin
module Model
class Configuration
- attr_reader :controller, :parent_menu_item, :model_name, :menu_count_block, :preview_url_block
+ attr_reader :controller, :parent_menu_item, :fixed_thead_value, :model_name, :menu_count_block, :preview_url_block
def initialize(controller)
@controller = controller
@@ -83,6 +83,10 @@ def parent_menu(parent_menu_item)
@parent_menu_item = parent_menu_item
end
+ def fixed_thead(value)
+ @fixed_thead_value = value ? true : false
+ end
+
def labels(*field_options, &block)
field_labels.configure(*field_options, &block)
end
diff --git a/lib/rademade_admin/model/info.rb b/lib/rademade_admin/model/info.rb
index 4dfe8164..b3054b7d 100644
--- a/lib/rademade_admin/model/info.rb
+++ b/lib/rademade_admin/model/info.rb
@@ -48,6 +48,10 @@ def parent_menu
@model_configuration.parent_menu_item
end
+ def fixed_thead
+ @model_configuration.fixed_thead_value
+ end
+
def menu_count
@model_configuration.menu_count_block.try(:call)
end
diff --git a/lib/rademade_admin/model/info/relation.rb b/lib/rademade_admin/model/info/relation.rb
index 4ffbd5a3..878e62ee 100644
--- a/lib/rademade_admin/model/info/relation.rb
+++ b/lib/rademade_admin/model/info/relation.rb
@@ -18,6 +18,10 @@ def sortable?
@sortable
end
+ def destroyable?
+ @destroyable
+ end
+
def gallery?
@is_gallery
end
@@ -46,6 +50,7 @@ def initialize(opt = {})
@foreign_key = opt[:foreign_key]
@sortable = opt[:sortable]
@sortable_field = opt[:sortable_field]
+ @destroyable = opt[:destroyable]
@is_gallery = opt[:is_gallery]
end
diff --git a/lib/tasks/rademade_bower_install.rake b/lib/tasks/rademade_bower_install.rake
index 2e95bcb8..ffe72215 100644
--- a/lib/tasks/rademade_bower_install.rake
+++ b/lib/tasks/rademade_bower_install.rake
@@ -1,7 +1,7 @@
require 'rademade_admin/bower/performer'
desc 'Install bower vendor assets'
-task 'rademade_admin:bower:install' => :environment do |_, args|
+task 'rademade_admin:bower:install', [:options] => :environment do |_, args|
args.with_defaults(:options => '')
RademadeAdmin::Bower::Performer.perform do |bower|
sh "#{bower} install #{args[:options]}"
@@ -9,7 +9,7 @@ task 'rademade_admin:bower:install' => :environment do |_, args|
end
desc 'Update bower vendor assets'
-task 'rademade_admin:bower:update' => :environment do |_, args|
+task 'rademade_admin:bower:update', [:options] => :environment do |_, args|
args.with_defaults(:options => '')
RademadeAdmin::Bower::Performer.perform do |bower|
sh "#{bower} update #{args[:options]}"
diff --git a/rademade_admin.gemspec b/rademade_admin.gemspec
index 79015ac3..c7692e74 100644
--- a/rademade_admin.gemspec
+++ b/rademade_admin.gemspec
@@ -1,47 +1,82 @@
-#encoding: utf-8
-$:.push File.expand_path('../lib', __FILE__)
-
-require 'rademade_admin/version'
+# -*- encoding: utf-8 -*-
+# stub: rademade_admin 0.3.0 ruby lib
Gem::Specification.new do |s|
- s.name = 'rademade_admin'
- s.version = RademadeAdmin::VERSION
- s.authors = ['Vladislav Melanitskiy', 'Denis Sergienko', 'Sergey Kuzhavskiy']
- s.email = %w(co@rademade.com olol.toor@gmail.com kuzh@rademade.com)
- s.homepage = 'https://github.com/Rademade/rademade_admin'
- s.summary = 'Rails admin panel engine'
- s.description = 'Best rails admin panel. Great mechanism for customization and rapid development'
- s.licenses = ['MIT']
-
- s.files = Dir['{app,config,db,lib}/**/*', 'MIT-LICENSE', 'Rakefile', 'Bowerfile', 'README.rdoc']
- s.test_files = Dir['test/**/*']
-
- # Core dependencies
- s.add_dependency 'rails', '~> 5'
- s.add_dependency 'kaminari'
-
- # Images
- s.add_dependency 'carrierwave'
- s.add_dependency 'light_resizer'
-
- # Assets
- s.add_dependency 'bower-rails', '>= 0.8.2'
- s.add_dependency 'sass-rails'
- s.add_dependency 'coffee-rails'
- s.add_dependency 'autoprefixer-rails'
+ s.name = "rademade_admin".freeze
+ s.version = "0.3.0"
- s.add_dependency 'i18n-js'
- s.add_dependency 'ejs'
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
+ s.require_paths = ["lib".freeze]
+ s.authors = ["Vladislav Melanitskiy".freeze, "Denis Sergienko".freeze, "Sergey Kuzhavskiy".freeze]
+ s.date = "2017-05-17"
+ s.description = "Best rails admin panel. Great mechanism for customization and rapid development".freeze
+ s.email = ["co@rademade.com".freeze, "olol.toor@gmail.com".freeze, "kuzh@rademade.com".freeze]
+ s.files = ["Bowerfile".freeze, "Rakefile".freeze, "app/assets".freeze, "app/assets/fonts".freeze, "app/assets/fonts/HelveticaNeueCyr-Black.eot".freeze, "app/assets/fonts/HelveticaNeueCyr-Black.otf".freeze, "app/assets/fonts/HelveticaNeueCyr-Black.svg".freeze, "app/assets/fonts/HelveticaNeueCyr-Black.ttf".freeze, "app/assets/fonts/HelveticaNeueCyr-Black.woff".freeze, "app/assets/fonts/HelveticaNeueCyr-Bold.eot".freeze, "app/assets/fonts/HelveticaNeueCyr-Bold.otf".freeze, "app/assets/fonts/HelveticaNeueCyr-Bold.svg".freeze, "app/assets/fonts/HelveticaNeueCyr-Bold.ttf".freeze, "app/assets/fonts/HelveticaNeueCyr-Bold.woff".freeze, "app/assets/fonts/HelveticaNeueCyr-Light.eot".freeze, "app/assets/fonts/HelveticaNeueCyr-Light.otf".freeze, "app/assets/fonts/HelveticaNeueCyr-Light.svg".freeze, "app/assets/fonts/HelveticaNeueCyr-Light.ttf".freeze, "app/assets/fonts/HelveticaNeueCyr-Light.woff".freeze, "app/assets/fonts/HelveticaNeueCyr-Medium.eot".freeze, "app/assets/fonts/HelveticaNeueCyr-Medium.otf".freeze, "app/assets/fonts/HelveticaNeueCyr-Medium.svg".freeze, "app/assets/fonts/HelveticaNeueCyr-Medium.ttf".freeze, "app/assets/fonts/HelveticaNeueCyr-Medium.woff".freeze, "app/assets/fonts/HelveticaNeueCyr-Roman.eot".freeze, "app/assets/fonts/HelveticaNeueCyr-Roman.otf".freeze, "app/assets/fonts/HelveticaNeueCyr-Roman.svg".freeze, "app/assets/fonts/HelveticaNeueCyr-Roman.ttf".freeze, "app/assets/fonts/HelveticaNeueCyr-Roman.woff".freeze, "app/assets/images".freeze, "app/assets/images/rademade_admin".freeze, "app/assets/images/rademade_admin/fav1.ico".freeze, "app/assets/images/rademade_admin/fav2.ico".freeze, "app/assets/images/rademade_admin/ico".freeze, "app/assets/images/rademade_admin/ico/add.svg".freeze, "app/assets/images/rademade_admin/ico/button_add.svg".freeze, "app/assets/images/rademade_admin/ico/button_add_blue.svg".freeze, "app/assets/images/rademade_admin/ico/calendar-next.svg".freeze, "app/assets/images/rademade_admin/ico/calendar-prev.svg".freeze, "app/assets/images/rademade_admin/ico/checkbox_active.svg".freeze, "app/assets/images/rademade_admin/ico/checkbox_empty.svg".freeze, "app/assets/images/rademade_admin/ico/checked.svg".freeze, "app/assets/images/rademade_admin/ico/close_gray.svg".freeze, "app/assets/images/rademade_admin/ico/close_white.svg".freeze, "app/assets/images/rademade_admin/ico/datetimepicker-next.svg".freeze, "app/assets/images/rademade_admin/ico/datetimepicker-prev.svg".freeze, "app/assets/images/rademade_admin/ico/dd-tile.svg".freeze, "app/assets/images/rademade_admin/ico/delete-small.svg".freeze, "app/assets/images/rademade_admin/ico/discard_red.svg".freeze, "app/assets/images/rademade_admin/ico/dragndrop.svg".freeze, "app/assets/images/rademade_admin/ico/eye.svg".freeze, "app/assets/images/rademade_admin/ico/file.svg".freeze, "app/assets/images/rademade_admin/ico/file_blue.svg".freeze, "app/assets/images/rademade_admin/ico/image.svg".freeze, "app/assets/images/rademade_admin/ico/info.svg".freeze, "app/assets/images/rademade_admin/ico/invisible.svg".freeze, "app/assets/images/rademade_admin/ico/jcrop.svg".freeze, "app/assets/images/rademade_admin/ico/left-arrow.svg".freeze, "app/assets/images/rademade_admin/ico/left-arrow_blue.svg".freeze, "app/assets/images/rademade_admin/ico/link.svg".freeze, "app/assets/images/rademade_admin/ico/logout.svg".freeze, "app/assets/images/rademade_admin/ico/next.svg".freeze, "app/assets/images/rademade_admin/ico/password.svg".freeze, "app/assets/images/rademade_admin/ico/password_red.svg".freeze, "app/assets/images/rademade_admin/ico/pen.svg".freeze, "app/assets/images/rademade_admin/ico/photo.svg".freeze, "app/assets/images/rademade_admin/ico/prev.svg".freeze, "app/assets/images/rademade_admin/ico/rejected.svg".freeze, "app/assets/images/rademade_admin/ico/resize.svg".freeze, "app/assets/images/rademade_admin/ico/right-arrow.svg".freeze, "app/assets/images/rademade_admin/ico/right-arrow_blue.svg".freeze, "app/assets/images/rademade_admin/ico/search.svg".freeze, "app/assets/images/rademade_admin/ico/search_blue.svg".freeze, "app/assets/images/rademade_admin/ico/select-close.svg".freeze, "app/assets/images/rademade_admin/ico/select-edit.svg".freeze, "app/assets/images/rademade_admin/ico/select2-add.svg".freeze, "app/assets/images/rademade_admin/ico/select2.svg".freeze, "app/assets/images/rademade_admin/ico/settings.svg".freeze, "app/assets/images/rademade_admin/ico/sortable-down.svg".freeze, "app/assets/images/rademade_admin/ico/sortable-down_active.svg".freeze, "app/assets/images/rademade_admin/ico/sortable-up.svg".freeze, "app/assets/images/rademade_admin/ico/sortable-up_active.svg".freeze, "app/assets/images/rademade_admin/ico/trash.svg".freeze, "app/assets/images/rademade_admin/ico/trash_r.svg".freeze, "app/assets/images/rademade_admin/ico/trash_white.svg".freeze, "app/assets/images/rademade_admin/ico/user-photo.svg".freeze, "app/assets/images/rademade_admin/ico/user.svg".freeze, "app/assets/images/rademade_admin/ico/user_red.svg".freeze, "app/assets/images/rademade_admin/leaflet".freeze, "app/assets/images/rademade_admin/leaflet/layers-2x.png".freeze, "app/assets/images/rademade_admin/leaflet/layers.png".freeze, "app/assets/images/rademade_admin/leaflet/marker-icon-2x.png".freeze, "app/assets/images/rademade_admin/leaflet/marker-icon.png".freeze, "app/assets/images/rademade_admin/leaflet/marker-shadow.png".freeze, "app/assets/images/rademade_admin/loader.GIF".freeze, "app/assets/images/rademade_admin/notifier-loader-clean.gif".freeze, "app/assets/images/rademade_admin/notifier-loader-plastic.gif".freeze, "app/assets/images/rademade_admin/sprite.svg".freeze, "app/assets/javascripts".freeze, "app/assets/javascripts/app".freeze, "app/assets/javascripts/app/app.coffee".freeze, "app/assets/javascripts/app/common".freeze, "app/assets/javascripts/app/common/cropper.coffee".freeze, "app/assets/javascripts/app/common/datetime-picker.coffee".freeze, "app/assets/javascripts/app/common/dnd-sort.coffee".freeze, "app/assets/javascripts/app/common/image-preview.coffee".freeze, "app/assets/javascripts/app/common/lang-panel.coffee".freeze, "app/assets/javascripts/app/common/location.coffee.erb".freeze, "app/assets/javascripts/app/common/menu.coffee".freeze, "app/assets/javascripts/app/common/status-toggler.coffee".freeze, "app/assets/javascripts/app/common/turboform.coffee".freeze, "app/assets/javascripts/app/common/uploader.coffee".freeze, "app/assets/javascripts/app/common/url-visitor.coffee".freeze, "app/assets/javascripts/app/compatibility".freeze, "app/assets/javascripts/app/compatibility/turbolinks.coffee".freeze, "app/assets/javascripts/app/content".freeze, "app/assets/javascripts/app/content/view.coffee".freeze, "app/assets/javascripts/app/forms".freeze, "app/assets/javascripts/app/forms/insert.coffee".freeze, "app/assets/javascripts/app/forms/login.coffee".freeze, "app/assets/javascripts/app/forms/remove.coffee".freeze, "app/assets/javascripts/app/gallery".freeze, "app/assets/javascripts/app/gallery/image".freeze, "app/assets/javascripts/app/gallery/image/collection-view.coffee".freeze, "app/assets/javascripts/app/gallery/image/collection.coffee".freeze, "app/assets/javascripts/app/gallery/image/model.coffee".freeze, "app/assets/javascripts/app/gallery/image/view.coffee".freeze, "app/assets/javascripts/app/gallery/popup.coffee".freeze, "app/assets/javascripts/app/gallery/view.coffee".freeze, "app/assets/javascripts/app/image".freeze, "app/assets/javascripts/app/image/model.coffee".freeze, "app/assets/javascripts/app/image/preview.coffee".freeze, "app/assets/javascripts/app/notifier".freeze, "app/assets/javascripts/app/notifier/initialize.js".freeze, "app/assets/javascripts/app/select2".freeze, "app/assets/javascripts/app/select2/model.coffee".freeze, "app/assets/javascripts/app/select2/related".freeze, "app/assets/javascripts/app/select2/related/collection-view.coffee".freeze, "app/assets/javascripts/app/select2/related/collection.coffee".freeze, "app/assets/javascripts/app/select2/related/model.coffee".freeze, "app/assets/javascripts/app/select2/related/view.coffee".freeze, "app/assets/javascripts/app/select2/view.coffee".freeze, "app/assets/javascripts/app/templates".freeze, "app/assets/javascripts/app/templates/crop".freeze, "app/assets/javascripts/app/templates/crop/attributes.jst.ejs".freeze, "app/assets/javascripts/app/templates/crop/size.jst.ejs".freeze, "app/assets/javascripts/app/templates/gallery-popup.jst.ejs".freeze, "app/assets/javascripts/app/templates/related-item.jst.ejs".freeze, "app/assets/javascripts/app/templates/select2".freeze, "app/assets/javascripts/app/templates/select2/add.jst.ejs".freeze, "app/assets/javascripts/app/templates/select2/edit.jst.ejs".freeze, "app/assets/javascripts/ckeditor".freeze, "app/assets/javascripts/ckeditor/config.js".freeze, "app/assets/javascripts/form".freeze, "app/assets/javascripts/form/form-ajax.coffee".freeze, "app/assets/javascripts/form/form-initializer.coffee".freeze, "app/assets/javascripts/form/form-validation.coffee".freeze, "app/assets/javascripts/form/form.coffee".freeze, "app/assets/javascripts/rademade_admin.coffee".freeze, "app/assets/javascripts/settings".freeze, "app/assets/javascripts/settings/ajax-csrf.coffee".freeze, "app/assets/stylesheets".freeze, "app/assets/stylesheets/base".freeze, "app/assets/stylesheets/base/_fix.sass".freeze, "app/assets/stylesheets/base/_floats.sass".freeze, "app/assets/stylesheets/base/_import.sass".freeze, "app/assets/stylesheets/base/_main.sass".freeze, "app/assets/stylesheets/base/_reset.sass".freeze, "app/assets/stylesheets/base/_text.sass".freeze, "app/assets/stylesheets/base/_wrapper.sass".freeze, "app/assets/stylesheets/blocks".freeze, "app/assets/stylesheets/blocks/_import.sass".freeze, "app/assets/stylesheets/blocks/button".freeze, "app/assets/stylesheets/blocks/button/_box.sass".freeze, "app/assets/stylesheets/blocks/button/_import.sass".freeze, "app/assets/stylesheets/blocks/button/link".freeze, "app/assets/stylesheets/blocks/button/link/_main.sass".freeze, "app/assets/stylesheets/blocks/button/main".freeze, "app/assets/stylesheets/blocks/button/main/_main.sass".freeze, "app/assets/stylesheets/blocks/button/main/colors".freeze, "app/assets/stylesheets/blocks/button/main/colors/_main.sass".freeze, "app/assets/stylesheets/blocks/button/main/colors/_other.sass".freeze, "app/assets/stylesheets/blocks/button/switch".freeze, "app/assets/stylesheets/blocks/button/switch/_main.sass".freeze, "app/assets/stylesheets/blocks/button/switch/colors".freeze, "app/assets/stylesheets/blocks/button/switch/colors/_blue.sass".freeze, "app/assets/stylesheets/blocks/content".freeze, "app/assets/stylesheets/blocks/content/_actions.sass".freeze, "app/assets/stylesheets/blocks/content/_draggable.sass".freeze, "app/assets/stylesheets/blocks/content/_header.sass".freeze, "app/assets/stylesheets/blocks/content/_import.sass".freeze, "app/assets/stylesheets/blocks/content/_item.sass".freeze, "app/assets/stylesheets/blocks/content/_main.sass".freeze, "app/assets/stylesheets/blocks/content/_search.sass".freeze, "app/assets/stylesheets/blocks/content/_status.sass".freeze, "app/assets/stylesheets/blocks/content/_table.sass".freeze, "app/assets/stylesheets/blocks/content/_tooltip.sass".freeze, "app/assets/stylesheets/blocks/form".freeze, "app/assets/stylesheets/blocks/form/_checkbox.sass".freeze, "app/assets/stylesheets/blocks/form/_description.sass".freeze, "app/assets/stylesheets/blocks/form/_erorr.sass".freeze, "app/assets/stylesheets/blocks/form/_import.sass".freeze, "app/assets/stylesheets/blocks/form/_input.sass".freeze, "app/assets/stylesheets/blocks/form/_label.sass".freeze, "app/assets/stylesheets/blocks/form/_lang.sass".freeze, "app/assets/stylesheets/blocks/form/_main.sass".freeze, "app/assets/stylesheets/blocks/form/_select.sass".freeze, "app/assets/stylesheets/blocks/form/_textarea.sass".freeze, "app/assets/stylesheets/blocks/form/datetimepicker".freeze, "app/assets/stylesheets/blocks/form/datetimepicker/_main.sass".freeze, "app/assets/stylesheets/blocks/form/file".freeze, "app/assets/stylesheets/blocks/form/file/_item.sass".freeze, "app/assets/stylesheets/blocks/form/file/_main.sass".freeze, "app/assets/stylesheets/blocks/form/select2".freeze, "app/assets/stylesheets/blocks/form/select2/_arrow.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_btn.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_choise.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_drop.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_list.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_main.sass".freeze, "app/assets/stylesheets/blocks/form/select2/_result.sass".freeze, "app/assets/stylesheets/blocks/login".freeze, "app/assets/stylesheets/blocks/login/_import.sass".freeze, "app/assets/stylesheets/blocks/login/_main.sass".freeze, "app/assets/stylesheets/blocks/login/_project.sass".freeze, "app/assets/stylesheets/blocks/login/_title.sass".freeze, "app/assets/stylesheets/blocks/login/form".freeze, "app/assets/stylesheets/blocks/login/form/_error.sass".freeze, "app/assets/stylesheets/blocks/login/form/_input.sass".freeze, "app/assets/stylesheets/blocks/login/form/_label.sass".freeze, "app/assets/stylesheets/blocks/login/form/_main.sass".freeze, "app/assets/stylesheets/blocks/nav".freeze, "app/assets/stylesheets/blocks/nav/_btn.sass".freeze, "app/assets/stylesheets/blocks/nav/_copyright.sass".freeze, "app/assets/stylesheets/blocks/nav/_counter.sass".freeze, "app/assets/stylesheets/blocks/nav/_dd.sass".freeze, "app/assets/stylesheets/blocks/nav/_import.sass".freeze, "app/assets/stylesheets/blocks/nav/_item.sass".freeze, "app/assets/stylesheets/blocks/nav/_link.sass".freeze, "app/assets/stylesheets/blocks/nav/_logo.sass".freeze, "app/assets/stylesheets/blocks/nav/_main.sass".freeze, "app/assets/stylesheets/blocks/nav/_user.sass".freeze, "app/assets/stylesheets/blocks/pagination".freeze, "app/assets/stylesheets/blocks/pagination/_import.sass".freeze, "app/assets/stylesheets/blocks/pagination/_link-states.sass".freeze, "app/assets/stylesheets/blocks/pagination/_link.sass".freeze, "app/assets/stylesheets/blocks/pagination/_main.sass".freeze, "app/assets/stylesheets/blocks/pagination/_sep.sass".freeze, "app/assets/stylesheets/blocks/popup".freeze, "app/assets/stylesheets/blocks/popup/_action.sass".freeze, "app/assets/stylesheets/blocks/popup/_gallery.sass".freeze, "app/assets/stylesheets/blocks/popup/_import.sass".freeze, "app/assets/stylesheets/blocks/popup/_main.sass".freeze, "app/assets/stylesheets/blocks/popup/_title.sass".freeze, "app/assets/stylesheets/lib".freeze, "app/assets/stylesheets/lib/_import.sass".freeze, "app/assets/stylesheets/lib/_jcrop.sass".freeze, "app/assets/stylesheets/lib/_leaflet.sass".freeze, "app/assets/stylesheets/lib/calendar".freeze, "app/assets/stylesheets/lib/calendar/_import.sass".freeze, "app/assets/stylesheets/lib/calendar/_main.sass".freeze, "app/assets/stylesheets/lib/calendar/date".freeze, "app/assets/stylesheets/lib/calendar/date/_day.sass".freeze, "app/assets/stylesheets/lib/calendar/date/_import.sass".freeze, "app/assets/stylesheets/lib/calendar/date/_main.sass".freeze, "app/assets/stylesheets/lib/calendar/date/_month.sass".freeze, "app/assets/stylesheets/lib/calendar/date/_week.sass".freeze, "app/assets/stylesheets/lib/calendar/time".freeze, "app/assets/stylesheets/lib/calendar/time/_btn.sass".freeze, "app/assets/stylesheets/lib/calendar/time/_import.sass".freeze, "app/assets/stylesheets/lib/calendar/time/_input.sass".freeze, "app/assets/stylesheets/lib/calendar/time/_label.sass".freeze, "app/assets/stylesheets/lib/calendar/time/_main.sass".freeze, "app/assets/stylesheets/mixins".freeze, "app/assets/stylesheets/mixins/_background.sass".freeze, "app/assets/stylesheets/mixins/_clear.sass".freeze, "app/assets/stylesheets/mixins/_column.sass".freeze, "app/assets/stylesheets/mixins/_fonts-mixin.sass".freeze, "app/assets/stylesheets/mixins/_fonts.scss".freeze, "app/assets/stylesheets/mixins/_import.sass".freeze, "app/assets/stylesheets/mixins/_media.sass".freeze, "app/assets/stylesheets/mixins/_placeholder.sass".freeze, "app/assets/stylesheets/mixins/_sprite-m.sass".freeze, "app/assets/stylesheets/mixins/_sprites.scss".freeze, "app/assets/stylesheets/mixins/_text-indent.sass".freeze, "app/assets/stylesheets/mixins/_text-overflow.sass".freeze, "app/assets/stylesheets/mixins/_user-select.sass".freeze, "app/assets/stylesheets/rademade_admin.sass".freeze, "app/assets/stylesheets/var".freeze, "app/assets/stylesheets/var/_color.sass".freeze, "app/assets/stylesheets/var/_import.sass".freeze, "app/assets/stylesheets/var/_media.sass".freeze, "app/assets/stylesheets/var/_path.sass".freeze, "app/controllers".freeze, "app/controllers/rademade_admin".freeze, "app/controllers/rademade_admin/abstract_controller.rb".freeze, "app/controllers/rademade_admin/application_controller.rb".freeze, "app/controllers/rademade_admin/dashboard_controller.rb".freeze, "app/controllers/rademade_admin/file_controller.rb".freeze, "app/controllers/rademade_admin/gallery_controller.rb".freeze, "app/controllers/rademade_admin/model_controller.rb".freeze, "app/controllers/rademade_admin/sessions_controller.rb".freeze, "app/controllers/rademade_admin/status_controller.rb".freeze, "app/helpers".freeze, "app/helpers/rademade_admin".freeze, "app/helpers/rademade_admin/field_helper.rb".freeze, "app/helpers/rademade_admin/field_type_helper.rb".freeze, "app/helpers/rademade_admin/form_helper.rb".freeze, "app/helpers/rademade_admin/menu_helper.rb".freeze, "app/helpers/rademade_admin/pagination_helper.rb".freeze, "app/helpers/rademade_admin/uri_helper.rb".freeze, "app/inputs".freeze, "app/inputs/rademade_admin".freeze, "app/inputs/rademade_admin/boolean_input.rb".freeze, "app/inputs/rademade_admin/date_input.rb".freeze, "app/inputs/rademade_admin/date_time_input.rb".freeze, "app/inputs/rademade_admin/file_input.rb".freeze, "app/inputs/rademade_admin/gallery_input.rb".freeze, "app/inputs/rademade_admin/location_input.rb".freeze, "app/inputs/rademade_admin/related_select_input.rb".freeze, "app/models".freeze, "app/models/rademade_admin".freeze, "app/models/rademade_admin/ability.rb".freeze, "app/serializers".freeze, "app/serializers/autocomplete".freeze, "app/serializers/autocomplete/base_serializer.rb".freeze, "app/services".freeze, "app/services/csv_service.rb".freeze, "app/services/error_service.rb".freeze, "app/services/gallery".freeze, "app/services/gallery/manager.rb".freeze, "app/services/loader_service.rb".freeze, "app/services/login".freeze, "app/services/login.rb".freeze, "app/services/login/error.rb".freeze, "app/services/model_controller".freeze, "app/services/model_controller/instance_options.rb".freeze, "app/services/model_controller/model_options.rb".freeze, "app/services/model_controller/notifier.rb".freeze, "app/services/model_controller/templates.rb".freeze, "app/services/saver.rb".freeze, "app/services/search".freeze, "app/services/search/conditions".freeze, "app/services/search/conditions/abstract.rb".freeze, "app/services/search/conditions/autocomplete.rb".freeze, "app/services/search/conditions/list.rb".freeze, "app/services/search/part".freeze, "app/services/search/part/abstract.rb".freeze, "app/services/search/part/order.rb".freeze, "app/services/search/part/where.rb".freeze, "app/services/search/where.rb".freeze, "app/services/sortable_service.rb".freeze, "app/services/status".freeze, "app/services/status/toggler.rb".freeze, "app/services/template_service.rb".freeze, "app/services/upload".freeze, "app/services/upload/image_presenter.rb".freeze, "app/services/upload/preview".freeze, "app/services/upload/preview.rb".freeze, "app/services/upload/preview/file.rb".freeze, "app/services/upload/preview/gallery.rb".freeze, "app/services/video_service.rb".freeze, "app/views".freeze, "app/views/kaminari".freeze, "app/views/kaminari/rademade".freeze, "app/views/kaminari/rademade/_first_page.html.erb".freeze, "app/views/kaminari/rademade/_gap.html.erb".freeze, "app/views/kaminari/rademade/_last_page.html.erb".freeze, "app/views/kaminari/rademade/_next_page.html.erb".freeze, "app/views/kaminari/rademade/_page.html.erb".freeze, "app/views/kaminari/rademade/_paginator.html.erb".freeze, "app/views/kaminari/rademade/_prev_page.html.erb".freeze, "app/views/layouts".freeze, "app/views/layouts/login.html.erb".freeze, "app/views/layouts/rademade_admin.html.erb".freeze, "app/views/rademade_admin".freeze, "app/views/rademade_admin/_blocks".freeze, "app/views/rademade_admin/_blocks/_form.html.erb".freeze, "app/views/rademade_admin/_blocks/_list.html.erb".freeze, "app/views/rademade_admin/_blocks/_navigation.html.erb".freeze, "app/views/rademade_admin/_blocks/_on_page_switcher.html.erb".freeze, "app/views/rademade_admin/_blocks/_pagination.html.erb".freeze, "app/views/rademade_admin/_blocks/_search.html.erb".freeze, "app/views/rademade_admin/_blocks/button".freeze, "app/views/rademade_admin/_blocks/button/_cancel.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_destroy.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_edit.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_gallery.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_hide.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_preview.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_save.html.erb".freeze, "app/views/rademade_admin/_blocks/button/_save_and_return.html.erb".freeze, "app/views/rademade_admin/_blocks/form".freeze, "app/views/rademade_admin/_blocks/form/_control.html.erb".freeze, "app/views/rademade_admin/_blocks/form/_lang_panel.html.erb".freeze, "app/views/rademade_admin/_blocks/navigation".freeze, "app/views/rademade_admin/_blocks/navigation/_menu.html.erb".freeze, "app/views/rademade_admin/_blocks/navigation/menu".freeze, "app/views/rademade_admin/_blocks/navigation/menu/_item.html.erb".freeze, "app/views/rademade_admin/_blocks/table".freeze, "app/views/rademade_admin/_blocks/table/_head.html.erb".freeze, "app/views/rademade_admin/_blocks/table/_list.html.erb".freeze, "app/views/rademade_admin/_layouts".freeze, "app/views/rademade_admin/_layouts/content_item.html.erb".freeze, "app/views/rademade_admin/_layouts/login.html.erb".freeze, "app/views/rademade_admin/_layouts/main.html.erb".freeze, "app/views/rademade_admin/_layouts/parts".freeze, "app/views/rademade_admin/_layouts/parts/_head.html.erb".freeze, "app/views/rademade_admin/abstract".freeze, "app/views/rademade_admin/abstract/_form.html.erb".freeze, "app/views/rademade_admin/abstract/edit.html.erb".freeze, "app/views/rademade_admin/abstract/form.html.erb".freeze, "app/views/rademade_admin/abstract/index.html.erb".freeze, "app/views/rademade_admin/abstract/new.html.erb".freeze, "app/views/rademade_admin/dashboard".freeze, "app/views/rademade_admin/dashboard/index.html.erb".freeze, "app/views/rademade_admin/dashboard/login.html.erb".freeze, "config/initializers".freeze, "config/initializers/bower_rails.rb".freeze, "config/initializers/carrier_wave".freeze, "config/initializers/carrier_wave/mongoid.rb".freeze, "config/initializers/ckeditor.rb".freeze, "config/initializers/kaminari_route_proxy.rb".freeze, "config/initializers/routes.rb".freeze, "config/initializers/simple_form".freeze, "config/initializers/simple_form.rb".freeze, "config/initializers/simple_form/errors.rb".freeze, "config/initializers/simple_form/rademade_component.rb".freeze, "config/initializers/simple_form/wrappers.rb".freeze, "config/locales".freeze, "config/locales/rademade_admin.en.yml".freeze, "config/locales/rademade_admin.ru.yml".freeze, "config/locales/rademade_kaminari.en.yml".freeze, "config/locales/rademade_kaminari.ru.yml".freeze, "config/locales/select2.en.yml".freeze, "config/locales/select2.ru.yml".freeze, "config/locales/simple_form.en.yml".freeze, "config/locales/simple_form.ru.yml".freeze, "config/routes.rb".freeze, "lib/rademade_admin".freeze, "lib/rademade_admin.rb".freeze, "lib/rademade_admin/bower".freeze, "lib/rademade_admin/bower/performer.rb".freeze, "lib/rademade_admin/ckeditor_utils.rb".freeze, "lib/rademade_admin/engine.rb".freeze, "lib/rademade_admin/gallery.rb".freeze, "lib/rademade_admin/hideable.rb".freeze, "lib/rademade_admin/html_buffer.rb".freeze, "lib/rademade_admin/input".freeze, "lib/rademade_admin/input/related_select_input".freeze, "lib/rademade_admin/input/related_select_input/model_data.rb".freeze, "lib/rademade_admin/input/related_select_input/related_list.rb".freeze, "lib/rademade_admin/model".freeze, "lib/rademade_admin/model/adapter".freeze, "lib/rademade_admin/model/adapter/data".freeze, "lib/rademade_admin/model/adapter/data.rb".freeze, "lib/rademade_admin/model/adapter/data/active_record.rb".freeze, "lib/rademade_admin/model/adapter/data/mongoid.rb".freeze, "lib/rademade_admin/model/adapter/data/sequel.rb".freeze, "lib/rademade_admin/model/adapter/persistence".freeze, "lib/rademade_admin/model/adapter/persistence.rb".freeze, "lib/rademade_admin/model/adapter/persistence/active_record.rb".freeze, "lib/rademade_admin/model/adapter/persistence/mongoid.rb".freeze, "lib/rademade_admin/model/adapter/persistence/sequel.rb".freeze, "lib/rademade_admin/model/adapter/query".freeze, "lib/rademade_admin/model/adapter/query.rb".freeze, "lib/rademade_admin/model/adapter/query/active_record.rb".freeze, "lib/rademade_admin/model/adapter/query/mongoid.rb".freeze, "lib/rademade_admin/model/adapter/query/mysql.rb".freeze, "lib/rademade_admin/model/adapter/query/postgresql.rb".freeze, "lib/rademade_admin/model/adapter/query/sequel.rb".freeze, "lib/rademade_admin/model/adapter/query/sql.rb".freeze, "lib/rademade_admin/model/configuration".freeze, "lib/rademade_admin/model/configuration.rb".freeze, "lib/rademade_admin/model/configuration/csv_fields.rb".freeze, "lib/rademade_admin/model/configuration/field_label.rb".freeze, "lib/rademade_admin/model/configuration/fields.rb".freeze, "lib/rademade_admin/model/configuration/fields_labels.rb".freeze, "lib/rademade_admin/model/configuration/form_field.rb".freeze, "lib/rademade_admin/model/configuration/form_fields.rb".freeze, "lib/rademade_admin/model/configuration/list_field.rb".freeze, "lib/rademade_admin/model/configuration/list_fields.rb".freeze, "lib/rademade_admin/model/graph.rb".freeze, "lib/rademade_admin/model/info".freeze, "lib/rademade_admin/model/info.rb".freeze, "lib/rademade_admin/model/info/data_item".freeze, "lib/rademade_admin/model/info/data_item.rb".freeze, "lib/rademade_admin/model/info/data_item/initializer.rb".freeze, "lib/rademade_admin/model/info/data_items.rb".freeze, "lib/rademade_admin/model/info/field".freeze, "lib/rademade_admin/model/info/field.rb".freeze, "lib/rademade_admin/model/info/field/type.rb".freeze, "lib/rademade_admin/model/info/fields.rb".freeze, "lib/rademade_admin/model/info/relation".freeze, "lib/rademade_admin/model/info/relation.rb".freeze, "lib/rademade_admin/model/info/relation/gallery.rb".freeze, "lib/rademade_admin/model/info/relations.rb".freeze, "lib/rademade_admin/model/info/uploader.rb".freeze, "lib/rademade_admin/model/info/uploaders.rb".freeze, "lib/rademade_admin/model/reflection.rb".freeze, "lib/rademade_admin/routing".freeze, "lib/rademade_admin/routing.rb".freeze, "lib/rademade_admin/routing/mapper.rb".freeze, "lib/rademade_admin/routing/resource.rb".freeze, "lib/rademade_admin/search".freeze, "lib/rademade_admin/search/searcher.rb".freeze, "lib/rademade_admin/sortable.rb".freeze, "lib/rademade_admin/uploader".freeze, "lib/rademade_admin/uploader/carrier_wave.rb".freeze, "lib/rademade_admin/uploader/crop_photo.rb".freeze, "lib/rademade_admin/uploader/photo.rb".freeze, "lib/rademade_admin/uploader/video.rb".freeze, "lib/rademade_admin/user.rb".freeze, "lib/rademade_admin/version.rb".freeze, "lib/tasks".freeze, "lib/tasks/rademade_admin_tasks.rake".freeze, "lib/tasks/rademade_bower_install.rake".freeze, "lib/templates".freeze, "lib/templates/erb".freeze, "lib/templates/erb/scaffold".freeze, "lib/templates/erb/scaffold/_form.html.erb".freeze]
+ s.homepage = "https://github.com/Rademade/rademade_admin".freeze
+ s.licenses = ["MIT".freeze]
+ s.rubygems_version = "2.6.10".freeze
+ s.summary = "Rails admin panel engine".freeze
- # Public JS assets
- s.add_dependency 'turbolinks'
- s.add_dependency 'jquery-rails'
- s.add_dependency 'select2-rails', '~> 3.5'
+ if s.respond_to? :specification_version then
+ s.specification_version = 4
- # Admin
- s.add_dependency 'mini_magick' # TODO remove. Need for ckeditor or light_resizer.
- s.add_dependency 'simple_form'
- s.add_dependency 'ckeditor'
- s.add_dependency 'cancan'
- s.add_dependency 'configurations'
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
+ s.add_runtime_dependency(%q.freeze, ["~> 5"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0.8.2"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, ["~> 3.5"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ s.add_runtime_dependency(%q.freeze, [">= 0"])
+ else
+ s.add_dependency(%q.freeze, ["~> 5"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0.8.2"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, ["~> 3.5"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ end
+ else
+ s.add_dependency(%q.freeze, ["~> 5"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0.8.2"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, ["~> 3.5"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ s.add_dependency(%q.freeze, [">= 0"])
+ end
end