summaryrefslogtreecommitdiffstats
path: root/client/components/users
diff options
context:
space:
mode:
authorMarc Hartmayer <hello@hartmayer.com>2020-04-22 14:44:08 +0200
committerMarc Hartmayer <hello@hartmayer.com>2020-04-22 19:16:05 +0200
commit8e14459cff4da1391f536dfbc6441abb21e9c215 (patch)
treec25c0eeb010635a9771754a067ab9c0f0d1c8997 /client/components/users
parent3ac5dba243a9896adc5db6fdc586c8b1768f2df9 (diff)
downloadwekan-8e14459cff4da1391f536dfbc6441abb21e9c215.tar.gz
wekan-8e14459cff4da1391f536dfbc6441abb21e9c215.tar.bz2
wekan-8e14459cff4da1391f536dfbc6441abb21e9c215.zip
Implement option to change the first day of week in user settings
Implements #2535.
Diffstat (limited to 'client/components/users')
-rw-r--r--client/components/users/userHeader.jade11
-rw-r--r--client/components/users/userHeader.js37
2 files changed, 48 insertions, 0 deletions
diff --git a/client/components/users/userHeader.jade b/client/components/users/userHeader.jade
index 1cd9da6b..3747d882 100644
--- a/client/components/users/userHeader.jade
+++ b/client/components/users/userHeader.jade
@@ -117,6 +117,17 @@ template(name="changeSettingsPopup")
| {{_ 'show-cards-minimum-count'}}
input#show-cards-count-at.inline-input.left(type="number" value="#{showCardsCountAt}" min="0" max="99" onkeydown="return false")
input.js-apply-show-cards-at.left(type="submit" value="{{_ 'apply'}}")
+ li
+ label.bold
+ i.fa.fa-calendar
+ | {{_ 'start-day-of-week'}}
+ select#start-day-of-week.inline-input.left
+ each day in weekDays startDayOfWeek
+ if day.isSelected
+ option(selected="true", value="#{day.value}") #{day.name}
+ else
+ option(value="#{day.value}") #{day.name}
+ input.js-apply-start-day-of-week.left(type="submit" value="{{_ 'apply'}}")
template(name="userDeletePopup")
unless currentUser.isWorker
diff --git a/client/components/users/userHeader.js b/client/components/users/userHeader.js
index cd315bd6..5298e99a 100644
--- a/client/components/users/userHeader.js
+++ b/client/components/users/userHeader.js
@@ -224,6 +224,27 @@ Template.changeSettingsPopup.helpers({
return cookies.get('limitToShowCardsCount');
}
},
+ weekDays(startDay) {
+ return [
+ TAPi18n.__('sunday'),
+ TAPi18n.__('monday'),
+ TAPi18n.__('tuesday'),
+ TAPi18n.__('wednesday'),
+ TAPi18n.__('thursday'),
+ TAPi18n.__('friday'),
+ TAPi18n.__('saturday'),
+ ].map(function(day, index) {
+ return { name: day, value: index, isSelected: index === startDay };
+ });
+ },
+ startDayOfWeek() {
+ currentUser = Meteor.user();
+ if (currentUser) {
+ return currentUser.getStartDayOfWeek();
+ } else {
+ return cookies.get('startDayOfWeek');
+ }
+ },
});
Template.changeSettingsPopup.events({
@@ -263,4 +284,20 @@ Template.changeSettingsPopup.events({
Popup.back();
}
},
+ 'click .js-apply-start-day-of-week'(event, templateInstance) {
+ event.preventDefault();
+ const startDay = parseInt(
+ templateInstance.$('#start-day-of-week').val(),
+ 10,
+ );
+ if (!isNaN(startDay)) {
+ currentUser = Meteor.user();
+ if (currentUser) {
+ Meteor.call('changeStartDayOfWeek', startDay);
+ } else {
+ cookies.set('startDayOfWeek', startDay);
+ }
+ Popup.back();
+ }
+ },
});