From 52878e0989f636cead16b16d62cf1f154f9c7e6d Mon Sep 17 00:00:00 2001 From: zmagod Date: Thu, 16 Mar 2017 15:38:11 +0100 Subject: [PATCH 1/3] fixed wopi buttons [fixes SCI-1110] --- app/assets/javascripts/assets.js | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/assets.js b/app/assets/javascripts/assets.js index acffc50a5..cde74c064 100644 --- a/app/assets/javascripts/assets.js +++ b/app/assets/javascripts/assets.js @@ -19,6 +19,7 @@ function setupAssetsLoading() { type: "GET", dataType: "json", success: function (data) { + var wopiBtns; $el.attr("data-status", "asset-loaded"); $el.find('img').hide(); $el.next().hide(); @@ -34,9 +35,15 @@ function setupAssetsLoading() { data.filename + '

' ); } else if(data.type === "wopi") { - $el.html(data['wopi-file-name'] + - data['wopi-view'] + - data['wopi-edit']); + if(data['wopi-edit']) { + wopiBtns = data['wopi-file-name'] + + data['wopi-view'] + + data['wopi-edit']; + } else { + wopiBtns = data['wopi-file-name'] + + data['wopi-view']; + } + $el.html(wopiBtns); } else { $el.html( "

" + From 95a0f596b71174bee9d0c63a4ae7d660022a6b61 Mon Sep 17 00:00:00 2001 From: zmagod Date: Fri, 17 Mar 2017 16:40:57 +0100 Subject: [PATCH 2/3] adds file link --- app/assets/javascripts/assets.js | 4 ++-- app/helpers/wopi_helper.rb | 13 ++++++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/app/assets/javascripts/assets.js b/app/assets/javascripts/assets.js index cde74c064..5d5d23eb1 100644 --- a/app/assets/javascripts/assets.js +++ b/app/assets/javascripts/assets.js @@ -34,8 +34,8 @@ function setupAssetsLoading() { data['preview-url'] + "'>

" + data.filename + '

' ); - } else if(data.type === "wopi") { - if(data['wopi-edit']) { + } else if (data.type === 'wopi') { + if (data['wopi-edit']) { wopiBtns = data['wopi-file-name'] + data['wopi-view'] + data['wopi-edit']; diff --git a/app/helpers/wopi_helper.rb b/app/helpers/wopi_helper.rb index eaaeec08d..5c70e13c3 100644 --- a/app/helpers/wopi_helper.rb +++ b/app/helpers/wopi_helper.rb @@ -54,9 +54,16 @@ module WopiHelper def wopi_asset_file_name(asset) html = '

' html += "#{file_extension_icon(asset)} " - html += truncate(asset.file_file_name, - length: Constants::FILENAME_TRUNCATION_LENGTH) + html += link_to download_asset_path(asset), + data: { no_turbolink: true, + id: true, + status: 'asset-present' } do + truncate( + asset.file_file_name, + length: Constants::FILENAME_TRUNCATION_LENGTH + ) + end html += ' 

' - sanitize_input(html, %w(img)) + sanitize_input(html, %w(img a)) end end From 5cc6cd094ef143b1e6ea31a062349a1e10a946a8 Mon Sep 17 00:00:00 2001 From: zmagod Date: Fri, 17 Mar 2017 16:47:58 +0100 Subject: [PATCH 3/3] refactor --- app/controllers/assets_controller.rb | 2 +- app/helpers/wopi_helper.rb | 25 +++++++++++++++---------- 2 files changed, 16 insertions(+), 11 deletions(-) diff --git a/app/controllers/assets_controller.rb b/app/controllers/assets_controller.rb index fe1d0748c..d6b0ce7bc 100644 --- a/app/controllers/assets_controller.rb +++ b/app/controllers/assets_controller.rb @@ -60,7 +60,7 @@ class AssetsController < ApplicationController Constants::FILENAME_TRUNCATION_LENGTH), 'download-url' => download_asset_path(@asset), 'type' => asset_data_type(@asset), - 'wopi-file-name' => wopi_asset_file_name(@asset), + 'wopi-file-name' => wopi_asset_file_name(@asset, true), 'wopi-edit' => (wopi_asset_edit_button(@asset) if wopi_file?(@asset)), 'wopi-view' => (wopi_asset_view_button(@asset) if wopi_file?(@asset)) }, status: 200 diff --git a/app/helpers/wopi_helper.rb b/app/helpers/wopi_helper.rb index 5c70e13c3..097a5cbc1 100644 --- a/app/helpers/wopi_helper.rb +++ b/app/helpers/wopi_helper.rb @@ -51,18 +51,23 @@ module WopiHelper end end - def wopi_asset_file_name(asset) + def wopi_asset_file_name(asset, link = false) html = '

' html += "#{file_extension_icon(asset)} " - html += link_to download_asset_path(asset), - data: { no_turbolink: true, - id: true, - status: 'asset-present' } do - truncate( - asset.file_file_name, - length: Constants::FILENAME_TRUNCATION_LENGTH - ) - end + if link + html += link_to download_asset_path(asset), + data: { no_turbolink: true, + id: true, + status: 'asset-present' } do + truncate( + asset.file_file_name, + length: Constants::FILENAME_TRUNCATION_LENGTH + ) + end + else + html += truncate(asset.file_file_name, + length: Constants::FILENAME_TRUNCATION_LENGTH) + end html += ' 

' sanitize_input(html, %w(img a)) end