示例#1
0
        private static int GetCountOfUserSubmits(int pageId, int userId)
        {
            var allQuestionsFromPage = StudentRecordFinder.GetQuestionsForPage(pageId);

            var allUsersAnswersForQuestion = StudentRecordFinder.GetUserAnswersForQuestion(allQuestionsFromPage[0], userId);

            return(StudentRecordFinder.ExtractIncludedAnswers(allUsersAnswersForQuestion).Count);
        }
示例#2
0
        private static IList <TblPermissions> GetPermissions(int userId, int objectId, NodeType type, OperationType opType)
        {
            if (NodeType.Stage == type)
            {
                var result = StudentRecordFinder.GetPermissionsForStage(userId, objectId, GetStageOperationId(opType));

                if (IsAllDatesAreNull(result))
                {
                    var stage = ServerModel.DB.Load <TblStages>(objectId);
                    return(StudentRecordFinder.GetPermissionsForCurriculumn(userId, (int)stage.CurriculumRef, GetCurriculumOperationId(opType)));
                }
                return(result);
            }
            if (NodeType.Curriculum == type)
            {
                return(StudentRecordFinder.GetPermissionsForCurriculumn(userId, objectId, GetCurriculumOperationId(opType)));
            }

            return(new List <TblPermissions>());
        }
示例#3
0
        public static bool IsUserCanSubmitOnPage(int userId, int pageId)
        {
            TblThemes theme = StudentRecordFinder.GetThemeForPage(pageId);

            return(CheckCountOfSubmits(theme.MaxCountToSubmit, userId, pageId));
        }