aureus 0.3.6 → 1.0.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.
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