r5 0.3.0.0 → 0.4.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.
- checksums.yaml +4 -4
- data/.gitignore +11 -0
- data/lib/r5/installations/app_with_bootstrap.rb +57 -0
- data/lib/r5/installations/default.rb +9 -8
- data/lib/r5/recipes/materialize.rb +56 -0
- data/lib/r5/starter.rb +3 -2
- data/lib/r5/template/app/views/layouts/application_bootstrap.html.erb +64 -0
- data/lib/r5/template/app/views/layouts/application_materialize.html.erb +54 -0
- data/lib/r5/template/lib/templates/erb/scaffold/_form.html.erb +12 -14
- data/lib/r5/template/lib/templates/erb/scaffold/edit.html.erb +1 -1
- data/lib/r5/template/lib/templates/erb/scaffold/index.html.erb +4 -5
- data/lib/r5/template/lib/templates/erb/scaffold/new.html.erb +1 -1
- data/lib/r5/template/lib/templates/erb/scaffold/show.html.erb +3 -5
- data/lib/r5/version.rb +1 -1
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 93af2608bcdfb8cbbc70ccbf21a8cd45e6f4280f
|
4
|
+
data.tar.gz: fbedfe5803fde6f4dcc74fadcfb316f7743f7ccc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 812e27657b6e13c66e464095a7494424a9bcf001cedd6882f7cfc9028fc4e30a3fadfb4162bda692d57ac359d0012a3c3784dda2594f13f749ec66b5209f5fcf
|
7
|
+
data.tar.gz: 31e1e90e0b7fea5a4de1ec028f8617ed88853b7d5da85225d9713ce83bddd59f38eed2553291b232552cbcb0f12d5d2c4e89f9b4ef7530b6ac6c7d65f1f2cfb9
|
data/.gitignore
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
# BOOTSRAP VERSION
|
2
|
+
copy '.ruby-version'
|
3
|
+
gsub_file "#{@project_path}/.ruby-version", /version/, RUBY_VERSION
|
4
|
+
apply 'recipes/gemfile.rb'
|
5
|
+
run 'bundle install'
|
6
|
+
|
7
|
+
copy 'config/initializers/html_helpers.rb'
|
8
|
+
copy 'config/locales/cs.yml'
|
9
|
+
copy 'app/assets/stylesheets/theme.css'
|
10
|
+
copy 'app/assets/stylesheets/custom.css.scss'
|
11
|
+
copy 'app/assets/stylesheets/timepress.css.scss'
|
12
|
+
copy 'app/assets/stylesheets/bootstrap-variables.scss'
|
13
|
+
copy 'app/assets/stylesheets/bootstrap-generators.scss'
|
14
|
+
|
15
|
+
remove 'app/views/layouts/application.html.erb'
|
16
|
+
copy 'app/views/layouts/application_bootstrap.html.erb', 'app/views/layouts/application.html.erb'
|
17
|
+
|
18
|
+
apply 'recipes/bootstrap_app.rb'
|
19
|
+
apply 'recipes/upload_app.rb'
|
20
|
+
gsub_file "#{@project_path}/lib/tasks/upload.rake", /PROJECT_DIR/, @project_name
|
21
|
+
|
22
|
+
insert_into_file "#{@project_path}/config/application.rb",
|
23
|
+
after: "class Application < Rails::Application\n" do <<-RUBY
|
24
|
+
config.assets.enabled = true
|
25
|
+
config.assets.precompile += %w()
|
26
|
+
config.i18n.default_locale = :cs
|
27
|
+
config.time_zone = 'Prague'
|
28
|
+
RUBY
|
29
|
+
end
|
30
|
+
|
31
|
+
apply 'recipes/mysql.rb'
|
32
|
+
apply 'recipes/rspec_generators.rb'
|
33
|
+
apply 'recipes/exception_notification.rb'
|
34
|
+
rake 'db:drop'
|
35
|
+
rake 'db:create'
|
36
|
+
|
37
|
+
apply 'recipes/devise.rb'
|
38
|
+
apply 'recipes/bootstrap.rb'
|
39
|
+
layout_file = "#{@project_path}/app/views/layouts/application.html.erb"
|
40
|
+
remove 'app/views/layouts/application.html.erb'
|
41
|
+
copy 'app/views/layouts/application.html.erb'
|
42
|
+
apply 'recipes/mail_settings.rb'
|
43
|
+
apply 'recipes/timepress_specifics.rb'
|
44
|
+
apply 'recipes/add_rack_mini_profiler.rb'
|
45
|
+
gsub_file layout_file, 'PROJECT_NAME', @project_name
|
46
|
+
apply 'recipes/gitignore.rb'
|
47
|
+
run 'git init'
|
48
|
+
run 'git add .'
|
49
|
+
run "git commit -a -m 'Initial commit'"
|
50
|
+
|
51
|
+
todo =
|
52
|
+
<<TEXT
|
53
|
+
Check mail configuration in config/environments/production.rb for your server
|
54
|
+
Check upload.rake task for your server
|
55
|
+
TEXT
|
56
|
+
|
57
|
+
say todo, :green
|
@@ -6,14 +6,15 @@ run 'bundle install'
|
|
6
6
|
|
7
7
|
copy 'config/initializers/html_helpers.rb'
|
8
8
|
copy 'config/locales/cs.yml'
|
9
|
-
copy 'app/assets/stylesheets/theme.css'
|
10
|
-
copy 'app/assets/stylesheets/custom.css.scss'
|
11
|
-
copy 'app/assets/stylesheets/timepress.css.scss'
|
12
|
-
|
13
|
-
copy 'app/assets/stylesheets/bootstrap-
|
9
|
+
# copy 'app/assets/stylesheets/theme.css'
|
10
|
+
# copy 'app/assets/stylesheets/custom.css.scss'
|
11
|
+
# copy 'app/assets/stylesheets/timepress.css.scss'
|
12
|
+
# only for bootstrap
|
13
|
+
#copy 'app/assets/stylesheets/bootstrap-variables.scss'
|
14
|
+
#copy 'app/assets/stylesheets/bootstrap-generators.scss'
|
14
15
|
|
15
|
-
remove 'app/views/layouts/application.html.erb'
|
16
|
-
copy 'app/views/layouts/application.html.erb'
|
16
|
+
#remove 'app/views/layouts/application.html.erb'
|
17
|
+
copy 'app/views/layouts/application_materialize.html.erb', 'application.html.erb'
|
17
18
|
|
18
19
|
apply 'recipes/bootstrap_app.rb'
|
19
20
|
apply 'recipes/upload_app.rb'
|
@@ -35,7 +36,7 @@ rake 'db:drop'
|
|
35
36
|
rake 'db:create'
|
36
37
|
|
37
38
|
apply 'recipes/devise.rb'
|
38
|
-
apply 'recipes/
|
39
|
+
apply 'recipes/materialize.rb'
|
39
40
|
layout_file = "#{@project_path}/app/views/layouts/application.html.erb"
|
40
41
|
remove 'app/views/layouts/application.html.erb'
|
41
42
|
copy 'app/views/layouts/application.html.erb'
|
@@ -0,0 +1,56 @@
|
|
1
|
+
run 'bundle install'
|
2
|
+
|
3
|
+
system "yarn add materialize-css jquery moment"
|
4
|
+
|
5
|
+
insert_into_file "#{@project_path}/app/assets/stylesheets/application.css",
|
6
|
+
before: "\n *= require_tree ." do <<-TXT
|
7
|
+
|
8
|
+
*= require materialize-css/dist/css/materialize
|
9
|
+
TXT
|
10
|
+
end
|
11
|
+
|
12
|
+
insert_into_file "#{@project_path}/app/assets/javascripts/application.js",
|
13
|
+
before: "\n//= require_tree ." do <<-TXT
|
14
|
+
|
15
|
+
//= require materialize-css/dist/js/materialize
|
16
|
+
//= require moment/min/moment-with-locales
|
17
|
+
TXT
|
18
|
+
end
|
19
|
+
|
20
|
+
insert_into_file "#{@project_path}/app/javascript/packs/application.js",
|
21
|
+
after: "console.log('Hello World from Webpacker')" do <<-JS
|
22
|
+
|
23
|
+
import jQuery from 'jquery'
|
24
|
+
window.jQuery = jQuery
|
25
|
+
|
26
|
+
let ready;
|
27
|
+
ready = function() {
|
28
|
+
$(".datepicker").datetimepicker({locale: 'cs', format: 'D. M. YYYY'});
|
29
|
+
};
|
30
|
+
// Fire javascript after turbolinks event
|
31
|
+
$(document).on('turbolinks:load', ready);
|
32
|
+
JS
|
33
|
+
end
|
34
|
+
|
35
|
+
insert_into_file "#{@project_path}/config/webpack/shared.js",
|
36
|
+
after: "new ManifestPlugin({ fileName: paths.manifest, publicPath, writeToFileEmit: true })
|
37
|
+
]," do <<-JS
|
38
|
+
|
39
|
+
resolve: {
|
40
|
+
alias: {
|
41
|
+
jquery: "jquery/src/jquery"
|
42
|
+
}
|
43
|
+
},
|
44
|
+
JS
|
45
|
+
end
|
46
|
+
|
47
|
+
insert_into_file "#{@project_path}/config/webpack/shared.js",
|
48
|
+
after: "new ExtractTextPlugin(env.NODE_ENV === 'production' ? '[name]-[hash].css' : '[name].css')," do <<-JS
|
49
|
+
|
50
|
+
new webpack.ProvidePlugin({
|
51
|
+
$: 'jquery',
|
52
|
+
jQuery: 'jquery',
|
53
|
+
jquery: 'jquery'
|
54
|
+
}),
|
55
|
+
JS
|
56
|
+
end
|
data/lib/r5/starter.rb
CHANGED
@@ -155,8 +155,9 @@ class Starter < Thor
|
|
155
155
|
[root_path + '/template', root_path]
|
156
156
|
end
|
157
157
|
|
158
|
-
def copy filename
|
159
|
-
|
158
|
+
def copy filename, destination_name=nil
|
159
|
+
new_name = destination_name ? destination_name : filename
|
160
|
+
copy_file filename, "#{@project_path}/#{new_name}"
|
160
161
|
end
|
161
162
|
|
162
163
|
def my_directory path
|
@@ -0,0 +1,64 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<title>PROJECT_NAME</title>
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
7
|
+
<meta name="description" content="">
|
8
|
+
<meta name="author" content="">
|
9
|
+
|
10
|
+
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
11
|
+
<!--[if lt IE 9]>
|
12
|
+
<%= javascript_include_tag "https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js", "https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js" %>
|
13
|
+
<![endif]-->
|
14
|
+
|
15
|
+
<%= javascript_pack_tag 'application' %>
|
16
|
+
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
|
17
|
+
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
|
18
|
+
<%= csrf_meta_tags %>
|
19
|
+
</head>
|
20
|
+
<body>
|
21
|
+
<div class="navbar navbar-default navbar-fixed-top">
|
22
|
+
<div class="container container-large">
|
23
|
+
<div class="navbar-header">
|
24
|
+
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
|
25
|
+
<span class="sr-only">Toggle navigation</span>
|
26
|
+
<span class="icon-bar"></span>
|
27
|
+
<span class="icon-bar"></span>
|
28
|
+
<span class="icon-bar"></span>
|
29
|
+
</button>
|
30
|
+
</div>
|
31
|
+
<% if current_user %>
|
32
|
+
<div class="collapse navbar-collapse">
|
33
|
+
<ul class="nav navbar-nav">
|
34
|
+
<%= menu_item 'example', '#', /example(?!new)/ %>
|
35
|
+
</ul>
|
36
|
+
<ul class="nav navbar-nav navbar-right">
|
37
|
+
<li id="fat-menu" class="dropdown">
|
38
|
+
<a href="#" role="button" class="dropdown-toggle" data-toggle="dropdown">
|
39
|
+
<i class="icon-user"></i> <%= 'Přihlášen' %>: <%= current_user.display_name %>
|
40
|
+
<i class="icon-caret-down"></i>
|
41
|
+
</a>
|
42
|
+
<ul class="dropdown-menu">
|
43
|
+
<li><%= link_to 'Změnit heslo', {controller: 'users', action: 'edit_own_password'} , :tabindex => -1 %></li>
|
44
|
+
<li class="divider"></li>
|
45
|
+
<li><%= link_to 'Odhlásit', destroy_user_session_path, :method => :delete %></li>
|
46
|
+
</ul>
|
47
|
+
</li>
|
48
|
+
</ul>
|
49
|
+
</div>
|
50
|
+
<% end %>
|
51
|
+
</div>
|
52
|
+
</div>
|
53
|
+
<div class="container container-large content">
|
54
|
+
<% flash.each do |name, msg| %>
|
55
|
+
<%= content_tag :div, :class => "alert alert-#{ name == :error ? "danger" : "success" } alert-dismissable" do %>
|
56
|
+
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
57
|
+
<%= msg %>
|
58
|
+
<% end %>
|
59
|
+
<% end %>
|
60
|
+
|
61
|
+
<%= yield %>
|
62
|
+
</div>
|
63
|
+
</body>
|
64
|
+
</html>
|
@@ -0,0 +1,54 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<title>PROJECT_NAME</title>
|
6
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
7
|
+
<meta name="description" content="">
|
8
|
+
<meta name="author" content="">
|
9
|
+
|
10
|
+
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
11
|
+
<!--[if lt IE 9]>
|
12
|
+
<%= javascript_include_tag "https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js", "https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js" %>
|
13
|
+
<![endif]-->
|
14
|
+
|
15
|
+
<%= javascript_pack_tag 'application' %>
|
16
|
+
<link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
|
17
|
+
<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
|
18
|
+
<%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
|
19
|
+
<%= csrf_meta_tags %>
|
20
|
+
</head>
|
21
|
+
<body>
|
22
|
+
<% if current_user %>
|
23
|
+
<ul id="user-details" class="dropdown-content">
|
24
|
+
<li><%= link_to 'Změnit heslo', {controller: 'users', action: 'edit_own_password'} , :tabindex => -1 %></li>
|
25
|
+
<li class="divider"></li>
|
26
|
+
<li><%= link_to 'Odhlásit', destroy_user_session_path, :method => :delete %></li>
|
27
|
+
</ul>
|
28
|
+
|
29
|
+
<nav>
|
30
|
+
<div class="nav-wrapper">
|
31
|
+
<a href="#" class="brand-logo right">Logo</a>
|
32
|
+
<ul id="nav-mobile" class="hide-on-med-and-down">
|
33
|
+
<%= menu_item 'example', '#', /example(?!new)/ %>
|
34
|
+
<li><a class="dropdown-button" href="#!" data-activates="user-details">
|
35
|
+
Přihlášen: <%= current_user.display_name %><i class="material-icons right">arrow_drop_down</i>
|
36
|
+
</a>
|
37
|
+
</li>
|
38
|
+
</ul>
|
39
|
+
</div>
|
40
|
+
</nav>
|
41
|
+
<% end %>
|
42
|
+
|
43
|
+
<div class="container container-large content">
|
44
|
+
<% flash.each do |name, msg| %>
|
45
|
+
<%= content_tag :div, :class => "alert alert-#{ name == :error ? "danger" : "success" } alert-dismissable" do %>
|
46
|
+
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
|
47
|
+
<%= msg %>
|
48
|
+
<% end %>
|
49
|
+
<% end %>
|
50
|
+
|
51
|
+
<%= yield %>
|
52
|
+
</div>
|
53
|
+
</body>
|
54
|
+
</html>
|
@@ -1,4 +1,4 @@
|
|
1
|
-
<%%= form_for(@<%= singular_table_name %>, html: { class: "
|
1
|
+
<%%= form_for(@<%= singular_table_name %>, html: { class: "col s12", role: "form" }) do |f| %>
|
2
2
|
<%% if @<%= singular_table_name %>.errors.any? %>
|
3
3
|
<div class="alert alert-danger alert-dismissable" role="alert">
|
4
4
|
<button type="button" class="close" data-dismiss="alert"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button>
|
@@ -13,25 +13,23 @@
|
|
13
13
|
<%% end %>
|
14
14
|
|
15
15
|
<% attributes.each do |attribute| -%>
|
16
|
-
<% if attribute.field_type == :
|
17
|
-
<div class="
|
18
|
-
|
19
|
-
|
20
|
-
<%%= f.
|
16
|
+
<% if attribute.field_type == :textarea %>
|
17
|
+
<div class="row">
|
18
|
+
<div class="input-field col s12">
|
19
|
+
<%%= f.text_area :<%= attribute.name %>, class: "materialize-textarea" %>
|
20
|
+
<%%= f.label :<%= attribute.name %> %>
|
21
21
|
</div>
|
22
22
|
</div>
|
23
23
|
<% else %>
|
24
|
-
<div class="
|
25
|
-
|
26
|
-
|
27
|
-
<%%= f
|
24
|
+
<div class="row">
|
25
|
+
<div class="input-field col s12">
|
26
|
+
<%%= f.text_field :<%= attribute.name %> %>
|
27
|
+
<%%= f.label :<%= attribute.name %> %>
|
28
28
|
</div>
|
29
29
|
</div>
|
30
30
|
<% end %>
|
31
31
|
<% end -%>
|
32
|
-
<div class="
|
33
|
-
|
34
|
-
<%%= f.submit 'Save', class: "btn btn-primary" %>
|
35
|
-
</div>
|
32
|
+
<div class="row">
|
33
|
+
<%%= f.submit 'Save', class: "waves-effect waves-light btn" %>
|
36
34
|
</div>
|
37
35
|
<%% end %>
|
@@ -1,13 +1,12 @@
|
|
1
|
-
<div
|
2
|
-
<%%= link_to new_<%= singular_table_name %>_path, class: '
|
3
|
-
<span class="glyphicon glyphicon-plus"></span>
|
1
|
+
<div>
|
2
|
+
<%%= link_to new_<%= singular_table_name %>_path, class: 'waves-effect waves-light btn' do %>
|
4
3
|
New <%= human_name %>
|
5
4
|
<%% end %>
|
6
5
|
<h1>Listing <%= plural_table_name %></h1>
|
7
6
|
</div>
|
8
7
|
|
9
|
-
<div
|
10
|
-
<table class="
|
8
|
+
<div>
|
9
|
+
<table class="bordered">
|
11
10
|
<thead>
|
12
11
|
<tr>
|
13
12
|
<% attributes.each do |attribute| -%>
|
@@ -1,10 +1,8 @@
|
|
1
|
-
<div
|
2
|
-
<%%= link_to <%= index_helper %>_path, class: '
|
3
|
-
<span class="glyphicon glyphicon-list-alt"></span>
|
1
|
+
<div>
|
2
|
+
<%%= link_to <%= index_helper %>_path, class: 'waves-effect waves-light btn' do %>
|
4
3
|
Back
|
5
4
|
<%% end %>
|
6
|
-
<%%= link_to edit_<%= singular_table_name %>_path(@<%= singular_table_name %>), class: '
|
7
|
-
<span class="glyphicon glyphicon-pencil"></span>
|
5
|
+
<%%= link_to edit_<%= singular_table_name %>_path(@<%= singular_table_name %>), class: 'waves-effect waves-light btn' do %>
|
8
6
|
Edit
|
9
7
|
<%% end %>
|
10
8
|
<h1>Show <%= singular_table_name %></h1>
|
data/lib/r5/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: r5
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mousse
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-10-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -62,6 +62,7 @@ executables:
|
|
62
62
|
extensions: []
|
63
63
|
extra_rdoc_files: []
|
64
64
|
files:
|
65
|
+
- ".gitignore"
|
65
66
|
- Gemfile
|
66
67
|
- README.md
|
67
68
|
- Rakefile
|
@@ -70,6 +71,7 @@ files:
|
|
70
71
|
- bin/setup
|
71
72
|
- lib/r5.rb
|
72
73
|
- lib/r5/config.rb
|
74
|
+
- lib/r5/installations/app_with_bootstrap.rb
|
73
75
|
- lib/r5/installations/default.rb
|
74
76
|
- lib/r5/installations/testing.rb
|
75
77
|
- lib/r5/odin.rb
|
@@ -83,6 +85,7 @@ files:
|
|
83
85
|
- lib/r5/recipes/install_questions.rb
|
84
86
|
- lib/r5/recipes/lazy_high_charts.rb
|
85
87
|
- lib/r5/recipes/mail_settings.rb
|
88
|
+
- lib/r5/recipes/materialize.rb
|
86
89
|
- lib/r5/recipes/mysql.rb
|
87
90
|
- lib/r5/recipes/rspec_generators.rb
|
88
91
|
- lib/r5/recipes/timepress_specifics.rb
|
@@ -105,6 +108,8 @@ files:
|
|
105
108
|
- lib/r5/template/app/assets/stylesheets/timepress.css.scss
|
106
109
|
- lib/r5/template/app/controllers/users_controller.rb
|
107
110
|
- lib/r5/template/app/views/layouts/application.html.erb
|
111
|
+
- lib/r5/template/app/views/layouts/application_bootstrap.html.erb
|
112
|
+
- lib/r5/template/app/views/layouts/application_materialize.html.erb
|
108
113
|
- lib/r5/template/app/views/users/_form.html.erb
|
109
114
|
- lib/r5/template/app/views/users/edit.html.erb
|
110
115
|
- lib/r5/template/app/views/users/edit_password.html.erb
|