From 88b5a9ba944e24484d259f97dc46e6750bef3627 Mon Sep 17 00:00:00 2001 From: Fernando Brito Date: Thu, 29 May 2014 09:56:38 -0300 Subject: [PATCH] Add video#seen --- app/admin/v_libras_video.rb | 2 +- app/assets/javascripts/bootstrap.js.coffee | 4 ---- app/assets/stylesheets/application.css.scss | 6 ++++++ app/assets/stylesheets/bootstrap.css.less | 5 +++++ app/assets/stylesheets/v_libras/videos.css.scss | 4 ++++ app/controllers/v_libras/videos_controller.rb | 7 +++++++ app/helpers/application_helper.rb | 2 +- app/models/v_libras/video.rb | 16 ++++++++++++++++ app/views/layouts/application.html.erb | 17 +++++++++++++++-- app/views/v_libras/videos/index.haml | 3 ++- db/migrate/20140529122416_add_seen_to_v_libras_videos.rb | 5 +++++ db/schema.rb | 3 ++- 12 files changed, 64 insertions(+), 10 deletions(-) create mode 100644 db/migrate/20140529122416_add_seen_to_v_libras_videos.rb diff --git a/app/admin/v_libras_video.rb b/app/admin/v_libras_video.rb index 0a80120..e41516d 100644 --- a/app/admin/v_libras_video.rb +++ b/app/admin/v_libras_video.rb @@ -1,5 +1,5 @@ ActiveAdmin.register VLibras::Video do menu :priority => 15 - permit_params :url, :request_id + permit_params :url, :request_id, :seen end diff --git a/app/assets/javascripts/bootstrap.js.coffee b/app/assets/javascripts/bootstrap.js.coffee index c9404a8..e69de29 100644 --- a/app/assets/javascripts/bootstrap.js.coffee +++ b/app/assets/javascripts/bootstrap.js.coffee @@ -1,4 +0,0 @@ -jQuery -> - $("a[rel=popover]").popover() - $(".tooltip").tooltip() - $("a[rel=tooltip]").tooltip() \ No newline at end of file diff --git a/app/assets/stylesheets/application.css.scss b/app/assets/stylesheets/application.css.scss index ac6c1b4..908c5ac 100644 --- a/app/assets/stylesheets/application.css.scss +++ b/app/assets/stylesheets/application.css.scss @@ -75,4 +75,10 @@ } .ribbon-green:after { right: 0; +} + +@media (max-width: 980px) { + .dropdown ul.dropdown-menu { + display: block; + } } \ No newline at end of file diff --git a/app/assets/stylesheets/bootstrap.css.less b/app/assets/stylesheets/bootstrap.css.less index 19fb5cc..aecfba8 100644 --- a/app/assets/stylesheets/bootstrap.css.less +++ b/app/assets/stylesheets/bootstrap.css.less @@ -1,4 +1,9 @@ @import "twitter/bootstrap/bootstrap"; + +body { + padding-top: 60px; +} + @import "twitter/bootstrap/responsive"; @import "twitter/bootstrap/sprites"; diff --git a/app/assets/stylesheets/v_libras/videos.css.scss b/app/assets/stylesheets/v_libras/videos.css.scss index 6b6b8a1..8810d0c 100644 --- a/app/assets/stylesheets/v_libras/videos.css.scss +++ b/app/assets/stylesheets/v_libras/videos.css.scss @@ -9,4 +9,8 @@ .table-requests .label { text-transform: lowercase; +} + +.vlibras-video { + max-width: 500px; } \ No newline at end of file diff --git a/app/controllers/v_libras/videos_controller.rb b/app/controllers/v_libras/videos_controller.rb index 9f24eff..8649676 100644 --- a/app/controllers/v_libras/videos_controller.rb +++ b/app/controllers/v_libras/videos_controller.rb @@ -4,8 +4,15 @@ class VLibras::VideosController < InheritedResources::Base before_filter :check_vlibras_api_status, :only => [ :index, :show ] before_filter :authenticate_user! + after_filter :mark_as_seen!, :only => [ :show ] + def index @videos = current_user.videos @requests = current_user.requests.limit(6) end + +protected + def mark_as_seen! + @video.mark_as_seen! + end end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 3925d13..cffe794 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -47,7 +47,7 @@ module ApplicationHelper end def custom_video_tag(video) - content_tag(:video, :id => "video_#{video.id}", :class => 'video-js vjs-default skin', + content_tag(:video, :id => "video_#{video.id}", :class => 'video-js vjs-default skin vlibras-video', :controls => 'controls', :preload => 'auto', :width => '100%') do content_tag(:source, '', :src => '/video.mp4', :type => 'video/mp4') end diff --git a/app/models/v_libras/video.rb b/app/models/v_libras/video.rb index 74bc6d4..ddf2ea7 100644 --- a/app/models/v_libras/video.rb +++ b/app/models/v_libras/video.rb @@ -7,8 +7,24 @@ # url :string(255) # created_at :datetime # updated_at :datetime +# seen :boolean # class VLibras::Video < ActiveRecord::Base belongs_to :request, :class => VLibras::Request, :dependent => :delete + + validates :request_id, :url, :presence => true + + before_validation :default_values + + scope :not_seen, -> { where(:seen => false) } + + def mark_as_seen! + self.update!(:seen => true) unless self.seen + end + +protected + def default_values + self.seen = false if self.seen.nil? + end end diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index db080cb..ffdbbe9 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -29,10 +29,23 @@
  • <%= link_to t('shared.main'), home_path %>