rails_dash 0.0.6 → 0.1.0
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.
- data/README.rdoc +5 -3
- data/app/assets/images/rails_dash/{tip.png → shadow.png} +0 -0
- data/app/assets/stylesheets/rails_dash/content.scss +5 -0
- data/app/assets/stylesheets/rails_dash/flash.scss +24 -0
- data/app/assets/stylesheets/rails_dash/footer.scss +16 -0
- data/app/assets/stylesheets/rails_dash/forms.scss +79 -0
- data/app/assets/stylesheets/rails_dash/grid.scss +65 -0
- data/app/assets/stylesheets/rails_dash/header.scss +19 -0
- data/app/assets/stylesheets/rails_dash/index.css +3 -0
- data/app/assets/stylesheets/rails_dash/navigation.scss +35 -0
- data/app/assets/stylesheets/rails_dash/page.scss +9 -0
- data/app/assets/stylesheets/rails_dash/pager.scss +36 -0
- data/app/assets/stylesheets/rails_dash/style.scss +53 -0
- data/app/helpers/rails_dash/application_helper.rb +2 -6
- data/app/views/rails_dash/_header.html.erb +8 -0
- data/config/locales/en.yml +4 -9
- data/config/locales/es.yml +4 -9
- data/lib/generators/dash/install_generator.rb +2 -4
- data/lib/generators/dash/resource_generator.rb +10 -19
- data/lib/generators/dash/templates/dash.html.erb +49 -0
- data/lib/generators/dash/templates/dash_controller.rb +11 -0
- data/lib/generators/dash/templates/form.html.erb +7 -0
- data/lib/generators/dash/templates/index.html.erb +19 -0
- data/lib/generators/dash/templates/resource_controller.rb +49 -0
- data/lib/rails_dash/version.rb +1 -1
- data/test/dummy/app/controllers/dash/photos_controller.rb +42 -4
- data/test/dummy/app/controllers/dash_controller.rb +2 -1
- data/test/dummy/app/models/photo.rb +1 -1
- data/test/dummy/app/views/dash/photos/form.html.erb +11 -0
- data/test/dummy/app/views/dash/photos/index.html.erb +19 -0
- data/test/dummy/app/views/layouts/dash.html.erb +49 -0
- data/test/dummy/config/application.rb +2 -3
- data/test/dummy/config/routes.rb +1 -3
- data/test/dummy/db/development.sqlite3 +0 -0
- data/test/dummy/log/development.log +9951 -0
- data/test/dummy/tmp/cache/assets/C4B/BD0/sprockets%2F94eaaa522916020d13dd607587191496 +0 -0
- data/test/dummy/tmp/cache/assets/C73/810/sprockets%2F001b4e4880284b42e41d1a6e65628f23 +0 -0
- data/test/dummy/tmp/cache/assets/CAC/DF0/sprockets%2F68591a55b098a6a551a059f2f8a007c2 +0 -0
- data/test/dummy/tmp/cache/assets/CB3/790/sprockets%2F95d10b82ed3c32813ae86305967ac495 +0 -0
- data/test/dummy/tmp/cache/assets/CBC/060/sprockets%2Fe48229a61b685914cd5bd763728f35c3 +0 -0
- data/test/dummy/tmp/cache/assets/CC5/330/sprockets%2F822e9659e8ca6a7b8fd06735768a1309 +0 -0
- data/test/dummy/tmp/cache/assets/CC6/480/sprockets%2Fc269551493a16482fab7596f973d8cd5 +0 -0
- data/test/dummy/tmp/cache/assets/CD9/9F0/sprockets%2F35b50387099edf09e230a9a06e93a22a +0 -0
- data/test/dummy/tmp/cache/assets/CF2/AE0/sprockets%2F6484cd7d52962c9097ecb92ae30d8826 +0 -0
- data/test/dummy/tmp/cache/assets/D12/550/sprockets%2F2feb384c6935a8dc50503c8d6d1c4772 +0 -0
- data/test/dummy/tmp/cache/assets/D1A/8C0/sprockets%2Ff52bc139a9583db6445e577f9a5c614a +0 -0
- data/test/dummy/tmp/cache/assets/D1C/F20/sprockets%2F86ca1d7c73ec19f06bd7f1693d602795 +0 -0
- data/test/dummy/tmp/cache/assets/D1F/C40/sprockets%2F6c48d64b48f391e8cd9bf71508b6147a +0 -0
- data/test/dummy/tmp/cache/assets/D29/0B0/sprockets%2F606c351a2b9c0b15a5dbc5bf073e0377 +0 -0
- data/test/dummy/tmp/cache/assets/D41/CA0/sprockets%2F2fd6911b1d88afa5d82480545bd95aa6 +0 -0
- data/test/dummy/tmp/cache/assets/D4B/300/sprockets%2F21c96e74b485df5c493d1b6df0d4e791 +0 -0
- data/test/dummy/tmp/cache/assets/D78/AA0/sprockets%2F451a5e76762fe84ce5f63dbc40f08ee3 +0 -0
- data/test/dummy/tmp/cache/assets/D95/470/sprockets%2F59f10d12bccbc7645c63fbb322c277ee +0 -0
- data/test/dummy/tmp/cache/assets/D9D/390/sprockets%2F612e4dfda3799cc2e6ea2b7197ca142d +0 -0
- data/test/dummy/tmp/cache/assets/DA3/120/sprockets%2Fb5fcb985221ac8754fb55d74faa4e1b9 +0 -0
- data/test/dummy/tmp/cache/assets/DA4/4A0/sprockets%2Fb0eaf551806a0469f07288ea4ffdcc9e +0 -0
- data/test/dummy/tmp/cache/assets/DAB/320/sprockets%2F59831ac1cca50d82e29e49d7fbee91f7 +0 -0
- data/test/dummy/tmp/cache/assets/E3C/BA0/sprockets%2Fc0f6779a15cd28aef5c6da4cf8adf96d +0 -0
- metadata +72 -53
- data/app/assets/images/rails_dash/grid.png +0 -0
- data/app/assets/images/rails_dash/shadow.gif +0 -0
- data/app/assets/stylesheets/rails_dash/application.css +0 -13
- data/app/assets/stylesheets/rails_dash/autocomplete.sass +0 -24
- data/app/assets/stylesheets/rails_dash/content.sass +0 -3
- data/app/assets/stylesheets/rails_dash/flash.sass +0 -19
- data/app/assets/stylesheets/rails_dash/footer.sass +0 -14
- data/app/assets/stylesheets/rails_dash/forms.sass +0 -65
- data/app/assets/stylesheets/rails_dash/grid.sass +0 -53
- data/app/assets/stylesheets/rails_dash/header.sass +0 -15
- data/app/assets/stylesheets/rails_dash/navigation.sass +0 -27
- data/app/assets/stylesheets/rails_dash/page.sass +0 -6
- data/app/assets/stylesheets/rails_dash/pager.sass +0 -27
- data/app/assets/stylesheets/rails_dash/style.sass +0 -42
- data/app/controllers/rails_dash/base_controller.rb +0 -7
- data/app/controllers/rails_dash/crud_controller.rb +0 -76
- data/app/controllers/rails_dash/statics_controller.rb +0 -8
- data/app/views/rails_dash/shared/_options.html.haml +0 -6
- data/app/views/rails_dash/shared/_pager.html.haml +0 -26
- data/app/views/rails_dash/statics/home.html.haml +0 -0
- data/config/routes.rb +0 -5
- data/lib/generators/dash/templates/dash.erb +0 -10
- data/lib/generators/dash/templates/form.erb +0 -4
- data/lib/generators/dash/templates/index.erb +0 -21
- data/lib/generators/dash/templates/layout.erb +0 -40
- data/lib/generators/dash/templates/resource.erb +0 -5
- data/test/dummy/app/controllers/statics_controller.rb +0 -6
- data/test/dummy/app/views/dash/photos/form.html.haml +0 -6
- data/test/dummy/app/views/dash/photos/index.html.haml +0 -25
- data/test/dummy/app/views/layouts/dash.html.haml +0 -43
@@ -1,76 +0,0 @@
|
|
1
|
-
module RailsDash
|
2
|
-
class CrudController < ::DashController
|
3
|
-
|
4
|
-
before_filter :model
|
5
|
-
|
6
|
-
def index
|
7
|
-
@meta_title = @title = "#{@model.model_name.human :count => 2}"
|
8
|
-
@records = @model.filter(params[:q]).page(params[:p].present? ? params[:p].to_i : 1).per(15)
|
9
|
-
end
|
10
|
-
|
11
|
-
def new
|
12
|
-
@meta_title = @title = "#{t('dash.grid.add')} #{@model.model_name.human}"
|
13
|
-
define_record :new
|
14
|
-
render :form
|
15
|
-
end
|
16
|
-
|
17
|
-
def create
|
18
|
-
@meta_title = @title = "#{t('dash.grid.add')} #{@model.model_name.human}"
|
19
|
-
define_record :create
|
20
|
-
if @record.save
|
21
|
-
redirect_with_flash(index_path, :success, t('dash.flash.success.add'), params)
|
22
|
-
else
|
23
|
-
flash_errors @record
|
24
|
-
render :form
|
25
|
-
end
|
26
|
-
end
|
27
|
-
|
28
|
-
def show
|
29
|
-
@meta_title = @title = "#{t('dash.grid.edit')} #{@model.model_name.human}"
|
30
|
-
define_record :show
|
31
|
-
render :form
|
32
|
-
end
|
33
|
-
|
34
|
-
def update
|
35
|
-
@meta_title = @title = "#{t('dash.grid.edit')} #{@model.model_name.human}"
|
36
|
-
define_record :update
|
37
|
-
if @record.update_attributes(params[param])
|
38
|
-
redirect_with_flash index_path, :success, t('dash.flash.success.edit'), params
|
39
|
-
else
|
40
|
-
flash_errors @record
|
41
|
-
render :form
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
def destroy
|
46
|
-
@model.destroy params[:id]
|
47
|
-
redirect_with_flash index_path, :success, t('dash.flash.success.destroy')
|
48
|
-
end
|
49
|
-
|
50
|
-
protected
|
51
|
-
|
52
|
-
def define_record(context)
|
53
|
-
if context == :new
|
54
|
-
@record = @model.new
|
55
|
-
elsif context == :create
|
56
|
-
@record = @model.new(params[param])
|
57
|
-
else
|
58
|
-
@record = @model.find(params[:id])
|
59
|
-
end
|
60
|
-
send :alter_record, context if respond_to? :alter_record
|
61
|
-
end
|
62
|
-
|
63
|
-
def model
|
64
|
-
@model = Object.const_get self.class.name.split('::').last.gsub('Controller', '').singularize
|
65
|
-
end
|
66
|
-
|
67
|
-
def index_path
|
68
|
-
main_app.url_for(:controller => "dash/#{@model.name.tableize}", :action => 'index')
|
69
|
-
end
|
70
|
-
|
71
|
-
def param
|
72
|
-
@model.name.underscore.to_sym
|
73
|
-
end
|
74
|
-
|
75
|
-
end
|
76
|
-
end
|
@@ -1,6 +0,0 @@
|
|
1
|
-
#options
|
2
|
-
= form_tag request.fullpath, :method => 'get', :id => 'search' do
|
3
|
-
= text_field_tag :q, (params[:q].present? ? params[:q] : t('dash.grid.filter')), :onblur => "if (this.value == '') {this.value = '#{t('dash.grid.filter')}';}", :onfocus => "if (this.value == '#{t('dash.grid.filter')}') {this.value = '';}"
|
4
|
-
- if add_button
|
5
|
-
%a.button.action{ :href => main_app.url_for([:new, :dash, @model.name.underscore.to_sym]) }
|
6
|
-
= t('dash.grid.add')
|
@@ -1,26 +0,0 @@
|
|
1
|
-
- pager = paginate(collection)
|
2
|
-
- if pager.has_multiple_pages?
|
3
|
-
#pager
|
4
|
-
- if pager.has_first_page?
|
5
|
-
%a.first{ :href => pager.first_page_path }
|
6
|
-
= t('dash.pager.first')
|
7
|
-
- if pager.has_previous_page?
|
8
|
-
%a.previous{ :href => pager.previous_page_path }
|
9
|
-
= t('dash.pager.previous')
|
10
|
-
- if pager.navigation.has_less_pages?
|
11
|
-
%span.ellipsis ...
|
12
|
-
- for page in pager.navigation.pages
|
13
|
-
- if pager.is_current_page? page
|
14
|
-
%span.page.current
|
15
|
-
= page
|
16
|
-
- else
|
17
|
-
%a.page{ :href => pager.page_path(page) }
|
18
|
-
= page
|
19
|
-
- if pager.navigation.has_more_pages?
|
20
|
-
%span.ellipsis ...
|
21
|
-
- if pager.has_next_page?
|
22
|
-
%a.next{ :href => pager.next_page_path }
|
23
|
-
= t('dash.pager.next')
|
24
|
-
- if pager.has_last_page?
|
25
|
-
%a.last{ :href => pager.last_page_path }
|
26
|
-
= t('dash.pager.last')
|
File without changes
|
data/config/routes.rb
DELETED
@@ -1,21 +0,0 @@
|
|
1
|
-
= options(true)
|
2
|
-
%table{ :cellpadding => '0', :cellspacing => '0' }
|
3
|
-
%tr
|
4
|
-
%th
|
5
|
-
= '#'
|
6
|
-
%th
|
7
|
-
= @model.human_attribute_name('created_at')
|
8
|
-
%th.actions
|
9
|
-
= t('dash.grid.actions')
|
10
|
-
- @records.each do |record|
|
11
|
-
%tr
|
12
|
-
%td
|
13
|
-
= record.id
|
14
|
-
%td
|
15
|
-
= l(record.created_at)
|
16
|
-
%td.actions
|
17
|
-
%a{ :href => main_app.url_for([:dash, record]) }
|
18
|
-
= t('dash.grid.edit')
|
19
|
-
%a{ :href => main_app.url_for([:dash, record]), :'data-method' => 'delete' }
|
20
|
-
= t('dash.grid.destroy')
|
21
|
-
= pager(@records)
|
@@ -1,40 +0,0 @@
|
|
1
|
-
!!! Strict
|
2
|
-
%html{:xmlns => 'http://www.w3.org/1999/xhtml', :'xml:lang' => I18n.locale, :lang => I18n.locale}
|
3
|
-
%head
|
4
|
-
%title= @meta_title
|
5
|
-
= stylesheet_link_tag 'rails_dash/application', :media => 'all'
|
6
|
-
= javascript_include_tag 'application'
|
7
|
-
= csrf_meta_tags
|
8
|
-
%body
|
9
|
-
#page
|
10
|
-
#navigation
|
11
|
-
.holder
|
12
|
-
#menu
|
13
|
-
%ul
|
14
|
-
%li
|
15
|
-
%a{ :href => rails_dash.root_path, :title => t('dash.menu.home') }
|
16
|
-
= t('dash.menu.home')
|
17
|
-
#session
|
18
|
-
%a.button{ :href => '#', :title => t('dash.session.logout') }
|
19
|
-
= t('dash.session.logout')
|
20
|
-
- if @title
|
21
|
-
#header
|
22
|
-
.holder
|
23
|
-
%h1
|
24
|
-
= @title
|
25
|
-
- if not flash.empty? and ((flash.key?(:error) and flash[:error].any?) or (flash.key?(:success) and flash[:success].any?))
|
26
|
-
#flash.flash.holder
|
27
|
-
- if flash.key?(:error) and flash[:error].any?
|
28
|
-
- while flash[:error].any?
|
29
|
-
%p.error
|
30
|
-
= flash[:error].shift.capitalize
|
31
|
-
- if flash.key?(:success) and flash[:success].any?
|
32
|
-
- while flash[:success].any?
|
33
|
-
%p.success
|
34
|
-
= flash[:success].shift.capitalize
|
35
|
-
#content.holder
|
36
|
-
= yield
|
37
|
-
#footer
|
38
|
-
.holder
|
39
|
-
%p#copyright
|
40
|
-
= t('dash.footer.copyright', :year => Time.now.year)
|
@@ -1,25 +0,0 @@
|
|
1
|
-
= options(true)
|
2
|
-
%table{ :cellpadding => '0', :cellspacing => '0' }
|
3
|
-
%tr
|
4
|
-
%th
|
5
|
-
= '#'
|
6
|
-
%th
|
7
|
-
= @model.human_attribute_name('name')
|
8
|
-
%th
|
9
|
-
= @model.human_attribute_name('created_at')
|
10
|
-
%th.actions
|
11
|
-
= t('dash.grid.actions')
|
12
|
-
- @records.each do |record|
|
13
|
-
%tr
|
14
|
-
%td
|
15
|
-
= record.id
|
16
|
-
%td
|
17
|
-
= record.name
|
18
|
-
%td
|
19
|
-
= l(record.created_at)
|
20
|
-
%td.actions
|
21
|
-
%a{ :href => main_app.url_for([:dash, record]) }
|
22
|
-
= t('dash.grid.edit')
|
23
|
-
%a{ :href => main_app.url_for([:dash, record]), :'data-method' => 'delete' }
|
24
|
-
= t('dash.grid.destroy')
|
25
|
-
= pager(@records)
|
@@ -1,43 +0,0 @@
|
|
1
|
-
!!! Strict
|
2
|
-
%html{:xmlns => 'http://www.w3.org/1999/xhtml', :'xml:lang' => I18n.locale, :lang => I18n.locale}
|
3
|
-
%head
|
4
|
-
%title= @meta_title
|
5
|
-
= stylesheet_link_tag 'rails_dash/application', :media => 'all'
|
6
|
-
= javascript_include_tag 'application'
|
7
|
-
= csrf_meta_tags
|
8
|
-
%body
|
9
|
-
#page
|
10
|
-
#navigation
|
11
|
-
.holder
|
12
|
-
#menu
|
13
|
-
%ul
|
14
|
-
%li
|
15
|
-
%a{ :href => rails_dash.root_path, :title => t('dash.menu.home') }
|
16
|
-
= t('dash.menu.home')
|
17
|
-
%li
|
18
|
-
%a{ :href => main_app.url_for(:controller => 'dash/photos', :action => 'index'), :title => Photo.model_name.human(:count => 2) }
|
19
|
-
= Photo.model_name.human(:count => 2)
|
20
|
-
#session
|
21
|
-
%a.button{ :href => '#', :title => t('dash.session.logout') }
|
22
|
-
= t('dash.session.logout')
|
23
|
-
- if @title
|
24
|
-
#header
|
25
|
-
.holder
|
26
|
-
%h1
|
27
|
-
= @title
|
28
|
-
- if not flash.empty? and ((flash.key?(:error) and flash[:error].any?) or (flash.key?(:success) and flash[:success].any?))
|
29
|
-
#flash.flash.holder
|
30
|
-
- if flash.key?(:error) and flash[:error].any?
|
31
|
-
- while flash[:error].any?
|
32
|
-
%p.error
|
33
|
-
= flash[:error].shift.capitalize
|
34
|
-
- if flash.key?(:success) and flash[:success].any?
|
35
|
-
- while flash[:success].any?
|
36
|
-
%p.success
|
37
|
-
= flash[:success].shift.capitalize
|
38
|
-
#content.holder
|
39
|
-
= yield
|
40
|
-
#footer
|
41
|
-
.holder
|
42
|
-
%p#copyright
|
43
|
-
= t('dash.footer.copyright', :year => Time.now.year)
|