flexi_generators 0.3.0 → 0.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +46 -3
- data/flexi_generators.gemspec +2 -0
- data/lib/generators/flexi/config/config_generator.rb +1 -0
- data/lib/generators/flexi/config/templates/field_error.rb +11 -6
- data/lib/generators/flexi/install/install_generator.rb +3 -3
- data/lib/generators/flexi/install/templates/application.css +2 -2
- data/lib/generators/flexi/install/templates/application.js +1 -1
- data/lib/generators/flexi/layout/templates/_search.html.erb +3 -0
- data/lib/generators/flexi/layout/templates/application.css +2 -2
- data/lib/generators/flexi/layout/templates/layout.css +11 -1
- data/lib/generators/flexi/layout/templates/layout.html.erb +2 -1
- data/lib/generators/flexi/layout/templates/layout_helper.rb +2 -2
- data/lib/generators/flexi/scaffold/scaffold_generator.rb +9 -0
- data/lib/generators/flexi/scaffold/templates/controller.rb +45 -0
- data/lib/version.rb +1 -1
- data/vendor/assets/images/{glyphicons-halflings-white.png → flexi/glyphicons-halflings-white.png} +0 -0
- data/vendor/assets/images/{glyphicons-halflings.png → flexi/glyphicons-halflings.png} +0 -0
- data/vendor/assets/javascripts/{bootstrap.js → flexi/bootstrap.js} +1824 -1824
- data/vendor/assets/javascripts/flexi/bootstrap.min.js +6 -0
- data/vendor/assets/stylesheets/{bootstrap-responsive.css → flexi/bootstrap-responsive.css} +815 -815
- data/vendor/assets/stylesheets/flexi/bootstrap-responsive.min.css +9 -0
- data/vendor/assets/stylesheets/{bootstrap.css → flexi/bootstrap.css} +4983 -4983
- data/vendor/assets/stylesheets/flexi/bootstrap.min.css +9 -0
- metadata +65 -47
data/README.md
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# Flexi Generators
|
2
2
|
|
3
|
-
|
3
|
+
Rails generators scripts for scaffolding and layout files containing Twitter’s Bootstrap CSS.
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
@@ -16,10 +16,43 @@ Or install it yourself as:
|
|
16
16
|
|
17
17
|
$ gem install flexi_generators
|
18
18
|
|
19
|
-
##
|
19
|
+
## Quickstart
|
20
20
|
|
21
|
-
|
21
|
+
You can run following generators to get started.
|
22
22
|
|
23
|
+
Install (requires directives to Asset pipeline)
|
24
|
+
|
25
|
+
Usage:
|
26
|
+
|
27
|
+
$ rails g flexi:install
|
28
|
+
|
29
|
+
Config (My extra configuration files: field error, pagination, locale and inflector)
|
30
|
+
|
31
|
+
Usage:
|
32
|
+
|
33
|
+
$ rails g flexi:config
|
34
|
+
|
35
|
+
Layout (generates Twitter Bootstrap compatible layout)
|
36
|
+
|
37
|
+
Usage:
|
38
|
+
|
39
|
+
$ rails g flexi:layout
|
40
|
+
|
41
|
+
Example:
|
42
|
+
|
43
|
+
$ rails g flexi:layout application fixed
|
44
|
+
|
45
|
+
Scaffold (generates Twitter Bootstrap compatible scaffold views)
|
46
|
+
|
47
|
+
Usage:
|
48
|
+
|
49
|
+
$ rails g flexi:scaffold NAME [field[:type][:index] field[:type][:index]] [options]
|
50
|
+
|
51
|
+
Example:
|
52
|
+
|
53
|
+
$ rails g flexi:scaffold Post title description:text
|
54
|
+
rake db:migrate
|
55
|
+
|
23
56
|
## Contributing
|
24
57
|
|
25
58
|
1. Fork it
|
@@ -27,3 +60,13 @@ TODO: Write usage instructions here
|
|
27
60
|
3. Commit your changes (`git commit -am 'Added some feature'`)
|
28
61
|
4. Push to the branch (`git push origin my-new-feature`)
|
29
62
|
5. Create new Pull Request
|
63
|
+
|
64
|
+
## Autor
|
65
|
+
|
66
|
+
Leandro de Oliveira
|
67
|
+
|
68
|
+
Blog: [http://leandroo.com.br](http://leandroo.com.br)
|
69
|
+
|
70
|
+
Github: [http://github.com/leandroo](http://github.com/leandroo)
|
71
|
+
|
72
|
+
Copyright (c) 2012 Leandro de Oliveira, released under the MIT license
|
data/flexi_generators.gemspec
CHANGED
@@ -1,9 +1,14 @@
|
|
1
1
|
ActionView::Base.field_error_proc = Proc.new do |html_tag, instance|
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
html = html_tag.html_safe
|
3
|
+
elements = Nokogiri::HTML::DocumentFragment.parse(html_tag).css "label, input, select, textarea"
|
4
|
+
elements.each do |e|
|
5
|
+
if e.node_name.eql? 'label'
|
6
|
+
e['class'] = 'control-label error'
|
7
|
+
html = %(#{e}).html_safe
|
8
|
+
else
|
9
|
+
e['class'] = "#{e['class']} error"
|
10
|
+
html = %(#{e}).html_safe
|
11
|
+
end
|
8
12
|
end
|
13
|
+
html
|
9
14
|
end
|
@@ -8,8 +8,8 @@ module Flexi
|
|
8
8
|
|
9
9
|
def add_stylesheets
|
10
10
|
if File.exist?('app/assets/stylesheets/application.css')
|
11
|
-
insert_into_file "app/assets/stylesheets/application.css", " *= require bootstrap-responsive\n", :after => "require_self\n"
|
12
|
-
insert_into_file "app/assets/stylesheets/application.css", " *= require bootstrap\n", :after => "require_self\n"
|
11
|
+
insert_into_file "app/assets/stylesheets/application.css", " *= require flexi/bootstrap-responsive\n", :after => "require_self\n"
|
12
|
+
insert_into_file "app/assets/stylesheets/application.css", " *= require flexi/bootstrap\n", :after => "require_self\n"
|
13
13
|
else
|
14
14
|
copy_file "application.css", "app/assets/stylesheets/application.css"
|
15
15
|
end
|
@@ -17,7 +17,7 @@ module Flexi
|
|
17
17
|
|
18
18
|
def add_javascripts
|
19
19
|
if File.exist?('app/assets/javascripts/application.js')
|
20
|
-
insert_into_file "app/assets/javascripts/application.js", "//= require bootstrap\n", :after => "jquery_ujs\n"
|
20
|
+
insert_into_file "app/assets/javascripts/application.js", "//= require flexi/bootstrap\n", :after => "jquery_ujs\n"
|
21
21
|
else
|
22
22
|
copy_file "application.js", "app/assets/javascripts/application.js"
|
23
23
|
end
|
@@ -9,7 +9,7 @@
|
|
9
9
|
* compiled file, but it's generally better to create a new file per style scope.
|
10
10
|
*
|
11
11
|
*= require_self
|
12
|
-
*= require bootstrap
|
13
|
-
*= require bootstrap-responsive
|
12
|
+
*= require flexi/bootstrap
|
13
|
+
*= require flexi/bootstrap-responsive
|
14
14
|
*= require_tree .
|
15
15
|
*/
|
@@ -9,8 +9,8 @@
|
|
9
9
|
* compiled file, but it's generally better to create a new file per style scope.
|
10
10
|
*
|
11
11
|
*= require_self
|
12
|
-
*= require bootstrap
|
13
|
-
*= require bootstrap-responsive
|
12
|
+
*= require flexi/bootstrap
|
13
|
+
*= require flexi/bootstrap-responsive
|
14
14
|
*= require layout
|
15
15
|
*= require_tree .
|
16
16
|
*/
|
@@ -5,4 +5,14 @@ fieldset legend{margin-bottom:0;}
|
|
5
5
|
.sidebar-nav{padding:9px 0;}
|
6
6
|
.navbar .brand{color:#FFFFFF !important;}
|
7
7
|
.page-header{padding-bottom:0px !important;}
|
8
|
-
.actions{text-align:center !important;}
|
8
|
+
.actions{text-align:center !important;width:15%}
|
9
|
+
/* error fields */
|
10
|
+
.control-label.error {color: #b94a48;}
|
11
|
+
.control-group input.error,
|
12
|
+
.control-group select.error,
|
13
|
+
.control-group textarea.error { color: #b94a48; border-color: #b94a48; }
|
14
|
+
.control-group input.error:focus,
|
15
|
+
.control-group select.error:focus,
|
16
|
+
.control-group textarea.error:focus {border-color: #953b39; -webkit-box-shadow: 0 0 6px #d59392; -moz-box-shadow: 0 0 6px #d59392; box-shadow: 0 0 6px #d59392;}
|
17
|
+
.control-group .error .input-prepend .add-on,
|
18
|
+
.control-group .error .input-append .add-on {color: #b94a48;background-color: #f2dede; border-color: #b94a48;}
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<meta name="author" content="">
|
10
10
|
<%%= csrf_meta_tags %>
|
11
11
|
<%%= stylesheet "application", :media => "all" %>
|
12
|
-
<%%= yield(:
|
12
|
+
<%%= yield(:stylesheet) %>
|
13
13
|
<!--[if lt IE 9]>
|
14
14
|
<script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
|
15
15
|
<![endif]-->
|
@@ -72,5 +72,6 @@
|
|
72
72
|
</div><!--/.fluid-container-->
|
73
73
|
|
74
74
|
<%%= javascript_include_tag "application" %>
|
75
|
+
<%%= yield(:javascript) %>
|
75
76
|
</body>
|
76
77
|
</html>
|
@@ -13,11 +13,11 @@ module LayoutHelper
|
|
13
13
|
end
|
14
14
|
|
15
15
|
def stylesheet(*args)
|
16
|
-
content_for(:
|
16
|
+
content_for(:stylesheet) { stylesheet_link_tag(*args) }
|
17
17
|
end
|
18
18
|
|
19
19
|
def javascript(*args)
|
20
|
-
content_for(:
|
20
|
+
content_for(:javascript) { javascript_include_tag(*args) }
|
21
21
|
end
|
22
22
|
|
23
23
|
def menu(name, path)
|
@@ -1,5 +1,6 @@
|
|
1
1
|
require 'rails/generators/rails/scaffold/scaffold_generator'
|
2
2
|
require 'rails/generators/erb/scaffold/scaffold_generator'
|
3
|
+
require 'rails/generators/rails/scaffold_controller/scaffold_controller_generator'
|
3
4
|
|
4
5
|
module Flexi
|
5
6
|
module Generators
|
@@ -22,4 +23,12 @@ module Erb
|
|
22
23
|
source_root File.expand_path("../templates", __FILE__)
|
23
24
|
end
|
24
25
|
end
|
26
|
+
end
|
27
|
+
|
28
|
+
module Rails
|
29
|
+
module Generators
|
30
|
+
class ScaffoldControllerGenerator
|
31
|
+
source_root File.expand_path("../templates", __FILE__)
|
32
|
+
end
|
33
|
+
end
|
25
34
|
end
|
@@ -0,0 +1,45 @@
|
|
1
|
+
<% if namespaced? -%>
|
2
|
+
require_dependency "<%= namespaced_file_path %>/application_controller"
|
3
|
+
<% end -%>
|
4
|
+
<% module_namespacing do -%>
|
5
|
+
class <%= controller_class_name %>Controller < ApplicationController
|
6
|
+
respond_to :html, :json
|
7
|
+
|
8
|
+
def index
|
9
|
+
@<%= plural_table_name %> = <%= orm_class.all(class_name) %>
|
10
|
+
respond_with(@<%= plural_table_name %>)
|
11
|
+
end
|
12
|
+
|
13
|
+
def show
|
14
|
+
@<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %>
|
15
|
+
respond_with(@<%= singular_table_name %>)
|
16
|
+
end
|
17
|
+
|
18
|
+
def new
|
19
|
+
@<%= singular_table_name %> = <%= orm_class.build(class_name) %>
|
20
|
+
respond_with(@<%= singular_table_name %>)
|
21
|
+
end
|
22
|
+
|
23
|
+
def edit
|
24
|
+
@<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %>
|
25
|
+
end
|
26
|
+
|
27
|
+
def create
|
28
|
+
@<%= singular_table_name %> = <%= orm_class.build(class_name, "params[:#{singular_table_name}]") %>
|
29
|
+
flash[:notice] = <%= "'#{human_name} was successfully created.'" %> if @<%= orm_instance.save %>
|
30
|
+
respond_with(@<%= singular_table_name %>)
|
31
|
+
end
|
32
|
+
|
33
|
+
def update
|
34
|
+
@<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %>
|
35
|
+
flash[:notice] = <%= "'#{human_name} was successfully updated.'" %> if @<%= orm_instance.update_attributes("params[:#{singular_table_name}]") %>
|
36
|
+
respond_with(@<%= singular_table_name %>)
|
37
|
+
end
|
38
|
+
|
39
|
+
def destroy
|
40
|
+
@<%= singular_table_name %> = <%= orm_class.find(class_name, "params[:id]") %>
|
41
|
+
@<%= orm_instance.destroy %>
|
42
|
+
respond_with(@<%= singular_table_name %>)
|
43
|
+
end
|
44
|
+
end
|
45
|
+
<% end -%>
|
data/lib/version.rb
CHANGED
data/vendor/assets/images/{glyphicons-halflings-white.png → flexi/glyphicons-halflings-white.png}
RENAMED
File without changes
|
File without changes
|