Пример #1
0
        private IList <ErrorStatus> Validate(GetItemsListRequest request)
        {
            var errors = new List <ErrorStatus>();


            var requestUser = request.User;

            var ownerUser = _dashRepository.GetUserByDashId(request.DashboardId);

            if (requestUser == null || ownerUser == null)
            {
                errors.Add(new ErrorStatus("WRONG_REQUEST"));
                return(errors);
            }


            if (requestUser.Id != ownerUser.Id)
            {
                errors.Add(new ErrorStatus("UNAUTHORIZED_ACESS"));
                return(errors);
            }



            return(errors);
        }
Пример #2
0
        private IList <ErrorStatus> Validate(CreateItemRequest request)
        {
            var errors = new List <ErrorStatus>();

            if (request.Item.DashBoardId == 0)
            {
                errors.Add(new ErrorStatus("DASHBOARDID_NOT_DEFINED"));
            }

            if (request.Item.CheckInterval < 30000 && request.Item.CheckInterval > 86400000)
            {
                errors.Add(new ErrorStatus("CHECKINTERVAL_WRONG"));
            }

            if (string.IsNullOrEmpty(request.Item.XPath))
            {
                errors.Add(new ErrorStatus("XPATH_NOT_DEFINED"));
            }

            if (string.IsNullOrEmpty(request.Item.CSS))
            {
                errors.Add(new ErrorStatus("CSS_NOT_DEFINED"));
            }

            if (string.IsNullOrEmpty(request.Item.Website))
            {
                errors.Add(new ErrorStatus("WEBSITE_NOT_DEFINED"));
            }

            if (string.IsNullOrEmpty(request.Item.Name))
            {
                errors.Add(new ErrorStatus("NAME_NOT_DEFINED"));
            }

            var userIdByDash  = _dashRepository.GetUserByDashId(request.Item.DashBoardId);
            var requestUserId = request.UserId;

            if (userIdByDash != null && requestUserId != userIdByDash.Id) //TODO pasiklausti zilvino ar good practice
            {
                errors.Add(new ErrorStatus("UNAUTHORIZED_ACCESS"));
            }



            return(errors);
        }
Пример #3
0
        public IList <ErrorStatus> Validate(UpdateDashboardRequest request)
        {
            var errors = new List <ErrorStatus>();

            if (request == null)
            {
                errors.Add(new ErrorStatus("BAD_REQUEST"));
                return(errors);
            }

            if (request.DashBoard == null)
            {
                errors.Add(new ErrorStatus("BAD_REQUEST"));
                return(errors);
            }

            if (_dashRepository.Get(request.DashBoard.Id) == null)
            {
                errors.Add(new ErrorStatus("DASH_NOT_FOUND"));
                return(errors);
            }

            if (request.DashBoard.Id < 1)
            {
                errors.Add(new ErrorStatus("CORRUPTED_ID"));
                return(errors);
            }

            if (request.DashBoard.Name.Length > 254)
            {
                errors.Add(new ErrorStatus("NAME_TOO_LONG"));
                return(errors);
            }

            var ownerUser = _dashRepository.GetUserByDashId(request.DashBoard.Id);

            if (ownerUser != null && ownerUser.Id != request.UserId)
            {
                errors.Add(new ErrorStatus("UNAUTHORIZED_ACCESS"));
                return(errors);
            }


            return(errors);
        }