make disable private event for not owen event

This commit is contained in:
Narindra ezway 2025-03-26 10:59:40 +03:00
parent 3cb45b67d3
commit 6863c5493d
12 changed files with 74 additions and 45 deletions

View File

@ -1322,7 +1322,7 @@ function b(n) {
/******/ // This function allow to reference async chunks
/******/ __webpack_require__.u = (chunkId) => {
/******/ // return url for filenames based on template
/******/ return "calendar-" + chunkId + ".js?v=" + {"vendors-node_modules_nextcloud_capabilities_dist_index_js-node_modules_nextcloud_vue-select_d-877981":"741d92f5ec54d0c1ff41","vendors-node_modules_vue_dist_vue_runtime_esm_js":"7e3171593bdc0f62040b","vendors-node_modules_nextcloud_cdav-library_dist_dist_js-node_modules_nextcloud_logger_dist_i-36c16b":"c3b3db23da041c717fc1","vendors-node_modules_webdav_dist_web_index_js":"454da8f908d41b47c607","vendors-node_modules_vue-material-design-icons_CalendarBlankOutline_vue-node_modules_nextclou-4adead":"01a7eb6779cc0e417f44","vendors-node_modules_nextcloud_vue-dashboard_dist_vue-dashboard_js-node_modules_css-loader_di-9e6f3d":"c2bd3081c493a88308a2","src_models_rfcProps_js-src_services_caldavService_js-src_services_talkService_js-src_services-8a2790":"94fac30d128df46a89a6","src_store_index_js":"fcfc2d6839479e13e5cc","src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258":"7c58964361b41e9f9e17","dashboard-lazy":"60b7f707e08fff04c7a1","vendors-node_modules_vue-material-design-icons_CalendarBlank_vue-node_modules_vue-material-de-e2c1f8":"0658eb6db50a09dd2afe","vendors-node_modules_path-browserify_index_js-node_modules_nextcloud_dialogs_dist_chunks_Dial-e0595f":"e0f3178442f3c9eb35e1","node_modules_nextcloud_dialogs_dist_legacy_mjs":"8be838e4c6e9aae56c87","vendors-node_modules_nextcloud_dialogs_dist_chunks_FilePicker-8ibBgPg__mjs":"ea54a36450de178d1141","vendors-node_modules_moment_locale_af_js-node_modules_moment_locale_ar-dz_js-node_modules_mom-582c96":"ce1bed825f57dd1d117a","node_modules_moment_locale_sync_recursive_":"4bc2c39c5e0ff182c2e3"}[chunkId] + "";
/******/ return "calendar-" + chunkId + ".js?v=" + {"vendors-node_modules_nextcloud_capabilities_dist_index_js-node_modules_nextcloud_vue-select_d-877981":"741d92f5ec54d0c1ff41","vendors-node_modules_vue_dist_vue_runtime_esm_js":"7e3171593bdc0f62040b","vendors-node_modules_nextcloud_cdav-library_dist_dist_js-node_modules_nextcloud_logger_dist_i-36c16b":"c3b3db23da041c717fc1","vendors-node_modules_webdav_dist_web_index_js":"454da8f908d41b47c607","vendors-node_modules_vue-material-design-icons_CalendarBlankOutline_vue-node_modules_nextclou-4adead":"01a7eb6779cc0e417f44","vendors-node_modules_nextcloud_vue-dashboard_dist_vue-dashboard_js-node_modules_css-loader_di-9e6f3d":"c2bd3081c493a88308a2","src_models_rfcProps_js-src_services_caldavService_js-src_services_talkService_js-src_services-8a2790":"94fac30d128df46a89a6","src_store_index_js":"fcfc2d6839479e13e5cc","src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258":"b5a1f8246e3d20bdaf6b","dashboard-lazy":"60b7f707e08fff04c7a1","vendors-node_modules_vue-material-design-icons_CalendarBlank_vue-node_modules_vue-material-de-e2c1f8":"0658eb6db50a09dd2afe","vendors-node_modules_path-browserify_index_js-node_modules_nextcloud_dialogs_dist_chunks_Dial-e0595f":"e0f3178442f3c9eb35e1","node_modules_nextcloud_dialogs_dist_legacy_mjs":"8be838e4c6e9aae56c87","vendors-node_modules_nextcloud_dialogs_dist_chunks_FilePicker-8ibBgPg__mjs":"ea54a36450de178d1141","vendors-node_modules_moment_locale_af_js-node_modules_moment_locale_ar-dz_js-node_modules_mom-582c96":"ce1bed825f57dd1d117a","node_modules_moment_locale_sync_recursive_":"4bc2c39c5e0ff182c2e3"}[chunkId] + "";
/******/ };
/******/ })();
/******/
@ -1580,4 +1580,4 @@ document.addEventListener('DOMContentLoaded', function () {
/******/ })()
;
//# sourceMappingURL=calendar-dashboard.js.map?v=7a2b038eb80342d22158
//# sourceMappingURL=calendar-dashboard.js.map?v=943472925b4e71514b10

File diff suppressed because one or more lines are too long

View File

@ -24088,6 +24088,7 @@ __webpack_require__.r(__webpack_exports__);
*/
function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
const fcEvents = [];
const authUser = OC.currentUser;
for (const calendarObject of calendarObjects) {
let allObjectsInTimeRange;
try {
@ -24158,15 +24159,24 @@ function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
title += " (".concat(object.percent, "%)");
}
}
let isPrivate = false;
let isPrivateEvent = false;
let objectProperties = object._properties.get('ISPRIVATE');
if (objectProperties && objectProperties.length > 0) {
isPrivate = objectProperties[0]._value == "1" ? true : false;
isPrivateEvent = objectProperties[0]._value == "1" ? true : false;
}
//get Owen
//Get owen object's user
let owenUrl = calendarObject.dav._parent.owner;
const calendarObjectOwen = owenUrl.replace('/remote.php/dav/principals/users/', '').split('/')[0];
let owenUser = owenUrl.replace('/remote.php/dav/principals/users/', '').split('/')[0];
if (!owenUser) {
//Get from url shared calendar
owenUrl = calendarObject.dav._parent.url;
owenUser = owenUrl.replace('/remote.php/dav/calendars/' + authUser + '/personal_shared_by_', '').split('/')[0];
}
const isOwenOfEvent = owenUser == authUser;
if (isPrivateEvent && !isOwenOfEvent) {
title = (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('calendar', "Absent (".concat(owenUser, ")"));
}
const fcEvent = {
id: [calendarObject.id, object.id].join('###'),
title,
@ -24189,8 +24199,9 @@ function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
davUrl: calendarObject.dav.url,
location: object.location,
description: object.description,
isPrivate: isPrivate,
calendarObjectOwen: calendarObjectOwen
isPrivate: isPrivateEvent,
calendarObjectOwen: owenUser,
calendarObjectIsOwen: isOwenOfEvent
}
};
if (object.color) {
@ -24788,10 +24799,7 @@ __webpack_require__.r(__webpack_exports__);
*/
function handleEventClick(event, store, router, route, window) {
let isWidget = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
const currentUser = store.getters.getCurrentUserPrincipal.principalId;
console.log("currentUser");
console.log(currentUser);
if (event.extendedProps.isPrivate && event.extendedProps.calendarObjectOwen != currentUser) {
if (event.extendedProps.isPrivate && !event.extendedProps.calendarObjectIsOwen) {
return;
}
if (isWidget) {
@ -311245,4 +311253,4 @@ appointmentsConfigsStore.addInitialConfigs((0,_nextcloud_initial_state__WEBPACK_
/******/ })()
;
//# sourceMappingURL=calendar-main.js.map?v=52bbbbecc308a423b0d7
//# sourceMappingURL=calendar-main.js.map?v=7bf954278573e902be2d

File diff suppressed because one or more lines are too long

View File

@ -8865,7 +8865,7 @@ window._registerCustomPickerElement = _;
/******/ // This function allow to reference async chunks
/******/ __webpack_require__.u = (chunkId) => {
/******/ // return url for filenames based on template
/******/ return "calendar-" + chunkId + ".js?v=" + {"vendors-node_modules_vue_dist_vue_runtime_esm_js":"7e3171593bdc0f62040b","vendors-node_modules_nextcloud_capabilities_dist_index_js-node_modules_nextcloud_vue-select_d-877981":"741d92f5ec54d0c1ff41","vendors-node_modules_nextcloud_cdav-library_dist_dist_js-node_modules_nextcloud_logger_dist_i-36c16b":"c3b3db23da041c717fc1","vendors-node_modules_vue-material-design-icons_CalendarBlank_vue-node_modules_vue-material-de-e2c1f8":"0658eb6db50a09dd2afe","vendors-node_modules_vue-material-design-icons_CalendarBlankOutline_vue-node_modules_nextclou-4adead":"01a7eb6779cc0e417f44","vendors-node_modules_autosize_dist_autosize_esm_js-node_modules_html-entities_lib_index_js-no-4072c5":"c3527b981de24f56109b","src_models_rfcProps_js-src_services_caldavService_js-src_services_talkService_js-src_services-8a2790":"94fac30d128df46a89a6","src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258":"7c58964361b41e9f9e17","src_views_Calendar_vue-data_image_svg_xml_3csvg_20xmlns_27http_www_w3_org_2000_svg_27_20heigh-4a4254":"351dc86602673ed85cc3","vendors-node_modules_webdav_dist_web_index_js":"454da8f908d41b47c607","src_store_index_js":"fcfc2d6839479e13e5cc","vendors-node_modules_path-browserify_index_js-node_modules_nextcloud_dialogs_dist_chunks_Dial-e0595f":"e0f3178442f3c9eb35e1","node_modules_nextcloud_dialogs_dist_legacy_mjs":"8be838e4c6e9aae56c87","vendors-node_modules_nextcloud_dialogs_dist_chunks_FilePicker-8ibBgPg__mjs":"ea54a36450de178d1141","public-calendar-subscription-picker":"0c8b5b050db3beb63d49","vendors-node_modules_moment_locale_af_js-node_modules_moment_locale_ar-dz_js-node_modules_mom-582c96":"ce1bed825f57dd1d117a","node_modules_moment_locale_sync_recursive_":"4bc2c39c5e0ff182c2e3"}[chunkId] + "";
/******/ return "calendar-" + chunkId + ".js?v=" + {"vendors-node_modules_vue_dist_vue_runtime_esm_js":"7e3171593bdc0f62040b","vendors-node_modules_nextcloud_capabilities_dist_index_js-node_modules_nextcloud_vue-select_d-877981":"741d92f5ec54d0c1ff41","vendors-node_modules_nextcloud_cdav-library_dist_dist_js-node_modules_nextcloud_logger_dist_i-36c16b":"c3b3db23da041c717fc1","vendors-node_modules_vue-material-design-icons_CalendarBlank_vue-node_modules_vue-material-de-e2c1f8":"0658eb6db50a09dd2afe","vendors-node_modules_vue-material-design-icons_CalendarBlankOutline_vue-node_modules_nextclou-4adead":"01a7eb6779cc0e417f44","vendors-node_modules_autosize_dist_autosize_esm_js-node_modules_html-entities_lib_index_js-no-4072c5":"c3527b981de24f56109b","src_models_rfcProps_js-src_services_caldavService_js-src_services_talkService_js-src_services-8a2790":"94fac30d128df46a89a6","src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258":"b5a1f8246e3d20bdaf6b","src_views_Calendar_vue-data_image_svg_xml_3csvg_20xmlns_27http_www_w3_org_2000_svg_27_20heigh-4a4254":"1f0b098a4c10d8dcab27","vendors-node_modules_webdav_dist_web_index_js":"454da8f908d41b47c607","src_store_index_js":"fcfc2d6839479e13e5cc","vendors-node_modules_path-browserify_index_js-node_modules_nextcloud_dialogs_dist_chunks_Dial-e0595f":"e0f3178442f3c9eb35e1","node_modules_nextcloud_dialogs_dist_legacy_mjs":"8be838e4c6e9aae56c87","vendors-node_modules_nextcloud_dialogs_dist_chunks_FilePicker-8ibBgPg__mjs":"ea54a36450de178d1141","public-calendar-subscription-picker":"0c8b5b050db3beb63d49","vendors-node_modules_moment_locale_af_js-node_modules_moment_locale_ar-dz_js-node_modules_mom-582c96":"ce1bed825f57dd1d117a","node_modules_moment_locale_sync_recursive_":"4bc2c39c5e0ff182c2e3"}[chunkId] + "";
/******/ };
/******/ })();
/******/
@ -9115,4 +9115,4 @@ __webpack_require__.p = (0,_nextcloud_router__WEBPACK_IMPORTED_MODULE_1__.linkTo
/******/ })()
;
//# sourceMappingURL=calendar-reference.js.map?v=b35aec1f4c5f165ad92e
//# sourceMappingURL=calendar-reference.js.map?v=c7da1cc251dc79cf80a3

File diff suppressed because one or more lines are too long

View File

@ -53,6 +53,7 @@ __webpack_require__.r(__webpack_exports__);
*/
function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
const fcEvents = [];
const authUser = OC.currentUser;
for (const calendarObject of calendarObjects) {
let allObjectsInTimeRange;
try {
@ -123,15 +124,24 @@ function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
title += " (".concat(object.percent, "%)");
}
}
let isPrivate = false;
let isPrivateEvent = false;
let objectProperties = object._properties.get('ISPRIVATE');
if (objectProperties && objectProperties.length > 0) {
isPrivate = objectProperties[0]._value == "1" ? true : false;
isPrivateEvent = objectProperties[0]._value == "1" ? true : false;
}
//get Owen
//Get owen object's user
let owenUrl = calendarObject.dav._parent.owner;
const calendarObjectOwen = owenUrl.replace('/remote.php/dav/principals/users/', '').split('/')[0];
let owenUser = owenUrl.replace('/remote.php/dav/principals/users/', '').split('/')[0];
if (!owenUser) {
//Get from url shared calendar
owenUrl = calendarObject.dav._parent.url;
owenUser = owenUrl.replace('/remote.php/dav/calendars/' + authUser + '/personal_shared_by_', '').split('/')[0];
}
const isOwenOfEvent = owenUser == authUser;
if (isPrivateEvent && !isOwenOfEvent) {
title = (0,_nextcloud_l10n__WEBPACK_IMPORTED_MODULE_0__.translate)('calendar', "Absent (".concat(owenUser, ")"));
}
const fcEvent = {
id: [calendarObject.id, object.id].join('###'),
title,
@ -154,8 +164,9 @@ function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
davUrl: calendarObject.dav.url,
location: object.location,
description: object.description,
isPrivate: isPrivate,
calendarObjectOwen: calendarObjectOwen
isPrivate: isPrivateEvent,
calendarObjectOwen: owenUser,
calendarObjectIsOwen: isOwenOfEvent
}
};
if (object.color) {
@ -1043,4 +1054,4 @@ module.exports = "data:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/sv
/***/ })
}]);
//# sourceMappingURL=calendar-src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258.js.map?v=7c58964361b41e9f9e17
//# sourceMappingURL=calendar-src_fullcalendar_eventSources_eventSourceFunction_js-src_utils_moment_js-data_image_svg_xml_3-b73258.js.map?v=b5a1f8246e3d20bdaf6b

View File

@ -15723,10 +15723,7 @@ __webpack_require__.r(__webpack_exports__);
*/
function handleEventClick(event, store, router, route, window) {
let isWidget = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;
const currentUser = store.getters.getCurrentUserPrincipal.principalId;
console.log("currentUser");
console.log(currentUser);
if (event.extendedProps.isPrivate && event.extendedProps.calendarObjectOwen != currentUser) {
if (event.extendedProps.isPrivate && !event.extendedProps.calendarObjectIsOwen) {
return;
}
if (isWidget) {
@ -27675,4 +27672,4 @@ module.exports = "data:image/svg+xml,%3csvg%20xmlns=%27http://www.w3.org/2000/sv
/***/ })
}]);
//# sourceMappingURL=calendar-src_views_Calendar_vue-data_image_svg_xml_3csvg_20xmlns_27http_www_w3_org_2000_svg_27_20heigh-4a4254.js.map?v=351dc86602673ed85cc3
//# sourceMappingURL=calendar-src_views_Calendar_vue-data_image_svg_xml_3csvg_20xmlns_27http_www_w3_org_2000_svg_27_20heigh-4a4254.js.map?v=1f0b098a4c10d8dcab27

View File

@ -41,6 +41,7 @@ import { getAllObjectsInTimeRange } from '../../utils/calendarObject.js'
*/
export function eventSourceFunction(calendarObjects, calendar, start, end, timezone) {
const fcEvents = []
const authUser = OC.currentUser;
for (const calendarObject of calendarObjects) {
let allObjectsInTimeRange
@ -101,6 +102,8 @@ export function eventSourceFunction(calendarObjects, calendar, start, end, timez
}
}
let title
if (object.name === 'VEVENT') {
if (object.title) {
@ -119,15 +122,27 @@ export function eventSourceFunction(calendarObjects, calendar, start, end, timez
title += ` (${object.percent}%)`
}
}
let isPrivate = false;
let isPrivateEvent = false;
let objectProperties = object._properties.get('ISPRIVATE');
if (objectProperties && objectProperties.length > 0) {
isPrivate = objectProperties[0]._value == "1" ? true : false;
isPrivateEvent = objectProperties[0]._value == "1" ? true : false;
}
//get Owen
//Get owen object's user
let owenUrl = calendarObject.dav._parent.owner
const calendarObjectOwen = owenUrl.replace('/remote.php/dav/principals/users/','').split('/')[0]
let owenUser = owenUrl.replace('/remote.php/dav/principals/users/','').split('/')[0]
if (!owenUser) {
//Get from url shared calendar
owenUrl = calendarObject.dav._parent.url
owenUser = owenUrl.replace('/remote.php/dav/calendars/' + authUser + '/personal_shared_by_' ,'').split('/')[0]
}
const isOwenOfEvent = owenUser == authUser
if (isPrivateEvent && !isOwenOfEvent ) {
title = t('calendar', `Absent (${owenUser})`)
}
const fcEvent = {
id: [calendarObject.id, object.id].join('###'),
@ -153,8 +168,9 @@ export function eventSourceFunction(calendarObjects, calendar, start, end, timez
davUrl: calendarObject.dav.url,
location: object.location,
description: object.description,
isPrivate: isPrivate,
calendarObjectOwen : calendarObjectOwen
isPrivate: isPrivateEvent,
calendarObjectOwen : owenUser ,
calendarObjectIsOwen : isOwenOfEvent,
},
}

View File

@ -70,10 +70,7 @@ export default function(store, router, route, window, isWidget = false, ref = un
*/
function handleEventClick(event, store, router, route, window, isWidget = false) {
const currentUser = store.getters.getCurrentUserPrincipal.principalId;
console.log("currentUser")
console.log(currentUser)
if(event.extendedProps.isPrivate && event.extendedProps.calendarObjectOwen != currentUser){
if(event.extendedProps.isPrivate && !event.extendedProps.calendarObjectIsOwen ){
return;
}
if (isWidget) {