r4 0.1.1
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 +7 -0
- data/Gemfile +4 -0
- data/README.md +64 -0
- data/Rakefile +2 -0
- data/bin/console +14 -0
- data/bin/r4 +4 -0
- data/bin/setup +7 -0
- data/lib/r4.rb +5 -0
- data/lib/r4/config.rb +12 -0
- data/lib/r4/installations/default.rb +44 -0
- data/lib/r4/installations/testing.rb +4 -0
- data/lib/r4/odin.rb +76 -0
- data/lib/r4/recipes/bootstrap.rb +9 -0
- data/lib/r4/recipes/bootstrap_app.rb +10 -0
- data/lib/r4/recipes/devise.rb +94 -0
- data/lib/r4/recipes/exception_notification.rb +10 -0
- data/lib/r4/recipes/gemfile.rb +34 -0
- data/lib/r4/recipes/gitignore.rb +8 -0
- data/lib/r4/recipes/install_questions.rb +20 -0
- data/lib/r4/recipes/lazy_high_charts.rb +18 -0
- data/lib/r4/recipes/mysql.rb +22 -0
- data/lib/r4/recipes/rspec_generators.rb +18 -0
- data/lib/r4/recipes/upload_app.rb +9 -0
- data/lib/r4/recipes/wicked_pdf.rb +35 -0
- data/lib/r4/recipes/xlsx_support.rb +6 -0
- data/lib/r4/starter.rb +116 -0
- data/lib/r4/template/.ruby-version +1 -0
- data/lib/r4/template/app/assets/javascripts/main.js.rb +11 -0
- data/lib/r4/template/app/assets/stylesheets/custom.css.scss +128 -0
- data/lib/r4/template/app/assets/stylesheets/main.css.scss +7 -0
- data/lib/r4/template/app/assets/stylesheets/theme.css +7089 -0
- data/lib/r4/template/app/assets/stylesheets/timepress.css.scss +127 -0
- data/lib/r4/template/app/controllers/users_controller.rb +106 -0
- data/lib/r4/template/app/views/layouts/application.html.erb +64 -0
- data/lib/r4/template/app/views/users/_form.html.erb +64 -0
- data/lib/r4/template/app/views/users/edit.html.erb +10 -0
- data/lib/r4/template/app/views/users/edit_password.html.erb +49 -0
- data/lib/r4/template/app/views/users/index.html.erb +36 -0
- data/lib/r4/template/app/views/users/index.json.jbuilder +4 -0
- data/lib/r4/template/app/views/users/new.html.erb +9 -0
- data/lib/r4/template/app/views/users/show.html.erb +14 -0
- data/lib/r4/template/app/views/users/show.json.jbuilder +1 -0
- data/lib/r4/template/config/initializers/html_helpers.rb +99 -0
- data/lib/r4/template/config/locales/cs.yml +307 -0
- data/lib/r4/template/lib/tasks/bootstrap.rake +20 -0
- data/lib/r4/template/lib/tasks/upload.rake +24 -0
- data/lib/r4/version.rb +3 -0
- data/r4.gemspec +29 -0
- metadata +136 -0
@@ -0,0 +1,14 @@
|
|
1
|
+
<div class="page-header">
|
2
|
+
<%= link_to users_path, :class => 'btn btn-default' do %>
|
3
|
+
<span class="glyphicon glyphicon-list-alt"></span>
|
4
|
+
Back
|
5
|
+
<% end %>
|
6
|
+
<%= link_to edit_user_path(@user), :class => 'btn btn-primary' do %>
|
7
|
+
<span class="glyphicon glyphicon-pencil"></span>
|
8
|
+
Edit
|
9
|
+
<% end %>
|
10
|
+
<h1>Show user</h1>
|
11
|
+
</div>
|
12
|
+
|
13
|
+
<dl class="dl-horizontal">
|
14
|
+
</dl>
|
@@ -0,0 +1 @@
|
|
1
|
+
json.extract! @user, :id, :created_at, :updated_at
|
@@ -0,0 +1,99 @@
|
|
1
|
+
module ApplicationHelper
|
2
|
+
|
3
|
+
def t_header name
|
4
|
+
header = t("activerecord.attributes.#{name}")
|
5
|
+
header[0] = header[0].upcase
|
6
|
+
header
|
7
|
+
end
|
8
|
+
|
9
|
+
# make long text short with '...'
|
10
|
+
def shorten text, length=20
|
11
|
+
return '' unless text.present?
|
12
|
+
res = text.scan /^(.{1,#{length}})(.*)/
|
13
|
+
"#{res[0][0]}#{res[0][1].present? ? '...' : ''}"
|
14
|
+
end
|
15
|
+
|
16
|
+
def num_warn condition
|
17
|
+
"num #{'warn' if condition}"
|
18
|
+
end
|
19
|
+
|
20
|
+
def records_filter
|
21
|
+
concat t('records') + ': ' +
|
22
|
+
select_tag('filter[per_page]', options_for_select(%w[30 50 100],
|
23
|
+
filter.params[:per_page]) ) + "\n"
|
24
|
+
end
|
25
|
+
|
26
|
+
def menu_item name, url, test
|
27
|
+
%Q{<li#{' class=active' if params[:controller]+params[:action]=~test }><a href="#{url}">#{ name }</a></li>}.html_safe
|
28
|
+
end
|
29
|
+
|
30
|
+
def dropdown_menu name, test, &block
|
31
|
+
out = %Q[<li #{"class='active'" if params[:controller] =~ /#{test}/} id='fat-menu' class='dropdown'>]
|
32
|
+
out += %Q[<a href="#" role="button" class="dropdown-toggle" data-toggle="dropdown">]
|
33
|
+
out += %Q[<i class="icon-user"></i>#{name}]
|
34
|
+
out += %Q[<i class="icon-caret-down"></i></a>]
|
35
|
+
out += %Q[<ul class="dropdown-menu">]
|
36
|
+
out += capture(&block)
|
37
|
+
out += %Q[</ul></li>]
|
38
|
+
out.html_safe
|
39
|
+
end
|
40
|
+
|
41
|
+
# same as I18n.l() but ignores nil
|
42
|
+
def lf date, options={}
|
43
|
+
l(date, options) if date
|
44
|
+
end
|
45
|
+
|
46
|
+
# selecting - yes, no, nil
|
47
|
+
def yes_no_select
|
48
|
+
[nil, [t('yes'), 'yes'], [t('no'), 'no'] ]
|
49
|
+
end
|
50
|
+
|
51
|
+
# same as I18n.l() but ignores nil
|
52
|
+
def lf date, options={}
|
53
|
+
options[:format] = options[:format].to_sym if options[:format]
|
54
|
+
I18n.l(date, options) if date
|
55
|
+
end
|
56
|
+
|
57
|
+
def num number, options={:precision=>2}
|
58
|
+
return number unless number.is_a? Numeric
|
59
|
+
return '' if options[:skip_zero] && number==0
|
60
|
+
number_with_precision( number, options )
|
61
|
+
end
|
62
|
+
|
63
|
+
def c_num number, precision=2, skip_zero=false
|
64
|
+
return '' if skip_zero && number==0
|
65
|
+
return number unless number.is_a? Float
|
66
|
+
number_with_precision( number, :precision=>precision, :delimiter => ' ')
|
67
|
+
# c_number_with_precision( number, precision )
|
68
|
+
end
|
69
|
+
|
70
|
+
def num3 number, skip_zero=false
|
71
|
+
c_num number, 3, skip_zero
|
72
|
+
end
|
73
|
+
|
74
|
+
def num2 number, skip_zero=false
|
75
|
+
c_num number, 2, skip_zero
|
76
|
+
end
|
77
|
+
|
78
|
+
def num0 number, skip_zero=false
|
79
|
+
return '' if skip_zero && number==0
|
80
|
+
return number if number.is_a? Fixnum
|
81
|
+
c_num number, 0, skip_zero
|
82
|
+
end
|
83
|
+
|
84
|
+
def numx number, precision=3, skip_zero=false
|
85
|
+
c_num number, precision, skip_zero
|
86
|
+
end
|
87
|
+
|
88
|
+
def delete_button objekt, text
|
89
|
+
link_to 'Odstranit', objekt, method: :delete, data: { confirm: text }, class: 'btn btn-danger pull-right' if params[:action] == 'edit'
|
90
|
+
end
|
91
|
+
|
92
|
+
def session_debug
|
93
|
+
"#{session['debug_params']}<br />#{link_to_function 'debug', "$('#debug_div').toggle()",
|
94
|
+
class: 'btn thin'}<hr class='separation'/><div class='box white spaced' id='debug_div'
|
95
|
+
style='display:none'>params:#{params.inspect}<br /><br />session#{session.inspect
|
96
|
+
}<br /><br />referrer:#{request.referrer}".html_safe if DEVEL && session['debug_params']
|
97
|
+
session['debug_params']=''
|
98
|
+
end
|
99
|
+
end
|
@@ -0,0 +1,307 @@
|
|
1
|
+
cs:
|
2
|
+
date:
|
3
|
+
abbr_day_names:
|
4
|
+
- Ne
|
5
|
+
- Po
|
6
|
+
- Út
|
7
|
+
- St
|
8
|
+
- Čt
|
9
|
+
- Pá
|
10
|
+
- So
|
11
|
+
abbr_month_names:
|
12
|
+
-
|
13
|
+
- led
|
14
|
+
- úno
|
15
|
+
- bře
|
16
|
+
- dub
|
17
|
+
- kvě
|
18
|
+
- čvn
|
19
|
+
- čvc
|
20
|
+
- srp
|
21
|
+
- zář
|
22
|
+
- říj
|
23
|
+
- lis
|
24
|
+
- pro
|
25
|
+
day_names:
|
26
|
+
- neděle
|
27
|
+
- pondělí
|
28
|
+
- úterý
|
29
|
+
- středa
|
30
|
+
- čtvrtek
|
31
|
+
- pátek
|
32
|
+
- sobota
|
33
|
+
formats:
|
34
|
+
default: ! '%d. %m. %Y'
|
35
|
+
long: ! '%d. %B %Y'
|
36
|
+
short: ! '%d %b'
|
37
|
+
pdf: ! '[%d/ %m/ %Y], [06:00] hodin'
|
38
|
+
pdf_en: ! '[%d/ %m/ %Y], [06:00] hours'
|
39
|
+
pdf_en_date: ! '[%d/ %m/ %Y]'
|
40
|
+
pdf_en_foot: ! '%d/ %m/ %Y'
|
41
|
+
month_names:
|
42
|
+
-
|
43
|
+
- leden
|
44
|
+
- únor
|
45
|
+
- březen
|
46
|
+
- duben
|
47
|
+
- květen
|
48
|
+
- červen
|
49
|
+
- červenec
|
50
|
+
- srpen
|
51
|
+
- září
|
52
|
+
- říjen
|
53
|
+
- listopad
|
54
|
+
- prosinec
|
55
|
+
order:
|
56
|
+
- :day
|
57
|
+
- :month
|
58
|
+
- :year
|
59
|
+
datetime:
|
60
|
+
distance_in_words:
|
61
|
+
about_x_hours:
|
62
|
+
one: asi hodinou
|
63
|
+
few: asi %{count} hodinami
|
64
|
+
other: asi %{count} hodinami
|
65
|
+
about_x_months:
|
66
|
+
one: asi měsícem
|
67
|
+
few: asi %{count} měsíci
|
68
|
+
other: asi %{count} měsíci
|
69
|
+
about_x_years:
|
70
|
+
one: asi rokem
|
71
|
+
few: asi %{count} roky
|
72
|
+
other: asi %{count} roky
|
73
|
+
almost_x_years:
|
74
|
+
one: téměř rokem
|
75
|
+
few: téměř %{count} roky
|
76
|
+
other: téměř %{count} roky
|
77
|
+
half_a_minute: půl minutou
|
78
|
+
less_than_x_minutes:
|
79
|
+
one: necelou minutou
|
80
|
+
few: ani ne %{count} minutami
|
81
|
+
other: ani ne %{count} minutami
|
82
|
+
less_than_x_seconds:
|
83
|
+
one: necelou sekundou
|
84
|
+
few: ani ne %{count} sekundami
|
85
|
+
other: ani ne %{count} sekundami
|
86
|
+
over_x_years:
|
87
|
+
one: více než rokem
|
88
|
+
few: více než %{count} roky
|
89
|
+
other: více než %{count} roky
|
90
|
+
x_days:
|
91
|
+
one: 24 hodinami
|
92
|
+
few: ! '%{count} dny'
|
93
|
+
other: ! '%{count} dny'
|
94
|
+
x_minutes:
|
95
|
+
one: minutou
|
96
|
+
few: ! '%{count} minutami'
|
97
|
+
other: ! '%{count} minutami'
|
98
|
+
x_months:
|
99
|
+
one: měsícem
|
100
|
+
few: ! '%{count} měsíci'
|
101
|
+
other: ! '%{count} měsíci'
|
102
|
+
x_seconds:
|
103
|
+
one: sekundou
|
104
|
+
few: ! '%{count} sekundami'
|
105
|
+
other: ! '%{count} sekundami'
|
106
|
+
prompts:
|
107
|
+
day: Den
|
108
|
+
hour: Hodina
|
109
|
+
minute: Minuta
|
110
|
+
month: Měsíc
|
111
|
+
second: Sekunda
|
112
|
+
year: Rok
|
113
|
+
errors:
|
114
|
+
format: ! '%{attribute} %{message}'
|
115
|
+
messages:
|
116
|
+
accepted: musí být potvrzeno
|
117
|
+
blank: je povinná položka
|
118
|
+
present: musí být prázdný/á/é
|
119
|
+
confirmation: nebylo potvrzeno
|
120
|
+
empty: nesmí být prázdný/á/é
|
121
|
+
equal_to: musí být rovno %{count}
|
122
|
+
even: musí být sudé číslo
|
123
|
+
exclusion: je vyhrazeno pro jiný účel
|
124
|
+
greater_than: musí být větší než %{count}
|
125
|
+
greater_than_or_equal_to: musí být větší nebo rovno %{count}
|
126
|
+
inclusion: není v seznamu povolených hodnot
|
127
|
+
invalid: není platná hodnota
|
128
|
+
less_than: musí být méně než %{count}
|
129
|
+
less_than_or_equal_to: musí být méně nebo rovno %{count}
|
130
|
+
not_a_number: není číslo
|
131
|
+
not_an_integer: musí být celé číslo
|
132
|
+
odd: musí být liché číslo
|
133
|
+
record_invalid: ! 'Validace je neúspešná: %{errors}'
|
134
|
+
restrict_dependent_destroy:
|
135
|
+
one: "Nemůžu smazat položku protože existuje závislá/ý/é %{record}"
|
136
|
+
many: "Nemůžu smazat položku protože existuje závislé/ý %{record}"
|
137
|
+
taken: již databáze obsahuje
|
138
|
+
too_long: je příliš dlouhý/á/é (max. %{count} znaků)
|
139
|
+
too_short: je příliš krátký/á/é (min. %{count} znaků)
|
140
|
+
wrong_length: nemá správnou délku (očekáváno %{count} znaků)
|
141
|
+
other_than: "musí být rozdílný/á/é od %{count}"
|
142
|
+
template:
|
143
|
+
body: ! 'Následující pole obsahují chybně vyplněné údaje: '
|
144
|
+
header:
|
145
|
+
one: Při ukládání objektu %{model} došlo k chybám a nebylo jej možné uložit
|
146
|
+
few: Při ukládání objektu %{model} došlo ke %{count} chybám a nebylo možné
|
147
|
+
jej uložit
|
148
|
+
other: Při ukládání objektu %{model} došlo ke %{count} chybám a nebylo možné
|
149
|
+
jej uložit
|
150
|
+
helpers:
|
151
|
+
select:
|
152
|
+
prompt: Prosím vyberte si
|
153
|
+
submit:
|
154
|
+
create: Vytvořit %{model}
|
155
|
+
submit: Uložit %{model}
|
156
|
+
update: Aktualizovat %{model}
|
157
|
+
number:
|
158
|
+
currency:
|
159
|
+
format:
|
160
|
+
delimiter: ! ' '
|
161
|
+
format: ! '%n %u'
|
162
|
+
precision: 2
|
163
|
+
separator: ! ','
|
164
|
+
significant: false
|
165
|
+
strip_insignificant_zeros: false
|
166
|
+
unit: Kč
|
167
|
+
format:
|
168
|
+
delimiter: ! '.'
|
169
|
+
precision: 3
|
170
|
+
separator: ','
|
171
|
+
significant: false
|
172
|
+
strip_insignificant_zeros: false
|
173
|
+
human:
|
174
|
+
decimal_units:
|
175
|
+
format: ! '%n %u'
|
176
|
+
units:
|
177
|
+
billion: Miliarda
|
178
|
+
million: Milion
|
179
|
+
quadrillion: Kvadrilion
|
180
|
+
thousand: Tisíc
|
181
|
+
trillion: Bilion
|
182
|
+
unit: ''
|
183
|
+
format:
|
184
|
+
delimiter: ''
|
185
|
+
precision: 1
|
186
|
+
significant: false
|
187
|
+
strip_insignificant_zeros: false
|
188
|
+
storage_units:
|
189
|
+
format: ! '%n %u'
|
190
|
+
units:
|
191
|
+
byte: B
|
192
|
+
gb: GB
|
193
|
+
kb: KB
|
194
|
+
mb: MB
|
195
|
+
tb: TB
|
196
|
+
percentage:
|
197
|
+
format:
|
198
|
+
delimiter: ''
|
199
|
+
format: "%n%"
|
200
|
+
precision:
|
201
|
+
format:
|
202
|
+
delimiter: ''
|
203
|
+
support:
|
204
|
+
array:
|
205
|
+
last_word_connector: ! ' a '
|
206
|
+
two_words_connector: ! ' a '
|
207
|
+
words_connector: ! ', '
|
208
|
+
time:
|
209
|
+
am: am
|
210
|
+
formats:
|
211
|
+
default: ! '%a %d. %B %Y %H:%M %z'
|
212
|
+
long: ! '%A %d. %B %Y %H:%M'
|
213
|
+
short: ! '%d. %m. %H:%M'
|
214
|
+
pm: pm
|
215
|
+
|
216
|
+
activerecord:
|
217
|
+
errors:
|
218
|
+
models:
|
219
|
+
user:
|
220
|
+
attributes:
|
221
|
+
password_confirmation:
|
222
|
+
confirmation: 'Hesla nesouhlasí.'
|
223
|
+
password:
|
224
|
+
too_short: 'Zvolené heslo je příliš krátké. Minimum je 6 znaků.'
|
225
|
+
current_password:
|
226
|
+
invalid: 'Současné heslo bylo zadáno chybně.'
|
227
|
+
email:
|
228
|
+
invalid: 'Zadali jste neplatný e-mail.'
|
229
|
+
taken: 'V systému již existuje uživatel se stejným e-mailem.'
|
230
|
+
|
231
|
+
|
232
|
+
#
|
233
|
+
# Czech translation for Devise - config/locales/devise.cz.yml
|
234
|
+
# 'cs' locale by https://github.com/bver
|
235
|
+
# Feel free to correct my translation.
|
236
|
+
#
|
237
|
+
# Note: devise.failure.invalid was intentionally changed from "email" to "identity" -
|
238
|
+
# - not all configurations use config.authentication_keys = [ :email ]
|
239
|
+
#
|
240
|
+
# Additional translations at http://github.com/plataformatec/devise/wiki/I18n
|
241
|
+
|
242
|
+
|
243
|
+
errors:
|
244
|
+
messages:
|
245
|
+
expired: "vypršel, požádejte prosím o nový"
|
246
|
+
not_found: "nenalezen"
|
247
|
+
already_confirmed: "byl již potvrzen, prosím, zkuste se přihlásit"
|
248
|
+
not_locked: "nebyl uzamčen"
|
249
|
+
not_saved:
|
250
|
+
one: "%{resource} nebyl uložen kvůli chybě:"
|
251
|
+
other: "%{resource} nebyl uložen kvůli %{count} chybám:"
|
252
|
+
confirmation_period_expired: "musí být potvrzen během %{period}, požádejte prosím o nový"
|
253
|
+
|
254
|
+
devise:
|
255
|
+
failure:
|
256
|
+
already_authenticated: 'Přihlášení již proběhlo.'
|
257
|
+
unauthenticated: 'Musíte se zaregistrovat nebo přihlásit, pak můžete pokračovat.'
|
258
|
+
unconfirmed: 'Musíte potvrdit svůj účet, pak můžete pokračovat.'
|
259
|
+
locked: 'Váš účet je uzamčen.'
|
260
|
+
not_found_in_database: 'Neplatný e-mail nebo heslo.'
|
261
|
+
invalid: 'Neplatný e-mail nebo heslo.'
|
262
|
+
invalid_token: 'Neplatný ověřovací symbol.'
|
263
|
+
timeout: 'Vaše relace vypršela, přihlašte se prosím znovu, pak můžete pokračovat.'
|
264
|
+
inactive: 'Váš účet ještě nebyl aktivován.'
|
265
|
+
sessions:
|
266
|
+
signed_in: 'Přihlášení úspěšné.'
|
267
|
+
signed_out: 'Odhlášení úspěšné.'
|
268
|
+
passwords:
|
269
|
+
send_instructions: 'Za několik minut obdržíte email s instrukcemi k nastavení nového hesla.'
|
270
|
+
updated: 'Vaše heslo bylo úspěšně změněno. Nyní jste přihlášen(a).'
|
271
|
+
updated_not_active: 'Vaše heslo bylo změněno.'
|
272
|
+
send_paranoid_instructions: "Pokud je e-mailová adresa v naší databázi, obdržíte na ni e-mail pro obnovení hesla."
|
273
|
+
no_token: "Tato stránka je přístupná pouze přes e-mail k obnovení hesla. Pokud jste se na stránku dostali z e-mailu pro obnovení hesla, zkontrolujte prosím, zda jste použili celou adresu."
|
274
|
+
confirmations:
|
275
|
+
send_instructions: 'Za několik minut obdržíte email s instrukcemi k potvrzení vašeho účtu.'
|
276
|
+
send_paranoid_instructions: 'Pokud je e-mailová adresa v naší databázi, obdržíte na ní instrukce pro potvrzení vašeho účtu.'
|
277
|
+
confirmed: 'Váš účet byl úspěšně potvrzen. Nyní jste přihlášen(a).'
|
278
|
+
registrations:
|
279
|
+
signed_up: 'Vítejte! Registrace byla úspěšná.'
|
280
|
+
signed_up_but_unconfirmed: 'Na váš email by měla přijít zpráva s odkazem pro aktivaci účtu.'
|
281
|
+
signed_up_but_inactive: 'Registrace byla úspěšná. Nicméně se nemůžete přihlásit, protože váš účet dosud nebyl aktivován.'
|
282
|
+
signed_up_but_locked: 'Registrace byla úspěšná. Nicméně se nemůžete přihlásit, protože váš účet je uzamčen.'
|
283
|
+
updated: 'Váš účet byl úspěšně aktualizován.'
|
284
|
+
update_needs_confirmation: "Váš účet byl aktualizován, nicméně musíme ověřit vaši adresu e-mailu. Poslali jsme vám e-mail s odkazem, použijte jej prosím pro potvrzení změny e-mailové adresy."
|
285
|
+
destroyed: 'Nashle! Váš účet byl úspěšně zrušen. Doufáme, že se brzy opět uvidíme.'
|
286
|
+
unlocks:
|
287
|
+
send_instructions: 'Za několik minut obdržíte email s instrukcemi, jak odemknout svůj účet.'
|
288
|
+
unlocked: 'Váš účet byl úspěšně odemknut. Nyní jste přihlášen(a).'
|
289
|
+
send_paranoid_instructions: 'Pokud váš účet existuje, obdržíte e-mail s instrukcemi pro jeho odemčení.'
|
290
|
+
omniauth_callbacks:
|
291
|
+
success: 'Úspěšná autorizace z účtu %{kind}.'
|
292
|
+
failure: 'Není možné autorizovat z %{kind}, protože: "%{reason}".'
|
293
|
+
mailer:
|
294
|
+
confirmation_instructions:
|
295
|
+
subject: 'Instrukce pro potvrzení účtu'
|
296
|
+
reset_password_instructions:
|
297
|
+
subject: 'Instrukce k nastavení nového hesla'
|
298
|
+
unlock_instructions:
|
299
|
+
subject: 'Instrukce k odemknutí účtu'
|
300
|
+
|
301
|
+
Action: 'Akce'
|
302
|
+
New: 'Nový'
|
303
|
+
Edit: 'Změnit'
|
304
|
+
Destroy: 'Smazat'
|
305
|
+
Save: 'Uložit'
|
306
|
+
Show: 'Zobrazit'
|
307
|
+
Back: 'Zpět'
|
@@ -0,0 +1,20 @@
|
|
1
|
+
namespace :app do
|
2
|
+
desc 'Bootstrap the application -- create admin/admin user, migrate database, etc'
|
3
|
+
task :bootstrap => :environment do
|
4
|
+
|
5
|
+
`rake db:migrate`
|
6
|
+
puts '* Migrated database'
|
7
|
+
|
8
|
+
u = User.new :login => "ADMIN_LOGIN",
|
9
|
+
:password => "ADMIN_PASSWORD",
|
10
|
+
:password_confirmation => "ADMIN_PASSWORD",
|
11
|
+
:email => "ADMIN_EMAIL",
|
12
|
+
:lastname => "ADMIN_LASTNAME"
|
13
|
+
u.admin = true
|
14
|
+
u.save
|
15
|
+
puts '* Created default *** INSECURE *** account.'
|
16
|
+
end
|
17
|
+
|
18
|
+
task :seed do
|
19
|
+
end
|
20
|
+
end
|