コード例 #1
0
        protected override PermissionResult CanUpdate(Organization original, Delta <NewOrganization> changes)
        {
            var changed = changes.GetEntity();

            if (!IsOrganizationNameAvailableInternal(changed.Name))
            {
                return(PermissionResult.DenyWithPlanLimitReached("A organization with this name already exists."));
            }

            return(base.CanUpdate(original, changes));
        }
コード例 #2
0
        protected override PermissionResult CanUpdate(Project original, Delta <UpdateProject> changes)
        {
            var changed = changes.GetEntity();

            if (changes.ContainsChangedProperty(p => p.Name) && !IsNameAvailableInternal(changed.Name))
            {
                return(PermissionResult.DenyWithPlanLimitReached("A project with this name already exists."));
            }

            return(base.CanUpdate(original, changes));
        }
コード例 #3
0
        protected override PermissionResult CanAdd(Project value)
        {
            if (String.IsNullOrEmpty(value.Name))
            {
                return(PermissionResult.DenyWithMessage("Project name is required."));
            }

            if (!IsProjectNameAvailableInternal(value.OrganizationId, value.Name))
            {
                return(PermissionResult.DenyWithMessage("A project with this name already exists."));
            }

            if (!_billingManager.CanAddProject(value))
            {
                return(PermissionResult.DenyWithPlanLimitReached("Please upgrade your plan to add additional projects."));
            }

            return(base.CanAdd(value));
        }
コード例 #4
0
        protected override async Task <PermissionResult> CanAddAsync(Organization value)
        {
            if (String.IsNullOrEmpty(value.Name))
            {
                return(PermissionResult.DenyWithMessage("Organization name is required."));
            }

            if (!await IsOrganizationNameAvailableInternalAsync(value.Name))
            {
                return(PermissionResult.DenyWithMessage("A organization with this name already exists."));
            }

            if (!await _billingManager.CanAddOrganizationAsync(CurrentUser))
            {
                return(PermissionResult.DenyWithPlanLimitReached("Please upgrade your plan to add an additional organization."));
            }

            return(await base.CanAddAsync(value));
        }
コード例 #5
0
        protected override PermissionResult CanAdd(Organization value)
        {
            if (String.IsNullOrEmpty(value.Name))
            {
                return(PermissionResult.DenyWithMessage("Organization name is required."));
            }

            if (!IsOrganizationNameAvailableInternal(value.Name))
            {
                return(PermissionResult.DenyWithMessage("A organization with this name already exists."));
            }

            if (!_billingManager.CanAddOrganization(ExceptionlessUser))
            {
                return(PermissionResult.DenyWithPlanLimitReached("Please upgrade your plan to add an additional organization."));
            }

            return(base.CanAdd(value));
        }