radiant-globalize2-extension 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Rakefile +136 -0
- data/app/views/admin/shared/_change_locale.html.haml +22 -0
- data/app/views/admin/shared/_change_locale_admin.html.haml +7 -0
- data/app/views/admin/shared/_globalize_td.html.haml +4 -0
- data/app/views/admin/shared/_globalize_th.html.haml +2 -0
- data/config/routes.rb +4 -0
- data/cucumber.yml +1 -0
- data/db/migrate/20090728084238_create_translation_tables.rb +23 -0
- data/db/migrate/20090728114627_populate_translations.rb +21 -0
- data/db/migrate/20090729085422_remove_translated_attributes.rb +16 -0
- data/features/globalize_layouts.feature +19 -0
- data/features/globalize_pages.feature +58 -0
- data/features/globalize_snippets.feature +19 -0
- data/features/step_definitions/admin_steps.rb +58 -0
- data/features/step_definitions/webrat_steps.rb +119 -0
- data/features/support/env.rb +30 -0
- data/features/support/paths.rb +26 -0
- data/globalize2_extension.rb +93 -0
- data/lib/globalize2/compatibility/archive/archive_page_extensions.rb +21 -0
- data/lib/globalize2/compatibility/copy_move/copy_move_model_extensions.rb +22 -0
- data/lib/globalize2/compatibility/paginate/globalize_tags.rb +19 -0
- data/lib/globalize2/compatibility/paginate/page_extensions.rb +9 -0
- data/lib/globalize2/compatibility/vhost/page_extensions.rb +9 -0
- data/lib/globalize2/form_builder_extensions.rb +21 -0
- data/lib/globalize2/globalize_tags.rb +203 -0
- data/lib/globalize2/globalized_fields_controller_extension.rb +22 -0
- data/lib/globalize2/page_extensions.rb +88 -0
- data/lib/globalize2/page_part_extensions.rb +21 -0
- data/lib/globalize2/pages_controller_extensions.rb +9 -0
- data/lib/globalize2/site_controller_extensions.rb +24 -0
- data/lib/tasks/globalize2_extension_tasks.rake +28 -0
- data/public/images/admin/ad.gif +0 -0
- data/public/images/admin/ae.gif +0 -0
- data/public/images/admin/af.gif +0 -0
- data/public/images/admin/ag.gif +0 -0
- data/public/images/admin/ai.gif +0 -0
- data/public/images/admin/al.gif +0 -0
- data/public/images/admin/am.gif +0 -0
- data/public/images/admin/an.gif +0 -0
- data/public/images/admin/ao.gif +0 -0
- data/public/images/admin/ar.gif +0 -0
- data/public/images/admin/as.gif +0 -0
- data/public/images/admin/at.gif +0 -0
- data/public/images/admin/au.gif +0 -0
- data/public/images/admin/aw.gif +0 -0
- data/public/images/admin/ax.gif +0 -0
- data/public/images/admin/az.gif +0 -0
- data/public/images/admin/ba.gif +0 -0
- data/public/images/admin/bb.gif +0 -0
- data/public/images/admin/bd.gif +0 -0
- data/public/images/admin/be.gif +0 -0
- data/public/images/admin/bf.gif +0 -0
- data/public/images/admin/bg.gif +0 -0
- data/public/images/admin/bh.gif +0 -0
- data/public/images/admin/bi.gif +0 -0
- data/public/images/admin/bj.gif +0 -0
- data/public/images/admin/bm.gif +0 -0
- data/public/images/admin/bn.gif +0 -0
- data/public/images/admin/bo.gif +0 -0
- data/public/images/admin/br.gif +0 -0
- data/public/images/admin/bs.gif +0 -0
- data/public/images/admin/bt.gif +0 -0
- data/public/images/admin/bv.gif +0 -0
- data/public/images/admin/bw.gif +0 -0
- data/public/images/admin/by.gif +0 -0
- data/public/images/admin/bz.gif +0 -0
- data/public/images/admin/ca.gif +0 -0
- data/public/images/admin/catalonia.gif +0 -0
- data/public/images/admin/cc.gif +0 -0
- data/public/images/admin/cd.gif +0 -0
- data/public/images/admin/cf.gif +0 -0
- data/public/images/admin/cg.gif +0 -0
- data/public/images/admin/ch.gif +0 -0
- data/public/images/admin/ci.gif +0 -0
- data/public/images/admin/ck.gif +0 -0
- data/public/images/admin/cl.gif +0 -0
- data/public/images/admin/cm.gif +0 -0
- data/public/images/admin/cn.gif +0 -0
- data/public/images/admin/co.gif +0 -0
- data/public/images/admin/cr.gif +0 -0
- data/public/images/admin/cs.gif +0 -0
- data/public/images/admin/cu.gif +0 -0
- data/public/images/admin/cv.gif +0 -0
- data/public/images/admin/cx.gif +0 -0
- data/public/images/admin/cy.gif +0 -0
- data/public/images/admin/cz.gif +0 -0
- data/public/images/admin/de.gif +0 -0
- data/public/images/admin/dj.gif +0 -0
- data/public/images/admin/dk.gif +0 -0
- data/public/images/admin/dm.gif +0 -0
- data/public/images/admin/do.gif +0 -0
- data/public/images/admin/dz.gif +0 -0
- data/public/images/admin/ec.gif +0 -0
- data/public/images/admin/ee.gif +0 -0
- data/public/images/admin/eg.gif +0 -0
- data/public/images/admin/eh.gif +0 -0
- data/public/images/admin/en.gif +0 -0
- data/public/images/admin/england.gif +0 -0
- data/public/images/admin/er.gif +0 -0
- data/public/images/admin/es.gif +0 -0
- data/public/images/admin/et.gif +0 -0
- data/public/images/admin/europeanunion.gif +0 -0
- data/public/images/admin/fam.gif +0 -0
- data/public/images/admin/fi.gif +0 -0
- data/public/images/admin/fj.gif +0 -0
- data/public/images/admin/fk.gif +0 -0
- data/public/images/admin/fm.gif +0 -0
- data/public/images/admin/fo.gif +0 -0
- data/public/images/admin/fr.gif +0 -0
- data/public/images/admin/ga.gif +0 -0
- data/public/images/admin/gb.gif +0 -0
- data/public/images/admin/gd.gif +0 -0
- data/public/images/admin/ge.gif +0 -0
- data/public/images/admin/gf.gif +0 -0
- data/public/images/admin/gh.gif +0 -0
- data/public/images/admin/gi.gif +0 -0
- data/public/images/admin/gl.gif +0 -0
- data/public/images/admin/gm.gif +0 -0
- data/public/images/admin/gn.gif +0 -0
- data/public/images/admin/gp.gif +0 -0
- data/public/images/admin/gq.gif +0 -0
- data/public/images/admin/gr.gif +0 -0
- data/public/images/admin/gs.gif +0 -0
- data/public/images/admin/gt.gif +0 -0
- data/public/images/admin/gu.gif +0 -0
- data/public/images/admin/gw.gif +0 -0
- data/public/images/admin/gy.gif +0 -0
- data/public/images/admin/hk.gif +0 -0
- data/public/images/admin/hm.gif +0 -0
- data/public/images/admin/hn.gif +0 -0
- data/public/images/admin/hr.gif +0 -0
- data/public/images/admin/ht.gif +0 -0
- data/public/images/admin/hu.gif +0 -0
- data/public/images/admin/id.gif +0 -0
- data/public/images/admin/ie.gif +0 -0
- data/public/images/admin/il.gif +0 -0
- data/public/images/admin/in.gif +0 -0
- data/public/images/admin/io.gif +0 -0
- data/public/images/admin/iq.gif +0 -0
- data/public/images/admin/ir.gif +0 -0
- data/public/images/admin/is.gif +0 -0
- data/public/images/admin/it.gif +0 -0
- data/public/images/admin/jm.gif +0 -0
- data/public/images/admin/jo.gif +0 -0
- data/public/images/admin/jp.gif +0 -0
- data/public/images/admin/ke.gif +0 -0
- data/public/images/admin/kg.gif +0 -0
- data/public/images/admin/kh.gif +0 -0
- data/public/images/admin/ki.gif +0 -0
- data/public/images/admin/km.gif +0 -0
- data/public/images/admin/kn.gif +0 -0
- data/public/images/admin/kp.gif +0 -0
- data/public/images/admin/kr.gif +0 -0
- data/public/images/admin/kw.gif +0 -0
- data/public/images/admin/ky.gif +0 -0
- data/public/images/admin/kz.gif +0 -0
- data/public/images/admin/la.gif +0 -0
- data/public/images/admin/lb.gif +0 -0
- data/public/images/admin/lc.gif +0 -0
- data/public/images/admin/li.gif +0 -0
- data/public/images/admin/lk.gif +0 -0
- data/public/images/admin/lr.gif +0 -0
- data/public/images/admin/ls.gif +0 -0
- data/public/images/admin/lt.gif +0 -0
- data/public/images/admin/lu.gif +0 -0
- data/public/images/admin/lv.gif +0 -0
- data/public/images/admin/ly.gif +0 -0
- data/public/images/admin/ma.gif +0 -0
- data/public/images/admin/mc.gif +0 -0
- data/public/images/admin/md.gif +0 -0
- data/public/images/admin/me.gif +0 -0
- data/public/images/admin/mg.gif +0 -0
- data/public/images/admin/mh.gif +0 -0
- data/public/images/admin/mk.gif +0 -0
- data/public/images/admin/ml.gif +0 -0
- data/public/images/admin/mm.gif +0 -0
- data/public/images/admin/mn.gif +0 -0
- data/public/images/admin/mo.gif +0 -0
- data/public/images/admin/mp.gif +0 -0
- data/public/images/admin/mq.gif +0 -0
- data/public/images/admin/mr.gif +0 -0
- data/public/images/admin/ms.gif +0 -0
- data/public/images/admin/mt.gif +0 -0
- data/public/images/admin/mu.gif +0 -0
- data/public/images/admin/mv.gif +0 -0
- data/public/images/admin/mw.gif +0 -0
- data/public/images/admin/mx.gif +0 -0
- data/public/images/admin/my.gif +0 -0
- data/public/images/admin/mz.gif +0 -0
- data/public/images/admin/na.gif +0 -0
- data/public/images/admin/nc.gif +0 -0
- data/public/images/admin/ne.gif +0 -0
- data/public/images/admin/nf.gif +0 -0
- data/public/images/admin/ng.gif +0 -0
- data/public/images/admin/ni.gif +0 -0
- data/public/images/admin/nl.gif +0 -0
- data/public/images/admin/no.gif +0 -0
- data/public/images/admin/np.gif +0 -0
- data/public/images/admin/nr.gif +0 -0
- data/public/images/admin/nu.gif +0 -0
- data/public/images/admin/nz.gif +0 -0
- data/public/images/admin/om.gif +0 -0
- data/public/images/admin/pa.gif +0 -0
- data/public/images/admin/pe.gif +0 -0
- data/public/images/admin/pf.gif +0 -0
- data/public/images/admin/pg.gif +0 -0
- data/public/images/admin/ph.gif +0 -0
- data/public/images/admin/pk.gif +0 -0
- data/public/images/admin/pl.gif +0 -0
- data/public/images/admin/pm.gif +0 -0
- data/public/images/admin/pn.gif +0 -0
- data/public/images/admin/pr.gif +0 -0
- data/public/images/admin/ps.gif +0 -0
- data/public/images/admin/pt.gif +0 -0
- data/public/images/admin/pw.gif +0 -0
- data/public/images/admin/py.gif +0 -0
- data/public/images/admin/qa.gif +0 -0
- data/public/images/admin/re.gif +0 -0
- data/public/images/admin/ro.gif +0 -0
- data/public/images/admin/rs.gif +0 -0
- data/public/images/admin/ru.gif +0 -0
- data/public/images/admin/rw.gif +0 -0
- data/public/images/admin/sa.gif +0 -0
- data/public/images/admin/sb.gif +0 -0
- data/public/images/admin/sc.gif +0 -0
- data/public/images/admin/scotland.gif +0 -0
- data/public/images/admin/sd.gif +0 -0
- data/public/images/admin/se.gif +0 -0
- data/public/images/admin/sg.gif +0 -0
- data/public/images/admin/sh.gif +0 -0
- data/public/images/admin/si.gif +0 -0
- data/public/images/admin/sj.gif +0 -0
- data/public/images/admin/sk.gif +0 -0
- data/public/images/admin/sl.gif +0 -0
- data/public/images/admin/sm.gif +0 -0
- data/public/images/admin/sn.gif +0 -0
- data/public/images/admin/so.gif +0 -0
- data/public/images/admin/sr.gif +0 -0
- data/public/images/admin/st.gif +0 -0
- data/public/images/admin/sv.gif +0 -0
- data/public/images/admin/sy.gif +0 -0
- data/public/images/admin/sz.gif +0 -0
- data/public/images/admin/tc.gif +0 -0
- data/public/images/admin/td.gif +0 -0
- data/public/images/admin/tf.gif +0 -0
- data/public/images/admin/tg.gif +0 -0
- data/public/images/admin/th.gif +0 -0
- data/public/images/admin/tj.gif +0 -0
- data/public/images/admin/tk.gif +0 -0
- data/public/images/admin/tl.gif +0 -0
- data/public/images/admin/tm.gif +0 -0
- data/public/images/admin/tn.gif +0 -0
- data/public/images/admin/to.gif +0 -0
- data/public/images/admin/tr.gif +0 -0
- data/public/images/admin/tt.gif +0 -0
- data/public/images/admin/tv.gif +0 -0
- data/public/images/admin/tw.gif +0 -0
- data/public/images/admin/tz.gif +0 -0
- data/public/images/admin/ua.gif +0 -0
- data/public/images/admin/ug.gif +0 -0
- data/public/images/admin/um.gif +0 -0
- data/public/images/admin/us.gif +0 -0
- data/public/images/admin/uy.gif +0 -0
- data/public/images/admin/uz.gif +0 -0
- data/public/images/admin/va.gif +0 -0
- data/public/images/admin/vc.gif +0 -0
- data/public/images/admin/ve.gif +0 -0
- data/public/images/admin/vg.gif +0 -0
- data/public/images/admin/vi.gif +0 -0
- data/public/images/admin/vn.gif +0 -0
- data/public/images/admin/vu.gif +0 -0
- data/public/images/admin/wales.gif +0 -0
- data/public/images/admin/wf.gif +0 -0
- data/public/images/admin/ws.gif +0 -0
- data/public/images/admin/ye.gif +0 -0
- data/public/images/admin/yt.gif +0 -0
- data/public/images/admin/za.gif +0 -0
- data/public/images/admin/zm.gif +0 -0
- data/public/images/admin/zw.gif +0 -0
- data/public/stylesheets/sass/admin/globalize2.sass +59 -0
- data/readme.md +159 -0
- data/spec/controllers/admin/pages_controller_spec.rb +22 -0
- data/spec/controllers/site_controller_spec.rb +40 -0
- data/spec/factories.rb +39 -0
- data/spec/models/globalize_tags_spec.rb +155 -0
- data/spec/models/page_spec.rb +91 -0
- data/spec/spec.opts +6 -0
- data/spec/spec_helper.rb +34 -0
- data/vendor/plugins/globalize2/.gitignore +5 -0
- data/vendor/plugins/globalize2/LICENSE +21 -0
- data/vendor/plugins/globalize2/README.textile +86 -0
- data/vendor/plugins/globalize2/Rakefile +39 -0
- data/vendor/plugins/globalize2/VERSION +1 -0
- data/vendor/plugins/globalize2/generators/db_backend.rb +0 -0
- data/vendor/plugins/globalize2/generators/templates/db_backend_migration.rb +25 -0
- data/vendor/plugins/globalize2/globalize2.gemspec +81 -0
- data/vendor/plugins/globalize2/init.rb +1 -0
- data/vendor/plugins/globalize2/lib/globalize.rb +15 -0
- data/vendor/plugins/globalize2/lib/globalize/active_record.rb +215 -0
- data/vendor/plugins/globalize2/lib/globalize/active_record/adapter.rb +80 -0
- data/vendor/plugins/globalize2/lib/globalize/active_record/attributes.rb +25 -0
- data/vendor/plugins/globalize2/lib/globalize/active_record/migration.rb +44 -0
- data/vendor/plugins/globalize2/lib/i18n/missing_translations_log_handler.rb +41 -0
- data/vendor/plugins/globalize2/lib/i18n/missing_translations_raise_handler.rb +25 -0
- data/vendor/plugins/globalize2/test/active_record/fallbacks_test.rb +102 -0
- data/vendor/plugins/globalize2/test/active_record/migration_test.rb +118 -0
- data/vendor/plugins/globalize2/test/active_record/sti_translated_test.rb +61 -0
- data/vendor/plugins/globalize2/test/active_record/translates_test.rb +96 -0
- data/vendor/plugins/globalize2/test/active_record/translation_class_test.rb +30 -0
- data/vendor/plugins/globalize2/test/active_record/validation_tests.rb +75 -0
- data/vendor/plugins/globalize2/test/active_record_test.rb +467 -0
- data/vendor/plugins/globalize2/test/all.rb +2 -0
- data/vendor/plugins/globalize2/test/data/models.rb +62 -0
- data/vendor/plugins/globalize2/test/data/no_globalize_schema.rb +11 -0
- data/vendor/plugins/globalize2/test/data/schema.rb +55 -0
- data/vendor/plugins/globalize2/test/i18n/missing_translations_test.rb +36 -0
- data/vendor/plugins/globalize2/test/test_helper.rb +76 -0
- metadata +409 -0
@@ -0,0 +1,22 @@
|
|
1
|
+
module Globalize2
|
2
|
+
module GlobalizedFieldsControllerExtension
|
3
|
+
def self.included base
|
4
|
+
base.before_filter :set_content_locale
|
5
|
+
end
|
6
|
+
|
7
|
+
|
8
|
+
def update
|
9
|
+
I18n.with_locale(Globalize2Extension.content_locale) do
|
10
|
+
model.update_attributes!(params[model_symbol])
|
11
|
+
end
|
12
|
+
|
13
|
+
response_for :update
|
14
|
+
end
|
15
|
+
|
16
|
+
private
|
17
|
+
def set_content_locale
|
18
|
+
Globalize2Extension.content_locale = params[:content_locale] || session[:content_locale] || Globalize2Extension.default_language
|
19
|
+
session[:content_locale] = params[:content_locale] if params[:content_locale]
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
@@ -0,0 +1,88 @@
|
|
1
|
+
module Globalize2
|
2
|
+
module PageExtensions
|
3
|
+
module InstanceMethods
|
4
|
+
def self.included(base)
|
5
|
+
base.validate.delete_if { |v| v.options[:scope] == :parent_id }
|
6
|
+
base.send(:validate, :unique_slug)
|
7
|
+
base.reflections[:children].options[:order] = 'pages.virtual DESC'
|
8
|
+
|
9
|
+
|
10
|
+
base.class_eval do
|
11
|
+
|
12
|
+
def self.locale
|
13
|
+
I18n.locale
|
14
|
+
end
|
15
|
+
#eigenclass = class << self; self; end
|
16
|
+
|
17
|
+
translates :title, :slug, :breadcrumb, :description, :keywords
|
18
|
+
attr_accessor :reset_translations
|
19
|
+
alias_method_chain 'tag:link', :globalize
|
20
|
+
alias_method_chain 'tag:children:each', :globalize
|
21
|
+
alias_method_chain :path, :globalize
|
22
|
+
alias_method_chain :save_translations!, :reset
|
23
|
+
|
24
|
+
def self.scope_locale(locale, &block)
|
25
|
+
with_scope(:find => { :joins => "INNER JOIN page_translations ptrls ON ptrls.page_id = pages.id", :conditions => ['ptrls.locale = ?', locale] }) do
|
26
|
+
yield
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
|
33
|
+
def unique_slug
|
34
|
+
options = {
|
35
|
+
"pages.parent_id = ?" => self.parent_id,
|
36
|
+
"ptrls.slug = ?" => self.slug,
|
37
|
+
"ptrls.locale = ?" => self.class.locale.to_s,
|
38
|
+
"ptrls.page_id <> ?" => self.id
|
39
|
+
}
|
40
|
+
conditions_str = []
|
41
|
+
conditions_arg = []
|
42
|
+
|
43
|
+
options.each do |key, value|
|
44
|
+
if value != nil
|
45
|
+
conditions_str << key
|
46
|
+
conditions_arg << value
|
47
|
+
else
|
48
|
+
conditions_str << "ptrls.page_id IS NOT NULL"
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
conditions = [conditions_str.join(" AND "), *conditions_arg]
|
53
|
+
if self.class.find(:first, :joins => "INNER JOIN page_translations ptrls ON ptrls.page_id = pages.id", :conditions => conditions )
|
54
|
+
errors.add('slug', "must be unique")
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
def save_translations_with_reset!
|
61
|
+
if reset_translations && I18n.locale.to_s != Globalize2Extension.default_language
|
62
|
+
self.translations.find_by_locale(I18n.locale.to_s).destroy
|
63
|
+
parts.each do |part|
|
64
|
+
part.translations.find_by_locale(I18n.locale.to_s).destroy
|
65
|
+
end
|
66
|
+
else
|
67
|
+
save_translations_without_reset!
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
def path_with_globalize
|
72
|
+
unless parent || Globalize2Extension.locales.size <= 1
|
73
|
+
'/' + I18n.locale.to_s + path_without_globalize
|
74
|
+
else
|
75
|
+
path_without_globalize
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
def clone
|
80
|
+
new_page = super
|
81
|
+
translations.each do |t|
|
82
|
+
new_page.translations << t.clone
|
83
|
+
end
|
84
|
+
new_page
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
88
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module Globalize2
|
2
|
+
module PagePartExtensions
|
3
|
+
def self.included(base)
|
4
|
+
base.alias_method_chain :content, :globalize
|
5
|
+
end
|
6
|
+
|
7
|
+
def clone
|
8
|
+
new_page_part = super
|
9
|
+
translations.each do |t|
|
10
|
+
new_page_part.translations << t.clone
|
11
|
+
end
|
12
|
+
new_page_part
|
13
|
+
end
|
14
|
+
|
15
|
+
def content_with_globalize
|
16
|
+
I18n.with_locale(Globalize2Extension.content_locale) do
|
17
|
+
content_without_globalize
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module Globalize2
|
2
|
+
module SiteControllerExtensions
|
3
|
+
def self.included(base)
|
4
|
+
base.send(:include, InstanceMethods)
|
5
|
+
base.class_eval do
|
6
|
+
alias_method_chain :find_page, :globalize
|
7
|
+
before_filter :set_locale
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
|
12
|
+
module InstanceMethods
|
13
|
+
def set_locale
|
14
|
+
@locale = params[:locale] || Globalize2Extension.default_language
|
15
|
+
Globalize2Extension.content_locale = I18n.locale = @locale.to_sym
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def find_page_with_globalize(url)
|
20
|
+
url = '/' + I18n.locale.to_s + '/' + url if Globalize2Extension.locales.size > 1
|
21
|
+
find_page_without_globalize(url)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
namespace :radiant do
|
2
|
+
namespace :extensions do
|
3
|
+
namespace :globalize2 do
|
4
|
+
|
5
|
+
desc "Runs the migration of the Globalize2 extension"
|
6
|
+
task :migrate => :environment do
|
7
|
+
require 'radiant/extension_migrator'
|
8
|
+
if ENV["VERSION"]
|
9
|
+
Globalize2Extension.migrator.migrate(ENV["VERSION"].to_i)
|
10
|
+
else
|
11
|
+
Globalize2Extension.migrator.migrate
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
desc "Copies public assets of the Globalize2 to the instance public/ directory."
|
16
|
+
task :update => :environment do
|
17
|
+
is_svn_or_dir = proc {|path| path =~ /\.svn/ || File.directory?(path) }
|
18
|
+
puts "Copying assets from Globalize2Extension"
|
19
|
+
Dir[Globalize2Extension.root + "/public/**/*"].reject(&is_svn_or_dir).each do |file|
|
20
|
+
path = file.sub(Globalize2Extension.root, '')
|
21
|
+
directory = File.dirname(path)
|
22
|
+
mkdir_p RAILS_ROOT + directory, :verbose => false
|
23
|
+
cp file, RAILS_ROOT + path, :verbose => false
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|