Toggle opened card Custom Fields layout between Grid and one per row.

Thanks to xet7 !
This commit is contained in:
Lauri Ojansivu 2021-09-22 12:14:42 +03:00
parent 41d9ae92e6
commit fc2fb9a081
3 changed files with 42 additions and 1 deletions

View file

@ -227,8 +227,17 @@ template(name="cardDetails")
//.card-details-items //.card-details-items
if customFieldsWD if customFieldsWD
each customFieldsWD .material-toggle-switch(title="{{_ 'change'}} {{_ 'custom-fields'}} {{_ 'layout'}}")
if customFieldsGrid
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton" checked="checked")
else
input.toggle-switch(type="checkbox" id="toggleCustomFieldsGridButton")
label.toggle-label(for="toggleCustomFieldsGridButton")
unless customFieldsGrid
hr hr
each customFieldsWD
if customFieldsGrid
hr
.card-details-item.card-details-item-customfield .card-details-item.card-details-item-customfield
h3.card-details-item-title h3.card-details-item-title
i.fa.fa-list-alt i.fa.fa-list-alt

View file

@ -61,6 +61,11 @@ BlazeComponent.extendComponent({
return Meteor.user().hasHiddenSystemMessages(); return Meteor.user().hasHiddenSystemMessages();
}, },
customFieldsGrid() {
return Meteor.user().hasCustomFieldsGrid();
},
cardMaximized() { cardMaximized() {
return Meteor.user().hasCardMaximized(); return Meteor.user().hasCardMaximized();
}, },
@ -419,6 +424,9 @@ BlazeComponent.extendComponent({
'click #toggleButton'() { 'click #toggleButton'() {
Meteor.call('toggleSystemMessages'); Meteor.call('toggleSystemMessages');
}, },
'click #toggleCustomFieldsGridButton'() {
Meteor.call('toggleCustomFieldsGrid');
},
'click .js-maximize-card-details'() { 'click .js-maximize-card-details'() {
Meteor.call('toggleCardMaximized'); Meteor.call('toggleCardMaximized');
autosize($('.card-details')); autosize($('.card-details'));

View file

@ -184,6 +184,13 @@ Users.attachSchema(
type: Boolean, type: Boolean,
optional: true, optional: true,
}, },
'profile.customFieldsGrid': {
/**
* has user at card Custom Fields have Grid (false) or one per row (true) layout?
*/
type: Boolean,
optional: true,
},
'profile.hiddenSystemMessages': { 'profile.hiddenSystemMessages': {
/** /**
* does the user want to hide system messages? * does the user want to hide system messages?
@ -652,6 +659,11 @@ Users.helpers({
return profile.hiddenSystemMessages || false; return profile.hiddenSystemMessages || false;
}, },
hasCustomFieldsGrid() {
const profile = this.profile || {};
return profile.customFieldsGrid || false;
},
hasCardMaximized() { hasCardMaximized() {
const profile = this.profile || {}; const profile = this.profile || {};
return profile.cardMaximized || false; return profile.cardMaximized || false;
@ -809,6 +821,14 @@ Users.mutations({
}; };
}, },
toggleFieldsGrid(value = false) {
return {
$set: {
'profile.customFieldsGrid': !value,
},
};
},
toggleCardMaximized(value = false) { toggleCardMaximized(value = false) {
return { return {
$set: { $set: {
@ -911,6 +931,10 @@ Meteor.methods({
const user = Meteor.user(); const user = Meteor.user();
user.toggleSystem(user.hasHiddenSystemMessages()); user.toggleSystem(user.hasHiddenSystemMessages());
}, },
toggleCustomFieldsGrid() {
const user = Meteor.user();
user.toggleFieldsGrid(user.hasCustomFieldsGrid());
},
toggleCardMaximized() { toggleCardMaximized() {
const user = Meteor.user(); const user = Meteor.user();
user.toggleCardMaximized(user.hasCardMaximized()); user.toggleCardMaximized(user.hasCardMaximized());