diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/Components/CalendarActive.vue b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/Components/CalendarActive.vue
index e1b167113..2b65d8ced 100644
--- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/Components/CalendarActive.vue
+++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/Components/CalendarActive.vue
@@ -1,5 +1,15 @@
-{{ user.text }}
+
+ {{ user.text }}
+
+
+
+
+
+
+
+
+
diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/actions.js b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/actions.js
index 5a75c2075..222066018 100644
--- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/actions.js
+++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/actions.js
@@ -37,7 +37,7 @@ export default {
});
}
},
- addPersonsInvolved({ commit }, payload) {
+ addPersonsInvolved({ commit, dispatch }, payload) {
console.log('### action addPersonsInvolved', payload.result.type);
switch (payload.result.type) {
case 'person':
@@ -49,8 +49,10 @@ export default {
aThirdParties.value = addIdToValue(aThirdParties.value, payload.result.id);
break;
case 'user':
- let aUsers = document.getElementById("chill_activitybundle_activity_invites");
+ let aUsers = document.getElementById("chill_activitybundle_activity_users");
aUsers.value = addIdToValue(aUsers.value, payload.result.id);
+ commit('showUserOnCalendar', {user: payload.result, ranges: false, remote: true});
+ dispatch('fetchCalendarEvents');
break;
};
commit('addPersonsInvolved', payload);
diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/getters.js b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/getters.js
index a5f30651f..3cc447050 100644
--- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/getters.js
+++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/getters.js
@@ -45,10 +45,10 @@ export default {
console.log('userData', userData);
- if (kinds.includes(USER_CALENDAR_SHOW_RANGES) && userData.calendarRanges.length > 0) {
+ if (kinds.ranges && userData.calendarRanges.length > 0) {
console.log('adding ranges for user', userId);
const s = {
- //'id': `ranges_${userId}`,
+ 'id': `ranges_${userId}`,
events: userData.calendarRanges,
color: userData.mainColor,
backgroundColor: 'white',
@@ -113,7 +113,38 @@ export default {
return false;
},
+ /**
+ * return true if the user ranges are shown on calendar
+ *
+ * @param state
+ * @returns boolean
+ */
+ isRangeShownOnCalendarForUser: (state) => (user) => {
+ console.log(user);
+ const k = state.currentView.users.get(user.id);
+ if (typeof k === 'undefined') {
+ console.error('try to determinate if calendar range is shown and user is not in currentView');
+ return false;
+ }
+ console.log('k', k);
+ return k.ranges;
+ },
+
+ /**
+ * return true if the user remote is shown on calendar
+ * @param state
+ * @returns boolean
+ */
+ isRemoteShownOnCalendarForUser: (state) => (user) => {
+ const k = state.currentView.users.get(user.id);
+ if (typeof k === 'undefined') {
+ console.error('try to determinate if calendar range is shown and user is not in currentView');
+ return false;
+ }
+
+ return k.remote;
+ },
suggestedEntities(state, getters) {
diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/index.js b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/index.js
index 12f9240f8..666e87f81 100644
--- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/index.js
+++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/index.js
@@ -55,7 +55,7 @@ whoami().then(me => {
});
if (null !== store.getters.getMainUser) {
- store.commit('showUserOnCalendar', {what: [USER_CALENDAR_SHOW_RANGES], user: store.getters.getMainUser});
+ store.commit('showUserOnCalendar', {ranges: true, remote: true, user: store.getters.getMainUser});
}
export default store;
diff --git a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/mutations.js b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/mutations.js
index 2191ef080..eb4c7fc00 100644
--- a/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/mutations.js
+++ b/src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/store/mutations.js
@@ -8,13 +8,20 @@ export default {
state.currentView.start = start;
state.currentView.end = end;
},
- showUserOnCalendar(state, {user, what}) {
- console.log('showUserOnCalendar', {user: user.id, what});
+ showUserOnCalendar(state, {user, ranges, remote}) {
if (!state.usersData.has(user.id)) {
state.usersData.set(user.id, createUserData(user, state.usersData.size));
}
- state.currentView.users.set(user.id, what);
- console.log('state at end', state);
+
+ const cur = state.currentView.users.get(user.id);
+
+ state.currentView.users.set(
+ user.id,
+ {
+ ranges: typeof ranges !== 'undefined' ? ranges : cur.ranges,
+ remote: typeof remote !== 'undefined' ? remote : cur.remote,
+ }
+ );
},
// ConcernedGroups