railstrap 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (143) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.rdoc +3 -0
  3. data/Rakefile +40 -0
  4. data/app/helpers/railstrap/application_helper.rb +260 -0
  5. data/config/routes.rb +2 -0
  6. data/lib/generators/railstrap/crud/USAGE +8 -0
  7. data/lib/generators/railstrap/crud/crud_generator.rb +160 -0
  8. data/lib/generators/railstrap/crud/templates/controller.rb +109 -0
  9. data/lib/generators/railstrap/crud/templates/view_edit.html.erb +12 -0
  10. data/lib/generators/railstrap/crud/templates/view_form.html.erb +18 -0
  11. data/lib/generators/railstrap/crud/templates/view_index.html.erb +11 -0
  12. data/lib/generators/railstrap/crud/templates/view_new.html.erb +12 -0
  13. data/lib/generators/railstrap/crud/templates/view_print.html.erb +13 -0
  14. data/lib/generators/railstrap/crud/templates/view_show.html.erb +14 -0
  15. data/lib/generators/railstrap/crud/templates/view_sidebar.html.erb +13 -0
  16. data/lib/generators/railstrap/crud/templates/view_signin.html.erb +36 -0
  17. data/lib/generators/railstrap/crud/templates/view_signup.html.erb +52 -0
  18. data/lib/generators/railstrap/crud/templates/view_text.html.erb +18 -0
  19. data/lib/generators/railstrap/install/install_generator.rb +74 -0
  20. data/lib/generators/railstrap/kaminari/templates/_first_page.html.erb +14 -0
  21. data/lib/generators/railstrap/kaminari/templates/_gap.html.erb +8 -0
  22. data/lib/generators/railstrap/kaminari/templates/_last_page.html.erb +14 -0
  23. data/lib/generators/railstrap/kaminari/templates/_next_page.html.erb +13 -0
  24. data/lib/generators/railstrap/kaminari/templates/_page.html.erb +12 -0
  25. data/lib/generators/railstrap/kaminari/templates/_paginator.html.erb +25 -0
  26. data/lib/generators/railstrap/kaminari/templates/_prev_page.html.erb +13 -0
  27. data/lib/generators/railstrap/layout/layout_generator.rb +30 -0
  28. data/lib/generators/railstrap/layout/templates/layout_railstrap.html.erb +134 -0
  29. data/lib/generators/railstrap/layout/templates/railstrap_painel.css.scss.erb +284 -0
  30. data/lib/generators/railstrap/layout/templates/railstrap_painel.js.erb +35 -0
  31. data/lib/railstrap.rb +9 -0
  32. data/lib/railstrap/action_controller.rb +29 -0
  33. data/lib/railstrap/active_record.rb +8 -0
  34. data/lib/railstrap/active_record/search.rb +52 -0
  35. data/lib/railstrap/engine.rb +29 -0
  36. data/lib/railstrap/version.rb +3 -0
  37. data/lib/tasks/railstrap_tasks.rake +4 -0
  38. data/test/dummy/README.rdoc +261 -0
  39. data/test/dummy/Rakefile +7 -0
  40. data/test/dummy/app/assets/javascripts/application.js +15 -0
  41. data/test/dummy/app/assets/javascripts/railstrap_painel.js +35 -0
  42. data/test/dummy/app/assets/stylesheets/application.css +13 -0
  43. data/test/dummy/app/assets/stylesheets/railstrap_painel.css.scss +284 -0
  44. data/test/dummy/app/controllers/application_controller.rb +7 -0
  45. data/test/dummy/app/controllers/painel/authors_controller.rb +84 -0
  46. data/test/dummy/app/helpers/application_helper.rb +2 -0
  47. data/test/dummy/app/models/article.rb +3 -0
  48. data/test/dummy/app/models/author.rb +3 -0
  49. data/test/dummy/app/views/layouts/application.html.erb +14 -0
  50. data/test/dummy/app/views/layouts/painel.html.erb +135 -0
  51. data/test/dummy/app/views/painel/authors/_form.html.erb +20 -0
  52. data/test/dummy/app/views/painel/authors/edit.html.erb +12 -0
  53. data/test/dummy/app/views/painel/authors/index.html.erb +12 -0
  54. data/test/dummy/app/views/painel/authors/new.html.erb +12 -0
  55. data/test/dummy/app/views/painel/authors/show.html.erb +14 -0
  56. data/test/dummy/config.ru +4 -0
  57. data/test/dummy/config/application.rb +56 -0
  58. data/test/dummy/config/boot.rb +10 -0
  59. data/test/dummy/config/database.yml +25 -0
  60. data/test/dummy/config/environment.rb +5 -0
  61. data/test/dummy/config/environments/development.rb +37 -0
  62. data/test/dummy/config/environments/production.rb +67 -0
  63. data/test/dummy/config/environments/test.rb +37 -0
  64. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  65. data/test/dummy/config/initializers/inflections.rb +15 -0
  66. data/test/dummy/config/initializers/mime_types.rb +5 -0
  67. data/test/dummy/config/initializers/secret_token.rb +7 -0
  68. data/test/dummy/config/initializers/session_store.rb +8 -0
  69. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  70. data/test/dummy/config/locales/en.yml +5 -0
  71. data/test/dummy/config/routes.rb +65 -0
  72. data/test/dummy/db/development.sqlite3 +0 -0
  73. data/test/dummy/db/migrate/20120604170000_create_articles.rb +12 -0
  74. data/test/dummy/db/migrate/20120604170057_create_authors.rb +10 -0
  75. data/test/dummy/db/schema.rb +31 -0
  76. data/test/dummy/log/development.log +3278 -0
  77. data/test/dummy/public/404.html +26 -0
  78. data/test/dummy/public/422.html +26 -0
  79. data/test/dummy/public/500.html +25 -0
  80. data/test/dummy/public/favicon.ico +0 -0
  81. data/test/dummy/script/rails +6 -0
  82. data/test/dummy/test/fixtures/articles.yml +13 -0
  83. data/test/dummy/test/fixtures/authors.yml +9 -0
  84. data/test/dummy/test/unit/article_test.rb +7 -0
  85. data/test/dummy/test/unit/author_test.rb +7 -0
  86. data/test/dummy/tmp/cache/assets/C86/B70/sprockets%2Fcd9a89973c62604382628d4b42365c1a +0 -0
  87. data/test/dummy/tmp/cache/assets/CB3/120/sprockets%2F0725460776a8a901aa58b85f4cce5456 +0 -0
  88. data/test/dummy/tmp/cache/assets/CDD/EE0/sprockets%2F7ab399ca754638905a70e366e1c1ab33 +0 -0
  89. data/test/dummy/tmp/cache/assets/CE2/EE0/sprockets%2Fd78ec4726951f44cb085d0db080960e3 +0 -0
  90. data/test/dummy/tmp/cache/assets/D09/2B0/sprockets%2F045947e6b2bba2ff33c67b51b63734a6 +0 -0
  91. data/test/dummy/tmp/cache/assets/D0B/A40/sprockets%2F241cecf5326c934ab0440a7c76ad7597 +0 -0
  92. data/test/dummy/tmp/cache/assets/D1D/870/sprockets%2Fa9e5ee43f30c1886f8d66c413395bd63 +0 -0
  93. data/test/dummy/tmp/cache/assets/D2B/DD0/sprockets%2Fddc372002f3306cc0d74fea616ed1138 +0 -0
  94. data/test/dummy/tmp/cache/assets/D46/920/sprockets%2F8f3c0c4bf52b27a6646e49751e4e8f0c +0 -0
  95. data/test/dummy/tmp/cache/assets/D72/0B0/sprockets%2F56e9ec06e41d1cf9d692d674b5ddb210 +0 -0
  96. data/test/dummy/tmp/cache/assets/D7C/A80/sprockets%2Fd2d9ec09fb9bc7f8a0758392420e5c7d +0 -0
  97. data/test/dummy/tmp/cache/assets/D7D/9D0/sprockets%2F28fea8457f4a95a2c2d34a6e77df509e +0 -0
  98. data/test/dummy/tmp/cache/assets/D98/3C0/sprockets%2F36f548ab10ebcf8badf47d2719bb8500 +0 -0
  99. data/test/dummy/tmp/cache/assets/DB6/7B0/sprockets%2F120aa322daea3a2aa3667ffd6931eb9b +0 -0
  100. data/test/dummy/tmp/cache/assets/DCB/E50/sprockets%2F89f6b8aeb7d09c0bad5151bab92e5f42 +0 -0
  101. data/test/dummy/tmp/cache/assets/DCF/B50/sprockets%2F5ef130bc93784a52897bbab7bbd4c8ea +0 -0
  102. data/test/dummy/tmp/cache/assets/DD4/B00/sprockets%2F518e3d3f425eccc9558a03f6ddd36ced +0 -0
  103. data/test/dummy/tmp/cache/assets/E53/040/sprockets%2Fb7edacfada15c14fe43ea3b5fc8e2463 +0 -0
  104. data/test/dummy/tmp/cache/sass/0c9acd3b93b1d41708045c7041c76bbf41b2e963/_bootstrap-responsive.scssc +997 -0
  105. data/test/dummy/tmp/cache/sass/0c9acd3b93b1d41708045c7041c76bbf41b2e963/_bootstrap.scssc +0 -0
  106. data/test/dummy/tmp/cache/sass/1ea5acef392f2f8c40312d480463a71d2049b360/railstrap_painel.css.scssc +0 -0
  107. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_accordion.scssc +0 -0
  108. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_alerts.scssc +0 -0
  109. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_breadcrumbs.scssc +0 -0
  110. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_button-groups.scssc +0 -0
  111. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_buttons.scssc +0 -0
  112. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_carousel.scssc +0 -0
  113. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_close.scssc +0 -0
  114. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_code.scssc +0 -0
  115. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_component-animations.scssc +0 -0
  116. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_dropdowns.scssc +0 -0
  117. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_forms.scssc +1494 -0
  118. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_grid.scssc +0 -0
  119. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_hero-unit.scssc +0 -0
  120. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_labels-badges.scssc +0 -0
  121. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_layouts.scssc +0 -0
  122. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_mixins.scssc +2620 -0
  123. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_modals.scssc +0 -0
  124. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_navbar.scssc +1209 -0
  125. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_navs.scssc +0 -0
  126. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_pager.scssc +0 -0
  127. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_pagination.scssc +0 -0
  128. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_popovers.scssc +0 -0
  129. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_progress-bars.scssc +0 -0
  130. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_reset.scssc +0 -0
  131. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_scaffolding.scssc +0 -0
  132. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_sprites.scssc +1064 -0
  133. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_tables.scssc +0 -0
  134. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_thumbnails.scssc +0 -0
  135. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_tooltip.scssc +0 -0
  136. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_type.scssc +0 -0
  137. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_utilities.scssc +0 -0
  138. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_variables.scssc +684 -0
  139. data/test/dummy/tmp/cache/sass/9891e82674b6910cebee3910c86e2ef69e96f15b/_wells.scssc +0 -0
  140. data/test/integration/navigation_test.rb +10 -0
  141. data/test/railstrap_test.rb +7 -0
  142. data/test/test_helper.rb +15 -0
  143. metadata +420 -0
@@ -0,0 +1,109 @@
1
+ <% module_namespacing do -%>
2
+ <%
3
+ model_nome = class_name.split('::')
4
+ controller_class_name = class_name
5
+ if model_nome.count > 1
6
+
7
+ ptbl_nome = plural_table_name.split('_')
8
+ tbl_nome = singular_table_name.split('_')
9
+ #
10
+ model_nome.shift
11
+
12
+ #model_nome
13
+ #
14
+ ptbl_nome.shift
15
+ ptbl_nome = ptbl_nome.join('_')
16
+ #
17
+ tbl_nome.shift
18
+ tbl_nome = tbl_nome.join('_')
19
+
20
+ else
21
+ model_nome = class_name
22
+ ptbl_nome = plural_table_name
23
+ tbl_nome = singular_table_name
24
+ end
25
+ %>
26
+ class <%= controller_class_name %>Controller < ApplicationController
27
+ # GET <%= route_url %>
28
+ # GET <%= route_url %>.json
29
+ def index
30
+ @<%= ptbl_nome %> = <%= tbl_nome.camelcase %>.tb_search(:search => {:text => params[:search],:fields => ['id']}, :page => params[:page])
31
+
32
+ respond_to do |format|
33
+ format.html # index.html.erb
34
+ format.json { render :json => <%= "@#{ptbl_nome}" %> }
35
+ end
36
+ end
37
+
38
+ # GET <%= route_url %>/1
39
+ # GET <%= route_url %>/1.json
40
+ def show
41
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.find(params[:id])
42
+
43
+ respond_to do |format|
44
+ format.html # show.html.erb
45
+ format.json { render :json => <%= "@#{tbl_nome}" %> }
46
+ end
47
+ end
48
+
49
+ # GET <%= route_url %>/new
50
+ # GET <%= route_url %>/new.json
51
+ def new
52
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.new
53
+
54
+ respond_to do |format|
55
+ format.html # new.html.erb
56
+ format.json { render :json => <%= "@#{tbl_nome}" %> }
57
+ end
58
+ end
59
+
60
+ # GET <%= route_url %>/1/edit
61
+ def edit
62
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.find(params[:id])
63
+ end
64
+
65
+ # POST <%= route_url %>
66
+ # POST <%= route_url %>.json
67
+ def create
68
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.new(params[:<%= tbl_nome %>])
69
+
70
+ respond_to do |format|
71
+ if @<%= tbl_nome %>.save
72
+ format.html { redirect_to <%=namespace_path%><%=tbl_nome%>_path(@<%= tbl_nome %>), :notice => <%= "'#{tbl_nome.camelcase} was successfully created.'" %> }
73
+ format.json { render :json => <%= "@#{tbl_nome}" %>, :status => :created, :location => <%= "@#{tbl_nome}" %> }
74
+ else
75
+ format.html { render :action => "new" }
76
+ format.json { render :json => <%= "@#{tbl_nome}" %>.errors , :status => :unprocessable_entity }
77
+ end
78
+ end
79
+ end
80
+
81
+ # PATCH/PUT <%= route_url %>/1
82
+ # PATCH/PUT <%= route_url %>/1.json
83
+ def update
84
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.find(params[:id])
85
+
86
+ respond_to do |format|
87
+ if @<%= tbl_nome%>.update_attributes(params[:<%=tbl_nome%>])
88
+ format.html { redirect_to <%=namespace_path%><%=tbl_nome%>_path(@<%= tbl_nome %>), :notice => <%= "'#{tbl_nome.camelcase} was successfully updated.'" %> }
89
+ format.json { head :ok }
90
+ else
91
+ format.html { render :action => "edit" }
92
+ format.json { render :json => <%= "@#{tbl_nome}" %>.errors, :status => :unprocessable_entity }
93
+ end
94
+ end
95
+ end
96
+
97
+ # DELETE <%= route_url %>/1
98
+ # DELETE <%= route_url %>/1.json
99
+ def destroy
100
+ @<%= tbl_nome %> = <%= tbl_nome.camelcase %>.find(params[:id])
101
+ @<%= tbl_nome%>.destroy
102
+
103
+ respond_to do |format|
104
+ format.html { redirect_to <%=namespace_path%><%=ptbl_nome%>_url }
105
+ format.json { head :ok }
106
+ end
107
+ end
108
+ end
109
+ <% end -%>
@@ -0,0 +1,12 @@
1
+
2
+ <%%= tb_fixed_toolbar("<%= plural_model_name.humanize %>", <%= namespace_path %><%= plural_resource_name %>_path) do %>
3
+ <%%= tb_submit_button_to @<%= resource_name %>%>
4
+ <%%= tb_cancel_button_to @<%= resource_name %> %>
5
+ <%%= tb_delete_button_to @<%= resource_name %> %>
6
+ <%% end %>
7
+
8
+ <%%= simple_form_for @<%= resource_name %>, :url => <%= namespace_path %><%= plural_resource_name %>_path(@<%= resource_name %>),:html => { :class => 'form-vertical', :id => '<%= resource_name %>' } do |f| %>
9
+
10
+ <%%= render :partial=>'form', :locals=>{:f=>f} %>
11
+
12
+ <%%end%>
@@ -0,0 +1,18 @@
1
+ <%% if f.error_notification %>
2
+ <div class="alert alert-error fade in">
3
+ <a class="close" data-dismiss="alert" href="#">&times;</a>
4
+ <%%= f.error_notification %>
5
+ </div>
6
+ <%% end %>
7
+
8
+
9
+ <% columns.each do |column| %>
10
+ <%%= f.input :<%= column.name %>, :input_html => { :readonly => @readonly, :disabled=>@readonly } %>
11
+ <% end %>
12
+
13
+ <%='<!--
14
+ <div class="form-actions">'%>
15
+ <%%= f.button :submit, :class => 'btn-primary' %>
16
+ <%%= submit_tag 'Cancel', :type => :reset, :class => "btn btn-danger" %>
17
+ <%='</div>
18
+ -->'%>
@@ -0,0 +1,11 @@
1
+ <%%= tb_fixed_toolbar("<%= plural_model_name.humanize %>", <%= namespace_path %><%= plural_resource_name %>_path) do %>
2
+ <%%= tb_add_button_to <%= resource_name.camelcase %> %>
3
+ <%%=tb_search_tool <%= resource_name.camelcase %> %>
4
+ <%%= paginate @<%= plural_resource_name %> %>
5
+ <%% end %>
6
+
7
+ <%%= tb_table_for @<%= plural_resource_name %>, :actions=>[:show,:edit,:delete] do -%>
8
+ <% columns.each do |col| -%><%% column :<%=col.name%>, :title=>"<%=col.name.humanize%>" %>
9
+ <% end %>
10
+ <%%end%>
11
+ <%%= paginate @<%= plural_resource_name %> %>
@@ -0,0 +1,12 @@
1
+
2
+ <%%= tb_fixed_toolbar("<%= plural_model_name.humanize %>", <%= namespace_path %><%= plural_resource_name %>_path) do %>
3
+ <%%= tb_submit_button_to @<%= resource_name %>%>
4
+ <%%= tb_cancel_button_to @<%= resource_name %> %>
5
+ <%% end %>
6
+
7
+
8
+ <%%= simple_form_for @<%= resource_name %>, :url => <%= namespace_path %><%= plural_resource_name %>_path,:html => { :class => 'form-vertical', :id => '<%= resource_name %>' } do |f| %>
9
+
10
+ <%%= render :partial=>'form', :locals=>{:f=>f} %>
11
+
12
+ <%%end%>
@@ -0,0 +1,13 @@
1
+ <%%=flexa_flash_message%>
2
+
3
+
4
+ <%%= semantic_form_for @<%= plural_resource_name %> do |f| %>
5
+
6
+ <%%= render :partial=>'form', :locals=>{:f=>f} %>
7
+
8
+ <%%= flexa_fixed_toolbar "<%= plural_model_name.humanize %>", <%= plural_resource_name %>_path do %>
9
+ <%%= flexa_submit_button "Imprimir" %>
10
+ <%%= flexa_cancel_button_to @<%= resource_name %> %>
11
+ <%%end%>
12
+
13
+ <%% end %>
@@ -0,0 +1,14 @@
1
+
2
+ <%%= tb_fixed_toolbar("<%= plural_model_name.humanize %>", <%= namespace_path %><%= plural_resource_name %>_path) do %>
3
+ <%%= tb_cancel_button_to @<%= resource_name %> %>
4
+ <%%= tb_edit_button_to @<%= resource_name %> %>
5
+ <%%= tb_delete_button_to @<%= resource_name %> %>
6
+ <%% end %>
7
+
8
+ <%% @readonly = true %>
9
+
10
+ <%%= simple_form_for @<%= resource_name %>, :url => '#',:html => { :class => 'form-vertical' } do |f| %>
11
+
12
+ <%%= render :partial=>'form', :locals=>{:f=>f} %>
13
+
14
+ <%%end%>
@@ -0,0 +1,13 @@
1
+ <div class="block notice">
2
+ <h3>Simple Block</h3>
3
+ <div class="content">
4
+ <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.</p>
5
+ </div>
6
+ </div>
7
+ <div class="block">
8
+ <h3>Links</h3>
9
+ <ul class="navigation">
10
+ <li><a href="#">Link 1</a></li>
11
+ <li><a href="#">Link 2</a></li>
12
+ </ul>
13
+ </div>
@@ -0,0 +1,36 @@
1
+ <h1><%= options[:app_name] %></h1>
2
+ <div class="block" id="block-login">
3
+ <h2>Login Box</h2>
4
+ <div class="content login">
5
+ <div class="flash">
6
+ <%% flash.each do |type, message| -%>
7
+ <div class="message <%%= type %>">
8
+ <p><%%= message %></p>
9
+ </div>
10
+ <%% end -%>
11
+ </div>
12
+ <%% form_tag({:action => :create}, :class => 'form login') do -%>
13
+ <div class="group wat-cf">
14
+ <div class="left">
15
+ <label class="label right">Login</label>
16
+ </div>
17
+ <div class="right">
18
+ <%%= text_field_tag :login, @login, :class => 'text_field' %>
19
+ </div>
20
+ </div>
21
+ <div class="group wat-cf">
22
+ <div class="left">
23
+ <label class="label right">Password</label>
24
+ </div>
25
+ <div class="right">
26
+ <%%= password_field_tag :password, nil, :class => 'text_field' %>
27
+ </div>
28
+ </div>
29
+ <div class="group navform wat-cf">
30
+ <div class="right">
31
+ <input type="submit" class="button" value="Sign in" />
32
+ </div>
33
+ </div>
34
+ <%% end -%>
35
+ </div>
36
+ </div>
@@ -0,0 +1,52 @@
1
+ <h1><%= options[:app_name] %></h1>
2
+ <div class="block" id="block-signup">
3
+ <h2>Sign up</h2>
4
+ <div class="content">
5
+ <div class="flash">
6
+ <%% flash.each do |type, message| -%>
7
+ <div class="message <%%= type %>">
8
+ <p><%%= message %></p>
9
+ </div>
10
+ <%% end -%>
11
+ </div>
12
+ <%% form_for :<%= resource_name %>, :url => <%= controller_routing_path %>_path, :html => { :class => 'form' } do |f| -%>
13
+ <div class="group wat-cf">
14
+ <div class="left">
15
+ <label class="label">Login</label>
16
+ </div>
17
+ <div class="right">
18
+ <%%= f.text_field :login, :class => 'text_field' %>
19
+ </div>
20
+ </div>
21
+ <div class="group wat-cf">
22
+ <div class="left">
23
+ <label class="label">Email</label>
24
+ </div>
25
+ <div class="right">
26
+ <%%= f.text_field :email, :class => 'text_field' %>
27
+ </div>
28
+ </div>
29
+ <div class="group wat-cf">
30
+ <div class="left">
31
+ <label class="label">Password</label>
32
+ </div>
33
+ <div class="right">
34
+ <%%= f.password_field :password, :class => 'text_field' %>
35
+ </div>
36
+ </div>
37
+
38
+ <div class="group">
39
+ <div class="left wat-cf">
40
+ <label class="label">Password</label>
41
+ </div>
42
+ <div class="right">
43
+ <%%= f.password_field :password_confirmation, :class => 'text_field' %>
44
+ </div>
45
+ </div>
46
+
47
+ <div class="group navform">
48
+ <input type="submit" class="button" value="Sign up" />
49
+ </div>
50
+ <%% end -%>
51
+ </div>
52
+ </div>
@@ -0,0 +1,18 @@
1
+ <div class="block" id="block-text">
2
+ <div class="content">
3
+ <h2 class="title"><%= resource_name.capitalize %></h2>
4
+ <div class="inner">
5
+ <p class="first">
6
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. <span class="hightlight">Excepteur sint occaecat cupidatat non proident</span>, sunt in culpa qui officia deserunt mollit anim id est laborum.
7
+ </p>
8
+ <p> <span class="small">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</span></p>
9
+ <p> <span class="gray">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore</span></p>
10
+ <hr />
11
+ <p>
12
+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. <span class="hightlight">Excepteur sint occaecat cupidatat non proident</span>, sunt in culpa qui officia deserunt mollit anim id est laborum.
13
+ </p>
14
+ </div>
15
+ </div>
16
+ </div>
17
+
18
+ <%% content_for :sidebar, render(:partial => 'sidebar') -%>
@@ -0,0 +1,74 @@
1
+ #install_generator.rb
2
+ # adicionar isso à meu template de layout
3
+ # <title><%= options.app_name %></title>
4
+ # <%%= stylesheet_link_tag "web_app_theme" %>
5
+ #
6
+
7
+ module Railstrap
8
+ class InstallGenerator < Rails::Generators::Base
9
+
10
+ argument :nested, :type => :string, :required => true
11
+ argument :campos, :type => :array, :required => true
12
+
13
+ source_root File.expand_path('../templates', __FILE__)
14
+
15
+ def initialize(args, *options)
16
+
17
+ super(args, *options)
18
+ initialize_views_variables
19
+ end
20
+
21
+ def generate_lookup
22
+ template "layout_railstrap.html.erb", File.join('app/views/layouts', "#{nested.singularize.underscore}.html.erb")
23
+ end
24
+
25
+ protected
26
+
27
+ def initialize_views_variables
28
+ @controller_file_path = extract_modules(name)
29
+ end
30
+
31
+ def extract_modules(name)
32
+ modules = name.include?('/') ? name.split('/') : name.split('::')
33
+ name = modules.pop
34
+ path = modules.map { |m| m.underscore }
35
+ file_path = (path + [name.underscore]).join('/')
36
+
37
+ file_path
38
+ end
39
+
40
+ end
41
+ end
42
+
43
+ module Railstrap
44
+ class ThemeGenerator < Rails::Generators::Base
45
+ desc "Instala um Layout para Administração e cria o arquivo railstrap_painel.css.scss"
46
+ source_root File.expand_path('../templates', __FILE__)
47
+
48
+ argument :layout_name, :type => :string, :default => 'application'
49
+
50
+ #class_option :theme, :type => :string, :default => :default, :desc => 'Specify the layout theme'
51
+ class_option :app_name, :type => :string, :default => 'Railstrap Painel', :desc => 'Specify the application name'
52
+ #class_option :engine, :type => :string, :default => 'erb', :desc => 'Specify the template engine'
53
+ class_option :no_layout, :type => :boolean, :default => false, :desc => 'Use this option if you want to generate only stylesheets'
54
+ class_option :layout_type, :type => :string, :default => 'admin', :desc => 'Layout type, admin or sign'
55
+
56
+ def copy_layout
57
+ return if options.no_layout
58
+ admin_layout_name = options.layout_type == 'sign' ? "layout_sign.html.erb" : "layout_admin.html.erb"
59
+ #case options.engine
60
+ #when 'erb'
61
+ template admin_layout_name, "app/views/layouts/#{layout_name.underscore}.html.erb"
62
+ #when 'haml'
63
+ # generate_haml_layout(admin_layout_name)
64
+ #end
65
+ end
66
+
67
+ def copy_theme_stylesheet
68
+ template "railstrap_painel.css.scss.erb", "app/assets/stylesheets/railstrap_painel.css.scss"
69
+ end
70
+
71
+
72
+
73
+ end
74
+ end
@@ -0,0 +1,14 @@
1
+ <%# Link to the "First" page
2
+ - available local variables
3
+ url: url to the first page
4
+ current_page: a page object for the currently displayed page
5
+ num_pages: total number of pages
6
+ per_page: number of items to fetch per page
7
+ remote: data-remote
8
+ -%>
9
+ <% unless current_page.first? %>
10
+ <li class="first">
11
+ <%= link_to_unless current_page.first?, raw(content_tag("i"," ",:class=>"icon-backward")
12
+ ), url, :remote => remote %>
13
+ </li>
14
+ <% end %>
@@ -0,0 +1,8 @@
1
+ <%# Non-link tag that stands for skipped pages...
2
+ - available local variables
3
+ current_page: a page object for the currently displayed page
4
+ num_pages: total number of pages
5
+ per_page: number of items to fetch per page
6
+ remote: data-remote
7
+ -%>
8
+ <li class="page gap disabled"><a href="#" onclick="return false;"><%= raw(t 'views.pagination.truncate') %></a></li>
@@ -0,0 +1,14 @@
1
+ <%# Link to the "Last" page
2
+ - available local variables
3
+ url: url to the last page
4
+ current_page: a page object for the currently displayed page
5
+ num_pages: total number of pages
6
+ per_page: number of items to fetch per page
7
+ remote: data-remote
8
+ -%>
9
+ <% unless current_page.last? %>
10
+ <li class="last next"><%# "next" class present for border styling in twitter bootstrap %>
11
+ <%= link_to_unless current_page.last?, raw(content_tag("i"," ",:class=>"icon-forward")
12
+ ), url, {:remote => remote} %>
13
+ </li>
14
+ <% end %>