diff --git a/UI/Scheduler/UIxCalendarFolderLinksTemplate.h b/UI/Scheduler/UIxCalendarFolderLinksTemplate.h index ee8e3aca4..067365307 100644 --- a/UI/Scheduler/UIxCalendarFolderLinksTemplate.h +++ b/UI/Scheduler/UIxCalendarFolderLinksTemplate.h @@ -20,14 +20,6 @@ #import -@class NSString; - -@class SOGoAppointmentFolder; - @interface UIxCalendarFolderLinksTemplate : UIxComponent -{ - SOGoAppointmentFolder *calendar; - NSString *baseCalDAVURL, *basePublicCalDAVURL; -} @end diff --git a/UI/Scheduler/UIxCalendarFolderLinksTemplate.m b/UI/Scheduler/UIxCalendarFolderLinksTemplate.m index d8ae5ec48..89cae71d7 100644 --- a/UI/Scheduler/UIxCalendarFolderLinksTemplate.m +++ b/UI/Scheduler/UIxCalendarFolderLinksTemplate.m @@ -28,89 +28,6 @@ @implementation UIxCalendarFolderLinksTemplate -- (id) init -{ - if ((self = [super init])) - { - calendar = [self clientObject]; - baseCalDAVURL = nil; - basePublicCalDAVURL = nil; - } - - return self; -} - -- (void) dealloc -{ - [baseCalDAVURL release]; - [basePublicCalDAVURL release]; - [super dealloc]; -} - -- (NSString *) _baseCalDAVURL -{ - NSString *davURL; - - if (!baseCalDAVURL) - { - davURL = [[calendar realDavURL] absoluteString]; - if ([davURL hasSuffix: @"/"]) - baseCalDAVURL = [davURL substringToIndex: [davURL length] - 1]; - else - baseCalDAVURL = davURL; - [baseCalDAVURL retain]; - } - - return baseCalDAVURL; -} - -- (NSString *) calDavURL -{ - return [NSString stringWithFormat: @"%@/", [self _baseCalDAVURL]]; -} - -- (NSString *) webDavICSURL -{ - return [calendar webDavICSURL]; -} - -- (NSString *) webDavXMLURL -{ - return [calendar webDavXMLURL]; -} - -- (NSString *) _basePublicCalDAVURL -{ - NSString *davURL; - - if (!basePublicCalDAVURL) - { - davURL = [[calendar publicDavURL] absoluteString]; - if ([davURL hasSuffix: @"/"]) - basePublicCalDAVURL = [davURL substringToIndex: [davURL length] - 1]; - else - basePublicCalDAVURL = davURL; - [basePublicCalDAVURL retain]; - } - - return basePublicCalDAVURL; -} - -- (NSString *) publicCalDavURL -{ - return [NSString stringWithFormat: @"%@/", [self _basePublicCalDAVURL]]; -} - -- (NSString *) publicWebDavICSURL -{ - return [calendar publicWebDavICSURL]; -} - -- (NSString *) publicWebDavXMLURL -{ - return [calendar publicWebDavXMLURL]; -} - - (BOOL) isPublicAccessEnabled { // NOTE: This method is the same found in Common/UIxAclEditor.m @@ -118,14 +35,4 @@ enablePublicAccess]; } -- (BOOL) isWebCalendar -{ - return ([calendar isKindOfClass: [SOGoWebAppointmentFolder class]]); -} - -- (NSString *) webCalendarURL -{ - return [calendar folderPropertyValueInCategory: @"WebCalendars"]; -} - @end diff --git a/UI/Scheduler/product.plist b/UI/Scheduler/product.plist index d2e0c16fe..e8dabb3af 100644 --- a/UI/Scheduler/product.plist +++ b/UI/Scheduler/product.plist @@ -193,7 +193,7 @@ actionName = "saveUserRights"; }; links = { - protectedBy = "View"; + protectedBy = "Access Contents Information"; pageName = "UIxCalendarFolderLinksTemplate"; }; }; diff --git a/UI/WebServerResources/js/Scheduler/CalendarsController.js b/UI/WebServerResources/js/Scheduler/CalendarsController.js index 4ccc37db6..dce56f9fa 100644 --- a/UI/WebServerResources/js/Scheduler/CalendarsController.js +++ b/UI/WebServerResources/js/Scheduler/CalendarsController.js @@ -75,43 +75,49 @@ .then(function() { $scope.$broadcast('calendars:list'); }, function(data, status) { - Dialog.alert(l('An error occured while deleting the addressbook "%{0}".', folder.name), + Dialog.alert(l('An error occured while deleting the calendar "%{0}".', folder.name), l(data.error)); }); } else { - Dialog.confirm(l('Warning'), l('Are you sure you want to delete the addressbook %{0}?', folder.name)) + Dialog.confirm(l('Warning'), l('Are you sure you want to delete the calendar %{0}?', folder.name)) .then(function() { folder.$delete() .then(function() { $scope.$broadcast('calendars:list'); }, function(data, status) { - Dialog.alert(l('An error occured while deleting the addressbook "%{0}".', folder.name), + Dialog.alert(l('An error occured while deleting the calendar "%{0}".', folder.name), l(data.error)); }); }); } } - function showLinks(selectedFolder) { + function showLinks(calendar) { $mdDialog.show({ parent: angular.element(document.body), clickOutsideToClose: true, escapeToClose: true, - templateUrl: selectedFolder.id + '/links', + templateUrl: calendar.id + '/links', + controller: LinksDialogController, + controllerAs: 'links', locals: { - }, - controller: LinksDialogController + calendar: calendar + } }); /** * @ngInject */ - LinksDialogController.$inject = ['scope', '$mdDialog']; - function LinksDialogController(scope, $mdDialog) { - scope.close = function() { + LinksDialogController.$inject = ['$mdDialog', 'calendar']; + function LinksDialogController($mdDialog, calendar) { + var vm = this; + vm.calendar = calendar; + vm.close = close; + + function close() { $mdDialog.hide(); - }; + } } }