uploader 0.1.3

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.
Files changed (75) hide show
  1. data/MIT-LICENSE +20 -0
  2. data/README.rdoc +275 -0
  3. data/Rakefile +66 -0
  4. data/TODO +2 -0
  5. data/VERSION +1 -0
  6. data/app/controllers/uploader/uploads_controller.rb +122 -0
  7. data/app/helpers/uploader_helper.rb +17 -0
  8. data/app/views/uploads/_swf_javascript.html.erb +63 -0
  9. data/app/views/uploads/_swf_upload.html.erb +32 -0
  10. data/config/uploader_routes.rb +3 -0
  11. data/db/migrate/20090517040220_create_uploads.rb +38 -0
  12. data/lib/active_record/acts/uploader_upload.rb +235 -0
  13. data/lib/uploader/exceptions.rb +5 -0
  14. data/lib/uploader/initialize_routes.rb +8 -0
  15. data/lib/uploader/middleware/flash_session_cookie_middleware.rb +18 -0
  16. data/lib/uploader/mime_type_groups.rb +18 -0
  17. data/lib/uploader/tasks.rb +36 -0
  18. data/lib/uploader.rb +24 -0
  19. data/locales/ar.yml +17 -0
  20. data/locales/bg.yml +17 -0
  21. data/locales/ca.yml +17 -0
  22. data/locales/cs.yml +17 -0
  23. data/locales/da.yml +17 -0
  24. data/locales/de.yml +17 -0
  25. data/locales/el.yml +17 -0
  26. data/locales/en.yml +16 -0
  27. data/locales/es.yml +17 -0
  28. data/locales/fr.yml +17 -0
  29. data/locales/it.yml +17 -0
  30. data/locales/iw.yml +17 -0
  31. data/locales/ja.yml +17 -0
  32. data/locales/ko.yml +17 -0
  33. data/locales/lt.yml +17 -0
  34. data/locales/lv.yml +17 -0
  35. data/locales/nl.yml +17 -0
  36. data/locales/no.yml +18 -0
  37. data/locales/pl.yml +17 -0
  38. data/locales/pt.yml +17 -0
  39. data/locales/ro.yml +17 -0
  40. data/locales/ru.yml +17 -0
  41. data/locales/sk.yml +17 -0
  42. data/locales/sl.yml +17 -0
  43. data/locales/sr.yml +17 -0
  44. data/locales/sv.yml +17 -0
  45. data/locales/tl.yml +17 -0
  46. data/locales/uk.yml +17 -0
  47. data/locales/vi.yml +17 -0
  48. data/locales/zh-CN.yml +17 -0
  49. data/locales/zh-TW.yml +17 -0
  50. data/locales/zh.yml +17 -0
  51. data/pkg/uploader-0.1.0.gem +0 -0
  52. data/pkg/uploader-0.1.1.gem +0 -0
  53. data/pkg/uploader-0.1.2.gem +0 -0
  54. data/public/images/SWFUploadButton.png +0 -0
  55. data/public/images/file_icons/excel.gif +0 -0
  56. data/public/images/file_icons/file.gif +0 -0
  57. data/public/images/file_icons/mp3.gif +0 -0
  58. data/public/images/file_icons/pdf.gif +0 -0
  59. data/public/images/file_icons/text.gif +0 -0
  60. data/public/images/file_icons/word.gif +0 -0
  61. data/public/javascripts/swfupload/fileprogress.js +151 -0
  62. data/public/javascripts/swfupload/handlers.js +206 -0
  63. data/public/javascripts/swfupload/swfupload.cookies.js +53 -0
  64. data/public/javascripts/swfupload/swfupload.js +945 -0
  65. data/public/javascripts/swfupload/swfupload.queue.js +77 -0
  66. data/public/javascripts/swfupload/swfupload.swfobject.js +110 -0
  67. data/public/stylesheets/swfupload.css +26 -0
  68. data/public/swf/swfupload.swf +0 -0
  69. data/rails/init.rb +10 -0
  70. data/tasks/rails.rake +2 -0
  71. data/test/test_helper.rb +3 -0
  72. data/test/unit/upload_test.rb +5 -0
  73. data/uninstall.rb +0 -0
  74. data/uploader.gemspec +127 -0
  75. metadata +128 -0
@@ -0,0 +1,235 @@
1
+ module ActiveRecord
2
+ module Acts #:nodoc:
3
+
4
+ module UploaderUpload #:nodoc:
5
+ def self.included(base)
6
+ base.extend(ClassMethods)
7
+ end
8
+
9
+ module ClassMethods
10
+
11
+ # acts_as_uploader requires an option for :has_attached_file. These values will be passed to paperclip.
12
+ # i.e.
13
+ # acts_as_uploader :has_attached_file => {
14
+ # :url => "/uploads/:class/:id/:style_:basename.:extension",
15
+ # :path => ":rails_root/public/uploads/:class/:id/:style_:basename.:extension",
16
+ # :styles => { :icon => "30x30!", :thumb => "100>", :small => "150>", :medium => "300>", :large => "660>"},
17
+ # :default_url => "/images/profile_default.jpg" }
18
+ def acts_as_uploader(options)
19
+
20
+ #Named scopes
21
+ named_scope :newest_first, :order => "created_at DESC"
22
+ named_scope :alphabetic, :order => "filename DESC"
23
+ named_scope :recent, :order => "created_at DESC"
24
+ named_scope :public, :conditions => 'is_public = true'
25
+ named_scope :images, :conditions => "local_content_type IN (#{Uploader::MimeTypeGroups::IMAGE_TYPES.collect{|type| "'#{type}'"}.join(',')})"
26
+ named_scope :documents, :conditions => "local_content_type IN (#{(Uploader::MimeTypeGroups::WORD_TYPES + Uploader::MimeTypeGroups::EXCEL_TYPES + Uploader::MimeTypeGroups::PDF_TYPES).collect{|type| "'#{type}'"}.join(',')})"
27
+ named_scope :files, :conditions => "local_content_type NOT IN (#{Uploader::MimeTypeGroups::IMAGE_TYPES.collect{|type| "'#{type}'"}.join(',')})"
28
+ named_scope :since, lambda { |*args| { :conditions => ["created_at > ?", (args.first || 7.days.ago.to_s(:db)) ]} }
29
+ named_scope :pending_s3_migration, lambda {
30
+ { :conditions => ["remote_file_name IS NULL AND created_at <= ?", 20.minutes.ago.to_s(:db)],
31
+ :order => 'created_at DESC',
32
+ :limit => 1 }
33
+ }
34
+
35
+ # Paperclip
36
+ has_attached_file :local, options[:has_attached_file].merge(:storage => :filesystem) # Override any storage settings. This one has to be local.
37
+ if options[:enable_s3] == true
38
+ has_attached_file :remote, options[:has_attached_file]
39
+ end
40
+
41
+
42
+ belongs_to :uploadable, :polymorphic => true
43
+ belongs_to :creator, :class_name => 'User', :foreign_key => 'creator_id'
44
+
45
+ class_eval <<-EOV
46
+ validates_attachment_size :local, :less_than => 10.megabytes
47
+ before_post_process :transliterate_file_name
48
+ before_create :add_width_and_height
49
+
50
+ # prevents a user from submitting a crafted form that bypasses activation
51
+ attr_protected :creator_id, :uploadable_id, :uploadable_type
52
+ EOV
53
+
54
+ include ActiveRecord::Acts::UploaderUpload::InstanceMethods
55
+ extend ActiveRecord::Acts::UploaderUpload::SingletonMethods
56
+ end
57
+ end
58
+
59
+ # class methods
60
+ module SingletonMethods
61
+
62
+ end
63
+
64
+ # All the methods available to a record that has had <tt>acts_as_uploader</tt> specified.
65
+ module InstanceMethods
66
+
67
+ def file
68
+ local_file_name ? local : remote
69
+ end
70
+
71
+ def file_name
72
+ remote_file_name || local_file_name
73
+ end
74
+
75
+ def send_to_remote
76
+ if local_file_name
77
+ self.remote = local.to_file
78
+ if self.save and remote.original_filename and remote.exists?
79
+ self.local = nil
80
+ self.save
81
+ else
82
+ false
83
+ end
84
+ end
85
+ end
86
+
87
+ def swfupload_local=(filedata)
88
+ filedata.content_type = MIME::Types.type_for(filedata.original_filename)[0].to_s
89
+ self.local = filedata
90
+ end
91
+
92
+ def is_image?
93
+ Uploader::MimeTypeGroups::IMAGE_TYPES.include?(self.local_content_type)
94
+ end
95
+
96
+ def is_mp3?
97
+ Uploader::MimeTypeGroups::MP3_TYPES.include?(self.local_content_type)
98
+ end
99
+
100
+ def is_excel?
101
+ Uploader::MimeTypeGroups::EXCEL_TYPES.include?(self.local_content_type)
102
+ end
103
+
104
+ def is_pdf?
105
+ Uploader::MimeTypeGroups::PDF_TYPES.include?(self.local_content_type)
106
+ end
107
+
108
+ def is_word?
109
+ Uploader::MimeTypeGroups::WORD_TYPES.include?(self.local_content_type)
110
+ end
111
+
112
+ def is_text?
113
+ Uploader::MimeTypeGroups::TEXT_TYPES.include?(self.local_content_type)
114
+ end
115
+
116
+ def upload_type
117
+ if self.is_pdf?
118
+ 'Adobe pdf file'
119
+ elsif self.is_word?
120
+ 'Word document'
121
+ elsif self.is_image?
122
+ 'photo'
123
+ elsif self.is_mp3?
124
+ 'mp3'
125
+ elsif self.is_excel?
126
+ 'Excel document'
127
+ elsif self.is_text?
128
+ 'text file'
129
+ else
130
+ 'file'
131
+ end
132
+ end
133
+
134
+ def icon
135
+ if self.is_pdf?
136
+ '/images/file_icons/pdf.gif'
137
+ elsif self.is_word?
138
+ '/images/file_icons/word.gif'
139
+ elsif self.is_image?
140
+ self.file.url(:icon)
141
+ elsif self.is_mp3?
142
+ '/images/file_icons/mp3.gif'
143
+ elsif self.is_excel?
144
+ '/images/file_icons/excel.gif'
145
+ elsif self.is_text?
146
+ '/images/file_icons/text.gif'
147
+ else
148
+ '/images/file_icons/file.gif'
149
+ end
150
+ end
151
+
152
+ def display_name
153
+ CGI::escapeHTML(self.local_file_name)
154
+ end
155
+
156
+ def can_edit?(check_user)
157
+ return false if check_user.blank?
158
+ check_user == self.creator
159
+ end
160
+
161
+ # Image dimension calculations
162
+
163
+ def width(style = :default)
164
+ return nil unless self[:width]
165
+ return self[:width] if style == :default
166
+ calculate_sizes(style.to_sym)
167
+ return @image_width.to_i
168
+ end
169
+
170
+ def height(style = :default)
171
+ return nil unless self[:height]
172
+ return self[:height] if style == :default
173
+ calculate_sizes(style.to_sym)
174
+ return @image_height.to_i
175
+ end
176
+
177
+ def size(style = :default)
178
+ return nil unless width || height
179
+ return "#{width}x#{height}" if style == :default
180
+ calculate_sizes(style.to_sym)
181
+ return @image_size
182
+ end
183
+
184
+ def max_dimension(style)
185
+ @max_dimension ||= Paperclip::Geometry.parse(self.local.styles[style][:geometry]).width.to_f
186
+ end
187
+
188
+ def image_ratio
189
+ @image_ratio ||= width.to_f / height.to_f
190
+ end
191
+
192
+ def calculate_sizes(style)
193
+ if image_ratio > 1
194
+ @image_width ||= width > max_dimension(style) ? max_dimension(style) : width
195
+ @image_height ||= (@image_width / image_ratio).round
196
+ else
197
+ @image_height ||= height > max_dimension(style) ? max_dimension(style) : height
198
+ @image_width ||= (@image_height * image_ratio).round
199
+ end
200
+ @image_size ||= "#{@image_width.to_i}x#{@image_height.to_i}"
201
+ end
202
+
203
+ protected
204
+ def transliterate_file_name
205
+ extension = File.extname(local_file_name).gsub(/^\.+/, '')
206
+ filename = local_file_name.gsub(/\.#{extension}$/, '')
207
+ self.local.instance_write(:file_name, "#{transliterate(filename)}.#{transliterate(extension)}")
208
+ end
209
+
210
+ def transliterate(str)
211
+ # Lifted from permalink_fu by Rick Olsen
212
+ # Escape str by transliterating to UTF-8 with Iconv,
213
+ # downcasing, then removing illegal characters and replacing them with ’-’
214
+ s = Iconv.iconv('ascii//ignore//translit', 'utf-8', str).to_s
215
+ s.downcase!
216
+ s.gsub!(/\'/, '')
217
+ s.gsub!(/[^A-Za-z0-9]+/, ' ')
218
+ s.strip!
219
+ s.gsub!(/\ +/, '-') # set single or multiple spaces to a single dash
220
+ return s
221
+ end
222
+
223
+ def add_width_and_height
224
+ return unless self.is_image?
225
+ if self.local.to_file
226
+ geometry = Paperclip::Geometry.from_file self.local.to_file
227
+ self[:width] = geometry.width.to_i
228
+ self[:height] = geometry.height.to_i
229
+ end
230
+ end
231
+
232
+ end
233
+ end
234
+ end
235
+ end
@@ -0,0 +1,5 @@
1
+ module Uploader
2
+ module Exceptions
3
+ class MissingTemplateError < StandardError; end
4
+ end
5
+ end
@@ -0,0 +1,8 @@
1
+ class ActionController::Routing::RouteSet
2
+ def load_routes_with_uploader!
3
+ uploader_routes = File.join(File.dirname(__FILE__), *%w[.. .. config uploader_routes.rb])
4
+ add_configuration_file(uploader_routes) unless configuration_files.include? uploader_routes
5
+ load_routes_without_uploader!
6
+ end
7
+ alias_method_chain :load_routes!, :uploader
8
+ end
@@ -0,0 +1,18 @@
1
+ require 'rack/utils'
2
+
3
+ module Uploader
4
+ class FlashSessionCookieMiddleware
5
+ def initialize(app, session_key = '_session_id')
6
+ @app = app
7
+ @session_key = session_key
8
+ end
9
+
10
+ def call(env)
11
+ if env['HTTP_USER_AGENT'] =~ /^(Adobe|Shockwave) Flash/
12
+ params = ::Rack::Utils.parse_query(env['QUERY_STRING'])
13
+ env['HTTP_COOKIE'] = [ @session_key, params[@session_key] ].join('=').freeze unless params[@session_key].nil?
14
+ end
15
+ @app.call(env)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ module Uploader
2
+ module MimeTypeGroups
3
+
4
+ IMAGE_TYPES = ['image/jpeg', 'image/pjpeg', 'image/gif', 'image/png', 'image/x-png', 'image/jpg']
5
+ MP3_TYPES = ['audio/mpeg', 'audio/mpeg3', 'audio/x-mpeg-3', 'video/mpeg', 'video/x-mpeg']
6
+ EXCEL_TYPES = ['application/excel', 'application/excel', 'application/x-excel', 'application/x-msexcel', 'application/excel',
7
+ 'application/vnd.ms-excel', 'application/x-excel', 'application/excel', 'application/vnd.ms-excel',
8
+ 'application/x-excel', 'application/excel', 'application/x-excel', 'application/excel', 'application/x-excel', 'application/excel',
9
+ 'application/vnd.ms-excel', 'application/x-excel', 'application/excel', 'application/vnd.ms-excel',
10
+ 'application/x-excel', 'application/excel', 'application/vnd.ms-excel', 'application/x-excel',
11
+ 'application/x-msexcel', 'application/excel', 'application/x-excel', 'application/excel',
12
+ 'application/x-excel', 'application/excel', 'application/vnd.ms-excel', 'application/x-excel',
13
+ 'application/x-msexcel', 'application/vnd.oasis.opendocument.spreadsheet']
14
+ PDF_TYPES = ['application/pdf']
15
+ WORD_TYPES = ['application/word', 'application/msword']
16
+ TEXT_TYPES = ['text/plain']
17
+ end
18
+ end
@@ -0,0 +1,36 @@
1
+ require 'rake'
2
+ require 'rake/tasklib'
3
+ require 'fileutils'
4
+
5
+ module Uploader
6
+ class Tasks < ::Rake::TaskLib
7
+ def initialize
8
+ define
9
+ end
10
+
11
+ private
12
+ def define
13
+ namespace :uploader do
14
+
15
+ task :app_env do
16
+ Rake::Task[:environment].invoke if defined?(RAILS_ROOT)
17
+ end
18
+
19
+ desc 'Send all uploads to S3'
20
+ task :upload_to_s3 do
21
+ # TODO write rake task to upload to s3
22
+ end
23
+
24
+ desc "Sync required files from uploader."
25
+ task :sync do
26
+ path = File.join(File.dirname(__FILE__), *%w[.. ..])
27
+ puts path
28
+ system "rsync -ruv #{path}/public ."
29
+ system "rsync -ruv #{path}/db ."
30
+ end
31
+
32
+ end
33
+ end
34
+ end
35
+ end
36
+ Uploader::Tasks.new
data/lib/uploader.rb ADDED
@@ -0,0 +1,24 @@
1
+ require 'uploader/exceptions'
2
+ require 'uploader/mime_type_groups'
3
+ require 'uploader/middleware/flash_session_cookie_middleware'
4
+
5
+ begin
6
+ require 'thoughtbot-paperclip'
7
+ rescue LoadError
8
+ begin
9
+ gem 'thoughtbot-paperclip'
10
+ rescue Gem::LoadError
11
+ puts "Please install the thoughtbot-paperclip gem"
12
+ end
13
+ end
14
+
15
+
16
+ begin
17
+ require 'mime/types'
18
+ rescue LoadError
19
+ begin
20
+ gem 'mime-types'
21
+ rescue Gem::LoadError
22
+ puts "Please install the mime-types gem"
23
+ end
24
+ end
data/locales/ar.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ ar:
3
+ uploader:
4
+ cancel_all: "إلغاء جميع عمليات التحميل"
5
+ file_delete_permission_denied: "ليس لديك إذن لحذف هذا الملف."
6
+ file_deleted: "حذف الملفات"
7
+ file_upload_error: "حدث خطأ أثناء تحميل الملف."
8
+ javascript_not_enabled: "عذرا. SWFUpload لا يمكن تحميل. يجب أن يكون لديك إلى تشغيل الجافا سكريبت ليتمتع SWFUpload."
9
+ missing_parent_id_error: "يرجى تحديد وجوه أحد الوالدين"
10
+ permission_denied: "ليس لديك إذن لإكمال هذا العمل."
11
+ standard_file_upload_error: "حدث خطأ أثناء تحميل الملف : {{error}}. يرجى التأكد من أن الملف هو صحيح. فحص للتأكد من الملف ليس فارغا. ثم حاول مرة أخرى."
12
+ successful_upload: "الملف الذي تم تحميله بنجاح."
13
+ swf_loading: "SWFUpload هو تحميل. يرجى الانتظار قليلا..."
14
+ swf_not_loading: "عذرا. SWFUpload لا يمكن تحميل. قد تحتاج إلى تثبيت أو تحديث فلاش لاعب. زيارة {{url}}للحصول على فلاش لاعب."
15
+ swf_taking_to_long: "SWFUpload يأخذ وقتا طويلا لتحميل أو الحمل قد فشلت. يرجى التأكد من ان البرنامج المساعد فلاش تمكين وعمل نسخة من أدوبي فلاش لاعب مثبتة."
16
+ upload_file: "تحميل الملف"
17
+ upload_files: "تحميل ملفات"
data/locales/bg.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ bg:
3
+ uploader:
4
+ cancel_all: "Отмени Всички Качването"
5
+ file_delete_permission_denied: "Вие нямате разрешение да изтриете този файл."
6
+ file_deleted: "Изтрити файлове"
7
+ file_upload_error: "Възникна грешка при качването на файла."
8
+ javascript_not_enabled: "Съжаляваме. SWFUpload не можа да се зареди. Трябва да имате активиран JavaScript за да се насладите SWFUpload."
9
+ missing_parent_id_error: "Моля, посочете майка обект"
10
+ permission_denied: "Вие нямате разрешение да се извърши съответното действие."
11
+ standard_file_upload_error: "Възникна грешка при качването на файла: {{error}}. Уверете се, че файлът е валиден. Проверете дали файлът не е празна. След това опитайте отново."
12
+ successful_upload: "Успешно качен файл."
13
+ swf_loading: "SWFUpload се зарежда. Моля изчакайте за момент ..."
14
+ swf_not_loading: "Съжаляваме. SWFUpload не можа да се зареди. Може да се наложи да инсталирате или надграждане на Flash Player. Посетете {{url}} да отида на Flash Player."
15
+ swf_taking_to_long: "SWFUpload е необходимо много време, за да заредите или товар е неуспешно. Моля, уверете се, че Flash Plug-in е включено и че работна версия на Adobe Flash Player е инсталиран."
16
+ upload_file: "Качване на файла"
17
+ upload_files: "Качване на файлове"
data/locales/ca.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ ca:
3
+ uploader:
4
+ cancel_all: "Cancel la totes les Càrregues"
5
+ file_delete_permission_denied: "Vostè no té permís per eliminar aquest arxiu."
6
+ file_deleted: "Suprimeix el fitxer"
7
+ file_upload_error: "S&#39;ha produït un error en carregar l&#39;arxiu."
8
+ javascript_not_enabled: "Ho sentim. SWFUpload no ha pogut carregar. Vostè ha d&#39;activar Javascript per poder gaudir de SWFUpload."
9
+ missing_parent_id_error: "Si us plau, especifiqueu un objecte pare"
10
+ permission_denied: "Vostè no té permís per completar aquesta acció."
11
+ standard_file_upload_error: "S&#39;ha produït un error en carregar l&#39;arxiu: {{error}}. Si us plau, assegureu-vos que el fitxer és vàlid. Assegureu-vos que l&#39;arxiu no està buit. Torneu a intentar-ho."
12
+ successful_upload: "Arxiu pujat amb èxit."
13
+ swf_loading: "SWFUpload s&#39;està carregant. Si us plau, espereu un moment ..."
14
+ swf_not_loading: "Ho sentim. SWFUpload no ha pogut carregar. És possible que necessiteu instal lar o actualitzar Flash Player. Visiteu el {{url}} per obtenir el Flash Player."
15
+ swf_taking_to_long: "SWFUpload està prenent molt de temps en la càrrega o la càrrega ha fallat. Si us plau, assegureu-vos que el plugin de Flash està activada i que un grup de treball de la versió de Adobe Flash Player instal lat."
16
+ upload_file: Carrega
17
+ upload_files: "Pujar arxius"
data/locales/cs.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ cs:
3
+ uploader:
4
+ cancel_all: "Zrušit všech uploadů"
5
+ file_delete_permission_denied: "Nemáte oprávnění ke smazání souboru."
6
+ file_deleted: "Vypouští soubor"
7
+ file_upload_error: "Vyskytla se chyba při nahrávání souboru."
8
+ javascript_not_enabled: "Omlouváme se. SWFUpload nelze načíst. Musíte mít povolen JavaScript těšit SWFUpload."
9
+ missing_parent_id_error: "Prosíme, uveďte mateřský objekt"
10
+ permission_denied: "Nemáte oprávnění k dokončení této akce."
11
+ standard_file_upload_error: "Vyskytla se chyba při nahrávání souboru: {{error}}. Prosím ujistěte se, že soubor je platný. Zkontrolujte, soubor není prázdná. Pak zkuste to znovu."
12
+ successful_upload: "Úspěšně uploadovaný soubor."
13
+ swf_loading: "SWFUpload se načítá. Prosím, vyčkejte chvíli ..."
14
+ swf_not_loading: "Omlouváme se. SWFUpload nelze načíst. Možná budete muset nainstalovat nebo upgradovat Flash Player. Navštivte {{url}} dostat Flash Player."
15
+ swf_taking_to_long: "SWFUpload je příliš dlouho, aby zatížení nebo zatížení se nezdařil. Prosím, ujistěte se, že Flash Plugin je povoleno, a že pracovní verzi Adobe Flash Player je nainstalován."
16
+ upload_file: "Nahrát soubor"
17
+ upload_files: "Upload souborů"
data/locales/da.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ da:
3
+ uploader:
4
+ cancel_all: "Annuller Alle Uploads"
5
+ file_delete_permission_denied: "Du har ikke tilladelse til at slette denne fil."
6
+ file_deleted: "Slettes filen"
7
+ file_upload_error: "Der opstod en fejl under overførsel af filen."
8
+ javascript_not_enabled: "Vi beklager. SWFUpload kunne ikke indlæse. Du skal have Javascript aktiveret for at nyde SWFUpload."
9
+ missing_parent_id_error: "Angiv en forælder objekt"
10
+ permission_denied: "Du har ikke tilladelse til at fuldføre denne aktion."
11
+ standard_file_upload_error: "Der opstod en fejl under overførsel af filen: {{error}}. Sørg for, at filen er gyldig. Kontrollere, at filen ikke er tom. Så prøv igen."
12
+ successful_upload: "Uploadet fil."
13
+ swf_loading: "SWFUpload indlæses. Vent et øjeblik ..."
14
+ swf_not_loading: "Vi beklager. SWFUpload kunne ikke indlæse. Du kan være nødt til at installere eller opgradere Flash Player. Besøg {{url}} at få Flash Player."
15
+ swf_taking_to_long: "SWFUpload det tager lang tid at indlæse eller belastningen er mislykkedes. Sørg for, at Flash Plugin er aktiveret, og at en arbejdsgruppe version af Adobe Flash Player er installeret."
16
+ upload_file: "Upload fil"
17
+ upload_files: "Upload af filer"
data/locales/de.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ de:
3
+ uploader:
4
+ cancel_all: "Stil Alle Uploads"
5
+ file_delete_permission_denied: "Sie haben keine Berechtigung zum Löschen der Datei."
6
+ file_deleted: "Gelöschte Datei"
7
+ file_upload_error: "Fehler beim Hochladen der Datei."
8
+ javascript_not_enabled: "Es tut uns leid. SWFUpload konnte nicht geladen werden. Sie müssen Javascript aktivieren, damit Sie SWFUpload."
9
+ missing_parent_id_error: "Bitte geben Sie ein Objekt"
10
+ permission_denied: "Sie haben keine Berechtigung, um diese Aktion."
11
+ standard_file_upload_error: "Fehler beim Hochladen der Datei: {{error}}. Bitte stellen Sie sicher, dass die Datei gültig ist. Überprüfen Sie, ob Sie die Datei nicht leer ist. Dann versuchen Sie es erneut."
12
+ successful_upload: "Erfolgreich hochgeladenen Datei."
13
+ swf_loading: "SWFUpload wird geladen. Bitte einen Moment warten ..."
14
+ swf_not_loading: "Es tut uns leid. SWFUpload konnte nicht geladen werden. Möglicherweise müssen Sie installieren oder aktualisieren Flash Player. Besuchen Sie die {{url}}, um den Flash Player."
15
+ swf_taking_to_long: "SWFUpload ist eine lange Zeit zu laden oder die Kraft hat. Bitte stellen Sie sicher, dass das Flash-Plugin aktiviert ist, und dass eine funktionierende Version des Adobe Flash Player installiert ist."
16
+ upload_file: "Upload File"
17
+ upload_files: "Dateien hochladen"
data/locales/el.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ el:
3
+ uploader:
4
+ cancel_all: "Ακύρωση όλων Uploads"
5
+ file_delete_permission_denied: "Δεν έχετε δικαίωμα να διαγράψετε το αρχείο."
6
+ file_deleted: "Διαγράφεται αρχείου"
7
+ file_upload_error: "Σφάλμα κατά τη μεταφόρτωση του αρχείου."
8
+ javascript_not_enabled: "Λυπούμαστε. SWFUpload δεν είναι δυνατή η φόρτωση. Θα πρέπει να έχετε ενεργοποιημένη τη JavaScript για να απολαύσετε SWFUpload."
9
+ missing_parent_id_error: "Να αναφερθεί η μητρική αντικείμενο"
10
+ permission_denied: "Δεν έχετε άδεια για να ολοκληρωθεί αυτή η ενέργεια."
11
+ standard_file_upload_error: "Σφάλμα κατά τη μεταφόρτωση του αρχείου: {{error}}. Βεβαιωθείτε ότι το αρχείο είναι έγκυρο. Ελέγξτε για να βεβαιωθείτε ότι ο φάκελος δεν είναι κενός. Στη συνέχεια, προσπαθήστε ξανά."
12
+ successful_upload: "Επιτυχής αρχείο."
13
+ swf_loading: "SWFUpload είναι φόρτωσης. Περιμένετε ένα λεπτό ..."
14
+ swf_not_loading: "Λυπούμαστε. SWFUpload δεν είναι δυνατή η φόρτωση. Μπορεί να χρειαστεί να εγκαταστήσετε ή να αναβαθμίσετε το Flash Player. Επισκεφθείτε την {{url}} να το Flash Player."
15
+ swf_taking_to_long: "SWFUpload παίρνει πολύ χρόνο για να φορτώσει το φορτίο ή έχει αποτύχει. Βεβαιωθείτε ότι το Flash Plugin είναι ενεργοποιημένη και ότι μια λειτουργική έκδοση του Adobe Flash Player είναι εγκατεστημένος."
16
+ upload_file: "Επιφόρτωση αρχείου"
17
+ upload_files: "Ανέβασμα Αρχείων"
data/locales/en.yml ADDED
@@ -0,0 +1,16 @@
1
+ en:
2
+ uploader:
3
+ successful_upload: 'Successfully uploaded file.'
4
+ permission_denied: "You don't have permission to complete this action."
5
+ missing_parent_id_error: 'Please specify a parent object'
6
+ file_deleted: 'Deleted file'
7
+ file_delete_permission_denied: "You don't have permission to delete that file."
8
+ upload_file: 'Upload File'
9
+ upload_files: 'Upload Files'
10
+ cancel_all: 'Cancel All Uploads'
11
+ swf_loading: 'SWFUpload is loading. Please wait a moment...'
12
+ javascript_not_enabled: "We're sorry. SWFUpload could not load. You must have JavaScript enabled to enjoy SWFUpload."
13
+ swf_taking_to_long: "SWFUpload is taking a long time to load or the load has failed. Please make sure that the Flash Plugin is enabled and that a working version of the Adobe Flash Player is installed."
14
+ swf_not_loading: "We're sorry. SWFUpload could not load. You may need to install or upgrade Flash Player. Visit the {{url}} to get the Flash Player."
15
+ file_upload_error: "An error occured while uploading the file."
16
+ standard_file_upload_error: "An error occured while uploading the file: {{error}}. Please ensure that the file is valid. Check to make sure the file is not empty. Then try again."
data/locales/es.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ es:
3
+ uploader:
4
+ cancel_all: "Cancelar todas las Cargas"
5
+ file_delete_permission_denied: "Usted no tiene permiso para eliminar ese archivo."
6
+ file_deleted: "Suprime el archivo"
7
+ file_upload_error: "Se ha producido un error al cargar el archivo."
8
+ javascript_not_enabled: "Lo sentimos. SWFUpload no ha podido cargar. Usted debe tener Javascript activado para poder disfrutar de SWFUpload."
9
+ missing_parent_id_error: "Por favor, especifique un objeto padre"
10
+ permission_denied: "Usted no tiene permiso para completar esta acción."
11
+ standard_file_upload_error: "Se ha producido un error al cargar el archivo: {{error}}. Por favor, asegúrese de que el archivo es válido. Asegúrese de que el archivo no está vacío. Vuelva a intentarlo."
12
+ successful_upload: "Archivo subido con éxito."
13
+ swf_loading: "SWFUpload se está cargando. Por favor, espere un momento ..."
14
+ swf_not_loading: "Lo sentimos. SWFUpload no ha podido cargar. Puede que necesite instalar o actualizar Flash Player. Visite el {{url}} para obtener el Flash Player."
15
+ swf_taking_to_long: "SWFUpload está tomando mucho tiempo en la carga o la carga ha fallado. Por favor, asegúrese de que el plugin de Flash está activada y que un grupo de trabajo de la versión de Adobe Flash Player está instalado."
16
+ upload_file: "Subir archivo"
17
+ upload_files: "Subir archivos"
data/locales/fr.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ fr:
3
+ uploader:
4
+ cancel_all: "Annuler tous les Uploads"
5
+ file_delete_permission_denied: "Vous n&#39;êtes pas autorisé à supprimer ce fichier."
6
+ file_deleted: "Fichier supprimé"
7
+ file_upload_error: "Une erreur s&#39;est produite lors du téléchargement du fichier."
8
+ javascript_not_enabled: "Nous sommes désolés. SWFUpload n&#39;a pas pu charger. Il faut activer JavaScript pour profiter de SWFUpload."
9
+ missing_parent_id_error: "S&#39;il vous plaît spécifier un objet parent de"
10
+ permission_denied: "Vous n&#39;avez pas la permission d&#39;effectuer cette action."
11
+ standard_file_upload_error: "Une erreur s&#39;est produite lors du chargement du fichier: {{error}}. S&#39;il vous plaît assurer que le fichier est valide. Assurez-vous que le fichier n&#39;est pas vide. Ensuite, essayez à nouveau."
12
+ successful_upload: "Transfert de fichier."
13
+ swf_loading: "SWFUpload chargement. S&#39;il vous plaît attendez un instant ..."
14
+ swf_not_loading: "Nous sommes désolés. SWFUpload n&#39;a pas pu charger. Vous mai besoin d&#39;installer ou mettre à jour Flash Player. Visitez le {{url}} pour obtenir le Flash Player."
15
+ swf_taking_to_long: "SWFUpload prend beaucoup de temps pour charger ou le chargement a échoué. S&#39;il vous plaît assurez-vous que le plugin flash est activé et qu&#39;un groupe de travail de la version d&#39;Adobe Flash Player est installé."
16
+ upload_file: "Envoyer un fichier"
17
+ upload_files: "Télécharger des fichiers"
data/locales/it.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ it:
3
+ uploader:
4
+ cancel_all: "Cancellare tutti i Uploads"
5
+ file_delete_permission_denied: "Non hai il permesso di eliminare il file."
6
+ file_deleted: "File eliminato"
7
+ file_upload_error: "Si è verificato un errore durante il caricamento del file."
8
+ javascript_not_enabled: "Siamo spiacenti. SWFUpload non poteva carico. È necessario che JavaScript sia abilitato per godere SWFUpload."
9
+ missing_parent_id_error: "Si prega di specificare un oggetto genitore"
10
+ permission_denied: "Non hai il permesso di completare l&#39;operazione."
11
+ standard_file_upload_error: "Si è verificato un errore durante il caricamento del file: {{error}}. Si prega di assicurarsi che il file è valido. Verificare che il file non è vuoto. Quindi riprovare."
12
+ successful_upload: "File caricato con successo."
13
+ swf_loading: "SWFUpload viene caricata. Si prega di attendere un momento ..."
14
+ swf_not_loading: "Siamo spiacenti. SWFUpload non poteva carico. Potrebbe essere necessario installare o aggiornare Flash Player. Visita il {{url}} per ottenere il Flash Player."
15
+ swf_taking_to_long: "SWFUpload è tenuto un lungo tempo di carico o il carico non è riuscito. Si prega di accertarsi che il plug in flash è attivato un gruppo di lavoro e che la versione di Adobe Flash Player è installato."
16
+ upload_file: "Carica file"
17
+ upload_files: "Carica Files"
data/locales/iw.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ iw:
3
+ uploader:
4
+ cancel_all: "בטל את כל ההעלאות"
5
+ file_delete_permission_denied: "אין לך הרשאה למחוק את הקובץ."
6
+ file_deleted: "קובץ מחוק"
7
+ file_upload_error: "אירעה שגיאה בעת העלאת קובץ."
8
+ javascript_not_enabled: "אנו מתנצלים. SWFUpload לא ניתן היה לטעון. אתה צריך לאפשר Javascript חייב ליהנות SWFUpload."
9
+ missing_parent_id_error: "ציין האב לאובייקט"
10
+ permission_denied: "אין לך הרשאה כדי להשלים פעולה זו."
11
+ standard_file_upload_error: "אירעה שגיאה בעת העלאת קובץ: {{error}}. אנא ודא כי הקובץ הוא חוקי. ודא שהקובץ לא ריק. לאחר מכן נסה שוב."
12
+ successful_upload: "הקובץ שהועלה בהצלחה."
13
+ swf_loading: "SWFUpload הוא טוען. אנא המתן רגע ..."
14
+ swf_not_loading: "אנו מתנצלים. SWFUpload לא ניתן היה לטעון. ייתכן שיש צורך להתקין או לשדרג את Flash Player. בקר {{url}} להשיג את Flash Player."
15
+ swf_taking_to_long: "SWFUpload הוא לוקח הרבה זמן לטעון או לטעון נכשל. אנא ודא כי פלאש Plugin מופעלת וכי עבודה גירסה של התוכנה Adobe Flash Player מותקן."
16
+ upload_file: "הוספת קובץ"
17
+ upload_files: "העלאת קבצים"
data/locales/ja.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ ja:
3
+ uploader:
4
+ cancel_all: キャンセルの全てのアップロード
5
+ file_delete_permission_denied: 使用する許可は、そのファイルを削除する必要はありません。
6
+ file_deleted: 削除したファイル
7
+ file_upload_error: ファイルのアップロード中にエラーが発生しました。
8
+ javascript_not_enabled: "申し訳ありませんが、 SWFUploadを読み込むことができませんでした。 SWFUploadを享受するにはJavaScriptを有効にしている必要があります。"
9
+ missing_parent_id_error: 親オブジェクトを指定してください。
10
+ permission_denied: この操作を完了するには、許可されていません。
11
+ standard_file_upload_error: "ファイルのアップロード中にエラーが発生しました: {{error}}.以下は、そのファイルが有効であることを確認します。チェックして、ファイルが空ではないことを確認します。し、もう一度試してください。"
12
+ successful_upload: 正常にアップロードされたファイル。
13
+ swf_loading: SWFUploadのロードされています。しばらくお待ちください...
14
+ swf_not_loading: "申し訳ありませんが、 SWFUploadを読み込むことができませんでした。 Flash Playerをインストールしたりアップグレードする必要があります。は、 Flash Playerを取得するには、 {{url}}をご覧ください。"
15
+ swf_taking_to_long: "SWFUploadの読み込みに失敗したかは、負荷に長い時間がかかっている。以下は、 Flashプラグインが有効になっていることを確認しては、 Adobe Flash Playerのバージョンがインストールされての作業。"
16
+ upload_file: ファイルのアップロード
17
+ upload_files: ファイルのアップロード
data/locales/ko.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ ko:
3
+ uploader:
4
+ cancel_all: "취소 모든 업로드"
5
+ file_delete_permission_denied: "그 파일을 삭제할 권한이없습니다."
6
+ file_deleted: "삭제된 파일"
7
+ file_upload_error: "파일을 업로드하는 동안 오류가 발생했습니다."
8
+ javascript_not_enabled: "죄송합니다. SWFUpload를 로드할 수없습니다. 자바 스크립트를 즐길 수 SWFUpload를 활성화해야합니다."
9
+ missing_parent_id_error: "부모 개체를 지정하여주십시오"
10
+ permission_denied: "권한이 작업을 완료하는 데 필요가없습니다."
11
+ standard_file_upload_error: "파일을 업로드하는 동안 오류가 발생했습니다 : {{error}}. 그 파일이 유효한지 확인하시기 바랍니다. 확인 파일이 비어 있지 않은지 확인합니다. 그럼 다시 해 봐요."
12
+ successful_upload: "성공적으로 업로드된 파일입니다."
13
+ swf_loading: "SWFUpload로드하는 것입니다. 잠시 기다려주십시오 ..."
14
+ swf_not_loading: "죄송합니다. SWFUpload를 로드할 수없습니다. 플래시 플레이어를 설치하거나 업그레이 드해야 할 수도있습니다. Flash Player를 얻기 위해 {{url}}를 방문하십시오."
15
+ swf_taking_to_long: "실패했습니다 SWFUpload로드하거나 부하 시간이 오래 걸립니다. 제발, 플래시 플러그인이 활성화되어 있는지 그리고 그 작업은 Adobe Flash Player의 버전이 설치되어있다."
16
+ upload_file: "파일 업로드"
17
+ upload_files: "파일 업로드"
data/locales/lt.yml ADDED
@@ -0,0 +1,17 @@
1
+ ---
2
+ lt:
3
+ uploader:
4
+ cancel_all: "Atšaukti Visos parsisiųsti"
5
+ file_delete_permission_denied: "Jūs neturite leidimo, jei norite ištrinti šį failą."
6
+ file_deleted: "Išbraukta failą"
7
+ file_upload_error: "Įvyko klaida įkeliant failą."
8
+ javascript_not_enabled: "Apgailestaujame. SWFUpload nepavyko įkelti. Jūs privalote turėti Javascript, kad galėtumėte mėgautis SWFUpload."
9
+ missing_parent_id_error: "Nurodykite patronuojanti objektą"
10
+ permission_denied: "Jūs neturite leidimo atlikti šį veiksmą."
11
+ standard_file_upload_error: "Įvyko klaida įkeliant failą: {{error}}. Prašome įsitikinti, kad failas yra svarbūs. Įsitikinkite, kad failo nėra tuščias. Tada bandykite dar kartą."
12
+ successful_upload: "Sėkmingai įkeltas failas."
13
+ swf_loading: "SWFUpload kraunamas. Prašome palaukti ..."
14
+ swf_not_loading: "Apgailestaujame. SWFUpload nepavyko įkelti. Jums gali reikėti įdiegti ar atnaujinti Flash Player. Aplankykite {{url}} gauti Flash Player."
15
+ swf_taking_to_long: "SWFUpload yra nemažai laiko, kol apkrova arba apkrova nepavyko. Įsitikinkite, kad Flash plugin yra įjungta, ir kad darbo versiją Adobe Flash Player įdiegtas."
16
+ upload_file: "Įkelti failą"
17
+ upload_files: "Įkelti failai"