ab_admin 0.3.3 → 0.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -45,7 +45,7 @@ class window.AdminAssets
45
45
  $curr_cont = $asset.closest('.fileupload')
46
46
  $curr_list = $curr_cont.find('.fileupload-list')
47
47
  asset_klass = $curr_cont.data('asset')
48
- $main_list = $(".fileupload.one_asset[data-asset='#{asset_klass}'] .fileupload-list")
48
+ $main_list = $(".fileupload.one_asset[data-asset='#{asset_klass}'] .fileupload-list:first")
49
49
 
50
50
  $.post "/admin/assets/#{$asset.data('id')}/main", ->
51
51
  $main_list.find('.asset').appendTo($curr_list)
@@ -15,16 +15,17 @@ $ ->
15
15
  action = $el.data('action')
16
16
  $('#batch_action').val(action)
17
17
  $form = $('#batch_action_form')
18
- $form.append("<input type='checkbox' name='ids[]' checked='1' value='#{id}'/>") for id in ids
18
+ $form.append("<input type='checkbox' name='ids[]' checked='1' value='#{id}' style='display:none;'/>") for id in ids
19
19
  $form.submit()
20
20
 
21
- $(document).on 'click', '#list tbody tr', (e) ->
21
+ $(document).on 'click', '#list > tbody > tr', (e) ->
22
22
  return true unless _.include(['TR', 'TD'], e.target.tagName)
23
23
  e.preventDefault()
24
24
  e.stopPropagation()
25
25
  $el = $(this)
26
- $el.closest('tr').toggleClass('active_row')
27
- $el.find('td:first input').attr 'checked', (i, v) -> !v
26
+ if $(e.target).closest('table').attr('id') == 'list'
27
+ $el.closest('tr').toggleClass('active_row')
28
+ $el.find('td:first input').attr 'checked', (i, v) -> !v
28
29
 
29
30
  $(document).on 'click confirm:success', '.batch_action_link', (e) ->
30
31
  e.preventDefault()
@@ -61,7 +61,7 @@ class window.ColumnsHider
61
61
  $('#columns_hider').modal('hide')
62
62
  @refreshColumns()
63
63
  @setData()
64
- $(document).on 'pjax:end', =>
64
+ $(document).on 'pjax:end admin:list_init', =>
65
65
  @refreshColumns()
66
66
 
67
67
  refreshColumns: ->
@@ -71,7 +71,7 @@ class window.ColumnsHider
71
71
  @hideByIndex(i + 1)
72
72
 
73
73
  hideByIndex: (i) ->
74
- $("#list tr th:nth-child(#{i}), #list tr td:nth-child(#{i})").hide()
74
+ $("#list > thead > tr > th:nth-child(#{i}), #list > tbody > tr > td:nth-child(#{i})").hide()
75
75
 
76
76
  showAll: ->
77
77
  $("#list tr th, #list tr td").show()
@@ -16,8 +16,8 @@ $ ->
16
16
  $(document).on 'admin:init', (e) ->
17
17
  return unless window.viewType == 'list'
18
18
  clonePagination()
19
- initPopover()
20
- initTooltip()
19
+
20
+ $(document).trigger('admin:list_init')
21
21
 
22
22
  $('.per_page').click ->
23
23
  $.cookie('pp', $(this).data('val'))
@@ -26,18 +26,23 @@ $ ->
26
26
  e.preventDefault()
27
27
  $(this).closest('tr').remove()
28
28
 
29
- $(document).on 'admin:form_init', 'form', (e) ->
30
- focusInput($(this))
31
- initEditor()
32
- initFancySelect()
33
- inputSetToggle()
34
-
35
29
  $(document).on 'admin:init', (e) ->
36
30
  return unless window.viewType == 'form'
37
31
  $form = $('form.simple_form')
38
32
  window.resource_id = $form.data('id')
39
33
  $form.trigger('admin:form_init')
40
34
 
35
+ $(document).on 'admin:list_init', ->
36
+ initPopover()
37
+ initTooltip()
38
+
39
+ $(document).on 'admin:form_init', 'form', (e) ->
40
+ # focusInput($(this))
41
+ initEditor()
42
+ initFancySelect()
43
+ inputSetToggle()
44
+ initPickers()
45
+
41
46
  $(document).on 'pjax:end', ->
42
47
  $(document).trigger({type: 'admin:init', pjax: true})
43
48
  $(document).trigger({type: 'admin:init'})
@@ -46,7 +51,6 @@ $ ->
46
51
  e.preventDefault()
47
52
  $(this).find('td a.resource_id_link').toHref()
48
53
 
49
-
50
54
  initFancySelect()
51
55
  initNestedFields()
52
56
  # initAcFileds()
@@ -44,7 +44,7 @@ window.flash = (message, type='notice') ->
44
44
 
45
45
  window.focusInput = (scope=null) ->
46
46
  scope ||= $('form.simple_form:first')
47
- $('input[type="text"],input[type="string"],select:visible,textarea:visible').not('.fancy_select,.datepicker').get(0)?.focus()
47
+ $('input[type="text"],input[type="string"],select:visible,textarea:visible', scope).not('.fancy_select,.datepicker').get(0)?.focus()
48
48
 
49
49
  window.templateStorage = {}
50
50
  window.fetchTemplate = (tmpl_id) ->
@@ -27,6 +27,6 @@
27
27
  //= require ab_admin/components/in_place_edit
28
28
  //= require ab_admin/components/init_nested_filelds
29
29
  //= require ab_admin/components/hotkeys
30
+ //= require ab_admin/inputs/datetime_input
30
31
 
31
32
  //= require ab_admin/core/init
32
- //= require ab_admin/inputs/datetime_input
@@ -9,8 +9,7 @@ class Admin::BaseController < ::InheritedResources::Base
9
9
  before_filter :authenticate_user!, :require_moderator
10
10
  before_filter :add_breadcrumbs, :set_title, :set_user_vars, unless: :xhr?
11
11
 
12
- class_attribute :export_builder, :batch_action_list, instance_reader: false, instance_writer: false
13
- self.batch_action_list = [AbAdmin::Config::BatchAction.new(:destroy, confirm: I18n.t('admin.delete_confirmation'))]
12
+ class_attribute :export_builder, :batch_action_list, :button_scopes, instance_reader: false, instance_writer: false
14
13
 
15
14
  has_scope :ids, type: :array
16
15
 
@@ -95,7 +94,12 @@ class Admin::BaseController < ::InheritedResources::Base
95
94
  protected
96
95
 
97
96
  def batch_action_list
98
- self.class.batch_action_list
97
+ self.class.batch_action_list ||= begin
98
+ resource_class.batch_actions.map do |a|
99
+ opts = a == :destroy ? {confirm: I18n.t('admin.delete_confirmation')} : {}
100
+ AbAdmin::Config::BatchAction.new(a, opts)
101
+ end
102
+ end
99
103
  end
100
104
 
101
105
  def self.inherited(base)
@@ -161,7 +165,7 @@ class Admin::BaseController < ::InheritedResources::Base
161
165
  end
162
166
 
163
167
  def button_scopes
164
- @@button_scopes ||= begin
168
+ self.class.button_scopes ||= begin
165
169
  res = {}
166
170
  self.class.scopes_configuration.except(:ids).each do |k, v|
167
171
  res[k] = v if v[:type] == :default
@@ -282,8 +286,8 @@ class Admin::BaseController < ::InheritedResources::Base
282
286
  end
283
287
 
284
288
  def get_role
285
- return [:admin, :moderator] if admin?
286
- return [:moderator] if moderator?
289
+ return [:default, :moderator, :admin] if admin?
290
+ return [:default, :moderator] if moderator?
287
291
  nil
288
292
  end
289
293
 
@@ -1,6 +1,8 @@
1
1
  <%
2
2
  form_wrap_id = dom_id(resource_class.new, 'list_edit')
3
- html = render('table', collection: [resource])[/<tr id[^>]+>.*<\/tr>/].html_safe
3
+ html = render('table', collection: [resource])[/<tr id[^>]+>.*<\/tr>/m].html_safe
4
4
  %>
5
5
  $('#<%= form_wrap_id %>').remove();
6
- $('#list tbody').prepend('<%= j html %>');
6
+ $('#list tbody').prepend('<%= j html %>');
7
+ $('#<%= dom_id(resource, 'list') %>').addClass('success').scrollToEl();
8
+ $(document).trigger('admin:list_init');
@@ -1,7 +1,7 @@
1
- - if settings[:index_view] == 'table'
2
- = form_tag url_for(action: :batch), id: 'batch_action_form', class: 'pjax-form' do
3
- input name='batch_action' id='batch_action' type='hidden'
4
- = render 'admin/shared/batch_actions'
1
+ /- if settings[:index_view] == 'table'
2
+ = form_tag url_for(action: :batch), id: 'batch_action_form', class: 'pjax-form' do
3
+ input name='batch_action' id='batch_action' type='hidden'
4
+ = render 'admin/shared/batch_actions'
5
5
 
6
6
  #content= render settings[:index_view]
7
7
  .pagination.pull-left
@@ -10,4 +10,4 @@
10
10
  .btn-toolbar.pull-right.pjax_links
11
11
  .btn-group
12
12
  - [50, 100, 500, 1000].each do |c|
13
- a.btn.per_page data-val=c href=(url_for(params.merge(per_page: c))) class=(('active' if c == collection.per_page)) = c
13
+ a.btn.per_page data-val=c href=url_for(params.merge(per_page: c)) class=('active' if c == collection.per_page) = c
@@ -4,4 +4,5 @@
4
4
  %>
5
5
  $('#<%= form_wrap_id %>').remove();
6
6
  $('#<%= dom_id(resource, 'list') %>').replaceWith('<%= j html %>');
7
- $('#<%= dom_id(resource, 'list') %>').addClass('success').scrollToEl()
7
+ $('#<%= dom_id(resource, 'list') %>').addClass('success').scrollToEl();
8
+ $(document).trigger('admin:list_init');
@@ -1,6 +1,6 @@
1
1
  .batch_actions.clearfix
2
2
  - cache [I18n.locale, 'admin', resource_class.name, 'batch_actions'] do
3
- - if settings[:batch]
3
+ - if settings[:batch] && settings[:index_view] == 'table'
4
4
  .btn-group
5
5
  a.btn.dropdown-toggle data-toggle="dropdown" href="#"
6
6
  = t 'admin.batch_actions.title'
@@ -5,7 +5,7 @@ Rails.application.routes.draw do
5
5
  get 'dashboards', as: 'dashboards'
6
6
 
7
7
  resources :structures do
8
- post :rebuild, on: :collection
8
+ post :batch, :rebuild, on: :collection
9
9
  resource :static_page
10
10
  end
11
11
 
@@ -1,3 +1,8 @@
1
1
  class AbAdmin::Controllers::CanCanManagerResource < CanCan::InheritedResource
2
2
  delegate :resource_class, to: :@controller
3
+
4
+ def instance_name
5
+ @controller.send(:resource_instance_name)
6
+ end
7
+
3
8
  end
@@ -16,7 +16,7 @@ class String
16
16
  end
17
17
 
18
18
  def is_int?
19
- self =~ /^[-+]?[0-9]*$/
19
+ self =~ /^[-+]?[0-9]+$/
20
20
  end
21
21
 
22
22
  def is_number?
@@ -1,3 +1,3 @@
1
1
  module AbAdmin
2
- VERSION = '0.3.3'
2
+ VERSION = '0.3.4'
3
3
  end
@@ -35,9 +35,9 @@ module AbAdmin
35
35
  data = {
36
36
  type: options[:type], source: options[:source].try(:to_json),
37
37
  model: resource_class.model_name.singular, url: resource_path(item),
38
- name: attr, value: item[attr]
38
+ name: attr, value: options[:value] || item[attr]
39
39
  }
40
- link_to admin_pretty_data(item[attr]).html_safe, '#', class: 'editable', data: data
40
+ link_to admin_pretty_data(item[attr].to_s).html_safe, '#', class: 'editable', data: data
41
41
  end
42
42
 
43
43
  def options_for_ckeditor(options = {})
metadata CHANGED
@@ -2,14 +2,14 @@
2
2
  name: ab_admin
3
3
  version: !ruby/object:Gem::Version
4
4
  prerelease:
5
- version: 0.3.3
5
+ version: 0.3.4
6
6
  platform: ruby
7
7
  authors:
8
8
  - Alex Leschenko
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-25 00:00:00.000000000 Z
12
+ date: 2013-02-27 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  version_requirements: !ruby/object:Gem::Requirement
@@ -1073,7 +1073,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
1073
1073
  version: '0'
1074
1074
  segments:
1075
1075
  - 0
1076
- hash: 547698765414100647
1076
+ hash: -2603358076628246564
1077
1077
  none: false
1078
1078
  required_rubygems_version: !ruby/object:Gem::Requirement
1079
1079
  requirements:
@@ -1082,7 +1082,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1082
1082
  version: '0'
1083
1083
  segments:
1084
1084
  - 0
1085
- hash: 547698765414100647
1085
+ hash: -2603358076628246564
1086
1086
  none: false
1087
1087
  requirements: []
1088
1088
  rubyforge_project: