aureus 0.3.6 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/Gemfile +8 -1
  2. data/Gemfile.lock +93 -2
  3. data/Rakefile +24 -6
  4. data/Readme.md +28 -1
  5. data/TODO.md +7 -0
  6. data/app/assets/stylesheets/aureus/base.scss +9 -4
  7. data/app/assets/stylesheets/aureus/content.scss +0 -24
  8. data/app/assets/stylesheets/aureus/form.scss +1 -16
  9. data/app/assets/stylesheets/aureus/index.scss +1 -0
  10. data/app/assets/stylesheets/aureus/navigation.scss +4 -5
  11. data/app/assets/stylesheets/aureus/table.scss +4 -14
  12. data/app/assets/stylesheets/aureus/topbar.scss +2 -2
  13. data/aureus.gemspec +6 -1
  14. data/config/initializers/formtastic.rb +82 -0
  15. data/config/locales/en.yml +2 -0
  16. data/lib/aureus/box.rb +37 -0
  17. data/lib/aureus/content.rb +15 -0
  18. data/lib/aureus/data_table.rb +139 -0
  19. data/lib/aureus/engine.rb +3 -1
  20. data/lib/aureus/helper.rb +56 -0
  21. data/lib/aureus/listing.rb +39 -0
  22. data/lib/aureus/messages.rb +23 -0
  23. data/lib/aureus/navigation.rb +42 -0
  24. data/lib/aureus/row.rb +65 -0
  25. data/lib/aureus/test/resource.rb +3 -0
  26. data/lib/aureus/test/schema.rb +8 -0
  27. data/lib/aureus/toolbar.rb +74 -0
  28. data/lib/aureus/version.rb +1 -1
  29. data/lib/aureus.rb +50 -1
  30. data/lib/generators/aureus/.DS_Store +0 -0
  31. data/lib/generators/aureus/devise_i18n/devise_i18n_generator.rb +20 -0
  32. data/lib/generators/aureus/devise_i18n/templates/devise_base.en.yml +54 -0
  33. data/lib/generators/aureus/devise_i18n/templates/devise_mail.en.yml +18 -0
  34. data/lib/generators/aureus/devise_i18n/templates/devise_ui.en.yml +54 -0
  35. data/lib/generators/aureus/devise_views/devise_views_generator.rb +23 -0
  36. data/lib/generators/aureus/devise_views/templates/devise/confirmations/new.html.haml +7 -0
  37. data/lib/generators/aureus/devise_views/templates/devise/mailer/confirmation_instructions.html.haml +3 -0
  38. data/lib/generators/aureus/devise_views/templates/devise/mailer/reset_password_instructions.html.haml +5 -0
  39. data/lib/generators/aureus/devise_views/templates/devise/mailer/unlock_instructions.html.haml +4 -0
  40. data/lib/generators/aureus/devise_views/templates/devise/passwords/edit.html.haml +9 -0
  41. data/lib/generators/aureus/devise_views/templates/devise/passwords/new.html.haml +7 -0
  42. data/lib/generators/aureus/devise_views/templates/devise/registrations/edit.html.haml +11 -0
  43. data/lib/generators/aureus/devise_views/templates/devise/registrations/new.html.haml +9 -0
  44. data/lib/generators/aureus/devise_views/templates/devise/sessions/new.html.haml +9 -0
  45. data/lib/generators/aureus/devise_views/templates/devise/shared/_links.html.haml +19 -0
  46. data/lib/generators/aureus/devise_views/templates/devise/unlocks/new.html.haml +7 -0
  47. data/lib/generators/aureus/views/templates/views/_form.html.haml +6 -0
  48. data/lib/generators/aureus/views/templates/views/_item.html.haml +6 -0
  49. data/lib/generators/aureus/views/templates/views/_list.html.haml +10 -0
  50. data/lib/generators/aureus/views/templates/views/edit.html.haml +7 -0
  51. data/lib/generators/aureus/views/templates/views/index.html.haml +6 -0
  52. data/lib/generators/aureus/views/templates/views/new.html.haml +7 -0
  53. data/lib/generators/aureus/views/templates/views/show.html.haml +7 -0
  54. data/lib/generators/aureus/views/views_generator.rb +78 -0
  55. data/test/html.haml +64 -0
  56. data/test/model.rb +3 -0
  57. metadata +101 -4
@@ -0,0 +1,6 @@
1
+ = aureus_row do |r|
2
+ - r.column 25 do
3
+ = aureus_box t(".box_title") do
4
+ = aureus_listing do |l|
5
+ {{{ENTRIES}}}
6
+ - r.space 75
@@ -0,0 +1,10 @@
1
+ = aureus_row do
2
+ = aureus_box t(".box_title") do
3
+ = aureus_datatable @{{{NAME_PLURAL}}} do |t|
4
+ - t.head do |h|
5
+ {{{TABLE_HEADS}}}
6
+ - t.row do |r,{{{NAME_SINGULAR}}}|
7
+ {{{TABLE_CELLS}}}
8
+ - r.button :show, {{{PATH_SINGULAR}}}_url({{{NAME_SINGULAR}}}) if can? :show, {{{MODEL}}}
9
+ - r.button :edit, edit_{{{PATH_SINGULAR}}}_url({{{NAME_SINGULAR}}}) if can? :edit, {{{MODEL}}}
10
+ - r.button :destroy, {{{PATH_SINGULAR}}}_url({{{NAME_SINGULAR}}}), :confirm => t(".destroy_confirm") if can? :destroy, {{{MODEL}}}
@@ -0,0 +1,7 @@
1
+ - content_for :navigation do
2
+ = aureus_navigation do |n|
3
+ - n.title t(".title")
4
+ - n.button link_to t(".button_cancel"), {{{PATH_PLURAL}}}_url if can? :show, {{{MODEL}}}
5
+ - n.submit_form_button @{{{NAME_SINGULAR}}}, t(".button_save") if can? :update, {{{MODEL}}}
6
+
7
+ = render "form"
@@ -0,0 +1,6 @@
1
+ - content_for :navigation do
2
+ = aureus_navigation do |n|
3
+ - n.title t(".title")
4
+ - n.button link_to(t(".button_new"), new_{{{PATH_SINGULAR}}}_url) if can? :create, {{{MODEL}}}
5
+
6
+ = render "list"
@@ -0,0 +1,7 @@
1
+ - content_for :navigation do
2
+ = aureus_navigation do |n|
3
+ - n.title t(".title")
4
+ - n.button link_to(t(".button_cancel"), {{{PATH_PLURAL}}}_url) if can? :index, {{{MODEL}}}
5
+ - n.submit_form_button @{{{NAME_SINGULAR}}}, t(".button_save") if can? :create, {{{MODEL}}}
6
+
7
+ = render "form"
@@ -0,0 +1,7 @@
1
+ - content_for :navigation do
2
+ = aureus_navigation do |n|
3
+ - n.title t(".title")
4
+ - n.button link_to(t(".button_edit"), edit_{{{PATH_SINGULAR}}}_url(@{{{NAME_SINGULAR}}})) if can? :update, {{{MODEL}}}
5
+ - n.button link_to(t(".button_back"),{{{PATH_PLURAL}}}_url) if can? :index, {{{MODEL}}}
6
+
7
+ = render "item"
@@ -0,0 +1,78 @@
1
+ module Aureus
2
+
3
+ module Generators
4
+
5
+ class ViewsGenerator < Rails::Generators::Base
6
+ include ActiveSupport::Inflector
7
+
8
+ desc "generates aures views for a existing model"
9
+ source_root File.expand_path("../templates", __FILE__)
10
+ argument :resource, :type => :string, :required => true
11
+ argument :controller, :type => :string, :required => true
12
+
13
+ def generate
14
+ model_name = resource.camelize
15
+ folder = controller.gsub(/Controller$/,"").underscore
16
+ target = ["app/views",folder].join "/"
17
+ namespace = folder.split("/").slice(0...-1)
18
+ model = model_name.constantize
19
+ columns = model.column_names
20
+ columns2 = columns - ["id","created_at","updated_at"]
21
+ real_name = model_name.demodulize
22
+ route = folder.gsub("/","_").singularize
23
+
24
+ if yes? "generate views for '"+model_name+"' to: "+target+"?"
25
+ directory "views", target
26
+ replacements = {
27
+ "MODEL" => model_name,
28
+ "NAME_SINGULAR" => real_name.downcase,
29
+ "NAME_PLURAL" => real_name.pluralize.downcase,
30
+ "PATH_SINGULAR" => route,
31
+ "PATH_PLURAL" => route.pluralize,
32
+ "TABLE_HEADS" => columns.collect{ |c| ' - h.text t(".column_'+c+'")' }.join("\n"),
33
+ "TABLE_CELLS" => columns.collect{ |c| ' - r.cell '+real_name.downcase+'.'+c }.join("\n"),
34
+ "ENTRIES" => columns.collect{ |c| ' - l.entry t(".entry_'+c+'"), @'+real_name.downcase+'.'+c }.join("\n"),
35
+ "INPUTS" => columns2.collect{ |c| ' = f.input :'+c+', :label => t(".field_'+c+'")' }.join("\n"),
36
+ "FORM_PATH" => namespace.collect{ |n| '"'+n+'"' }.join(",")
37
+ }
38
+ Dir[target+"/*.haml"].each do |file|
39
+ replacements.each do |key,value|
40
+ gsub_file file, "{{{#{key}}}}", value, :verbose => false
41
+ end
42
+ end
43
+ end
44
+
45
+ i18n_file = "config/locales/"+route.gsub("_",".").pluralize+".en.yml"
46
+ if yes? "generate i18n file to: "+i18n_file+"?"
47
+ singular = real_name
48
+ plural = real_name.pluralize
49
+ base_i18n = {
50
+ plural.downcase => {
51
+ "index" => { "title" => plural, "button_new" => "Add "+singular },
52
+ "new" => { "title" => "New "+singular, "button_cancel" => "Cancel", "button_save" => "Save" },
53
+ "edit" => { "title" => "Edit "+singular, "button_cancel" => "Cancel", "button_save" => "Save" },
54
+ "form" => { "box_title" => "Details" },
55
+ "list" => { "box_title" => plural+" Listing" },
56
+ "show" => { "title" => singular, "button_edit" => "Edit "+singular, "button_back" => "Back" },
57
+ "item" => { "box_title" => "Details" }
58
+ }
59
+ }
60
+ columns.each do |c|
61
+ base_i18n[plural.downcase]["item"][("entry_"+c)] = c.titleize
62
+ base_i18n[plural.downcase]["list"][("column_"+c)] = c.titleize
63
+ base_i18n[plural.downcase]["form"][("field_"+c)] = c.titleize
64
+ end
65
+ namespace.reverse.each do |n|
66
+ base_i18n = { n => base_i18n }
67
+ end
68
+ base_i18n = { "en" => base_i18n }
69
+ create_file i18n_file, base_i18n.to_yaml
70
+ end
71
+
72
+ end
73
+
74
+ end
75
+
76
+ end
77
+
78
+ end
data/test/html.haml ADDED
@@ -0,0 +1,64 @@
1
+ = aureus_toolbar "A nice title" do |t|
2
+ - t.left do |l|
3
+ - l.link_to "an anchor", "http://www.example.com"
4
+ - l.link_to "an anchor", "http://www.example.com"
5
+ - t.right do |r|
6
+ - r.info "some info"
7
+ - r.link_to "an anchor", "http://www.example.com"
8
+
9
+ = aureus_navigation do |n|
10
+ - n.title "the title"
11
+ - n.button "quicklinks"
12
+
13
+ = aureus_messages :notice => "notice", :error => "error", :alert => "alert"
14
+
15
+ = aureus_content "content"
16
+
17
+ = aureus_row do
18
+ = aureus_box "a box title" do
19
+ %strong hello
20
+
21
+ = aureus_row do
22
+ %strong only wrapper
23
+
24
+ = aureus_row do |r|
25
+ - r.column 100 do
26
+ .one-column
27
+
28
+ = aureus_row do |r|
29
+ - r.column 2 do
30
+ .first
31
+ - r.space 2
32
+
33
+ = aureus_row do |r|
34
+ - r.column 25 do
35
+ .first
36
+ - r.column 25 do
37
+ .second
38
+ - r.column 50 do
39
+ .third
40
+
41
+ = aureus_box "a title", :centered => true, :for => :form do
42
+ %li a entry
43
+
44
+ = aureus_box "a title" do |b|
45
+ - b.content do
46
+ %strong the content
47
+ - b.foot do
48
+ %strong the footer
49
+
50
+ = aureus_datatable @resources do |t|
51
+ - t.head do |h|
52
+ - h.text "Title"
53
+ - h.text "Text"
54
+ - t.row do |r,res|
55
+ - r.cell res.title
56
+ - r.cell res.text
57
+ - r.button :show, "url"
58
+ - r.button :edit, "url"
59
+ - r.button :destroy, "url", :confirm => "Delete user?"
60
+
61
+ = aureus_listing do |l|
62
+ - l.entry "head", "body"
63
+ - l.entry "head2" do
64
+ %strong body2
data/test/model.rb ADDED
@@ -0,0 +1,3 @@
1
+ class Resource < ActiveRecord::Base
2
+
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aureus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.6
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,8 +9,56 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-17 00:00:00.000000000 Z
13
- dependencies: []
12
+ date: 2012-07-20 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: formtastic
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: jquery-rails
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :runtime
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: haml
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
14
62
  description: Aureus Admin Template
15
63
  email: joel.gaehwiler@bluewin.ch
16
64
  executables: []
@@ -21,6 +69,7 @@ files:
21
69
  - Gemfile.lock
22
70
  - Rakefile
23
71
  - Readme.md
72
+ - TODO.md
24
73
  - app/assets/images/aureus/background.png
25
74
  - app/assets/images/aureus/icon-cross.png
26
75
  - app/assets/images/aureus/icon-eye.png
@@ -48,9 +97,49 @@ files:
48
97
  - app/assets/stylesheets/aureus/topbar.scss
49
98
  - app/assets/stylesheets/aureus/ui.scss
50
99
  - aureus.gemspec
100
+ - config/initializers/formtastic.rb
101
+ - config/locales/en.yml
51
102
  - lib/aureus.rb
103
+ - lib/aureus/box.rb
104
+ - lib/aureus/content.rb
105
+ - lib/aureus/data_table.rb
52
106
  - lib/aureus/engine.rb
107
+ - lib/aureus/helper.rb
108
+ - lib/aureus/listing.rb
109
+ - lib/aureus/messages.rb
110
+ - lib/aureus/navigation.rb
111
+ - lib/aureus/row.rb
112
+ - lib/aureus/test/resource.rb
113
+ - lib/aureus/test/schema.rb
114
+ - lib/aureus/toolbar.rb
53
115
  - lib/aureus/version.rb
116
+ - lib/generators/aureus/.DS_Store
117
+ - lib/generators/aureus/devise_i18n/devise_i18n_generator.rb
118
+ - lib/generators/aureus/devise_i18n/templates/devise_base.en.yml
119
+ - lib/generators/aureus/devise_i18n/templates/devise_mail.en.yml
120
+ - lib/generators/aureus/devise_i18n/templates/devise_ui.en.yml
121
+ - lib/generators/aureus/devise_views/devise_views_generator.rb
122
+ - lib/generators/aureus/devise_views/templates/devise/confirmations/new.html.haml
123
+ - lib/generators/aureus/devise_views/templates/devise/mailer/confirmation_instructions.html.haml
124
+ - lib/generators/aureus/devise_views/templates/devise/mailer/reset_password_instructions.html.haml
125
+ - lib/generators/aureus/devise_views/templates/devise/mailer/unlock_instructions.html.haml
126
+ - lib/generators/aureus/devise_views/templates/devise/passwords/edit.html.haml
127
+ - lib/generators/aureus/devise_views/templates/devise/passwords/new.html.haml
128
+ - lib/generators/aureus/devise_views/templates/devise/registrations/edit.html.haml
129
+ - lib/generators/aureus/devise_views/templates/devise/registrations/new.html.haml
130
+ - lib/generators/aureus/devise_views/templates/devise/sessions/new.html.haml
131
+ - lib/generators/aureus/devise_views/templates/devise/shared/_links.html.haml
132
+ - lib/generators/aureus/devise_views/templates/devise/unlocks/new.html.haml
133
+ - lib/generators/aureus/views/templates/views/_form.html.haml
134
+ - lib/generators/aureus/views/templates/views/_item.html.haml
135
+ - lib/generators/aureus/views/templates/views/_list.html.haml
136
+ - lib/generators/aureus/views/templates/views/edit.html.haml
137
+ - lib/generators/aureus/views/templates/views/index.html.haml
138
+ - lib/generators/aureus/views/templates/views/new.html.haml
139
+ - lib/generators/aureus/views/templates/views/show.html.haml
140
+ - lib/generators/aureus/views/views_generator.rb
141
+ - test/html.haml
142
+ - test/model.rb
54
143
  homepage: https://github.com/256dpi/aureus
55
144
  licenses:
56
145
  - MIT
@@ -64,16 +153,24 @@ required_ruby_version: !ruby/object:Gem::Requirement
64
153
  - - ! '>='
65
154
  - !ruby/object:Gem::Version
66
155
  version: '0'
156
+ segments:
157
+ - 0
158
+ hash: 36369560526985559
67
159
  required_rubygems_version: !ruby/object:Gem::Requirement
68
160
  none: false
69
161
  requirements:
70
162
  - - ! '>='
71
163
  - !ruby/object:Gem::Version
72
164
  version: '0'
165
+ segments:
166
+ - 0
167
+ hash: 36369560526985559
73
168
  requirements: []
74
169
  rubyforge_project:
75
170
  rubygems_version: 1.8.24
76
171
  signing_key:
77
172
  specification_version: 3
78
173
  summary: Aureus Admin Template
79
- test_files: []
174
+ test_files:
175
+ - test/html.haml
176
+ - test/model.rb