has_media 0.1.1 → 0.1.2
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/VERSION +1 -1
- data/examples/models/video.rb +9 -0
- data/examples/uploaders/video_uploader.rb +7 -0
- data/lib/has_media/models/medium.rb +5 -3
- data/lib/has_media.rb +18 -0
- data/spec/has_media_spec.rb +1 -0
- metadata +53 -26
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.2
|
@@ -19,13 +19,14 @@ class Medium < ActiveRecord::Base
|
|
19
19
|
:image => 'png',
|
20
20
|
:audio => 'mp3',
|
21
21
|
:pdf => 'pdf',
|
22
|
+
:video => 'flv'
|
22
23
|
}
|
23
24
|
|
24
25
|
# Allowed MIME types for upload
|
25
26
|
# need custom configuration
|
26
27
|
# TODO: add errors if not type of file
|
27
28
|
@@mime_types = {
|
28
|
-
:video =>
|
29
|
+
:video => HasMedia.videos_content_types,
|
29
30
|
:image => HasMedia.images_content_types,
|
30
31
|
:audio => ['audio/mpeg', 'audio/x-ms-wma', 'audio/x-wav'],
|
31
32
|
:flash => ['application/x-shockwave-flash'],
|
@@ -50,9 +51,10 @@ class Medium < ActiveRecord::Base
|
|
50
51
|
return name.downcase
|
51
52
|
end
|
52
53
|
|
54
|
+
# FIXME : get medium types from available classes, use has_media.medium_types
|
53
55
|
def self.new_from_value(object, value, context, encode, only)
|
54
56
|
only ||= ""
|
55
|
-
medium_types =
|
57
|
+
medium_types = HasMedia.medium_types
|
56
58
|
if only != "" and klass = Kernel.const_get(only.capitalize)
|
57
59
|
medium_types = [klass]
|
58
60
|
end
|
@@ -143,7 +145,7 @@ class Medium < ActiveRecord::Base
|
|
143
145
|
end
|
144
146
|
|
145
147
|
def file_extension
|
146
|
-
EXTENSIONS[type.downcase.to_sym]
|
148
|
+
EXTENSIONS[type.to_s.downcase.to_sym]
|
147
149
|
end
|
148
150
|
|
149
151
|
private
|
data/lib/has_media.rb
CHANGED
@@ -7,6 +7,7 @@ module HasMedia
|
|
7
7
|
|
8
8
|
VERSION = "0.0.1"
|
9
9
|
|
10
|
+
@@medium_types = []
|
10
11
|
@@store_dir = '/tmp'
|
11
12
|
@@directory_uri = ''
|
12
13
|
@@custom_models_path = nil
|
@@ -42,7 +43,21 @@ module HasMedia
|
|
42
43
|
'image/gi_',
|
43
44
|
'image/x-citrix-pjpeg'
|
44
45
|
]
|
46
|
+
@@videos_content_types = [
|
47
|
+
'video/mpeg',
|
48
|
+
'video/mp4',
|
49
|
+
'video/quicktime',
|
50
|
+
'video/x-ms-wmv',
|
51
|
+
'video/x-flv',
|
52
|
+
'video/x-msvideo'
|
53
|
+
]
|
45
54
|
|
55
|
+
def self.medium_types=(value)
|
56
|
+
@@medium_types = value
|
57
|
+
end
|
58
|
+
def self.medium_types
|
59
|
+
@@medium_types
|
60
|
+
end
|
46
61
|
def self.directory_path=(value)
|
47
62
|
@@store_dir = value
|
48
63
|
end
|
@@ -70,6 +85,9 @@ module HasMedia
|
|
70
85
|
def self.images_content_types
|
71
86
|
@@images_content_types
|
72
87
|
end
|
88
|
+
def self.videos_content_types
|
89
|
+
@@videos_content_types
|
90
|
+
end
|
73
91
|
def self.errors_messages
|
74
92
|
@@errors_messages
|
75
93
|
end
|
data/spec/has_media_spec.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,12 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: has_media
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 1
|
8
|
+
- 2
|
9
|
+
version: 0.1.2
|
5
10
|
platform: ruby
|
6
11
|
authors:
|
7
12
|
- klacointe
|
@@ -10,49 +15,65 @@ autorequire:
|
|
10
15
|
bindir: bin
|
11
16
|
cert_chain: []
|
12
17
|
|
13
|
-
date: 2010-
|
18
|
+
date: 2010-06-09 00:00:00 +02:00
|
14
19
|
default_executable:
|
15
20
|
dependencies:
|
16
21
|
- !ruby/object:Gem::Dependency
|
17
22
|
name: rspec
|
18
|
-
|
19
|
-
|
20
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
prerelease: false
|
24
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
21
25
|
requirements:
|
22
26
|
- - ">="
|
23
27
|
- !ruby/object:Gem::Version
|
28
|
+
segments:
|
29
|
+
- 1
|
30
|
+
- 2
|
31
|
+
- 9
|
24
32
|
version: 1.2.9
|
25
|
-
|
33
|
+
type: :development
|
34
|
+
version_requirements: *id001
|
26
35
|
- !ruby/object:Gem::Dependency
|
27
36
|
name: carrierwave
|
28
|
-
|
29
|
-
|
30
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
prerelease: false
|
38
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
31
39
|
requirements:
|
32
40
|
- - ">="
|
33
41
|
- !ruby/object:Gem::Version
|
42
|
+
segments:
|
43
|
+
- 0
|
44
|
+
- 4
|
45
|
+
- 2
|
34
46
|
version: 0.4.2
|
35
|
-
|
47
|
+
type: :runtime
|
48
|
+
version_requirements: *id002
|
36
49
|
- !ruby/object:Gem::Dependency
|
37
50
|
name: activerecord
|
38
|
-
|
39
|
-
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
prerelease: false
|
52
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
41
53
|
requirements:
|
42
54
|
- - ">="
|
43
55
|
- !ruby/object:Gem::Version
|
56
|
+
segments:
|
57
|
+
- 2
|
58
|
+
- 3
|
59
|
+
- 4
|
44
60
|
version: 2.3.4
|
45
|
-
|
61
|
+
type: :runtime
|
62
|
+
version_requirements: *id003
|
46
63
|
- !ruby/object:Gem::Dependency
|
47
64
|
name: activesupport
|
48
|
-
|
49
|
-
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
prerelease: false
|
66
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
51
67
|
requirements:
|
52
68
|
- - ">="
|
53
69
|
- !ruby/object:Gem::Version
|
70
|
+
segments:
|
71
|
+
- 2
|
72
|
+
- 3
|
73
|
+
- 4
|
54
74
|
version: 2.3.4
|
55
|
-
|
75
|
+
type: :runtime
|
76
|
+
version_requirements: *id004
|
56
77
|
description: Media Managment Library for ActiveRecord and Carrierwave
|
57
78
|
email: kevinlacointe@gmail.com
|
58
79
|
executables: []
|
@@ -72,9 +93,11 @@ files:
|
|
72
93
|
- examples/models/audio.rb
|
73
94
|
- examples/models/image.rb
|
74
95
|
- examples/models/pdf.rb
|
96
|
+
- examples/models/video.rb
|
75
97
|
- examples/uploaders/audio_uploader.rb
|
76
98
|
- examples/uploaders/image_uploader.rb
|
77
99
|
- examples/uploaders/pdf_uploader.rb
|
100
|
+
- examples/uploaders/video_uploader.rb
|
78
101
|
- generators/has_media/has_media_generator.rb
|
79
102
|
- generators/has_media/templates/create_media.rb
|
80
103
|
- generators/has_media/templates/create_media_links.rb
|
@@ -105,29 +128,33 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
105
128
|
requirements:
|
106
129
|
- - ">="
|
107
130
|
- !ruby/object:Gem::Version
|
131
|
+
segments:
|
132
|
+
- 0
|
108
133
|
version: "0"
|
109
|
-
version:
|
110
134
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
111
135
|
requirements:
|
112
136
|
- - ">="
|
113
137
|
- !ruby/object:Gem::Version
|
138
|
+
segments:
|
139
|
+
- 0
|
114
140
|
version: "0"
|
115
|
-
version:
|
116
141
|
requirements: []
|
117
142
|
|
118
143
|
rubyforge_project:
|
119
|
-
rubygems_version: 1.3.
|
144
|
+
rubygems_version: 1.3.6
|
120
145
|
signing_key:
|
121
146
|
specification_version: 3
|
122
147
|
summary: Media Managment Library for ActiveRecord and Carrierwave
|
123
148
|
test_files:
|
124
149
|
- spec/spec_helper.rb
|
125
|
-
- spec/fixtures/models/image.rb
|
126
|
-
- spec/fixtures/uploaders/uploader_with_exception.rb
|
127
150
|
- spec/has_media_spec.rb
|
128
|
-
-
|
129
|
-
-
|
130
|
-
- examples/models/audio.rb
|
151
|
+
- spec/fixtures/uploaders/uploader_with_exception.rb
|
152
|
+
- spec/fixtures/models/image.rb
|
131
153
|
- examples/uploaders/image_uploader.rb
|
132
154
|
- examples/uploaders/pdf_uploader.rb
|
155
|
+
- examples/uploaders/video_uploader.rb
|
133
156
|
- examples/uploaders/audio_uploader.rb
|
157
|
+
- examples/models/image.rb
|
158
|
+
- examples/models/pdf.rb
|
159
|
+
- examples/models/audio.rb
|
160
|
+
- examples/models/video.rb
|