refinerycms-videojs 0.5.5.1 → 0.6.0.0

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 (31) hide show
  1. checksums.yaml +7 -0
  2. data/app/assets/javascripts/refinery/admin/wymeditor_monkeypatch.js.erb +27 -0
  3. data/app/assets/stylesheets/refinery/admin/video.css +60 -56
  4. data/app/controllers/refinery/videos/admin/videos_controller.rb +10 -2
  5. data/app/models/refinery/videos/video.rb +7 -12
  6. data/app/models/refinery/videos/video_file.rb +10 -14
  7. data/app/views/refinery/videos/admin/videos/_file_fields.html.erb +8 -9
  8. data/app/views/refinery/videos/admin/videos/_new_file_field.html.erb +2 -2
  9. data/app/views/refinery/videos/admin/videos/_preview_form.html.erb +1 -1
  10. data/app/views/refinery/videos/admin/videos/_video.html.erb +6 -4
  11. data/app/views/refinery/videos/admin/videos/append_to_wym.js.erb +13 -2
  12. data/config/initializers/refinery/core.rb +1 -5
  13. data/config/initializers/refinery/wymeditor.rb +5 -0
  14. data/config/locales/en.yml +4 -2
  15. data/config/locales/es.yml +79 -0
  16. data/config/locales/pt-BR.yml +78 -0
  17. data/config/locales/ru.yml +2 -2
  18. data/config/locales/sk.yml +3 -2
  19. data/config/locales/zh-CN.yml +79 -0
  20. data/config/routes.rb +2 -2
  21. data/db/migrate/1_create_videos_videos.rb +1 -1
  22. data/db/migrate/2_create_video_file.rb +2 -5
  23. data/lib/generators/refinery/videos/templates/assets/javascripts/videojs_loader.js +17 -7
  24. data/lib/generators/refinery/videos/templates/config/initializers/refinery/videos.rb.erb +2 -4
  25. data/lib/refinery/videos/configuration.rb +5 -5
  26. data/lib/refinery/videos/dialogs_controller.rb +14 -0
  27. data/lib/refinery/videos/dragonfly.rb +15 -28
  28. data/lib/refinery/videos/engine.rb +6 -6
  29. data/lib/refinery/videos.rb +0 -1
  30. metadata +121 -55
  31. data/app/assets/javascripts/refinery/admin/wymeditor_monkeypatch.js +0 -13
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 8b996ff7fcb1ec1b299df986ec76b766514fcb9ff6ea6db55d25eda5f59cc4fe
4
+ data.tar.gz: bd3ddcebad019508716737dd332f6c5680ec095fab4bae861923d913eaef9dcf
5
+ SHA512:
6
+ metadata.gz: 9d71b935cd38ee61a619a49c0e3b0805771572e9c7ea558163ac9f7101dec46881b5ec32e3e4492d5e59a8507cd76ba484c030a9dbd83cfc3d8455fc1ad563fa
7
+ data.tar.gz: eb4ae7f9a08dc151a9afbb6c3c62c9bdec529b6ddbad1903278854c51a19b036482a5b48963edb8fc2b80b1ed6e4be5a417049e2e7711afe9e0743f6733624dd
@@ -0,0 +1,27 @@
1
+ <%#encoding: UTF-8 %>
2
+ wymeditor_boot_options.toolsItems.push({'name': 'AddVideo', 'title': 'Add_Video', 'css': 'wym_tools_add_video'});
3
+
4
+ <% locales = %w(en es sk pt-BR zh-CN)%>
5
+ <% locales.each do |locale| %>
6
+ if (WYMeditor.STRINGS['<%=locale%>']) WYMeditor.STRINGS['<%=locale%>']['Video'] = WYMeditor.STRINGS['<%=locale%>']['Add_Video'] = '<%= I18n.t(:add_video, :scope => :wym_tools, :locale => locale) %>';
7
+ <% end %>
8
+
9
+ onCloseDialog = function(){
10
+ $('iframe#dialog_iframe').attr('src', '');
11
+ };
12
+
13
+ WYMeditor.editor.prototype.exec_without_video = WYMeditor.editor.prototype.exec;
14
+ WYMeditor.editor.prototype.exec = function(cmd) {
15
+ if (cmd == 'AddVideo') {
16
+ this.dialog('Video');
17
+ } else this.exec_without_video(cmd);
18
+ }
19
+
20
+ <% Refinery::Wymeditor.whitelist_tags.each do |tag, attrs| %>
21
+ WYMeditor.XhtmlValidator._tags['<%=tag%>'] = WYMeditor.XhtmlValidator._tags['<%=tag%>'] || {};
22
+ <% attrs['attributes'].values.each do |attr| %>
23
+ WYMeditor.XhtmlValidator._tags['<%=tag%>'].attributes = WYMeditor.XhtmlValidator._tags['<%=tag%>'].attributes || {};
24
+ WYMeditor.XhtmlValidator._tags['<%=tag%>'].attributes[Object.keys(WYMeditor.XhtmlValidator._tags['<%=tag%>'].attributes).length + 1] = '<%=attr%>'
25
+ <% end %>
26
+ <% end %>
27
+
@@ -1,95 +1,99 @@
1
- #add_video {
2
- padding-top: 3px;
3
- padding-left: 10px
1
+ .wym_skin_refinery .wym_section li.wym_tools_add_video a {
2
+ height: 24px;
3
+ background-image: url('/assets/refinery/admin/add_video_icon.png');
4
+ background-repeat: no-repeat;
5
+ padding-left: 24px;
4
6
  }
5
7
 
6
- #add_video li a{
7
- height: 20px;
8
- background-image: url('/assets/refinery/admin/add_video_icon.png');
9
- background-repeat: no-repeat;
10
- padding-left: 20px;
8
+ label.inline {
9
+ display: inline-block;
10
+ margin-bottom: 10px;
11
+ margin-top: 0;
11
12
  }
12
13
 
13
- label.inline{
14
- display: inline-block;
15
- margin-bottom: 10px;
16
- margin-top: 0
14
+ div.inline {
15
+ display: inline-block;
16
+ vertical-align: top;
17
+ margin: 1px 10px 0 0;
18
+ padding-left: 5px;
17
19
  }
18
20
 
19
- div.inline{
20
- display: inline-block;
21
- vertical-align: top;
22
- margin: 1px 10px 0 0;
23
- padding-left: 5px
21
+ div.parent {
22
+ margin-bottom: 20px;
24
23
  }
25
24
 
26
- div.parent{
27
- margin-bottom: 20px
25
+ div.video_container {
26
+ margin: 10px;
28
27
  }
29
28
 
30
- div.video_container{
31
- margin: 10px;
29
+ div.tips {
30
+ margin: 10px 0 10px 0;
31
+ font-style: italic;
32
32
  }
33
33
 
34
- div.tips{
35
- margin: 10px 0 10px 0;
36
- font-style: italic;
34
+ div.use_file {
35
+ padding-bottom: 5px;
36
+ padding-top: 2px;
37
37
  }
38
-
39
- div.use_file{
40
- padding-bottom: 5px;
41
- padding-top: 2px;
42
- }
43
- a.select_video_type{
44
- font-size: 12px;
45
- margin: 10px 10px 10px 0
38
+ a.select_video_type {
39
+ font-size: 12px;
40
+ margin: 10px 10px 10px 0;
46
41
  }
47
42
 
48
- a.select_video_type.selected{
49
- font-weight: bold;}
43
+ a.select_video_type.selected {
44
+ font-weight: bold;
45
+ }
50
46
 
51
47
 
52
- textarea.embed_tag{
53
- height: 100px
48
+ textarea.embed_tag {
49
+ height: 100px;
54
50
  }
55
51
 
56
- span.short_info{
57
- color: grey
52
+ span.short_info {
53
+ color: grey;
58
54
  }
59
55
 
60
- div.add_remove_buttons{
61
- margin-top: 10px
56
+ div.add_remove_buttons {
57
+ margin-top: 10px;
62
58
  }
63
59
 
64
- div#dialog_list{
65
- width: 60%; float: left; min-height: 300px
60
+ div#dialog_list {
61
+ width: 60%;
62
+ float: left;
63
+ min-height: 300px;
66
64
  }
67
65
 
68
- div#dialog_list li.selected{
69
- border: 4px solid #22A7F2
66
+ div#dialog_list li.selected {
67
+ border: 4px solid #22A7F2;
70
68
  }
71
69
 
72
- div#dialog_preview{
73
- width:35%; float: right
70
+ div#dialog_preview {
71
+ width:35%;
72
+ float: right;
74
73
  }
75
74
 
76
- div#preview_form{
77
- width:35%; float: right
75
+ div#preview_form {
76
+ width:35%;
77
+ float: right;
78
78
  }
79
79
 
80
- div#preview_form div.dimensions{
81
- width:50%; float:left;
80
+ div#preview_form div.dimensions {
81
+ width:50%;
82
+ float:left;
82
83
  }
83
84
 
84
- div#preview_form div.dimensions input{
85
- width:70%;
85
+ div#preview_form div.dimensions input {
86
+ width:70%;
86
87
  }
87
88
 
88
- div#preview_form div.options{
89
- width:50%; float:right;
89
+ div#preview_form div.options {
90
+ width:50%; float:right;
90
91
  }
91
92
 
92
- div#dialog_list #records{
93
- width: 100%
93
+ div#dialog_list #records {
94
+ width: 100%;
94
95
  }
95
96
 
97
+ #actions a {
98
+ position: relative; // fix capybara tests
99
+ }
@@ -9,7 +9,7 @@ module Refinery
9
9
  :order => 'position ASC',
10
10
  :sortable => true
11
11
 
12
- before_filter :set_embedded, :only => [:new, :create]
12
+ before_action :set_embedded, :only => [:new, :create]
13
13
 
14
14
  def show
15
15
  @video = Video.find(params[:id])
@@ -28,7 +28,7 @@ module Refinery
28
28
 
29
29
  def append_to_wym
30
30
  @video = Video.find(params[:video_id])
31
- params['video'].each do |key, value|
31
+ video_params.each do |key, value|
32
32
  @video.config[key.to_sym] = value
33
33
  end
34
34
  @html_for_wym = @video.to_html
@@ -53,6 +53,14 @@ module Refinery
53
53
  @embedded = true if params['embedded']
54
54
  end
55
55
 
56
+ def video_params
57
+ params.require(:video).permit(
58
+ :title, :poster_id, :position, :config, :embed_tag, :use_shared,
59
+ *Video::CONFIG_OPTIONS.keys,
60
+ :video_files_attributes => [
61
+ :file, :position, :use_external, :external_url
62
+ ])
63
+ end
56
64
  end
57
65
  end
58
66
  end
@@ -5,28 +5,24 @@ module Refinery
5
5
  class Video < Refinery::Core::BaseModel
6
6
 
7
7
  self.table_name = 'refinery_videos'
8
- acts_as_indexed :fields => [:title]
8
+ acts_as_indexed fields: [:title]
9
9
 
10
- validates :title, :presence => true
10
+ validates :title, presence: true
11
11
  validate :one_source
12
12
 
13
- has_many :video_files, :dependent => :destroy
13
+ has_many :video_files, dependent: :destroy
14
14
  accepts_nested_attributes_for :video_files
15
15
 
16
- belongs_to :poster, :class_name => '::Refinery::Image'
16
+ belongs_to :poster, class_name: '::Refinery::Image', optional: true
17
17
  accepts_nested_attributes_for :poster
18
18
 
19
19
  ################## Video config options
20
20
  serialize :config, Hash
21
21
  CONFIG_OPTIONS = {
22
- :autoplay => "false", :width => "400", :height => "300",
23
- :controls => "true", :preload => "true", :loop => "true"
22
+ autoplay: "false", width: "400", height: "300",
23
+ controls: "true", preload: "true", loop: "true"
24
24
  }
25
25
 
26
- attr_accessible :title, :poster_id, :video_files_attributes,
27
- :position, :config, :embed_tag, :use_shared,
28
- *CONFIG_OPTIONS.keys
29
-
30
26
  # Create getters and setters
31
27
  CONFIG_OPTIONS.keys.each do |option|
32
28
  define_method option do
@@ -61,11 +57,10 @@ module Refinery
61
57
  if file.use_external
62
58
  sources << ["<source src='#{file.external_url}' type='#{file.file_mime_type}'/>"]
63
59
  else
64
- sources << ["<source src='#{file.url}' type='#{file.file_mime_type}'/>"]
60
+ sources << ["<source src='#{file.remote_url}' type='#{file.mime_type}'/>"]
65
61
  end if file.exist?
66
62
  end
67
63
  html = %Q{<video id="video_#{self.id}" class="video-js #{Refinery::Videos.skin_css_class}" width="#{config[:width]}" height="#{config[:height]}" data-setup=' {#{data_setup.join(',')}}'>#{sources.join}</video>}
68
-
69
64
  html.html_safe
70
65
  end
71
66
 
@@ -5,27 +5,25 @@ module Refinery
5
5
  class VideoFile < Refinery::Core::BaseModel
6
6
 
7
7
  self.table_name = 'refinery_video_files'
8
- acts_as_indexed :fields => [:file_name, :file_ext]
9
- attr_accessible :file, :file_mime_type, :position, :use_external, :external_url
10
- belongs_to :video
8
+ acts_as_indexed fields: [:file_name, :file_ext]
9
+ belongs_to :video, optional: true
11
10
 
12
11
  MIME_TYPES = {'.mp4' => 'mp4', '.flv' => 'flv', '.webm' => 'webm', '.ogg' => 'ogg', '.ogv' => 'ogg'}
13
12
 
14
13
  ############################ Dragonfly
15
14
  ::Refinery::Videos::Dragonfly.setup!
16
- video_accessor :file
17
-
18
- delegate :ext, :size, :mime_type, :url,
19
- :to => :file,
20
- :allow_nil => true
15
+ dragonfly_accessor :file, app: :refinery_videos
21
16
 
17
+ delegate :ext, :size, :mime_type, :remote_url,
18
+ to: :file,
19
+ allow_nil: true
22
20
  #######################################
23
21
 
24
22
  ########################### Validations
25
- validates :file, :presence => true, :unless => :use_external?
26
- validates :mime_type, :inclusion => { :in => Refinery::Videos.config[:whitelisted_mime_types],
27
- :message => "Wrong file mime_type" }, :if => :file_name?
28
- validates :external_url, :presence => true, :if => :use_external?
23
+ validates :file, presence: true, unless: :use_external?
24
+ validates :mime_type, inclusion: { in: Refinery::Videos.config[:whitelisted_mime_types],
25
+ message: "Wrong file mime_type" }, if: :file_name?
26
+ validates :external_url, presence: true, if: :use_external?
29
27
  #######################################
30
28
 
31
29
  before_save :set_mime_type
@@ -54,10 +52,8 @@ module Refinery
54
52
  self.file_mime_type = 'video/mp4'
55
53
  end
56
54
  end
57
-
58
55
  end
59
56
 
60
-
61
57
  end
62
58
  end
63
59
  end
@@ -13,7 +13,7 @@
13
13
  </label>
14
14
 
15
15
  <div class='field'>
16
- <div class="use_file" <%= "style='display: none;'" if v.object.use_external %>>
16
+ <div class="use_file" <%= raw "style='display: none;'" if v.object.use_external %>>
17
17
  <% if v.object.file.present? %>
18
18
  <% if v.object.url %>
19
19
  <%= link_to(t('.download_current'), v.object.url,
@@ -28,7 +28,7 @@
28
28
  <%= v.file_field :file, {}.merge(v.object.use_external ? {} : {:required => true}) %>
29
29
  <% end %>
30
30
  </div>
31
- <div class="use_external" <%= "style='display: none;'" unless v.object.use_external %>>
31
+ <div class="use_external" <%= raw "style='display: none;'" unless v.object.use_external %>>
32
32
  <span><%= t('.link_to_source') %></span>
33
33
  <%= v.text_field :external_url, {}.merge(v.object.use_external ? {:required => true} : {}) %>
34
34
  </div>
@@ -37,20 +37,19 @@
37
37
  <% if f.object.video_files.count > 1 %>
38
38
  <% if f.object.persisted? %>
39
39
  <%= link_to(refinery.videos_admin_video_file_path(v.object),
40
- :class => "cancel confirm-delete",
40
+ :class => "cancel confirm-delete fa fa-minus",
41
41
  :title => t('.delete'),
42
42
  :confirm => t('message', :scope => 'refinery.admin.delete', :title => 'file'),
43
43
  :method => :delete) do %>
44
- <%= refinery_icon_tag("delete.png") %>
45
44
  <div class="inline"><%= t('.delete_source') %></div>
46
45
  <% end %>
47
46
  <% else %>
48
- <a href='#' onclick="remove_field($(this)); return false" class="remove_field" style='display: none'><%= refinery_icon_tag("delete.png")%>
49
- <div class="inline"><%= t('.delete_source') %></div>
50
- </a>
47
+ <a href='#' onclick="remove_field($(this)); return false" class="remove_field fa fa-minus" style='display: none'>
48
+ <div class="inline"><%= t('.delete_source') %></div>
49
+ </a>
51
50
  <% end %>
52
51
  <% end %>
53
- <a href='#' onclick="add_field($(this)); return false" class="add_field" style='display: none'><%= refinery_icon_tag("add.png") %>
52
+ <a href='#' onclick="add_field($(this)); return false" class="add_field fa fa-plus" style='display: none'>
54
53
  <div class="inline"><%= t('.add_source') %></div>
55
54
  </a>
56
55
  </div>
@@ -91,4 +90,4 @@
91
90
  }
92
91
 
93
92
 
94
- </script>
93
+ </script>
@@ -19,10 +19,10 @@
19
19
  </div>
20
20
  </div>
21
21
  <div class='add_remove_buttons'>
22
- <a href='#' onclick="remove_field($(this)); return false" class="remove_field"><%= refinery_icon_tag("delete.png")%>
22
+ <a href='#' onclick="remove_field($(this)); return false" class="remove_field fa fa-trash">
23
23
  <div class="inline"><%= t('.delete_source') %></div>
24
24
  </a>
25
- <a href='#' onclick="add_field($(this)); return false" class="add_field"><%= refinery_icon_tag("add.png") %>
25
+ <a href='#' onclick="add_field($(this)); return false" class="add_field fa fa-plus">
26
26
  <div class="inline"><%= t('.add_source') %></div>
27
27
  </a>
28
28
  </div>
@@ -1,5 +1,5 @@
1
1
  <%= render "videojs_dependencies" unless @embedded%>
2
- <%= form_for @video, url: refinery.videos_admin_video_append_to_wym_path(@video.id), :remote => true, :method => :post do |f| %>
2
+ <%= form_for @video, :url => refinery.videos_admin_video_append_to_wym_path(@video.id), :remote => true, :method => :post do |f| %>
3
3
  <div class='dimensions'>
4
4
  <div class='field'>
5
5
  <%= f.label t('.width') %>
@@ -8,13 +8,15 @@
8
8
  </span>
9
9
  <% unless action_name =~ /insert/ %>
10
10
  <span class='actions'>
11
- <%= link_to refinery_icon_tag('eye.png'), refinery.videos_admin_video_path(video, :dialog => true),
11
+ <%= link_to '', refinery.videos_admin_video_path(video, :dialog => true),
12
+ :class => 'preview_icon',
12
13
  :title => t('.view_live_html'),
13
14
  :target => "_blank" %>
14
- <%= link_to refinery_icon_tag("application_edit.png"), refinery.edit_videos_admin_video_path(video),
15
+ <%= link_to '', refinery.edit_videos_admin_video_path(video),
16
+ :class => 'edit_icon',
15
17
  :title => t('.edit') %>
16
- <%= link_to refinery_icon_tag("delete.png"), refinery.videos_admin_video_path(video),
17
- :class => "cancel confirm-delete",
18
+ <%= link_to '', refinery.videos_admin_video_path(video),
19
+ :class => "cancel confirm-delete delete_icon",
18
20
  :title => t('.delete'),
19
21
  :confirm => t('message', :scope => 'refinery.admin.delete', :title => video.title),
20
22
  :method => :delete %>
@@ -1,4 +1,15 @@
1
- wym = parent.$.wymeditors(0);
2
- wym.html(wym.html() + '<%= escape_javascript(@html_for_wym) %>');
1
+ parent.$.fn.getIndex = function(){
2
+ var $p=$(this).parent().children();
3
+ return $p.index(this);
4
+ }
5
+ selectedPart = parent.$('#page_parts .ui-tabs-active').getIndex();
6
+ wym = parent.$.wymeditors(selectedPart);
7
+ selectedBlock = wym.selected();
8
+ if (selectedBlock !== null) {
9
+ $(selectedBlock).append('<%= escape_javascript(@html_for_wym) %>');
10
+ } else {
11
+ wym.html(wym.html() + '<%= escape_javascript(@html_for_wym) %>');
12
+ }
3
13
  wym.update();
4
14
  close_dialog();
15
+ wym.close_dialog();
@@ -1,11 +1,7 @@
1
1
  Refinery::Core.configure do |config|
2
-
3
- # Add extra tags to the wymeditor whitelist e.g. = {'tag' => {'attributes' => {'1' => 'href'}}} or just {'tag' => {}}
4
- config.wymeditor_whitelist_tags = {'video' => {'attributes' => {'1' => 'poster', '2' => 'width', '3' => 'height', '4' => 'source', '5' => 'controls'} },
5
- 'source' => {'attributes' => {'1' => 'src', '2' => 'type'}}}
6
2
  # Register extra javascript for backend
7
3
  config.register_javascript "refinery/admin/wymeditor_monkeypatch.js"
8
4
 
9
5
  #Register extra stylesheet for backend (optional options)
10
6
  config.register_stylesheet "refinery/admin/video.css"
11
- end
7
+ end
@@ -0,0 +1,5 @@
1
+ Refinery::Wymeditor.configure do |config|
2
+ # Add extra tags to the wymeditor whitelist e.g. = {'tag' => {'attributes' => {'1' => 'href'}}} or just {'tag' => {}}
3
+ config.whitelist_tags = {'video' => {'attributes' => {'1' => 'poster', '2' => 'width', '3' => 'height', '4' => 'source', '5' => 'controls'} },
4
+ 'source' => {'attributes' => {'1' => 'src', '2' => 'type'}}}
5
+ end
@@ -1,4 +1,6 @@
1
1
  en:
2
+ wym_tools:
3
+ add_video: Add Video
2
4
  refinery:
3
5
  admin:
4
6
  dashboard:
@@ -19,7 +21,7 @@ en:
19
21
  sorry_no_results: Sorry! There are no results found.
20
22
  no_items_yet: There are no Videos yet. Click "Add New Video" to add your first video.
21
23
  video:
22
- view_live_html: View this video live <br/><em>(opens in a new window)</em>
24
+ view_live_html: View this video live
23
25
  edit: Edit this video
24
26
  delete: Remove this video forever
25
27
  file: File
@@ -73,4 +75,4 @@ en:
73
75
  'refinery/videos/video':
74
76
  file_name: File Name
75
77
  file_size: File Size
76
- file_ext: File Ext
78
+ file_ext: File Ext
@@ -0,0 +1,79 @@
1
+ es:
2
+ wym_tools:
3
+ add_video: Video
4
+ refinery:
5
+ admin:
6
+ dashboard:
7
+ additional_dashboard_menu_items:
8
+ create_new: Añadir nuevo video
9
+ plugins:
10
+ videos:
11
+ title: Videos
12
+ videos:
13
+ admin:
14
+ videos:
15
+ actions:
16
+ create_new: Añadir nuevo video
17
+ reorder: Reordenar Videos
18
+ reorder_done: Reordenación de videos completada
19
+ records:
20
+ title: Videos
21
+ sorry_no_results: No se han encontrado resultados.
22
+ no_items_yet: Aún no hay videos. Haga click en "Añadir Nuevo Video" para insertar el primero.
23
+ video:
24
+ view_live_html: Ver este video en directo
25
+ edit: Editar este video
26
+ delete: Eliminar este video para siempre
27
+ file: Archivo
28
+ link: Enlace
29
+ shared_source: Embebido
30
+ new:
31
+ use_files: Usar archivos
32
+ use_embedded_video: Usar video embebido
33
+ form:
34
+ title: Título
35
+ poster: Poster
36
+ width: Ancho
37
+ height: Alto
38
+ page: Seleccionar como video al cargar una página
39
+ file_fields:
40
+ files: Archivos
41
+ file_tip: Añadir archivos (o enlaces a los archivos) tipos 'mp4', 'webm', 'flv', 'ogg' para compatibilidad total con el navegador
42
+ use_file: Usar archivo
43
+ use_external_source: Usar archivo externo
44
+ add_file: Añadir archivo
45
+ add_source: Añadir fuente
46
+ delete_source: Borrar fuente
47
+ link_to_source: Enlace a la fuente
48
+ download_current: Usar video actual
49
+ or: o
50
+ replace: remplazar con este
51
+ maximum_file_size: "Tamaño máximo de archivo: %{bytes}"
52
+ new_file_field:
53
+ use_file: Usar archivo
54
+ use_external_source: Usar fuente externa
55
+ add_file: Añadir archivo
56
+ add_source: Añadir fuente
57
+ delete_source: Borrar fuente
58
+ embed_video_fields:
59
+ copy_embed_tag_here: Copiar HTML aquí
60
+ form_option_fields:
61
+ options: Opciones
62
+ autoplay: Auto-arranque
63
+ show_ontrols: Mostrar controles
64
+ preload_video: Precargar video
65
+ loop_video: Repetir video
66
+ insert:
67
+ insert: Insertar
68
+ preview_form:
69
+ width: Ancho
70
+ height: Alto
71
+ videos:
72
+ show:
73
+ other: Otros Videos
74
+ activerecord:
75
+ attributes:
76
+ 'refinery/videos/video':
77
+ file_name: Nombre de archivo
78
+ file_size: Tamaño de archivo
79
+ file_ext: Extensión de archivo
@@ -0,0 +1,78 @@
1
+ pt-BR:
2
+ wym_tools:
3
+ add_video: Vídeo
4
+ refinery:
5
+ admin:
6
+ dashboard:
7
+ additional_dashboard_menu_items:
8
+ create_new: Adicionar novo vídeo
9
+ plugins:
10
+ videos:
11
+ title: Vídeos
12
+ videos:
13
+ admin:
14
+ videos:
15
+ actions:
16
+ create_new: Adicionar novo vídeo
17
+ reorder: Reordenar vídeos
18
+ reorder_done: Finalizar Reordenação
19
+ records:
20
+ title: Vídeos
21
+ sorry_no_results: Nenhum resultado encontrado.
22
+ no_items_yet: Não existem vídeos ainda. Clique em "Adicionar novo vídeo" para adicionar seu primeiro vídeo.
23
+ video:
24
+ view_live_html: Veja esse vídeo
25
+ edit: Editar esse vídeo
26
+ delete: Remover esse vídeo definitivamente
27
+ file: Arquivo
28
+ link: Link
29
+ shared_source: Embutido
30
+ new:
31
+ use_files: Usar arquivo
32
+ use_embedded_video: Usar vídeo embutido
33
+ form:
34
+ title: Título
35
+ poster: Poster
36
+ width: Largura
37
+ height: Altura
38
+ file_fields:
39
+ files: Arquivos
40
+ file_tip: Adicione arquivos (ou links para arquivos) 'mp4', 'webm', 'flv', 'ogg' para manter a compatibilidade com os navegadores
41
+ use_file: Usar arquivo
42
+ use_external_source: Usar fonte externa
43
+ add_file: Adicionar arquivo
44
+ add_source: Adicionar fonte
45
+ delete_source: Remover fonte
46
+ link_to_source: Link para fonte
47
+ download_current: Usar vídeo atual
48
+ or: ou
49
+ replace: substituir com esse
50
+ maximum_file_size: "Tamanho máximo do arquivo: %{bytes}"
51
+ new_file_field:
52
+ use_file: Usar arquivo
53
+ use_external_source: Usar fonte externa
54
+ add_file: Adicionar arquivo
55
+ add_source: Adicionar fonte
56
+ delete_source: Remover fonte
57
+ embed_video_fields:
58
+ copy_embed_tag_here: Copie o HTML aqui
59
+ form_option_fields:
60
+ options: Opções
61
+ autoplay: Iniciar automaticamente
62
+ show_ontrols: Mostrar controles
63
+ preload_video: Pre-carregar o vídeo
64
+ loop_video: Executar novamente após o final
65
+ insert:
66
+ insert: Inserir
67
+ preview_form:
68
+ width: Largura
69
+ height: Altura
70
+ videos:
71
+ show:
72
+ other: Outros vídeos
73
+ activerecord:
74
+ attributes:
75
+ 'refinery/videos/video':
76
+ file_name: Nome do arquivo
77
+ file_size: Tamanho do arquivo
78
+ file_ext: Extensão do arquivo
@@ -19,7 +19,7 @@ ru:
19
19
  sorry_no_results: Извините, ничего не найдено.
20
20
  no_items_yet: Видео отсутствуют. Нажмине "Добавить видео"
21
21
  video:
22
- view_live_html: Предварительный просмотр <br/><em>(открывается в новом окне)</em>
22
+ view_live_html: Предварительный просмотр
23
23
  edit: Редактировать видео
24
24
  delete: Удалить видео
25
25
  file: Файл
@@ -74,4 +74,4 @@ ru:
74
74
  'refinery/videos/video':
75
75
  file_name: Имя файла
76
76
  file_size: Размер файла
77
- file_ext: Расширение файла
77
+ file_ext: Расширение файла
@@ -1,4 +1,6 @@
1
1
  sk:
2
+ wym_tools:
3
+ add_video: Video
2
4
  refinery:
3
5
  admin:
4
6
  dashboard:
@@ -19,7 +21,7 @@ sk:
19
21
  sorry_no_results: Prepáč! Nenašli sa žiadne záznamy.
20
22
  no_items_yet: Zatiaľ neboli pridané žiadne videá. Klikni na "Pridať nové video" pre pridanie prvého videa.
21
23
  video:
22
- view_live_html: Pozrieť toto video live <br/><em>(otvorí sa v novom okne)</em>
24
+ view_live_html: Pozrieť toto video live
23
25
  edit: Upraviť toto video
24
26
  delete: Permanentne odstrániť toto video
25
27
  file: Súbor
@@ -74,4 +76,3 @@ sk:
74
76
  file_name: Názov súboru
75
77
  file_size: Veľkosť súboru
76
78
  file_ext: Prípona súboru
77
-
@@ -0,0 +1,79 @@
1
+ zh-CN:
2
+ wym_tools:
3
+ add_video: 添加视频
4
+ refinery:
5
+ admin:
6
+ dashboard:
7
+ additional_dashboard_menu_items:
8
+ create_new: 添加新视频
9
+ plugins:
10
+ videos:
11
+ title: 视频
12
+ videos:
13
+ admin:
14
+ videos:
15
+ actions:
16
+ create_new: 添加新视频
17
+ reorder: 重新编排视频顺序
18
+ reorder_done: 完成编排
19
+ records:
20
+ title: 视频
21
+ sorry_no_results: 对不起, 没有找到结果
22
+ no_items_yet: 这里还没有视频. 点击 "添加新视频" 去添加您的第一张视频.
23
+ video:
24
+ view_live_html: 查看此视频
25
+ edit: 编辑此视频
26
+ delete: 永久删除此视频
27
+ file: 文件
28
+ link: 链接
29
+ shared_source: 内嵌
30
+ new:
31
+ use_files: 上传文件
32
+ use_embedded_video: 使用内嵌视频
33
+ form:
34
+ title: 标题
35
+ poster: 上传者
36
+ width: 宽度
37
+ height: 高度
38
+ file_fields:
39
+ files: 文件
40
+ file_tip: 为了适应浏览器兼容性, 请添加'mp4', 'webm', 'flv', 'ogg'格式的文件 (或文件链接).
41
+ use_file: 上传文件
42
+ use_external_source: 使用文件链接
43
+ add_file: 添加文件
44
+ add_source: 继续添加视频
45
+ delete_source: 删除视频
46
+ link_to_source: 文件链接
47
+ download_current: 使用当前视频
48
+ or: 或
49
+ replace: 替换当前视频
50
+ maximum_file_size: "最大的视频大小为 %{bytes}"
51
+ new_file_field:
52
+ use_file: 上传文件
53
+ use_external_source: 使用文件链接
54
+ add_file: 添加文件
55
+ add_source: 继续添加视频
56
+ delete_source: 删除视频
57
+ link_to_source: 文件链接
58
+ embed_video_fields:
59
+ copy_embed_tag_here: 拷贝 HTML 代码到这里
60
+ form_option_fields:
61
+ options: 选项
62
+ autoplay: 自动播放
63
+ show_ontrols: 显示控制器
64
+ preload_video: 预加载视频
65
+ loop_video: 循环播放视频
66
+ insert:
67
+ insert: 插入
68
+ preview_form:
69
+ width: 宽度
70
+ height: 高度
71
+ videos:
72
+ show:
73
+ other: 其他视频
74
+ activerecord:
75
+ attributes:
76
+ 'refinery/videos/video':
77
+ file_name: 文件名
78
+ file_size: 文件大小
79
+ file_ext: 文件Ext
data/config/routes.rb CHANGED
@@ -1,5 +1,5 @@
1
- Refinery::Core::Engine.routes.append do
2
- match '/system/videos/*dragonfly', :to => Dragonfly[:refinery_videos]
1
+ Refinery::Core::Engine.routes.prepend do
2
+ match '/system/videos/*dragonfly', :to => Dragonfly.app(:refinery_videos), via: [:get, :post]
3
3
 
4
4
  # Frontend routes
5
5
  namespace :videos do
@@ -1,4 +1,4 @@
1
- class CreateVideosVideos < ActiveRecord::Migration
1
+ class CreateVideosVideos < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def up
4
4
  create_table "refinery_videos", :force => true do |t|
@@ -1,4 +1,4 @@
1
- class CreateVideoFile < ActiveRecord::Migration
1
+ class CreateVideoFile < ActiveRecord::Migration[4.2]
2
2
 
3
3
  def up
4
4
  create_table "refinery_video_files", :force => true do |t|
@@ -13,13 +13,10 @@ class CreateVideoFile < ActiveRecord::Migration
13
13
  t.string "external_url"
14
14
  t.boolean "use_external"
15
15
  end
16
-
17
16
  end
18
17
 
19
18
  def down
20
-
21
- drop_table :refinery_videos
22
-
19
+ drop_table :refinery_video_files
23
20
  end
24
21
 
25
22
  end
@@ -1,7 +1,17 @@
1
- window.onload = function ()
2
- {
3
- if ($('video').is('*')) {
4
- $('body').append('<link href="http://vjs.zencdn.net/c/video-js.css" rel="stylesheet">')
5
- $('body').append('<script src="http://vjs.zencdn.net/c/video.js"></script>')
6
- }
7
- };
1
+ window.onload = function () {
2
+ var video = document.getElementsByTagName('video')[0];
3
+
4
+ if (!video) return;
5
+
6
+ var head = document.getElementsByTagName('head')[0];
7
+ var link = document.createElement('link');
8
+ var script = document.createElement('script');
9
+
10
+ link.rel = 'stylesheet';
11
+ link.type = 'text/css';
12
+ link.href = 'https://vjs.zencdn.net/7.6.6/video-js.css';
13
+ script.src = 'https://vjs.zencdn.net/7.6.6/video.js';
14
+
15
+ head.appendChild(link);
16
+ head.appendChild(script);
17
+ };
@@ -7,17 +7,15 @@ Refinery::Videos.configure do |config|
7
7
 
8
8
  # Configure white-listed mime types for validation
9
9
  #config.whitelisted_mime_types = <%= Refinery::Videos.whitelisted_mime_types %>
10
-
10
+
11
11
  # Configure skin. Put css class name to activate skin. For YouTube like skin put tubecss and add css with images to assets path.
12
12
  # config.skin_css_class = <%= Refinery::Videos.skin_css_class %>
13
13
 
14
14
  # Configure Dragonfly
15
15
  # This is where in the middleware stack to insert the Dragonfly middleware
16
16
  # config.dragonfly_insert_before = <%= Refinery::Videos.dragonfly_insert_before %>
17
- # config.dragonfly_secret = <%= Refinery::Videos.dragonfly_secret %>
18
17
  # If you decide to trust file extensions replace :ext below with :format
19
- # config.dragonfly_url_format = <%= Refinery::Videos.dragonfly_url_format %>
18
+ # config.dragonfly_server_root = <%= Refinery::Videos.dragonfly_server_root %>
20
19
  # config.datastore_root_path = <%= Refinery::Videos.datastore_root_path %>
21
20
  # config.trust_file_extensions = <%= Refinery::Videos.trust_file_extensions %>
22
-
23
21
  end
@@ -2,15 +2,15 @@ module Refinery
2
2
  module Videos
3
3
  include ActiveSupport::Configurable
4
4
 
5
- config_accessor :dragonfly_insert_before, :dragonfly_secret, :dragonfly_url_format,
5
+ config_accessor :dragonfly_insert_before, :dragonfly_secret, :dragonfly_server_root,
6
6
  :max_file_size, :pages_per_dialog, :pages_per_admin_index,
7
7
  :s3_backend, :s3_bucket_name, :s3_region,
8
8
  :s3_access_key_id, :s3_secret_access_key,
9
9
  :datastore_root_path, :trust_file_extensions, :whitelisted_mime_types, :skin_css_class
10
10
 
11
11
  self.dragonfly_insert_before = 'ActionDispatch::Callbacks'
12
- self.dragonfly_secret = Refinery::Core.dragonfly_secret
13
- self.dragonfly_url_format = '/system/videos/:job/:basename.:format'
12
+ self.dragonfly_secret = Refinery::Dragonfly.secret
13
+ self.dragonfly_server_root = 'public'
14
14
  self.trust_file_extensions = false
15
15
  self.max_file_size = 524288000
16
16
  self.pages_per_dialog = 7
@@ -20,11 +20,11 @@ module Refinery
20
20
 
21
21
  class << self
22
22
  def datastore_root_path
23
- config.datastore_root_path || (Rails.root.join('public', 'system', 'refinery', 'videos').to_s if Rails.root)
23
+ config.datastore_root_path || Rails.root.join('public', 'system', 'refinery', 'videos').to_s
24
24
  end
25
25
 
26
26
  def s3_backend
27
- config.s3_backend.nil? ? Refinery::Core.s3_backend : config.s3_backend
27
+ config.s3_backend.nil? ? Refinery::Core.config.s3_backend : config.s3_backend
28
28
  end
29
29
 
30
30
  def s3_bucket_name
@@ -0,0 +1,14 @@
1
+ module DialogsControllerFindVideoIframeSrc
2
+ def find_iframe_src
3
+ if @dialog_type == 'video'
4
+ @iframe_src = refinery.insert_videos_admin_videos_path url_params.merge(:dialog => true)
5
+ else
6
+ super
7
+ end
8
+ end
9
+ end
10
+
11
+ Refinery::Admin::DialogsController.class_eval do
12
+ Refinery::Admin::DialogsController::TYPES << 'video'
13
+ prepend(DialogsControllerFindVideoIframeSrc)
14
+ end
@@ -1,4 +1,5 @@
1
1
  require 'dragonfly'
2
+ require 'dragonfly/s3_data_store'
2
3
 
3
4
  module Refinery
4
5
  module Videos
@@ -6,45 +7,31 @@ module Refinery
6
7
 
7
8
  class << self
8
9
  def setup!
9
- app_videos = ::Dragonfly[:refinery_videos]
10
-
11
- app_videos.define_macro(::Refinery::Videos::VideoFile, :video_accessor)
12
-
13
- app_videos.analyser.register(::Dragonfly::Analysis::FileCommandAnalyser)
14
- app_videos.content_disposition = :attachment
10
+ app_videos = ::Dragonfly.app(:refinery_videos)
15
11
  end
16
12
 
17
13
  def configure!
18
- app_videos = ::Dragonfly[:refinery_videos]
19
- app_videos.configure_with(:rails) do |c|
20
- #c.datastore = ::Dragonfly::DataStorage::MongoDataStore.new(:db => MongoMapper.database)
21
- c.datastore.root_path = Refinery::Videos.datastore_root_path
22
- c.url_format = Refinery::Videos.dragonfly_url_format
23
- c.secret = Refinery::Videos.dragonfly_secret
14
+ app_videos = ::Dragonfly.app(:refinery_videos)
15
+ app_videos.configure do
16
+ datastore :file,
17
+ root_path: Refinery::Videos.datastore_root_path,
18
+ server_root: Refinery::Videos.dragonfly_server_root,
19
+ secret: Refinery::Videos.dragonfly_secret
24
20
  end
25
21
 
26
22
  if ::Refinery::Videos.s3_backend
27
- app_videos.datastore = ::Dragonfly::DataStorage::S3DataStore.new
28
- app_videos.datastore.configure do |s3|
29
- s3.bucket_name = Refinery::Videos.s3_bucket_name
30
- s3.access_key_id = Refinery::Videos.s3_access_key_id
31
- s3.secret_access_key = Refinery::Videos.s3_secret_access_key
32
- # S3 Region otherwise defaults to 'us-east-1'
33
- s3.region = Refinery::Videos.s3_region if Refinery::Videos.s3_region
23
+ app_videos.configure do
24
+ datastore :s3,
25
+ bucket_name: Refinery::Videos.s3_bucket_name,
26
+ access_key_id: Refinery::Videos.s3_access_key_id,
27
+ secret_access_key: Refinery::Videos.s3_secret_access_key,
28
+ # S3 Region otherwise defaults to 'us-east-1'
29
+ region: Refinery::Videos.s3_region if Refinery::Videos.s3_region
34
30
  end
35
31
  end
36
32
  end
37
33
 
38
34
  def attach!(app)
39
- ### Extend active record ###
40
- app.config.middleware.insert_before Refinery::Videos.dragonfly_insert_before,
41
- 'Dragonfly::Middleware', :refinery_videos
42
-
43
- app.config.middleware.insert_before 'Dragonfly::Middleware', 'Rack::Cache', {
44
- :verbose => Rails.env.development?,
45
- :metastore => "file:#{URI.encode(Rails.root.join('tmp', 'dragonfly', 'cache', 'meta').to_s)}",
46
- :entitystore => "file:#{URI.encode(Rails.root.join('tmp', 'dragonfly', 'cache', 'body').to_s)}"
47
- }
48
35
  end
49
36
  end
50
37
 
@@ -6,7 +6,7 @@ module Refinery
6
6
 
7
7
  engine_name :refinery_videos
8
8
 
9
- initializer 'attach-refinery-videos-with-dragonfly', :after => :load_config_initializers do |app|
9
+ initializer 'attach-refinery-videos-with-dragonfly', after: :load_config_initializers do |app|
10
10
  ::Refinery::Videos::Dragonfly.configure!
11
11
  ::Refinery::Videos::Dragonfly.attach!(app)
12
12
  end
@@ -16,14 +16,14 @@ module Refinery
16
16
  plugin.name = "videos"
17
17
  plugin.url = proc { Refinery::Core::Engine.routes.url_helpers.videos_admin_videos_path }
18
18
  plugin.pathname = root
19
- plugin.activity = {
20
- :class_name => :'refinery/videos/video',
21
- :title => 'title'
22
- }
23
-
24
19
  end
25
20
  end
26
21
 
22
+ config.to_prepare do
23
+ require 'refinery/videos/dialogs_controller'
24
+
25
+ Rails.application.config.assets.precompile << %w(refinery/admin/wymeditor_monkeypatch.js refinery/admin/video.css)
26
+ end
27
27
  config.after_initialize do
28
28
  Refinery.register_extension(Refinery::Videos)
29
29
  end
@@ -1,6 +1,5 @@
1
1
  require 'refinerycms-core'
2
2
  require 'dragonfly'
3
- require 'rack/cache'
4
3
 
5
4
 
6
5
  module Refinery
metadata CHANGED
@@ -1,138 +1,204 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: refinerycms-videojs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5.1
5
- prerelease:
4
+ version: 0.6.0.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Anton Mishchuk
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-08-14 00:00:00.000000000 Z
11
+ date: 2020-02-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: dragonfly
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '0'
19
+ version: 1.2.0
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '0'
26
+ version: 1.2.0
30
27
  - !ruby/object:Gem::Dependency
31
- name: rack-cache
28
+ name: refinerycms-core
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
- version: '0'
33
+ version: 4.0.2
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
- version: '0'
40
+ version: 4.0.2
46
41
  - !ruby/object:Gem::Dependency
47
- name: refinerycms-core
42
+ name: dragonfly-s3_data_store
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '0'
47
+ version: 1.3.0
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.3.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: capybara-webkit
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 1.15.1
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.15.1
69
+ - !ruby/object:Gem::Dependency
70
+ name: capybara-screenshot
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 1.0.24
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 1.0.24
83
+ - !ruby/object:Gem::Dependency
84
+ name: factory_girl_rails
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
60
88
  - !ruby/object:Gem::Version
61
- version: '0'
62
- description: Manage videos in RefineryCMS. Use HTML5 Video.js player.
63
- email: amishchuk@adexin.com
89
+ version: 4.9.0
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 4.9.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: simplecov
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 0.18.2
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 0.18.2
111
+ - !ruby/object:Gem::Dependency
112
+ name: refinerycms-testing
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: 4.0.2
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: 4.0.2
125
+ description: Manage videos in RefineryCMS using Video.js player for playback
126
+ email: admin@adexin.com
64
127
  executables: []
65
128
  extensions: []
66
129
  extra_rdoc_files: []
67
130
  files:
68
- - app/models/refinery/videos/video_file.rb
69
- - app/models/refinery/videos/video.rb
70
131
  - app/assets/images/refinery/admin/add_video_icon.png
71
- - app/assets/javascripts/refinery/admin/wymeditor_monkeypatch.js
132
+ - app/assets/javascripts/refinery/admin/wymeditor_monkeypatch.js.erb
72
133
  - app/assets/stylesheets/refinery/admin/video.css
73
134
  - app/controllers/refinery/videos/admin/video_files_controller.rb
74
135
  - app/controllers/refinery/videos/admin/videos_controller.rb
75
- - app/views/sitemap/index.xml.builder
136
+ - app/models/refinery/videos/video.rb
137
+ - app/models/refinery/videos/video_file.rb
138
+ - app/views/refinery/admin/dashboard/_additional_dashboard_menu_items.html.erb
76
139
  - app/views/refinery/videos/admin/videos/_actions.html.erb
140
+ - app/views/refinery/videos/admin/videos/_embed_video_fields.html.erb
77
141
  - app/views/refinery/videos/admin/videos/_file_fields.html.erb
142
+ - app/views/refinery/videos/admin/videos/_form.html.erb
143
+ - app/views/refinery/videos/admin/videos/_form_option_fields.html.erb
78
144
  - app/views/refinery/videos/admin/videos/_new_file_field.html.erb
145
+ - app/views/refinery/videos/admin/videos/_preview_form.html.erb
79
146
  - app/views/refinery/videos/admin/videos/_records.html.erb
80
- - app/views/refinery/videos/admin/videos/new.html.erb
81
- - app/views/refinery/videos/admin/videos/insert.html.erb
82
- - app/views/refinery/videos/admin/videos/_videos.html.erb
147
+ - app/views/refinery/videos/admin/videos/_sortable_list.html.erb
83
148
  - app/views/refinery/videos/admin/videos/_video.html.erb
84
- - app/views/refinery/videos/admin/videos/index.html.erb
149
+ - app/views/refinery/videos/admin/videos/_videojs_dependencies.html.erb
150
+ - app/views/refinery/videos/admin/videos/_videos.html.erb
85
151
  - app/views/refinery/videos/admin/videos/append_to_wym.js.erb
152
+ - app/views/refinery/videos/admin/videos/dialog_preview.js.erb
86
153
  - app/views/refinery/videos/admin/videos/edit.html.erb
87
- - app/views/refinery/videos/admin/videos/_form.html.erb
88
- - app/views/refinery/videos/admin/videos/_videojs_dependencies.html.erb
89
- - app/views/refinery/videos/admin/videos/_form_option_fields.html.erb
90
- - app/views/refinery/videos/admin/videos/_preview_form.html.erb
91
- - app/views/refinery/videos/admin/videos/_sortable_list.html.erb
154
+ - app/views/refinery/videos/admin/videos/index.html.erb
155
+ - app/views/refinery/videos/admin/videos/insert.html.erb
156
+ - app/views/refinery/videos/admin/videos/new.html.erb
92
157
  - app/views/refinery/videos/admin/videos/show.html.erb
93
- - app/views/refinery/videos/admin/videos/dialog_preview.js.erb
94
- - app/views/refinery/videos/admin/videos/_embed_video_fields.html.erb
95
- - app/views/refinery/admin/dashboard/_additional_dashboard_menu_items.html.erb
158
+ - app/views/sitemap/index.xml.builder
159
+ - config/initializers/refinery/core.rb
160
+ - config/initializers/refinery/wymeditor.rb
96
161
  - config/locales/en.yml
162
+ - config/locales/es.yml
163
+ - config/locales/pt-BR.yml
97
164
  - config/locales/ru.yml
98
165
  - config/locales/sk.yml
99
- - config/initializers/refinery/core.rb
166
+ - config/locales/zh-CN.yml
100
167
  - config/routes.rb
101
- - db/migrate/2_create_video_file.rb
102
168
  - db/migrate/1_create_videos_videos.rb
169
+ - db/migrate/2_create_video_file.rb
170
+ - lib/generators/refinery/videos/templates/assets/javascripts/videojs_loader.js
171
+ - lib/generators/refinery/videos/templates/config/initializers/refinery/videos.rb.erb
172
+ - lib/generators/refinery/videos_generator.rb
173
+ - lib/refinery/videos.rb
103
174
  - lib/refinery/videos/configuration.rb
175
+ - lib/refinery/videos/dialogs_controller.rb
104
176
  - lib/refinery/videos/dragonfly.rb
177
+ - lib/refinery/videos/engine.rb
105
178
  - lib/refinery/videos/validators.rb
106
179
  - lib/refinery/videos/validators/file_size_validator.rb
107
- - lib/refinery/videos/engine.rb
108
- - lib/refinery/videos.rb
109
180
  - lib/refinerycms-videojs.rb
110
- - lib/generators/refinery/videos/templates/config/initializers/refinery/videos.rb.erb
111
- - lib/generators/refinery/videos/templates/assets/javascripts/videojs_loader.js
112
- - lib/generators/refinery/videos_generator.rb
113
181
  homepage: http://www.adexin.com
114
182
  licenses:
115
183
  - MIT
184
+ metadata: {}
116
185
  post_install_message:
117
186
  rdoc_options: []
118
187
  require_paths:
119
188
  - lib
120
189
  required_ruby_version: !ruby/object:Gem::Requirement
121
- none: false
122
190
  requirements:
123
- - - ! '>='
191
+ - - ">="
124
192
  - !ruby/object:Gem::Version
125
193
  version: '0'
126
194
  required_rubygems_version: !ruby/object:Gem::Requirement
127
- none: false
128
195
  requirements:
129
- - - ! '>='
196
+ - - ">="
130
197
  - !ruby/object:Gem::Version
131
198
  version: '0'
132
199
  requirements: []
133
- rubyforge_project: refinerycms-videojs
134
- rubygems_version: 1.8.24
200
+ rubygems_version: 3.1.2
135
201
  signing_key:
136
- specification_version: 3
202
+ specification_version: 4
137
203
  summary: Videos extension for Refinery CMS
138
204
  test_files: []
@@ -1,13 +0,0 @@
1
- $insert_video_link = "<ul id='add_video'><li><a href='/refinery/videos/insert?dialog=true'>Add Video</a></li></ul>";
2
- window.onload = function ()
3
- {
4
- if ($.wymeditors(0)) {
5
- $('.wym_area_top').append($insert_video_link);
6
- init_modal_dialogs();
7
- }
8
- };
9
-
10
- onCloseDialog = function(){
11
- $('iframe#dialog_iframe').attr('src', '');
12
- };
13
-