private Workflow GetCurrentOrDefaultWorkflow(ContentItem item, int portalId)
        {
            if (item.StateID != Null.NullInteger)
            {
                return(_workflowManager.GetWorkflow(item));
            }

            var defaultWorkflow = _tabWorkflowSettings.GetDefaultTabWorkflowId(portalId);

            return(_workflowManager.GetWorkflow(defaultWorkflow));
        }
Пример #2
0
        public String GetStateName(ContentItem contentItem)
        {
            String stateName = String.Empty;

            if (contentItem.StateID != -1)
            {
                if (_workflowManager.GetWorkflow(contentItem) != null)
                {
                    WorkflowState workflow = _workflowManager.GetWorkflow(contentItem).States.Where(i => i.StateID == contentItem.StateID).FirstOrDefault();

                    if (workflow != null)
                    {
                        stateName = workflow.StateName;
                    }
                }
            }

            return(stateName);
        }
Пример #3
0
        private UserInfo GetUserByWorkflowLogType(ContentItem contentItem, WorkflowLogType type)
        {
            var workflow = _workflowManager.GetWorkflow(contentItem);

            if (workflow == null)
            {
                return(null);
            }

            var logs = _workflowLogRepository.GetWorkflowLogs(contentItem.ContentItemId, workflow.WorkflowID);

            var logDraftCompleted = logs
                                    .OrderByDescending(l => l.Date)
                                    .FirstOrDefault(l => l.Type == (int)type);

            if (logDraftCompleted != null && logDraftCompleted.User != Null.NullInteger)
            {
                return(_userController.GetUserById(workflow.PortalID, logDraftCompleted.User));
            }
            return(null);
        }
Пример #4
0
        public bool IsWorkflowReviewer(int workflowId, int userId)
        {
            var workflow = _workflowManager.GetWorkflow(workflowId);

            return(workflow.States.Any(contentWorkflowState => HasStateReviewerPermission(workflow.PortalID, userId, contentWorkflowState.StateID)));
        }
Пример #5
0
 public BusinessWorkflow <T> GetWorkflow <T>() where T : new() =>
 new BusinessWorkflow <T>(_workflowManager.GetWorkflow <T>());