radiant-clipped-extension 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +22 -0
- data/README.md +230 -0
- data/Rakefile +109 -0
- data/app/controllers/admin/assets_controller.rb +60 -0
- data/app/controllers/admin/page_attachments_controller.rb +18 -0
- data/app/helpers/admin/assets_helper.rb +16 -0
- data/app/models/asset.rb +224 -0
- data/app/models/asset_tags.rb +384 -0
- data/app/models/asset_type.rb +170 -0
- data/app/models/old_page_attachment.rb +26 -0
- data/app/models/page_attachment.rb +21 -0
- data/app/views/admin/assets/_asset.html.haml +12 -0
- data/app/views/admin/assets/_asset_table.html.haml +30 -0
- data/app/views/admin/assets/_errors.html.haml +3 -0
- data/app/views/admin/assets/_form.html.haml +20 -0
- data/app/views/admin/assets/_page_assets.html.haml +12 -0
- data/app/views/admin/assets/_search.html.haml +17 -0
- data/app/views/admin/assets/_search_results.html.haml +17 -0
- data/app/views/admin/assets/edit.html.haml +40 -0
- data/app/views/admin/assets/index.html.haml +19 -0
- data/app/views/admin/assets/new.html.haml +24 -0
- data/app/views/admin/assets/refresh.html.haml +14 -0
- data/app/views/admin/assets/remove.html.haml +16 -0
- data/app/views/admin/configuration/_edit.html.haml +8 -0
- data/app/views/admin/configuration/_show.html.haml +12 -0
- data/app/views/admin/page_attachments/_attachment.html.haml +25 -0
- data/app/views/admin/page_parts/_page_part.html.haml +21 -0
- data/app/views/admin/pages/_asset_popups.html.haml +42 -0
- data/app/views/admin/pages/_assets.html.haml +11 -0
- data/app/views/admin/removed/_assets_bucket.html.haml +8 -0
- data/app/views/admin/removed/_assets_container.html.haml +58 -0
- data/app/views/admin/removed/_bucket.html.haml +11 -0
- data/app/views/admin/removed/_bucket_asset.html.haml +9 -0
- data/app/views/admin/removed/_show_bucket_link.html.haml +4 -0
- data/app/views/admin/removed/_upload_to_page.html.haml +12 -0
- data/app/views/admin/removed/bucket/_iframe.html.haml +1 -0
- data/artwork/icons.png +0 -0
- data/clipped_extension.rb +89 -0
- data/config/initializers/interpolation.rb +6 -0
- data/config/initializers/processors.rb +43 -0
- data/config/initializers/radiant_config.rb +34 -0
- data/config/locales/en.yml +108 -0
- data/config/locales/nl.yml +105 -0
- data/config/routes.rb +8 -0
- data/cucumber.yml +1 -0
- data/db/migrate/001_create_assets.rb +12 -0
- data/db/migrate/002_create_paperclip_attributes.rb +13 -0
- data/db/migrate/003_create_user_observer.rb +13 -0
- data/db/migrate/004_create_page_attachments.rb +19 -0
- data/db/migrate/005_rename_users.rb +13 -0
- data/db/migrate/20090316132151_disable_file_types.rb +20 -0
- data/db/migrate/20110513205050_asset_uuid.rb +11 -0
- data/db/migrate/20110606111250_update_configuration.rb +28 -0
- data/db/migrate/20110609101438_dimensions.rb +13 -0
- data/features/support/env.rb +11 -0
- data/features/support/paths.rb +22 -0
- data/lib/clipped_admin_ui.rb +32 -0
- data/lib/page_asset_associations.rb +13 -0
- data/lib/paperclip/frame_grab.rb +73 -0
- data/lib/paperclip/geometry_transformation.rb +79 -0
- data/lib/radiant-clipped-extension.rb +2 -0
- data/lib/radiant-clipped-extension/version.rb +3 -0
- data/lib/tasks/clipped_extension_tasks.rake +126 -0
- data/lib/tasks/paperclip_tasks.rake +79 -0
- data/public/flash/ZeroClipboard.swf +0 -0
- data/public/images/admin/assets/add.png +0 -0
- data/public/images/admin/assets/archive_icon.png +0 -0
- data/public/images/admin/assets/audio_icon.png +0 -0
- data/public/images/admin/assets/audio_thumbnail.png +0 -0
- data/public/images/admin/assets/c_icon.png +0 -0
- data/public/images/admin/assets/copy.png +0 -0
- data/public/images/admin/assets/css_icon.png +0 -0
- data/public/images/admin/assets/database_icon.png +0 -0
- data/public/images/admin/assets/delete.png +0 -0
- data/public/images/admin/assets/document_icon.png +0 -0
- data/public/images/admin/assets/document_thumbnail.png +0 -0
- data/public/images/admin/assets/flash_icon.png +0 -0
- data/public/images/admin/assets/flash_thumbnail.png +0 -0
- data/public/images/admin/assets/font_icon.png +0 -0
- data/public/images/admin/assets/gzip_icon.png +0 -0
- data/public/images/admin/assets/html_icon.png +0 -0
- data/public/images/admin/assets/image_icon.png +0 -0
- data/public/images/admin/assets/image_thumbnail.png +0 -0
- data/public/images/admin/assets/java_icon.png +0 -0
- data/public/images/admin/assets/page_edit.png +0 -0
- data/public/images/admin/assets/perl_icon.png +0 -0
- data/public/images/admin/assets/php_icon.png +0 -0
- data/public/images/admin/assets/presentation_icon.png +0 -0
- data/public/images/admin/assets/python_icon.png +0 -0
- data/public/images/admin/assets/reorder_assets.png +0 -0
- data/public/images/admin/assets/ruby_icon.png +0 -0
- data/public/images/admin/assets/script_icon.png +0 -0
- data/public/images/admin/assets/spreadsheet_icon.png +0 -0
- data/public/images/admin/assets/tar_icon.png +0 -0
- data/public/images/admin/assets/unknown_icon.png +0 -0
- data/public/images/admin/assets/unknown_thumbnail.png +0 -0
- data/public/images/admin/assets/video_icon.png +0 -0
- data/public/images/admin/assets/video_thumbnail.png +0 -0
- data/public/images/admin/assets/xml_icon.png +0 -0
- data/public/images/admin/assets/zip_icon.png +0 -0
- data/public/javascripts/admin/assets.js +296 -0
- data/public/stylesheets/sass/admin/assets.sass +209 -0
- data/radiant-clipped-extension.gemspec +33 -0
- data/spec/controllers/admin/assets_controller_spec.rb +50 -0
- data/spec/controllers/admin/page_attachments_controller_spec.rb +50 -0
- data/spec/datasets/assets_dataset.rb +35 -0
- data/spec/fixtures/test.flv +0 -0
- data/spec/lib/asset_tags_spec.rb +101 -0
- data/spec/lib/frame_grab_spec.rb +17 -0
- data/spec/lib/geometry_transformation_spec.rb +63 -0
- data/spec/models/asset_spec.rb +72 -0
- data/spec/models/asset_type_spec.rb +63 -0
- data/spec/spec.opts +6 -0
- data/spec/spec_helper.rb +36 -0
- data/wireframes/edit-page-assets-2.bmml +453 -0
- data/wireframes/edit-page-assets-2.png +0 -0
- data/wireframes/edit-page-assets-3.bmml +454 -0
- data/wireframes/edit-page-assets-3.png +0 -0
- data/wireframes/edit-page-assets.bmml +433 -0
- data/wireframes/edit-page-assets.png +0 -0
- data/wireframes/edit-page.bmml +174 -0
- data/wireframes/edit-page.png +0 -0
- metadata +249 -0
@@ -0,0 +1,108 @@
|
|
1
|
+
---
|
2
|
+
en:
|
3
|
+
assets: 'Assets'
|
4
|
+
asset_types:
|
5
|
+
all: 'All'
|
6
|
+
documents: 'Documents'
|
7
|
+
images: 'Images'
|
8
|
+
others: 'Others'
|
9
|
+
audios: 'Audio'
|
10
|
+
flashes: 'Flash'
|
11
|
+
videos: 'Video'
|
12
|
+
pdfs: 'PDFs'
|
13
|
+
swfs: 'Flash'
|
14
|
+
|
15
|
+
activerecord:
|
16
|
+
errors:
|
17
|
+
models:
|
18
|
+
asset:
|
19
|
+
attributes:
|
20
|
+
asset:
|
21
|
+
blank: 'You must choose a file to upload!'
|
22
|
+
|
23
|
+
clipped_extension:
|
24
|
+
actions: Actions
|
25
|
+
all: 'All'
|
26
|
+
all_thumbnails_refreshed: 'All asset thumbnails refreshed.'
|
27
|
+
alt_text_or_title: 'Alt-Text or Title <span class="hint">(optional)</span>'
|
28
|
+
asset: 'Asset'
|
29
|
+
asset_edit_title: 'Edit Asset'
|
30
|
+
asset_errors: 'Sorry. {{errors}}'
|
31
|
+
asset_page_attachment_note: 'Attached assets. These can be inserted with drag and drop or shown with the <code><r:assets:each /></code> tag.'
|
32
|
+
asset_note: 'Attached assets. '
|
33
|
+
assets: 'Assets'
|
34
|
+
assets_explanation: 'Assets and images can be uploaded and then attached or inserted into pages, snippets and layouts. Click on a asset name above to edit it or click <code>Remove</code> to delete it.'
|
35
|
+
assets_title: 'Assets'
|
36
|
+
asset_page_upload_note: 'Assets uploaded here will be automatically associated with this page.'
|
37
|
+
asset_upload_note: 'Choose an asset to upload here. If the <code>Title</code> field is left blank, the filename (without the file type) will be automatically added. By clicking on <code>More</code>, you can add a caption as well.'
|
38
|
+
attached_assets: 'Attached Assets'
|
39
|
+
attach: 'Attach'
|
40
|
+
attach_asset: 'attach asset'
|
41
|
+
attach_assets: 'Attach assets'
|
42
|
+
attach_existing: 'Attach Existing Assets'
|
43
|
+
attach_to_page: 'Attach to page'
|
44
|
+
audio: 'Audio'
|
45
|
+
cancel_attachment: 'Unattach'
|
46
|
+
copy: 'Copy'
|
47
|
+
copy_alt: 'copy radius tag to clipboard'
|
48
|
+
choose_file: 'Choose File'
|
49
|
+
documents: 'Documents'
|
50
|
+
caption: 'Caption'
|
51
|
+
confirm_refresh_assets: 'Are you sure you want to regenerate every asset thumbnail? This is likely to take a long time and use a lot of server resources: <strong class="warning">the performance of your site is very likely to be affected</strong> and your browser may time out before the operation is complete. This is only recommended if your asset collection is small!'
|
52
|
+
confirm_remove_asset: 'Are you sure you want to <strong class="warning">permanently remove</strong> the following asset?'
|
53
|
+
confirm_remove_from_page: 'Are you sure you want to remove this assets from the page?'
|
54
|
+
delete_asset: 'Delete Asset'
|
55
|
+
detach: 'Detach'
|
56
|
+
edit: 'Edit'
|
57
|
+
edit_asset: 'Edit {{asset}}'
|
58
|
+
filename: 'Filename'
|
59
|
+
find_assets: 'Find Assets'
|
60
|
+
images: 'Images'
|
61
|
+
images_automatically_created: 'images are automatically created'
|
62
|
+
insert: 'Insert'
|
63
|
+
modify: 'Modify'
|
64
|
+
movies: 'Movies'
|
65
|
+
need_to_upload: 'Need to upload?'
|
66
|
+
new_asset: 'New Asset'
|
67
|
+
no_assets_found: 'There were no assets found'
|
68
|
+
no_assets: 'No Assets'
|
69
|
+
no_attached_assets: 'No assets attached.'
|
70
|
+
others: 'Others'
|
71
|
+
refresh_assets: 'Regenerate all thumbnails'
|
72
|
+
regenerate: 'Regenerate'
|
73
|
+
regenerate_thumbnails: 'Regenerate Thumbnails'
|
74
|
+
remove_asset: 'Remove Asset'
|
75
|
+
remove_from_page: 'Remove from page'
|
76
|
+
reorder: 'Reorder'
|
77
|
+
remove: 'Remove'
|
78
|
+
refresh_assets_rake_task: 'For better results please log into your server and run <code>rake paperclip:refresh class=Asset</code>.'
|
79
|
+
replace_file: 'Replace File'
|
80
|
+
save_and_upload: 'Save and Upload'
|
81
|
+
search_assets: 'Search for assets'
|
82
|
+
search: 'Search'
|
83
|
+
select: 'Select'
|
84
|
+
thumbnails_refreshed: "Thumbnails refreshed."
|
85
|
+
title: 'Title'
|
86
|
+
type: 'Type'
|
87
|
+
types_to_find: 'Types to find'
|
88
|
+
upload: 'Upload'
|
89
|
+
upload_asset: 'Upload Asset'
|
90
|
+
|
91
|
+
config:
|
92
|
+
assets:
|
93
|
+
additional_thumbnails: 'Additional Thumbnails'
|
94
|
+
content_types: 'Content Types'
|
95
|
+
create_image_thumbnails?: 'Image thumbnails'
|
96
|
+
create_pdf_thumbnails?: 'PDF thumbnails'
|
97
|
+
create_video_thumbnails?: 'Video thumbnails'
|
98
|
+
display_size: 'Display Size'
|
99
|
+
insertion_size: 'Insertion Size'
|
100
|
+
max_asset_size: 'Max Asset Size'
|
101
|
+
path: 'Path'
|
102
|
+
s3:
|
103
|
+
bucket: 'Bucket'
|
104
|
+
key: 'Key'
|
105
|
+
secret: 'Secret'
|
106
|
+
skip_filetype_validation: 'Skip Filetype Validation'
|
107
|
+
storage: 'Storage'
|
108
|
+
url: 'Url'
|
@@ -0,0 +1,105 @@
|
|
1
|
+
---
|
2
|
+
nl:
|
3
|
+
assets: 'Bestanden'
|
4
|
+
asset_types:
|
5
|
+
all: 'Alle'
|
6
|
+
documents: 'Documenten'
|
7
|
+
images: 'Afbeeldingen'
|
8
|
+
others: 'Andere'
|
9
|
+
audios: 'Audio'
|
10
|
+
flashes: 'Flash'
|
11
|
+
videos: 'Video'
|
12
|
+
pdfs: 'PDFs'
|
13
|
+
swfs: 'Flash'
|
14
|
+
|
15
|
+
activerecord:
|
16
|
+
errors:
|
17
|
+
models:
|
18
|
+
asset:
|
19
|
+
attributes:
|
20
|
+
asset:
|
21
|
+
blank: 'Er werd geen bestand geselecteerd om te uploaden!'
|
22
|
+
|
23
|
+
clipped_extension:
|
24
|
+
actions: Acties
|
25
|
+
all: 'Alle'
|
26
|
+
alt_text_or_title: 'Alt-Tekst of Titel <span class="hint">(optioneel)</span>'
|
27
|
+
asset: 'Bestand'
|
28
|
+
asset_edit_title: 'Bestand aanpassen'
|
29
|
+
asset_errors: 'Sorry. {{errors}}'
|
30
|
+
asset_page_attachment_note: 'Gekoppelde bestanden. Deze kunnen ingevoegd worden d.m.v. "drag & drop" of met de <code><r:assets:each /></code> tag.'
|
31
|
+
asset_note: 'Gekoppelde bestanden. '
|
32
|
+
assets: 'Bestanden'
|
33
|
+
assets_explanation: "Bestanden en afbeeldingen kunnen geüpload worden, en daarna gekoppeld of ingevoegd in pagina's pages, snippets en layouts. Klik op de naam van een bestand om het aan te passen."
|
34
|
+
assets_title: 'Bestanden'
|
35
|
+
asset_page_upload_note: 'Bestanden die je hier uploadt, zullen automatisch gekoppeld zijn aan deze pagina.'
|
36
|
+
asset_upload_note: 'Kies hier een bestand dat je wil uploaden. Als je het <code>Titel</code> veld leeg laat, wordt de naam afgeleid van de bestandsnaam. Klik <code>More</code> om een onderschrift toe te voegen.'
|
37
|
+
attached_assets: 'Gekoppelde bestanden'
|
38
|
+
attach: 'Koppelen'
|
39
|
+
attach_asset: 'Bestand koppelen'
|
40
|
+
attach_assets: 'Bestanden koppelen'
|
41
|
+
attach_existing: 'Bestaande bestanden koppelen'
|
42
|
+
attach_to_page: 'Koppelen aan pagina'
|
43
|
+
audio: 'Audio'
|
44
|
+
cancel_attachment: 'Ontkoppelen'
|
45
|
+
copy: 'Kopieren'
|
46
|
+
copy_alt: 'kopieer radius tag naar je klembord'
|
47
|
+
choose_file: 'Kies bestand'
|
48
|
+
documents: 'Documenten'
|
49
|
+
caption: 'Onderschrift'
|
50
|
+
confirm_remove_asset: 'Ben je zeker dat je dit bestand <strong class="warning">permanent</strong> wil verwijderen?'
|
51
|
+
confirm_remove_from_page: 'Ben je zeker dat je dit bestand wilt ontkoppelen van deze pagina?'
|
52
|
+
delete_asset: 'Bestand Verwijderen'
|
53
|
+
detach: 'Ontkoppelen'
|
54
|
+
edit: 'Aanpassen'
|
55
|
+
edit_asset: '{{asset}} aanpassen'
|
56
|
+
filename: 'Bestandsnaam'
|
57
|
+
find_assets: 'Bestanden zoeken'
|
58
|
+
images: 'Afbeeldingen'
|
59
|
+
images_automatically_created: 'afbeeldingen worden automatisch gecreëerd'
|
60
|
+
insert: 'Invoegen'
|
61
|
+
modify: 'Bijwerken'
|
62
|
+
movies: 'Filmpjes'
|
63
|
+
need_to_upload: 'Een afbeelding uploaden?'
|
64
|
+
new_asset: 'Nieuw bestand'
|
65
|
+
no_assets_found: 'Er werden geen bestanden gevonden'
|
66
|
+
no_assets: 'Geen bestanden'
|
67
|
+
no_attached_assets: 'Geen gekoppelde bestanden.'
|
68
|
+
others: 'Andere'
|
69
|
+
regenerate_all_thumbnails: 'Je kunt hier alle thumbnails opnieuw genereren. Hou er rekening mee dat dit even kan duren, en zeer belastend kan zijn voor de server.'
|
70
|
+
regenerate: 'Opnieuw genereren'
|
71
|
+
regenerate_thumbnails: 'Thumbnails opnieuw genereren'
|
72
|
+
remove_asset: 'Bestand verwijderen'
|
73
|
+
remove_from_page: 'Verwijderen van pagina'
|
74
|
+
reorder: 'Herschikken'
|
75
|
+
remove: 'Verwijderen'
|
76
|
+
replace_file: 'Bestand vervangen'
|
77
|
+
save_and_upload: 'Opslaan en uploaden'
|
78
|
+
search_assets: 'Zoek naar bestanden'
|
79
|
+
search: 'Zoek'
|
80
|
+
select: 'Selecteer'
|
81
|
+
thumbnails_refreshed: "Thumbnails successvol vernieuwd."
|
82
|
+
title: 'Titel'
|
83
|
+
type: 'Type'
|
84
|
+
types_to_find: 'Te doorzoeken types'
|
85
|
+
upload: 'Uploaden'
|
86
|
+
upload_asset: 'Bestand Uploaden'
|
87
|
+
|
88
|
+
config:
|
89
|
+
assets:
|
90
|
+
additional_thumbnails: 'Bijkomende thumbnail types'
|
91
|
+
content_types: 'Content Types'
|
92
|
+
create_image_thumbnails?: 'Genereer afbeelding thumbnails'
|
93
|
+
create_pdf_thumbnails?: 'Genereer PDF thumbnails'
|
94
|
+
create_video_thumbnails?: 'Genereer Video thumbnails'
|
95
|
+
display_size: 'Display Size'
|
96
|
+
insertion_size: 'Insertion Size'
|
97
|
+
max_asset_size: 'Max Asset Size'
|
98
|
+
path: 'Pad'
|
99
|
+
s3:
|
100
|
+
bucket: 'Bucket'
|
101
|
+
key: 'Key'
|
102
|
+
secret: 'Secret'
|
103
|
+
skip_filetype_validation: 'Laat alle bestandstypes toe'
|
104
|
+
storage: 'Storage'
|
105
|
+
url: 'Url'
|
data/config/routes.rb
ADDED
@@ -0,0 +1,8 @@
|
|
1
|
+
ActionController::Routing::Routes.draw do |map|
|
2
|
+
map.namespace :admin, :member => { :remove => :get } do |admin|
|
3
|
+
admin.resources :assets, :collection => { :refresh => :get, :regenerate => :post }, :member => { :refresh => :put }
|
4
|
+
admin.resources :page_attachments, :only => [:new]
|
5
|
+
admin.resources :pages, :has_many => :page_attachments
|
6
|
+
end
|
7
|
+
end
|
8
|
+
|
data/cucumber.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
default: --format progress features --tags ~@proposed,~@in_progress
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreatePaperclipAttributes < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
add_column :assets, :asset_file_name, :string
|
4
|
+
add_column :assets, :asset_content_type, :string
|
5
|
+
add_column :assets, :asset_file_size, :integer
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.down
|
9
|
+
remove_column :assets, :asset_file_name
|
10
|
+
remove_column :assets, :asset_content_type
|
11
|
+
remove_column :assets, :asset_file_size
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class CreateUserObserver < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
add_column :assets, :created_by, :integer
|
4
|
+
add_column :assets, :updated_by, :integer
|
5
|
+
add_column :assets, :created_at, :datetime
|
6
|
+
add_column :assets, :updated_at, :datetime
|
7
|
+
end
|
8
|
+
|
9
|
+
def self.down
|
10
|
+
remove_column :assets, :created_by
|
11
|
+
remove_column :assets, :updated_by
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,19 @@
|
|
1
|
+
class CreatePageAttachments < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
# See if a page_attachments table from the original 'page_attachments' extension already exists
|
4
|
+
# If so, rename the table to old_page_attachments so they can be migrated later
|
5
|
+
if self.connection.tables.include?('page_attachments')
|
6
|
+
rename_table :page_attachments, :old_page_attachments
|
7
|
+
end
|
8
|
+
create_table :page_attachments do |t|
|
9
|
+
t.column :asset_id, :integer
|
10
|
+
t.column :page_id, :integer
|
11
|
+
t.column :position, :integer
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.down
|
17
|
+
drop_table :page_attachments
|
18
|
+
end
|
19
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class RenameUsers < ActiveRecord::Migration
|
2
|
+
|
3
|
+
def self.up
|
4
|
+
rename_column :assets, :created_by, :created_by_id
|
5
|
+
rename_column :assets, :updated_by, :updated_by_id
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.down
|
9
|
+
rename_column :assets, :created_by_id, :created_by
|
10
|
+
rename_column :assets, :updated_by_id, :updated_by
|
11
|
+
end
|
12
|
+
|
13
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class DisableFileTypes < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
if defined? SettingsExtension && Radiant::Config.column_names.include?('description')
|
4
|
+
puts "-- Adding Settings Extension descriptions for assets.skip_filetype_validations"
|
5
|
+
|
6
|
+
Radiant::Config.find(:all).each do |c|
|
7
|
+
description = case c.key
|
8
|
+
when 'assets.skip_filetype_validations'
|
9
|
+
'When set to true, disables the filetype validations. Set to false to enable them.'
|
10
|
+
else
|
11
|
+
c.description
|
12
|
+
end
|
13
|
+
c.update_attribute :description, description
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.down
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,28 @@
|
|
1
|
+
class UpdateConfiguration < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
if Radiant.config.table_exists?
|
4
|
+
|
5
|
+
puts "Importing paperclip configuration"
|
6
|
+
%w{url path skip_filetype_validation storage}.select{|k| !!Radiant.config["assets.#{k}"] }.each do |k|
|
7
|
+
Radiant.config["paperclip.#{k}"] = Radiant.config["assets.#{k}"]
|
8
|
+
end
|
9
|
+
|
10
|
+
puts "Importing s3 storage configuration"
|
11
|
+
%w{bucket key secret host_alias}.select{|k| !!Radiant.config["assets.s3.#{k}"] }.each do |k|
|
12
|
+
Radiant.config["paperclip.s3.#{k}"] = Radiant.config["assets.s3.#{k}"]
|
13
|
+
end
|
14
|
+
|
15
|
+
puts "Importing thumbnail configuration"
|
16
|
+
if thumbnails = Radiant.config["assets.additional_thumbnails"]
|
17
|
+
old_styles = thumbnails.to_s.gsub(' ','').split(',').collect{|s| s.split('=')}.inject({}) {|ha, (k, v)| ha[k.to_sym] = v; ha}
|
18
|
+
new_styles = old_styles.map {|k,v| "#{k}:size=#{v}"}
|
19
|
+
Radiant.config["assets.thumbnails.image"] = new_styles.join("|")
|
20
|
+
Radiant.config["assets.thumbnails.video"] = new_styles.map{|s| "#{s},format=jpg"}.join("|")
|
21
|
+
Radiant.config["assets.thumbnails.pdf"] = new_styles.map{|s| "#{s},format=jpg"}.join("|")
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
def self.down
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,13 @@
|
|
1
|
+
class Dimensions < ActiveRecord::Migration
|
2
|
+
def self.up
|
3
|
+
add_column :assets, :original_width, :integer
|
4
|
+
add_column :assets, :original_height, :integer
|
5
|
+
add_column :assets, :original_extension, :string
|
6
|
+
end
|
7
|
+
|
8
|
+
def self.down
|
9
|
+
remove_column :assets, :original_width
|
10
|
+
remove_column :assets, :original_height
|
11
|
+
remove_column :assets, :original_extension
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
# Sets up the Rails environment for Cucumber
|
2
|
+
ENV["RAILS_ENV"] = "test"
|
3
|
+
# Extension root
|
4
|
+
extension_env = File.expand_path(File.dirname(__FILE__) + '/../../../../../config/environment')
|
5
|
+
require extension_env+'.rb'
|
6
|
+
|
7
|
+
Dir.glob(File.join(RADIANT_ROOT, "features", "**", "*.rb")).each {|step| require step unless step =~ /datasets_loader\.rb$/}
|
8
|
+
|
9
|
+
Cucumber::Rails::World.class_eval do
|
10
|
+
dataset :assets
|
11
|
+
end
|
@@ -0,0 +1,22 @@
|
|
1
|
+
module NavigationHelpers
|
2
|
+
|
3
|
+
# Extend the standard PathMatchers with your own paths
|
4
|
+
# to be used in your features.
|
5
|
+
#
|
6
|
+
# The keys and values here may be used in your standard web steps
|
7
|
+
# Using:
|
8
|
+
#
|
9
|
+
# When I go to the "assets" admin page
|
10
|
+
#
|
11
|
+
# would direct the request to the path you provide in the value:
|
12
|
+
#
|
13
|
+
# admin_assets_path
|
14
|
+
#
|
15
|
+
PathMatchers = {} unless defined?(PathMatchers)
|
16
|
+
PathMatchers.merge!({
|
17
|
+
# /assets/i => 'admin_assets_path'
|
18
|
+
})
|
19
|
+
|
20
|
+
end
|
21
|
+
|
22
|
+
World(NavigationHelpers)
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module ClippedAdminUI
|
2
|
+
|
3
|
+
def self.included(base)
|
4
|
+
base.class_eval do
|
5
|
+
|
6
|
+
attr_accessor :asset
|
7
|
+
alias_method :assets, :asset
|
8
|
+
|
9
|
+
protected
|
10
|
+
|
11
|
+
def load_default_asset_regions
|
12
|
+
OpenStruct.new.tap do |asset|
|
13
|
+
asset.edit = Radiant::AdminUI::RegionSet.new do |edit|
|
14
|
+
edit.main.concat %w{edit_header edit_form edit_regenerate}
|
15
|
+
edit.form.concat %w{edit_title edit_metadata}
|
16
|
+
end
|
17
|
+
asset.new = asset.edit
|
18
|
+
asset.index = Radiant::AdminUI::RegionSet.new do |index|
|
19
|
+
index.top.concat %w{filters}
|
20
|
+
index.bottom.concat %w{}
|
21
|
+
index.thead.concat %w{thumbnail_header content_type_header actions_header}
|
22
|
+
index.tbody.concat %w{thumbnail_cell title_cell content_type_cell actions_cell}
|
23
|
+
index.paginate
|
24
|
+
end
|
25
|
+
asset.remove = asset.index
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|