From 351d4767d7e93c90ac798769d6071da8730d834f Mon Sep 17 00:00:00 2001 From: Lauri Ojansivu Date: Tue, 19 Nov 2019 14:09:36 +0200 Subject: When logged in, use database for setting, so that changes are immediate. Only on public board use cookies. Comment out Collapse CSS that is not in use. Thanks to xet7 ! --- client/components/swimlanes/swimlaneHeader.js | 15 ++++++--- client/components/swimlanes/swimlanes.jade | 44 ++++++++++++------------- client/components/swimlanes/swimlanes.js | 46 +++++++++++++++++++++++---- client/components/swimlanes/swimlanes.styl | 2 ++ 4 files changed, 73 insertions(+), 34 deletions(-) (limited to 'client/components/swimlanes') diff --git a/client/components/swimlanes/swimlaneHeader.js b/client/components/swimlanes/swimlaneHeader.js index c8ef4dcb..69971b05 100644 --- a/client/components/swimlanes/swimlaneHeader.js +++ b/client/components/swimlanes/swimlaneHeader.js @@ -30,12 +30,17 @@ BlazeComponent.extendComponent({ Template.swimlaneHeader.helpers({ showDesktopDragHandles() { - import { Cookies } from 'meteor/ostrio:cookies'; - const cookies = new Cookies(); - if (cookies.has('showDesktopDragHandles')) { - return true; + currentUser = Meteor.user(); + if (currentUser) { + return (currentUser.profile || {}).showDesktopDragHandles; } else { - return false; + import { Cookies } from 'meteor/ostrio:cookies'; + const cookies = new Cookies(); + if (cookies.has('showDesktopDragHandles')) { + return true; + } else { + return false; + } } }, }); diff --git a/client/components/swimlanes/swimlanes.jade b/client/components/swimlanes/swimlanes.jade index ea9cc913..b2e03afe 100644 --- a/client/components/swimlanes/swimlanes.jade +++ b/client/components/swimlanes/swimlanes.jade @@ -20,28 +20,28 @@ template(name="swimlane") if currentUser.isBoardMember unless currentUser.isCommentOnly +addListForm - if collapseSwimlane - // Minimize swimlanes next 2 lines below https://www.w3schools.com/howto/howto_js_accordion.asp - button(class="accordion") - div(class="panel") - .swimlane.js-lists.js-swimlane - if isMiniScreen - if currentListIsInThisSwimlane _id - +list(currentList) - unless currentList - each lists - +miniList(this) - if currentUser.isBoardMember - unless currentUser.isCommentOnly - +addListForm - else - each lists - +list(this) - if currentCardIsInThisList _id ../_id - +cardDetails(currentCard) - if currentUser.isBoardMember - unless currentUser.isCommentOnly - +addListForm + //if collapseSwimlane + // // Minimize swimlanes next 2 lines below https://www.w3schools.com/howto/howto_js_accordion.asp + // button(class="accordion") + // div(class="panel") + // .swimlane.js-lists.js-swimlane + // if isMiniScreen + // if currentListIsInThisSwimlane _id + // +list(currentList) + // unless currentList + // each lists + // +miniList(this) + // if currentUser.isBoardMember + // unless currentUser.isCommentOnly + // +addListForm + // else + // each lists + // +list(this) + // if currentCardIsInThisList _id ../_id + // +cardDetails(currentCard) + // if currentUser.isBoardMember + // unless currentUser.isCommentOnly + // +addListForm template(name="listsGroup") .swimlane.list-group.js-lists diff --git a/client/components/swimlanes/swimlanes.js b/client/components/swimlanes/swimlanes.js index 1bb522e5..cad673aa 100644 --- a/client/components/swimlanes/swimlanes.js +++ b/client/components/swimlanes/swimlanes.js @@ -99,7 +99,21 @@ function initSortable(boardComponent, $listsDom) { boardComponent.autorun(() => { import { Cookies } from 'meteor/ostrio:cookies'; const cookies = new Cookies(); - if (!Utils.isMiniScreen() && cookies.has('showDesktopDragHandles')) { + let showDesktopDragHandles = false; + currentUser = Meteor.user(); + if (currentUser) { + showDesktopDragHandles = (currentUser.profile || {}).showDesktopDragHandles; + } else { + import { Cookies } from 'meteor/ostrio:cookies'; + const cookies = new Cookies(); + if (cookies.has('showDesktopDragHandles')) { + showDesktopDragHandles = true; + } else { + showDesktopDragHandles = false; + } + } + + if (!Utils.isMiniScreen() && showDesktopDragHandles) { $listsDom.sortable({ handle: '.js-list-handle', }); @@ -186,10 +200,23 @@ BlazeComponent.extendComponent({ import { Cookies } from 'meteor/ostrio:cookies'; const cookies = new Cookies(); + let showDesktopDragHandles = false; + currentUser = Meteor.user(); + if (currentUser) { + showDesktopDragHandles = (currentUser.profile || {}).showDesktopDragHandles; + } else { + import { Cookies } from 'meteor/ostrio:cookies'; + const cookies = new Cookies(); + if (cookies.has('showDesktopDragHandles')) { + showDesktopDragHandles = true; + } else { + showDesktopDragHandles = false; + } + } const noDragInside = ['a', 'input', 'textarea', 'p'].concat( Utils.isMiniScreen() || - (!Utils.isMiniScreen() && cookies.has('showDesktopDragHandles')) + (!Utils.isMiniScreen() && showDesktopDragHandles) ? ['.js-list-handle', '.js-swimlane-header-handle'] : ['.js-list-header'], ); @@ -270,12 +297,17 @@ BlazeComponent.extendComponent({ Template.swimlane.helpers({ showDesktopDragHandles() { - import { Cookies } from 'meteor/ostrio:cookies'; - const cookies = new Cookies(); - if (cookies.has('showDesktopDragHandles')) { - return true; + currentUser = Meteor.user(); + if (currentUser) { + return (currentUser.profile || {}).showDesktopDragHandles; } else { - return false; + import { Cookies } from 'meteor/ostrio:cookies'; + const cookies = new Cookies(); + if (cookies.has('showDesktopDragHandles')) { + return true; + } else { + return false; + } } }, canSeeAddList() { diff --git a/client/components/swimlanes/swimlanes.styl b/client/components/swimlanes/swimlanes.styl index 9a89bf07..ca5611cc 100644 --- a/client/components/swimlanes/swimlanes.styl +++ b/client/components/swimlanes/swimlanes.styl @@ -1,5 +1,6 @@ @import 'nib' +/* // Minimize swimlanes start https://www.w3schools.com/howto/howto_js_accordion.asp .accordion @@ -33,6 +34,7 @@ padding: 0px // Minimize swimlanes end https://www.w3schools.com/howto/howto_js_accordion.asp +*/ .swimlane // Even if this background color is the same as the body we can't leave it -- cgit v1.2.3-1-g7c22