From d3f5989a6f30b2f07651e24da986abd8ab67daba Mon Sep 17 00:00:00 2001 From: Mauricio Giacomini Girardello <mgg12@inf.ufpr.br> Date: Thu, 18 Feb 2016 11:20:48 -0200 Subject: [PATCH] move some view logic to a helper method --- .../learning_objects_controller.rb | 1 - app/helpers/learning_objects_helper.rb | 48 +++++++++++++------ app/views/learning_objects/show.html.erb | 9 +--- 3 files changed, 35 insertions(+), 23 deletions(-) diff --git a/app/controllers/learning_objects_controller.rb b/app/controllers/learning_objects_controller.rb index d321cb71..5728764a 100644 --- a/app/controllers/learning_objects_controller.rb +++ b/app/controllers/learning_objects_controller.rb @@ -7,7 +7,6 @@ class LearningObjectsController < ApplicationController before_action :set_learning_object, only: [:show, :edit, :update, :destroy, :like, :bookmarks, :collections, :upload, :upload_link, :download] - before_action :set_learning_object_type, only: :show after_action :increment_learning_object_views, only: [:show] # GET /learning_objects/1 diff --git a/app/helpers/learning_objects_helper.rb b/app/helpers/learning_objects_helper.rb index 3f052804..391b3e75 100644 --- a/app/helpers/learning_objects_helper.rb +++ b/app/helpers/learning_objects_helper.rb @@ -1,5 +1,18 @@ module LearningObjectsHelper + def display_object_type(learning_object) + case learning_object.object_type + when 'Ãudio' then + audio_tag(learning_object.retrieve_link, controls: true) + when 'VÃdeo' then + video_tag(learning_object.retrieve_link, autobuffer: true, poster: learning_object.thumbnail) + when 'PDF' then + "<iframe src=\"/pdfjs/web/viewer.html?file=#{learning_object.retrieve_link }\" style=\"border: 0 \" width=\"125%\" height=\"280\" frameborder=\"0\" scrolling=\"no\"></iframe>".html_safe + else + learning_object_thumbnail learning_object, "large" + end + end + def show_categories(categories = []) categories.to_s end @@ -7,20 +20,27 @@ module LearningObjectsHelper def learning_object_thumbnail(learning_object, size = "") if learning_object.thumbnail.blank? thumbnail = case learning_object.object_type - when "VÃdeo" then 'video.png' - when "Imagem" then 'image.png' - when "Hipertexto" then 'text.png' - when "Animação/simulação" then 'animation.png' - when "Software Educacional" then 'software.png' - when "Ãudio" then 'audio.png' - when "Experimento prático" then 'simulator.png' - else - if size == "large" - 'learning-object-preview-large.png' - else - 'learning-object-preview.png' - end - end + when "VÃdeo" then + 'video.png' + when "Imagem" then + 'image.png' + when "Hipertexto" then + 'text.png' + when "Animação/simulação" then + 'animation.png' + when "Software Educacional" then + 'software.png' + when "Ãudio" then + 'audio.png' + when "Experimento prático" then + 'simulator.png' + else + if size == "large" + 'learning-object-preview-large.png' + else + 'learning-object-preview.png' + end + end else thumbnail = learning_object.thumbnail end diff --git a/app/views/learning_objects/show.html.erb b/app/views/learning_objects/show.html.erb index 9e37ad6e..1dee2614 100644 --- a/app/views/learning_objects/show.html.erb +++ b/app/views/learning_objects/show.html.erb @@ -2,14 +2,7 @@ <div class="row learning-object"> <div class="col-md-7"> <div class="view"> - <%= - case @type - when 'Ãudio' then audio_tag(@learning_object.retrieve_link, controls: true) - when 'VÃdeo' then video_tag(@learning_object.retrieve_link, autobuffer: true, poster: @learning_object.thumbnail) - when 'PDF' then "<iframe src=\"/pdfjs/web/viewer.html?file=#{@learning_object.retrieve_link }\" style=\"border: 0 \" width=\"125%\" height=\"280\" frameborder=\"0\" scrolling=\"no\"></iframe>".html_safe - else learning_object_thumbnail @learning_object, "large" - end - %> + <%= display_object_type @learning_object %> </div> <div class="pull-right" style="padding-right:122px"> <span class="glyphicon glyphicon-eye-open"><%= @learning_object.views.size %> </span> -- GitLab