From cbd2e36a37d780383cace9c7541cd6a0a9507bc8 Mon Sep 17 00:00:00 2001 From: Hugo Zilliox Date: Sat, 23 Apr 2022 22:56:37 +0200 Subject: [PATCH] Fix refreshData button apparition into subtask + fixed mechanism on primary button (#92) --- assets/javascripts/issue_dynamic_edit.js | 12 ++++++++---- assets/stylesheets/issue_dynamic_edit.css | 14 +++++++------- config/locales/en.yml | 3 ++- config/locales/fr.yml | 3 ++- lib/details_issue_hooks.rb | 1 + 5 files changed, 20 insertions(+), 13 deletions(-) diff --git a/assets/javascripts/issue_dynamic_edit.js b/assets/javascripts/issue_dynamic_edit.js index 5039ed2..1fa6d16 100644 --- a/assets/javascripts/issue_dynamic_edit.js +++ b/assets/javascripts/issue_dynamic_edit.js @@ -107,7 +107,7 @@ var getEditFormHTML = function(attribute){ /* Loop over all form attribute and clone them into details part */ var cloneEditForm = function(){ - $('.issue.details .subject').append(''); + $('.issue.details div.subject').append(''); $(".issue.details ").wrap("
"); $('div.issue.details .attribute').each(function(){ @@ -157,9 +157,9 @@ var cloneEditForm = function(){ // Specific Case : Title field if(!_CONF_EXCLUDED_FIELD_ID.includes("subject")){ - $('div.issue.details .subject h3').append(" " + SVG_EDIT + ""); + $('div.issue.details div.subject h3').append(" " + SVG_EDIT + ""); var formTitle = getEditFormHTML("issue_subject"); - $('div.issue.details .subject').append(formTitle); + $('div.issue.details div.subject').append(formTitle); } } @@ -201,6 +201,7 @@ $('body').on('click', '.dynamicEditField .action.refuse', function(e){ /* Update whole .details block + history + form with global refresh button */ $('body').on('click', '.refreshData', function(e){ + e.preventDefault(); sendData(); }); @@ -235,7 +236,7 @@ let checkVersion = function(callback){ ${_TXT_CONFLICT_TITLE}
-

${_TXT_CONFLICT_TXT}

+

${_TXT_CONFLICT_LINK} ${_TXT_CONFLICT_TXT}

`); @@ -322,6 +323,9 @@ var sendData = function(serialized_data){ /* we update the history list */ $('#tab-content-history').append($(parsed).find('#history .journal.has-details:last-child')); + /* Update lock version with last one */ + $('#issue_lock_version').val($(parsed).find("#issue_lock_version").val()); + /* we init edit fields */ cloneEditForm(); diff --git a/assets/stylesheets/issue_dynamic_edit.css b/assets/stylesheets/issue_dynamic_edit.css index 4cdaed3..6fd9584 100644 --- a/assets/stylesheets/issue_dynamic_edit.css +++ b/assets/stylesheets/issue_dynamic_edit.css @@ -22,13 +22,13 @@ body.controller-issues.action-show .attribute .error { margin-left: 3px; } -body.controller-issues.action-show div.issue.details .subject { +body.controller-issues.action-show div.issue.details div.subject { display: flex; justify-content: space-between; align-items: center; } -body.controller-issues.action-show div.issue.details .subject .refreshData { +body.controller-issues.action-show div.issue.details div.subject .refreshData { cursor: pointer; } @@ -46,7 +46,7 @@ body.controller-issues.action-show div.issue.details .iconEdit { body.controller-issues.action-show div.issue.details.showPencil .iconEdit, body.controller-issues.action-show div.issue.details .attribute:hover .iconEdit, body.controller-issues.action-show div.issue.details .description:hover .iconEdit, -body.controller-issues.action-show div.issue.details .subject:hover .iconEdit { +body.controller-issues.action-show div.issue.details div.subject:hover .iconEdit { opacity: 1; } @@ -115,7 +115,7 @@ body.controller-issues.action-show .dynamicEditField select[multiple="multiple"] width: 100%; } -body.controller-issues.action-show .dynamicEditField select option[disabled="disabled"] { +body.controller-issues.action-show .dynamicEditField select option[disabled="disabled"] { display:none; } @@ -148,11 +148,11 @@ body.controller-issues.action-show .dynamicEditField .check_box_group { /* MOBILE MEDIAQUERY */ @media screen and (max-width: 899px){ - body.controller-issues.action-show div.issue.details .subject { + body.controller-issues.action-show div.issue.details div.subject { display: block; } - body.controller-issues.action-show div.issue.details .subject .refreshData { + body.controller-issues.action-show div.issue.details div.subject .refreshData { display: none; } @@ -174,4 +174,4 @@ body.controller-issues.action-show .dynamicEditField .check_box_group { height: auto; padding: 10px; } -} \ No newline at end of file +} diff --git a/config/locales/en.yml b/config/locales/en.yml index 2c636dd..bb63a3e 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -1,3 +1,4 @@ en: ide_txt_notice_conflict_title : "This issue has been updated by someone else while you are editing it." - ide_txt_notice_conflict_text : "Refresh the current page to get the updated data. Your current modifications will be lost" \ No newline at end of file + ide_txt_notice_conflict_link : "Refresh the current page to get the updated data." + ide_txt_notice_conflict_text : "Your current modifications will be lost." diff --git a/config/locales/fr.yml b/config/locales/fr.yml index 20d7a51..0c51b5a 100644 --- a/config/locales/fr.yml +++ b/config/locales/fr.yml @@ -1,3 +1,4 @@ fr: ide_txt_notice_conflict_title : "La demande a été mise à jour pendant que vous la modifiez." - ide_txt_notice_conflict_text : "Rafraichissez la page pour voir une version à jour de la demande. Vos modifications actuelles seront perdues" \ No newline at end of file + ide_txt_notice_conflict_link : "Rafraichissez la page pour voir une version à jour de la demande." + ide_txt_notice_conflict_text : "Vos modifications actuelles seront perdues" diff --git a/lib/details_issue_hooks.rb b/lib/details_issue_hooks.rb index fd2a090..b555845 100644 --- a/lib/details_issue_hooks.rb +++ b/lib/details_issue_hooks.rb @@ -28,6 +28,7 @@ class DetailsIssueHooks < Redmine::Hook::ViewListener content = "\n" content << "