refinerycms-core 2.0.8 → 2.0.9
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.
- data/app/assets/javascripts/refinery/admin.js.erb +3 -0
- data/app/assets/javascripts/wymeditor/functions.js.erb +1 -1
- data/app/assets/javascripts/wymeditor/lang/{zh_cn.js → zh-CN.js} +1 -1
- data/app/assets/javascripts/wymeditor/prototypes.js.erb +1 -1
- data/app/assets/stylesheets/refinery/layout.css.scss +26 -0
- data/app/views/refinery/admin/_image_picker.html.erb +1 -1
- data/app/views/refinery/admin/_resource_picker.html.erb +19 -21
- data/config/locales/es.yml +2 -2
- data/config/locales/fr.yml +9 -1
- data/lib/generators/refinery/cms/cms_generator.rb +6 -4
- data/lib/generators/refinery/core/templates/config/initializers/refinery/core.rb.erb +1 -0
- data/lib/generators/refinery/engine/engine_generator.rb +9 -3
- data/lib/generators/refinery/engine/templates/Gemfile +1 -0
- data/lib/generators/refinery/engine/templates/config/locales/zh-CN.yml +30 -0
- data/lib/generators/refinery/form/form_generator.rb +11 -7
- data/lib/generators/refinery/form/templates/config/locales/da.yml +60 -63
- data/lib/generators/refinery/form/templates/config/locales/de.yml +68 -68
- data/lib/generators/refinery/form/templates/config/locales/es.yml +60 -64
- data/lib/generators/refinery/form/templates/config/locales/fr.yml +68 -68
- data/lib/generators/refinery/form/templates/config/locales/it.yml +60 -62
- data/lib/generators/refinery/form/templates/config/locales/lv.yml +67 -67
- data/lib/generators/refinery/form/templates/config/locales/nb.yml +68 -71
- data/lib/generators/refinery/form/templates/config/locales/nl.yml +65 -64
- data/lib/generators/refinery/form/templates/config/locales/pt-BR.yml +68 -68
- data/lib/generators/refinery/form/templates/config/locales/ru.yml +70 -73
- data/lib/generators/refinery/form/templates/config/locales/sl.yml +61 -63
- data/lib/generators/refinery/form/templates/config/locales/zh-CN.yml +77 -3
- data/lib/refinery/application_controller.rb +1 -1
- data/lib/refinery/cli.rb +1 -1
- data/lib/refinery/core/engine.rb +2 -1
- data/lib/refinery/crud.rb +1 -1
- data/lib/refinery/extension_generation.rb +26 -14
- data/lib/refinery/version.rb +1 -1
- data/refinerycms-core.gemspec +1 -1
- data/spec/lib/generators/refinery/engine/engine_generator_multiple_resources_spec.rb +51 -0
- data/spec/lib/generators/refinery/engine/engine_generator_sanity_check_spec.rb +47 -0
- data/spec/lib/generators/refinery/engine/engine_generator_spec.rb +0 -12
- data/spec/lib/refinery/crud_spec.rb +2 -2
- metadata +11 -8
@@ -1,80 +1,77 @@
|
|
1
1
|
ru:
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
refinery:
|
3
|
+
plugins:
|
4
|
+
<%= plural_name %>:
|
5
|
+
title: <%= plural_name.titleize %>
|
6
|
+
<%= namespacing.underscore %>:
|
7
|
+
<%= plural_name %>:
|
8
|
+
new:
|
9
|
+
header_message: "Упс. Возникла небольшая проблемка."
|
10
|
+
message: "Нужно исправить следующие ошибки:"
|
11
|
+
send: "Отправить сообщение"
|
12
|
+
privacy_policy: "Мы относимся с уважением к вашим личным данным"
|
13
|
+
admin:
|
14
|
+
<%= plural_name %>:
|
15
|
+
<%= singular_name %>:
|
16
|
+
move_<%= singular_name %>_to_closed: "Переместить этот запрос в закрытые"
|
17
|
+
move_<%= singular_name %>_to_open: "Переместить этот запрос в открытые"
|
18
|
+
read_<%= singular_name %>: "Прочитать запрос"
|
19
|
+
remove_<%= singular_name %>: "Вы уверены, что хотите удалить запрос от '%{name}'?"
|
20
|
+
title: <%= plural_name.titleize %>
|
21
|
+
said: "пишет"
|
22
|
+
mark_as_spam: "Пометить как спам"
|
23
|
+
mark_as_ham: "Переместить во Входящие"
|
24
|
+
toggle_status:
|
25
|
+
closed: "Запрос '%{<%= singular_name %>}' закрыт"
|
26
|
+
reopened: "Запрос '%{<%= singular_name %>}' открыт заново"
|
27
|
+
submenu:
|
28
|
+
inbox: "Входящие"
|
29
|
+
spam: "Спам"
|
30
|
+
update_notified: Изменить получателей уведомлений
|
31
|
+
edit_confirmation_email: "Редактировать письмо-подтверждение"
|
32
|
+
index:
|
33
|
+
no_<%= plural_name %>: "Вы еще не получили ни одного запроса."
|
34
|
+
spam:
|
35
|
+
no_spam: "Ура! Вы не получили спам."
|
36
|
+
show:
|
37
|
+
details: "Подробности"
|
38
|
+
click_to_email: "Нажмите, чтобы отправить"
|
39
|
+
status: "Статус"
|
40
|
+
open: "Открыт"
|
41
|
+
closed: "Закрыт"
|
42
|
+
age: "Срок"
|
43
|
+
actions: "Действия"
|
44
|
+
back_to_all_<%= plural_name %>: "Назад ко всем запросам"
|
45
|
+
spam: "Спам"
|
46
|
+
spam_yes: 'да'
|
47
|
+
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
48
|
+
title: <%= plural_name.titleize %>
|
49
|
+
settings:
|
50
|
+
update:
|
51
|
+
updated: "'%{setting}' были успешно обновлены."
|
52
|
+
notification_recipients_form:
|
53
|
+
settings_value_name: "Отправить уведомления"
|
54
|
+
explanation: "Каждый раз, когда кто-то связывается с вами посредством вашего сайта, Refinery CMS отправляет уведомление на электронную почту."
|
55
|
+
hint: "Когда поступит новый запрос, Refinery CMS отправит вам уведомление на электронную почту."
|
56
|
+
example: "Введите адрес(а) электронной почты через запятую: anna@mail.ru, ivanov@yandex.ru"
|
57
|
+
confirmation_email_form:
|
58
|
+
to: "Кому"
|
59
|
+
from: "От"
|
60
|
+
subject: "Тема сообщения"
|
61
|
+
click_to_edit_subject: "Редактировать тему сообщения"
|
62
|
+
explanation: "Каждый раз, когда кто-то связывается с вами посредством вашего сайта, Refinery CMS отправляет ему письмо, подтверждающее принятие запроса."
|
63
|
+
below_edit_email_sent: Ниже вы можете отредактировать отсылаемое письмо
|
64
|
+
the_customer_making_<%= singular_name %>: "Клиент, делающий запрос"
|
65
|
+
message: "Сообщение"
|
66
|
+
note: "Примечание: поместите текст %name% там, где вы хотите, чтобы появилось имя клиента."
|
67
|
+
subject_form:
|
68
|
+
subject_value_name: "Тема сообщения"
|
5
69
|
activerecord:
|
6
70
|
models:
|
7
71
|
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
8
72
|
setting: "Настройки запроса"
|
9
73
|
attributes:
|
10
74
|
<%= singular_name %>:
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
phone: "Телефон"
|
15
|
-
date: "Дата"
|
16
|
-
message: "Сообщение"
|
17
|
-
<%= namespacing.underscore %>:
|
18
|
-
<%= plural_name %>:
|
19
|
-
new:
|
20
|
-
header_message: "Упс. Возникла небольшая проблемка."
|
21
|
-
message: "Нужно исправить следующие ошибки:"
|
22
|
-
send: "Отправить сообщение"
|
23
|
-
privacy_policy: "Мы относимся с уважением к вашим личным данным"
|
24
|
-
admin:
|
25
|
-
<%= plural_name %>:
|
26
|
-
<%= singular_name %>:
|
27
|
-
move_<%= singular_name %>_to_closed: "Переместить этот запрос в закрытые"
|
28
|
-
move_<%= singular_name %>_to_open: "Переместить этот запрос в открытые"
|
29
|
-
read_<%= singular_name %>: "Прочитать запрос"
|
30
|
-
remove_<%= singular_name %>: "Вы уверены, что хотите удалить запрос от '%{name}'?"
|
31
|
-
title: <%= plural_name.titleize %>
|
32
|
-
said: "пишет"
|
33
|
-
mark_as_spam: "Пометить как спам"
|
34
|
-
mark_as_ham: "Переместить во Входящие"
|
35
|
-
toggle_status:
|
36
|
-
closed: "Запрос '%{<%= singular_name %>}' закрыт"
|
37
|
-
reopened: "Запрос '%{<%= singular_name %>}' открыт заново"
|
38
|
-
submenu:
|
39
|
-
inbox: "Входящие"
|
40
|
-
spam: "Спам"
|
41
|
-
update_notified: Изменить получателей уведомлений
|
42
|
-
edit_confirmation_email: "Редактировать письмо-подтверждение"
|
43
|
-
index:
|
44
|
-
search_results_for: "Найти результаты для %{query}"
|
45
|
-
no_<%= plural_name %>: "Вы еще не получили ни одного запроса."
|
46
|
-
spam:
|
47
|
-
no_spam: "Ура! Вы не получили спам."
|
48
|
-
show:
|
49
|
-
details: "Подробности"
|
50
|
-
click_to_email: "Нажмите, чтобы отправить"
|
51
|
-
status: "Статус"
|
52
|
-
open: "Открыт"
|
53
|
-
closed: "Закрыт"
|
54
|
-
age: "Срок"
|
55
|
-
actions: "Действия"
|
56
|
-
back_to_all_<%= plural_name %>: "Назад ко всем запросам"
|
57
|
-
spam: "Спам"
|
58
|
-
spam_yes: 'да'
|
59
|
-
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
60
|
-
title: <%= plural_name.titleize %>
|
61
|
-
settings:
|
62
|
-
update:
|
63
|
-
updated: "'%{setting}' были успешно обновлены."
|
64
|
-
notification_recipients_form:
|
65
|
-
settings_value_name: "Отправить уведомления"
|
66
|
-
explanation: "Каждый раз, когда кто-то связывается с вами посредством вашего сайта, Refinery CMS отправляет уведомление на электронную почту."
|
67
|
-
hint: "Когда поступит новый запрос, Refinery CMS отправит вам уведомление на электронную почту."
|
68
|
-
example: "Введите адрес(а) электронной почты через запятую: anna@mail.ru, ivanov@yandex.ru"
|
69
|
-
confirmation_email_form:
|
70
|
-
to: "Кому"
|
71
|
-
from: "От"
|
72
|
-
subject: "Тема сообщения"
|
73
|
-
click_to_edit_subject: "Редактировать тему сообщения"
|
74
|
-
explanation: "Каждый раз, когда кто-то связывается с вами посредством вашего сайта, Refinery CMS отправляет ему письмо, подтверждающее принятие запроса."
|
75
|
-
below_edit_email_sent: Ниже вы можете отредактировать отсылаемое письмо
|
76
|
-
the_customer_making_<%= singular_name %>: "Клиент, делающий запрос"
|
77
|
-
message: "Сообщение"
|
78
|
-
note: "Примечание: поместите текст %name% там, где вы хотите, чтобы появилось имя клиента."
|
79
|
-
subject_form:
|
80
|
-
subject_value_name: "Тема сообщения"
|
75
|
+
<% attributes.each do |a| -%>
|
76
|
+
<%= a.name %>: <%= a.name.humanize %>
|
77
|
+
<% end -%>
|
@@ -1,69 +1,67 @@
|
|
1
1
|
sl:
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
refinery:
|
3
|
+
plugins:
|
4
|
+
<%= plural_name %>:
|
5
|
+
title: <%= plural_name.titleize %>
|
6
|
+
<%= namespacing.underscore %>:
|
7
|
+
<%= plural_name %>:
|
8
|
+
new:
|
9
|
+
header_message: "Ups prišlo je do majhnega problema"
|
10
|
+
message: "Prosimo odpravite sledeče napake:"
|
11
|
+
send: Pošlji sporočilo
|
12
|
+
privacy_policy: "Cenimo vašo zasebnost"
|
13
|
+
admin:
|
14
|
+
<%= plural_name %>:
|
15
|
+
<%= singular_name %>:
|
16
|
+
said: pravi
|
17
|
+
move_<%= singular_name %>_to_closed: Premakni povpraševanje v zaprto
|
18
|
+
move_<%= singular_name %>_to_open: Premakni povpraševanje v odprto
|
19
|
+
read_<%= singular_name %>: Preberi povpraševanje
|
20
|
+
remove_<%= singular_name %>: "Ali ste prepričani da želite odstraniti povpraševanje od '%{name}'?"
|
21
|
+
title: <%= plural_name.titleize %>
|
22
|
+
toggle_status:
|
23
|
+
closed: "Povpraševanje '%{<%= singular_name %>}' je zaprto"
|
24
|
+
reopened: "Povpraševanje '%{<%= singular_name %>}' je ponovno odprto"
|
25
|
+
index:
|
26
|
+
no_<%= plural_name %>: Trenutno še ni nobenega povpraševanja.
|
27
|
+
submenu:
|
28
|
+
update_notified: Uredi prejemnike obvestila
|
29
|
+
edit_confirmation_email: Uredni potrditveni email
|
30
|
+
show:
|
31
|
+
details: Podrobnosti
|
32
|
+
click_to_email: Pošlji email sporočilo
|
33
|
+
status: Status
|
34
|
+
open: Odprto
|
35
|
+
closed: Zaprto
|
36
|
+
age: Starost
|
37
|
+
actions: Možnosti
|
38
|
+
back_to_all_<%= plural_name %>: Nazaj na vsa povpraševanja
|
39
|
+
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
40
|
+
settings:
|
41
|
+
update:
|
42
|
+
updated: "'%{setting}' je bila uspešno posodobljena."
|
43
|
+
notification_recipients_form:
|
44
|
+
settings_value_name: Pošlji obvestilo na
|
45
|
+
explanation: "Vedno ko vas nekdo kontaktira na vaši spletni strani, vam Refinery pošlje email obvestilo o novem povpraševanju."
|
46
|
+
hint: "V zgornje polje vnesite email naslov. Želite da obvestila prejme več oseb? Vnesite več email naslovov ločenih z vejicami."
|
47
|
+
example: "Primer: jaz@domena.com, prijatelj@msn.com, sodelavec@work.com"
|
48
|
+
confirmation_email_form:
|
49
|
+
to: Za
|
50
|
+
from: Od
|
51
|
+
subject: Zadeva
|
52
|
+
click_to_edit_subject: Uredi zadevo
|
53
|
+
explanation: "Vedno ko vas nekdo kontaktira na vaši spletni strani mu Refinery pošlje email obvestilo o prejetem povpraševanju."
|
54
|
+
below_edit_email_sent: Spodaj lahko uredite vsebino email sporočila.
|
55
|
+
the_customer_making_<%= singular_name %>: Stranka, ki je poslala povpraševanje
|
56
|
+
message: Sporočilo
|
57
|
+
note: "Opomba: vstavite tekst %name% kjer želite, da se pojavi ime stranke v email sporočilu."
|
58
|
+
subject_form:
|
59
|
+
subject_value_name: Zadeva
|
5
60
|
activerecord:
|
6
61
|
models:
|
7
62
|
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
8
63
|
attributes:
|
9
64
|
<%= singular_name %>:
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
phone: Telefon
|
14
|
-
date: Datum
|
15
|
-
message: Sporočilo
|
16
|
-
<%= namespacing.underscore %>:
|
17
|
-
<%= plural_name %>:
|
18
|
-
new:
|
19
|
-
header_message: "Ups prišlo je do majhnega problema"
|
20
|
-
message: "Prosimo odpravite sledeče napake:"
|
21
|
-
send: Pošlji sporočilo
|
22
|
-
privacy_policy: "Cenimo vašo zasebnost"
|
23
|
-
admin:
|
24
|
-
<%= plural_name %>:
|
25
|
-
<%= singular_name %>:
|
26
|
-
said: pravi
|
27
|
-
move_<%= singular_name %>_to_closed: Premakni povpraševanje v zaprto
|
28
|
-
move_<%= singular_name %>_to_open: Premakni povpraševanje v odprto
|
29
|
-
read_<%= singular_name %>: Preberi povpraševanje
|
30
|
-
remove_<%= singular_name %>: "Ali ste prepričani da želite odstraniti povpraševanje od '%{name}'?"
|
31
|
-
title: <%= plural_name.titleize %>
|
32
|
-
toggle_status:
|
33
|
-
closed: "Povpraševanje '%{<%= singular_name %>}' je zaprto"
|
34
|
-
reopened: "Povpraševanje '%{<%= singular_name %>}' je ponovno odprto"
|
35
|
-
index:
|
36
|
-
no_<%= plural_name %>: Trenutno še ni nobenega povpraševanja.
|
37
|
-
submenu:
|
38
|
-
update_notified: Uredi prejemnike obvestila
|
39
|
-
edit_confirmation_email: Uredni potrditveni email
|
40
|
-
show:
|
41
|
-
details: Podrobnosti
|
42
|
-
click_to_email: Pošlji email sporočilo
|
43
|
-
status: Status
|
44
|
-
open: Odprto
|
45
|
-
closed: Zaprto
|
46
|
-
age: Starost
|
47
|
-
actions: Možnosti
|
48
|
-
back_to_all_<%= plural_name %>: Nazaj na vsa povpraševanja
|
49
|
-
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
50
|
-
settings:
|
51
|
-
update:
|
52
|
-
updated: "'%{setting}' je bila uspešno posodobljena."
|
53
|
-
notification_recipients_form:
|
54
|
-
settings_value_name: Pošlji obvestilo na
|
55
|
-
explanation: "Vedno ko vas nekdo kontaktira na vaši spletni strani, vam Refinery pošlje email obvestilo o novem povpraševanju."
|
56
|
-
hint: "V zgornje polje vnesite email naslov. Želite da obvestila prejme več oseb? Vnesite več email naslovov ločenih z vejicami."
|
57
|
-
example: "Primer: jaz@domena.com, prijatelj@msn.com, sodelavec@work.com"
|
58
|
-
confirmation_email_form:
|
59
|
-
to: Za
|
60
|
-
from: Od
|
61
|
-
subject: Zadeva
|
62
|
-
click_to_edit_subject: Uredi zadevo
|
63
|
-
explanation: "Vedno ko vas nekdo kontaktira na vaši spletni strani mu Refinery pošlje email obvestilo o prejetem povpraševanju."
|
64
|
-
below_edit_email_sent: Spodaj lahko uredite vsebino email sporočila.
|
65
|
-
the_customer_making_<%= singular_name %>: Stranka, ki je poslala povpraševanje
|
66
|
-
message: Sporočilo
|
67
|
-
note: "Opomba: vstavite tekst %name% kjer želite, da se pojavi ime stranke v email sporočilu."
|
68
|
-
subject_form:
|
69
|
-
subject_value_name: Zadeva
|
65
|
+
<% attributes.each do |a| -%>
|
66
|
+
<%= a.name %>: <%= a.name.humanize %>
|
67
|
+
<% end -%>
|
@@ -1,4 +1,78 @@
|
|
1
1
|
zh-CN:
|
2
|
-
|
3
|
-
|
4
|
-
|
2
|
+
refinery:
|
3
|
+
plugins:
|
4
|
+
<%= plural_name %>:
|
5
|
+
title: <%= plural_name.titleize %>
|
6
|
+
description: 提供联系方式表格来存放 <%= plural_name.humanize.downcase %>
|
7
|
+
<%= namespacing.underscore %>:
|
8
|
+
<%= plural_name %>:
|
9
|
+
new:
|
10
|
+
send: 发送邮件
|
11
|
+
privacy_policy: 我们重视您的隐私
|
12
|
+
admin:
|
13
|
+
<%= plural_name %>:
|
14
|
+
delete: 永久删除 <%= singular_name.humanize.downcase %>
|
15
|
+
<%= singular_name %>:
|
16
|
+
read_<%= singular_name %>: 阅读这个 <%= singular_name.humanize.downcase %>
|
17
|
+
said: 说
|
18
|
+
mark_as_spam: 标记为垃圾邮件
|
19
|
+
mark_as_ham: 移动到收件箱
|
20
|
+
submenu:
|
21
|
+
inbox: 收件箱
|
22
|
+
spam: 垃圾邮件
|
23
|
+
update_notified: 通知相关人员
|
24
|
+
edit_confirmation_email: 编辑确认邮件
|
25
|
+
index:
|
26
|
+
no_<%= plural_name %>: 您尚未收到任何 <%= plural_name.humanize.downcase %>
|
27
|
+
spam:
|
28
|
+
no_spam: 太棒了!一封垃圾邮件都没有~
|
29
|
+
show:
|
30
|
+
details: 详细
|
31
|
+
age: 岁
|
32
|
+
actions: 操作
|
33
|
+
back_to_all_<%= plural_name %>: 返回到全部 <%= plural_name.humanize.downcase %>
|
34
|
+
spam: 垃圾信息
|
35
|
+
spam_yes: 是
|
36
|
+
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
37
|
+
to: 收件人(To)
|
38
|
+
from: 发件人(From)
|
39
|
+
click_to_email: 点击来发送
|
40
|
+
phone: 电话
|
41
|
+
date: 日期
|
42
|
+
message: 信息
|
43
|
+
settings:
|
44
|
+
notification_recipients_form:
|
45
|
+
settings_value_name: 发通知给
|
46
|
+
explanation: 每当有人联系您时, Refinery都会发邮件给您.
|
47
|
+
hint: 当有新的 <%= singular_name.humanize.downcase %> 被提交时, Refinery 会发邮件告知您。
|
48
|
+
example: "输入您的Email地址, 形如: jack@work.com, jill@office.com"
|
49
|
+
confirmation_email_form:
|
50
|
+
to: 收件人
|
51
|
+
from: 发件人
|
52
|
+
subject: 主题
|
53
|
+
click_to_edit_subject: 点击编辑主题
|
54
|
+
explanation: 当有人试图联系您时,Refinery 都会发邮件跟他(拥有<%= singular_name.humanize.downcase %> 的人)进行确认
|
55
|
+
below_edit_email_sent: 您可以在下面编辑邮件内容
|
56
|
+
the_customer_making_<%= singular_name %>: 建立 <%= singular_name.humanize.downcase %> 的顾客
|
57
|
+
message: 邮件
|
58
|
+
note: "提示: 您可以在希望出现对方姓名的地方,使用%name%"
|
59
|
+
mailer:
|
60
|
+
notification:
|
61
|
+
greeting: 你好
|
62
|
+
you_recieved_new_<%= singular_name %>: 您刚刚收到了一封新 <%= singular_name.humanize.downcase %>.
|
63
|
+
<%= singular_name %>_starts: --- <%= singular_name.humanize.downcase %> 开始---
|
64
|
+
<%= singular_name %>_ends: --- <%= singular_name.humanize.downcase %> 结束---
|
65
|
+
from: 发件人
|
66
|
+
email: Email
|
67
|
+
phone: 电话
|
68
|
+
message: 正文
|
69
|
+
closing_line: 此致,
|
70
|
+
ps_html: 注:所有您的<%= plural_name.humanize.downcase %>都会保存在"<%= plural_name.titleize %>"里。这样您可以在任何时间查看它们。
|
71
|
+
activerecord:
|
72
|
+
models:
|
73
|
+
<%= singular_name %>: <%= class_name.underscore.titleize %>
|
74
|
+
attributes:
|
75
|
+
<%= singular_name %>:
|
76
|
+
<% attributes.each do |a| -%>
|
77
|
+
<%= a.name %>: <%= a.name.humanize %>
|
78
|
+
<% end -%>
|
data/lib/refinery/cli.rb
CHANGED
@@ -48,7 +48,7 @@ module Refinery
|
|
48
48
|
puts "You didn't specify anything valid to override. Here are some examples:"
|
49
49
|
{
|
50
50
|
:view => ['pages/home', 'refinery/pages/home', '**/*menu', '_menu_branch'],
|
51
|
-
:javascript => %w(admin refinery/site_bar),
|
51
|
+
:javascript => %w(admin refinery/site_bar wymeditor**/{**/}*),
|
52
52
|
:stylesheet => %w(home refinery/site_bar),
|
53
53
|
:controller => %w(pages),
|
54
54
|
:model => %w(page refinery/page),
|
data/lib/refinery/core/engine.rb
CHANGED
data/lib/refinery/crud.rb
CHANGED
@@ -268,7 +268,7 @@ module Refinery
|
|
268
268
|
params[:ul].each do |_, list|
|
269
269
|
# After we drop Ruby 1.8.x support the following line can be changed back to
|
270
270
|
# list.each do |index, hash|
|
271
|
-
# because there won't be an ordering issue (see https://github.com/
|
271
|
+
# because there won't be an ordering issue (see https://github.com/refinery/refinerycms/issues/1585)
|
272
272
|
list.sort_by {|k, v| k.to_i}.map { |item| item[1] }.each_with_index do |hash, index|
|
273
273
|
moved_item_id = hash['id'].split(/#{singular_name}\_?/).reject(&:empty?).first
|
274
274
|
@current_#{singular_name} = #{class_name}.find_by_id(moved_item_id)
|
@@ -122,7 +122,7 @@ module Refinery
|
|
122
122
|
if options[:namespace].present? || options[:extension].present?
|
123
123
|
# Increment the migration file leading number
|
124
124
|
# Only relevant for nested or namespaced extensions, where a previous migration exists
|
125
|
-
if %r{/migrate/\d
|
125
|
+
if %r{/migrate/\d+.*\.rb.erb\z} === path
|
126
126
|
if last_migration = Dir["#{destination_pathname.join(path.split(File::SEPARATOR)[0..-2].join(File::SEPARATOR), '*.rb')}"].sort.last
|
127
127
|
path.gsub!(%r{\d+_}) { |m| "#{last_migration.match(%r{migrate/(\d+)_})[1].to_i + 1}_" }
|
128
128
|
end
|
@@ -130,10 +130,12 @@ module Refinery
|
|
130
130
|
|
131
131
|
# Detect whether this is a special file that needs to get merged not overwritten.
|
132
132
|
# This is important only when nesting extensions.
|
133
|
-
|
133
|
+
# Routes and #{gem_name}\.rb have an .erb extension as path points to the generator template
|
134
|
+
# We have to exclude it when checking if the file already exists and include it in the regexps
|
135
|
+
if extension.present? && File.exist?(path.gsub(/\.erb$/, ""))
|
134
136
|
if %r{/locales/.*\.yml$} === path ||
|
135
|
-
%r{/routes
|
136
|
-
%r{/#{gem_name}
|
137
|
+
%r{/routes\.rb\.erb$} === path ||
|
138
|
+
%r{/#{gem_name}\.rb\.erb$} === path
|
137
139
|
# put new translations into a tmp directory
|
138
140
|
if apply_tmp
|
139
141
|
path = path.split(File::SEPARATOR).insert(-2, "tmp").
|
@@ -178,12 +180,14 @@ module Refinery
|
|
178
180
|
end
|
179
181
|
|
180
182
|
def exit_with_message!(message)
|
181
|
-
puts ""
|
182
|
-
puts message
|
183
|
-
puts ""
|
183
|
+
STDERR.puts "\n#{message}\n\n"
|
184
184
|
exit 1
|
185
185
|
end
|
186
186
|
|
187
|
+
def extension_in_gemfile?
|
188
|
+
gemfile.read.scan(%r{#{gem_name}}).any?
|
189
|
+
end
|
190
|
+
|
187
191
|
def finalize_extension!
|
188
192
|
if self.behavior != :revoke and !self.options['pretend']
|
189
193
|
puts_instructions!
|
@@ -202,21 +206,23 @@ module Refinery
|
|
202
206
|
end
|
203
207
|
end
|
204
208
|
|
205
|
-
def
|
206
|
-
|
209
|
+
def generator_command
|
210
|
+
raise "You must override the method 'generator_command' in your generator."
|
207
211
|
end
|
208
212
|
|
209
213
|
def merge_locales!
|
210
214
|
if existing_extension?
|
211
215
|
# go through all of the temporary files and merge what we need into the current files.
|
212
216
|
tmp_directories = []
|
213
|
-
Dir.glob(source_pathname.join("{config/locales/*.yml,config/routes.rb,lib/refinerycms-extension_plural_name.rb}"), File::FNM_DOTMATCH).sort.each do |path|
|
217
|
+
Dir.glob(source_pathname.join("{config/locales/*.yml,config/routes.rb.erb,lib/refinerycms-extension_plural_name.rb.erb}"), File::FNM_DOTMATCH).sort.each do |path|
|
214
218
|
# get the path to the current tmp file.
|
215
|
-
|
219
|
+
# Both the new and current paths need to strip the .erb portion from the generator template
|
220
|
+
new_file_path = Pathname.new extension_path_for(path, extension_name).to_s.gsub(/\.erb$/, "")
|
216
221
|
tmp_directories << Pathname.new(new_file_path.to_s.split(File::SEPARATOR)[0..-2].join(File::SEPARATOR)) # save for later
|
217
222
|
# get the path to the existing file and perform a deep hash merge.
|
218
|
-
current_path = extension_path_for(path, extension_name, false)
|
223
|
+
current_path = Pathname.new extension_path_for(path, extension_name, false).to_s.gsub(/\.erb$/, "")
|
219
224
|
new_contents = nil
|
225
|
+
|
220
226
|
if File.exist?(new_file_path) && %r{.yml$} === new_file_path.to_s
|
221
227
|
# merge translation files together.
|
222
228
|
new_contents = YAML::load(new_file_path.read).deep_merge(
|
@@ -300,11 +306,17 @@ module Refinery
|
|
300
306
|
else
|
301
307
|
"Please specify the singular name '#{singular_name.singularize}' instead of '#{plural_name}'."
|
302
308
|
end
|
303
|
-
exit_with_message!
|
309
|
+
exit_with_message! message
|
304
310
|
end
|
305
311
|
|
306
312
|
if attributes.empty? && self.behavior != :revoke
|
307
|
-
exit_with_message!
|
313
|
+
exit_with_message! "You must specify a name and at least one field." \
|
314
|
+
"\nFor help, run: #{generator_command}"
|
315
|
+
end
|
316
|
+
|
317
|
+
if options[:extension].present? && !extension_pathname.directory?
|
318
|
+
exit_with_message! "You can't use '--extension #{options[:extension]}' option because" \
|
319
|
+
" extension with name #{options[:extension]} doesn't exist."
|
308
320
|
end
|
309
321
|
end
|
310
322
|
|