public Result Insert(EndorsedLogoEntity entity)
        {
            ImageManager imageManager = new ImageManager();

            if (entity.ImageFile != null)
            {
                var resImgCheck = imageManager.CheckFileImageAndSave(entity.ImagePath, entity.ImageFile, 100, 100, 3000, 3000);
                if (!resImgCheck.Success)
                {
                    return(resImgCheck);
                }
                entity.Image = resImgCheck.Entity.ToString();
                //entity.Text = "Image EndorsedLogo";
            }

            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            query.Entity = entity;
            query.Query  = @"INSERT INTO EndorsedLogos (Name, Image) VALUES(@Name, @Image)";
            var result = con.InsertQuery(query);

            result.Message = result.Success ? "The EndorsedLogo has been created" : "An error occurred";
            return(result);
        }
示例#2
0
        public Result Insert(AdministratorEntity entity, bool seal = false)
        {
            var result = new Result();

            if (entity.Password.Length < 6)
            {
                result         = new Result(false);
                result.Message = "Password length invalid";
                return(result);
            }

            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            var credentials = new CredentialsManager();

            var hash = credentials.GenerateSalt();

            entity.Password = credentials.EncodePassword(entity.Password, hash);
            entity.Hash     = hash;
            entity.Username = entity.Username.Trim().ToLower();
            entity.Sealed   = seal;

            query.Entity = entity;
            query.Query  = @"INSERT INTO Administrators (Username, Password, Hash, Sealed, Name) VALUES(@Username, @Password, @Hash, @Sealed, @Name)";

            result         = con.InsertQuery(query);
            result.Message = result.Success ? "The administrator has been created" : "An error occurred";
            result.Entity  = entity;
            return(result);
        }
示例#3
0
        private Result Insert(QuizEntity entity, DapperConnectionManager con)
        {
            var query = new QueryEntity();

            query.Entity = entity;
            query.Query  = @"INSERT INTO Quizzes (Name, Type , DomainId) VALUES(@Name, @Type , @DomainId)";
            var result = con.InsertQuery(query);

            return(result);
        }
示例#4
0
        public Result Insert(EmailEntity entity)
        {
            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            query.Entity = entity;
            query.Query  = @"INSERT INTO Emails (Type, Title, Body) 
                                             VALUES(@Type, @Title, @Body)";

            return(con.InsertQuery(query));
        }
示例#5
0
        public Result Insert(ActionEntity entity)
        {
            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            query.Entity = entity;
            query.Query  = @"INSERT INTO Actions (Text, Title, Type) VALUES(@Text, @Title, @Type)";
            var result = con.InsertQuery(query);

            result.Message = result.Success ? "The action has been created" : "An error occurred";
            return(result);
        }
示例#6
0
        public Result Insert(CategoryEntity entity)
        {
            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            query.Entity = entity;
            query.Query  = @"Insert into Categories (Name) VALUES(@Name)";
            var result = con.InsertQuery(query);

            result.Message = result.Success ? "The category has been created" : "An error occurred";
            return(result);
        }
示例#7
0
        public Result Insert(LogChangeEntity entity)
        {
            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            entity.Date  = DateTime.Now;
            query.Entity = entity;
            query.Query  = @"INSERT INTO LogChanges (Name, Username, Date, TableName, Identifier, Operation) 
                                             VALUES(@Name, @Username, @Date, @TableName, @Identifier, @Operation)";
            var result = con.InsertQuery(query);

            return(result);
        }
        public Result InsertGenericArticle(int articleId, string type)
        {
            var result = new Result();

            var con   = new DapperConnectionManager();
            var query = new QueryEntity();

            query.Entity = new { ArticleId = articleId, Type = type, Position = 100 };

            query.Query    = @"INSERT INTO ContentItems (ArticleId, Position,Type) 
                            VALUES(@ArticleId,  @Position, @Type)";
            result         = con.InsertQuery(query);
            result.Message = result.Success ? "The content item has been created" : "An error occurred";
            return(result);
        }
示例#9
0
        public Result SaveQuiz(UsersQuizzesEntity quiz)
        {
            try
            {
                var con = new DapperConnectionManager();

                var query = new QueryEntity();
                query.Entity = new { UserQuizId = quiz.UserQuizId };
                query.Query  = @"SELECT * FROM UsersQuizzes WHERE UserQuizId = @UserQuizId";
                var result = con.ExecuteQuery <UsersQuizzesEntity>(query);
                if (!result.Success)
                {
                    return(result);
                }

                quiz.DateVal = DateTime.Now;
                quiz.Date    = quiz.DateVal.ToString("d MMM yyyy");

                var q = ((IEnumerable <UsersQuizzesEntity>)result.Entity).FirstOrDefault();

                if (q != null)
                {
                    query.Entity = quiz;
                    query.Query  = @"Update UsersQuizzes set Date = @Date , DateVal = @DateVal , Results = @Results , Completed = @Completed where UserQuizId = @UserQuizId";
                    result       = con.ExecuteQuery(query);
                    return(result);
                }

                query.Entity = quiz;
                query.Query  = @"INSERT INTO UsersQuizzes (UserId ,QuizId ,Date, DateVal, Results ,Completed, Type) VALUES (@UserId ,@QuizId ,@Date, @DateVal ,@Results ,@Completed, @Type)";
                result       = con.InsertQuery(query);
                return(result);
            }catch (Exception ex)
            {
                Logger.Log(ex);
            }
            return(new Result(false));
        }
示例#10
0
        private Result RegisterUserApna(UserEntity entity, DapperConnectionManager con)
        {
            var query = new QueryEntity();

            entity.CreateDate = DateTime.Now;
            entity.ModifyDate = DateTime.Now;

            var credentials = new CredentialsManager();
            var hash        = credentials.GenerateSalt();
            var hash2       = credentials.GenerateSalt();
            var password    = credentials.EncodePassword(hash2, hash);

            entity.Hash     = hash;
            entity.Password = password;
            entity.ApnaUser = true;

            query.Entity = entity;
            query.Query  = @"INSERT INTO Users (Email, Name, Password, Hash, CreateDate, ModifyDate, ApnaMemberId, Country, Suburb, State, PostalCode, ApnaUser) 
                            VALUES(@Email, @Name, @Password, @Hash, @CreateDate, @ModifyDate, @ApnaMemberId, @Country, @Suburb, @State, @PostalCode, @ApnaUser )";

            var result = con.InsertQuery(query);

            if (result.Success)
            {
                entity.UserId   = (int)result.Entity;
                entity.Password = "";
                entity.Hash     = "";
                entity.Token    = credentials.GenerateUserToken(entity);
                result.Entity   = entity;

                Task.Run(() => new EmailManager().SendEmail(entity.Email, DL.Models.EmailType.Welcome, new
                {
                    CurrentUserName  = entity.Name,
                    CurrentUserEmail = entity.Email
                }));
            }
            return(result);
        }
示例#11
0
        public Result PublishJobListing(JobListingEntity entity, EmployerEntity employer)
        {
            //Validate required fields
            var result = new Result();

            try
            {
                var con         = new DapperConnectionManager();
                var query       = new QueryEntity();
                var credentials = new CredentialsManager();


                // check if the listing has required fields
                if (entity.JobListingId != 0)
                {
                    entity.PublishStatus = true;
                }


                entity.ModificationDate = DateTime.Now;

                // TODO : check for each element type and length



                query.Entity = entity;

                /*                query.Query = @"UPDATE [dbo].[JobListings] set
                 *                                         [EmployerId] = @EmployerId
                 *                                         ,[Title] = @Title
                 *                                         ,[NurseType] = ,@NurseType
                 *                                         ,[SpecialRequirements] = @SpecialRequirements
                 *                                         ,[PublishStatus] = @PublishStatus
                 *                                         ,[MinSalary] = @MinSalary
                 *                                         ,[MaxSalary] = @MaxSalary
                 *                                         ,[ApplicationDeadline] = @ApplicationDeadline
                 *                                         ,[ModificationDate] = @ModificationDate
                 *                                         ,[Area] = @Area
                 *                                         ,[State] = @State
                 *                                         ,[Country] = @Country
                 *                                         ,[Suburb] = @Suburb
                 *                                         ,[PostalCode] = @PostalCode
                 *                                         ,[AddressLine1] = @AddressLine1
                 *                                         ,[AddressLine2] = @AddressLine2
                 *                                         ,[Completed] = @Completed
                 *                                         ,[JobType] =@JobType
                 *                                   WHERE JobListingId = @JobListingId";*/

                query.Query = @"UPDATE [dbo].[JobListings] set [PublishStatus] = @PublishStatus  WHERE JobListingId = @JobListingId";
                result      = con.InsertQuery(query);


                return(result);
            }
            catch (Exception ex)
            {
                if (result == null)
                {
                    result = new Result();
                }
                Logger.Log(ex);
                result.Entity  = null;
                result.Success = false;
                result.Message = "An error occurred";
            }
            return(result);
        }
示例#12
0
        public Result CreateJobListingById(JobListingEntity entity, int employerId)
        {
            var result = new Result();

            try
            {
                var con         = new DapperConnectionManager();
                var query       = new QueryEntity();
                var credentials = new CredentialsManager();


                // check if the listing has required fields
                if (entity.Title == null ||
                    entity.NurseType == null ||
                    entity.Suburb == null)
                {
                    entity.PublishStatus = false;
                }

                entity.CreateDate       = DateTime.Now;
                entity.ModificationDate = entity.CreateDate;

                if (entity.ApplicationDeadline < entity.CreateDate)
                {
                    entity.ApplicationDeadline = entity.CreateDate;
                }

                // TODO : check for each element type and length



                query.Entity = entity;
                query.Query  = @"


                        INSERT INTO [dbo].[JobListings]
                                           ([EmployerId]
                                           ,[Title]
                                           ,[NurseType]
                                           ,[SpecialRequirements]
                                           ,[PublishStatus]
                                           ,[MinSalary]
                                           ,[MaxSalary]
                                           ,[CreateDate]
                                           ,[ApplicationDeadline]
                                           ,[ModificationDate]
                                           ,[Area]
                                           ,[State]
                                           ,[Country]
                                           ,[Suburb]
                                           ,[PostalCode]
                                           ,[AddressLine1]
                                           ,[AddressLine2]
                                           ,[Completed]
                                           ,[JobType])

                                     VALUES
                                           ( " + employerId.ToString() + @" 
                                           ,@Title
                                           ,@NurseType
                                           ,@SpecialRequirements
                                           ,@PublishStatus
                                           ,@MinSalary
                                           ,@MaxSalary
                                           ,@CreateDate
                                           ,@ApplicationDeadline
                                           ,@ModificationDate
                                           ,@Area
                                           ,@State
                                           ,@Country
                                           ,@Suburb
                                           ,@PostalCode
                                           ,@AddressLine1
                                           ,@AddressLine2
                                           ,@Completed
                                           ,@JobType) ;
                                    
";


                result = con.InsertQuery(query);
                return(result);
            }
            catch (Exception ex)
            {
                if (result == null)
                {
                    result = new Result();
                }
                Logger.Log(ex);
                result.Entity  = null;
                result.Success = false;
                result.Message = "An error occurred";
            }
            return(result);
        }
示例#13
0
        public Result Register(UserEntity entity)
        {
            var result = new Result();

            try
            {
                if (entity.Password.Length < 6)
                {
                    result         = new Result(false);
                    result.Message = "Password length invalid";
                    return(result);
                }

                var con   = new DapperConnectionManager();
                var query = new QueryEntity();

                var credentials = new CredentialsManager();

                var hash = credentials.GenerateSalt();

                entity.Password = credentials.EncodePassword(entity.Password, hash);
                entity.Hash     = hash;
                if (!entity.Email.Contains("@") || entity.Email.Length < 3)
                {
                    result         = new Result(false);
                    result.Message = "Email invalid";
                    return(result);
                }
                entity.Email = entity.Email.Trim().ToLower();

                var queryCheckEmail = new QueryEntity()
                {
                    Entity = new { Email = entity.Email },
                    Query  = @"SELECT Email from Users where Email = @Email and Active = 1"
                };
                var resultCheckEmail = con.ExecuteQuery <UserEntity>(queryCheckEmail);
                if (!resultCheckEmail.Success)
                {
                    resultCheckEmail.Entity  = null;
                    resultCheckEmail.Success = false;
                    resultCheckEmail.Message = "An error occurred";
                    return(resultCheckEmail);
                }
                var checkEmail = (IEnumerable <UserEntity>)resultCheckEmail.Entity;
                if (checkEmail.Any())
                {
                    resultCheckEmail.Entity  = null;
                    resultCheckEmail.Success = false;
                    resultCheckEmail.Message = "The email is currently in use";
                    return(resultCheckEmail);
                }

                entity.CreateDate = DateTime.Now;
                entity.ModifyDate = DateTime.Now;

                query.Entity = entity;
                query.Query  = @"INSERT INTO Users (Email, Name, Password, Hash, CreateDate, ModifyDate) VALUES(@Email, @Name, @Password, @Hash, @CreateDate, @ModifyDate)";

                result = con.InsertQuery(query);
                if (result.Success)
                {
                    entity.UserId   = (int)result.Entity;
                    entity.Password = "";
                    entity.Hash     = "";
                    entity.Token    = credentials.GenerateUserToken(entity);
                    result.Entity   = entity;

                    Task.Run(() => new EmailManager().SendEmail(entity.Email, DL.Models.EmailType.Welcome, new {
                        CurrentUserName  = entity.Name,
                        CurrentUserEmail = entity.Email
                    }));
                }
                result.Message = result.Success ? "The user has been created" : "An error occurred";
            }
            catch (Exception ex)
            {
                if (result == null)
                {
                    result = new Result();
                }
                Logger.Log(ex);
                result.Entity  = null;
                result.Success = false;
                result.Message = "An error occurred";
            }
            return(result);
        }
        public Result Insert(ContentItemEntity entity)
        {
            var con = new DapperConnectionManager();

            ImageManager imageManager = new ImageManager();

            if (entity.ImagePosted != null)
            {
                var resImgCheck = imageManager.CheckFileImageAndSave(entity.ImagePath, entity.ImagePosted, 30, 30, 3000, 3000);
                if (!resImgCheck.Success)
                {
                    return(resImgCheck);
                }
                entity.Image = resImgCheck.Entity.ToString();
            }

            if (entity.TitleImagePosted != null)
            {
                var resImgCheck = imageManager.CheckFileImageAndSave(entity.ImagePath, entity.TitleImagePosted, 30, 30, 3000, 3000);
                if (!resImgCheck.Success)
                {
                    return(resImgCheck);
                }
                entity.TitleImage = resImgCheck.Entity.ToString();
            }

            var query = new QueryEntity();

            query.Entity = entity;

            query.Query = @"INSERT INTO ContentItems (
                            Name,
                            Title,
                            Position,
                            SectionId,
                            ArticleId,
                            Text,
                            Type,
                            Image,
                            Carousel,
                            Link,
                            ButtonLink,
                            Video,
                            TitleImage) 
                            VALUES(
                               @Name,
                               @Title,
                               @Position,
                               @SectionId,
                               @ArticleId,
                               @Text,
                               @Type,
                               @Image,
                               @Carousel,
                               @Link,
                               @ButtonLink,
                               @Video,
                               @TitleImage
                            )";
            var result = con.InsertQuery(query);

            result.Message = result.Success ? "The content item has been created" : "An error occurred";
            return(result);
        }