Exemplo n.º 1
0
        public ActionResult Delete(int imageID, int userID, int compID)
        {
            try
            {
                ScoreCardImage scard = db.ScoreCardImages.Find(imageID);
                db.ScoreCardImages.Remove(scard);
                db.SaveChanges();

                // Inform Admin that the pending scorecard has been removed
                MessageInfo messageInfo = new MessageInfo();
                UserInfo    userInfo    = new UserInfo();
                var         AllAdmin    = userInfo.GetAllAdmin();

                string AdminEmail = "";
                string Subject    = "";
                string Body       = "";
                string userName   = userInfo.GetUserName(Convert.ToInt32(userID));
                foreach (var item in AllAdmin)
                {
                    // messageInfo.CreateMessage(newprofile.UserID, item.UserID, DateTime.Now, user.UserName + " has registered to join Tigerline Scores.");
                    AdminEmail = item.Email;
                    Subject    = "PLAYER PENDING SCORECARD REMOVED";
                    Body       = "<span style='font-family: Calibri; font-size: 24px; font-weight: bold; color: green'>TIGERLINE SCORES</span><br/><br/>";
                    Body      += "<span style='font-family: Calibri'>Player " + userName + " has removed their pending scorecard ..<br/><br/>";
                    Body      += "<a href='www.tigerlinescores.co.uk'>Tigerline Scores</a>";
                    messageInfo.SendEmail(AdminEmail, Subject, Body, null);
                }

                return(RedirectToAction("PendingScoreCards", new { userID = userID, compID = compID }));
            }
            catch
            {//TODO: Log error
                return(Content(Boolean.FalseString));
            }
        }
Exemplo n.º 2
0
        // GET: ScoreCardImages/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ScoreCardImage scoreCardImage = db.ScoreCardImages.Find(id);

            if (scoreCardImage == null)
            {
                return(HttpNotFound());
            }
            return(View(scoreCardImage));
        }
Exemplo n.º 3
0
        // GET: ScoreCardImages/Edit/5
        public ActionResult Edit(int?imageID)
        {
            if (imageID == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ScoreCardImage scoreCardImage = db.ScoreCardImages.Find(imageID);

            if (scoreCardImage == null)
            {
                return(HttpNotFound());
            }


            // competition name
            var compInfo = new CompInfo();

            ViewBag.CompName = compInfo.GetCompetitonName(scoreCardImage.CompID);

            // User Name
            ViewBag.UserName = Session["UserName"];

            // Get Club Names For Drop Down List
            var courseInfo = new CourseInfo();

            ViewBag.CourseList = courseInfo.GetCourseList();

            // Tee Colour List
            List <SelectListItem> teecolor = new List <SelectListItem>();

            teecolor.Add(new SelectListItem()
            {
                Text = "White", Value = "White"
            });
            teecolor.Add(new SelectListItem()
            {
                Text = "Yellow", Value = "Yellow"
            });
            teecolor.Add(new SelectListItem()
            {
                Text = "Red", Value = "Red"
            });
            ViewBag.TeeColour = teecolor;

            return(View(scoreCardImage));
        }
Exemplo n.º 4
0
        public ActionResult Create([Bind(Include = "CompScoreID,CompID,CompPlayerID,CourseID,TeeColour,SSS,Hole1,Hole2,Hole3,Hole4,Hole5,Hole6,Hole7,Hole8,Hole9,Hole10,Hole11,Hole12,Hole13,Hole14,Hole15,Hole16,Hole17,Hole18,PlayerHcap,RndDate,ImageID")] CompScore compScore)
        {
            if (ModelState.IsValid)
            {
                // Create the points model for this rounds score
                CompPoints compPoints = pScore.GetCompPoints(compScore);
                ViewBag.RndPoints = compPoints;

                // Get the points total
                compScore.TotalPoints = compPoints.TotalPoints;

                db.CompScores.Add(compScore);
                db.SaveChanges();
                int compScoreID = compScore.CompScoreID;
                int compID      = compScore.CompID;
                int imageID     = Convert.ToInt32(compScore.ImageID);

                // Uploaded score card processed
                ScoreCardImage scImage = db.ScoreCardImages.Find(imageID);
                scImage.Processed = true;

                // move score card image to Score Cards/Completed  folder
                string sourceFile      = Server.MapPath(@scImage.CardImage);
                string destinationFile = Server.MapPath(@scImage.CardImage.Replace("Pending", "Completed"));
                System.IO.File.Move(sourceFile, destinationFile);

                scImage.CardImage       = scImage.CardImage.Replace("Pending", "Completed");
                db.Entry(scImage).State = EntityState.Modified;
                db.SaveChanges();

                // Go to the updated league table
                return(RedirectToAction("Index", "Players", new { compID }));
            }

            return(Redirect(Request.UrlReferrer.PathAndQuery));
        }
Exemplo n.º 5
0
        public ActionResult Edit([Bind(Include = "ImageID,CompID,CardImage,Processed,Note,UserID,RoundDate,CourseID,TeeColour,SSS")] ScoreCardImage scoreCardImage)
        {
            if (ModelState.IsValid)
            {
                string             scorecardfileName = "";
                HttpPostedFileBase scorecard         = Request.Files["UploadScoreCard"];
                if (scorecard.FileName != "" && scoreCardImage.UserID != null)  //Deal with New Score Card Image
                {
                    scorecardfileName = scoreCardImage.UserID + new FileInfo(scorecard.FileName).Name;
                    string path = Path.Combine(Server.MapPath("~/ScoreCards/Pending"), scorecardfileName);

                    //Reduce size of file if required and save in large folder
                    WebImage img = new WebImage(scorecard.InputStream);
                    if (img.Height > 1200)
                    {
                        img.Resize(1200, 1200, true);
                    }
                    img.Save(path);

                    TempData["FailUpload"]    = null;
                    TempData["SuccessUpload"] = "Your NEW score card image has been successfully uploaded";

                    // Save the Score Card Image
                    scoreCardImage.CardImage = "/ScoreCards/Pending/" + scorecardfileName;
                }
                else
                {
                    TempData["SuccessUpload"] = "Your pending score card has been successfully edited";
                }


                db.Entry(scoreCardImage).State = EntityState.Modified;
                db.SaveChanges();

                // Send email to Admin to inform of edited score card image.
                MessageInfo messageInfo = new MessageInfo();
                UserInfo    userInfo    = new UserInfo();

                var AllAdmin = userInfo.GetAllAdmin();

                string AdminEmail = "";
                string Subject    = "";
                string Body       = "";
                string userName   = userInfo.GetUserName(Convert.ToInt32(scoreCardImage.UserID));

                foreach (var item in AllAdmin)
                {
                    // messageInfo.CreateMessage(newprofile.UserID, item.UserID, DateTime.Now, user.UserName + " has registered to join Tigerline Scores.");
                    AdminEmail = item.Email;
                    Subject    = "PLAYER PENDING SCORECARD EDITED";
                    Body       = "<span style='font-family: Calibri; font-size: 24px; font-weight: bold; color: green'>TIGERLINE SCORES</span><br/><br/>";
                    Body      += "<span style='font-family: Calibri'>Player " + userName + " has edited their pending scorecard ..<br/><br/>";
                    Body      += "<a href='www.tigerlinescores.co.uk'>Tigerline Scores</a>";
                    messageInfo.SendEmail(AdminEmail, Subject, Body, null);
                }

                // Get Club Names For Drop Down List
                var courseInfo = new CourseInfo();
                ViewBag.CourseList = courseInfo.GetCourseList();

                // Tee Colour List
                List <SelectListItem> teecolor = new List <SelectListItem>();
                teecolor.Add(new SelectListItem()
                {
                    Text = "White", Value = "White"
                });
                teecolor.Add(new SelectListItem()
                {
                    Text = "Yellow", Value = "Yellow"
                });
                teecolor.Add(new SelectListItem()
                {
                    Text = "Red", Value = "Red"
                });
                ViewBag.TeeColour = teecolor;
            }
            return(View(scoreCardImage));
        }
Exemplo n.º 6
0
        public ActionResult Create([Bind(Include = "ImageID,CompID,CardImage,Processed,Note,UserID,RoundDate,CourseID,TeeColour,SSS")] ScoreCardImage scoreCardImage)
        {
            if (ModelState.IsValid)
            {
                // Deal with uploaded Score Card Photo PENDING ******************************
                string             scorecardfileName = "";
                HttpPostedFileBase scorecard         = Request.Files["UploadScoreCard"];
                if (scorecard.FileName != "" && scoreCardImage.UserID != null)
                {
                    scorecardfileName = scoreCardImage.UserID + new FileInfo(scorecard.FileName).Name;
                    string path = Path.Combine(Server.MapPath("~/ScoreCards/Pending"), scorecardfileName);

                    //Reduce size of file if required and save in large folder
                    WebImage img = new WebImage(scorecard.InputStream);
                    if (img.Height > 1200)
                    {
                        img.Resize(1200, 1200, true);
                    }
                    img.Save(path);

                    TempData["FailUpload"]    = null;
                    TempData["SuccessUpload"] = "Score Card Image successfully Uploaded. You can edit this pending score card by selecting 'My Pending Score Cards' on the main menu ..";

                    // Save the Score Card Image
                    scoreCardImage.CardImage = "/ScoreCards/Pending/" + scorecardfileName;
                    scoreCardImage.Processed = false;
                    db.ScoreCardImages.Add(scoreCardImage);
                    db.SaveChanges();

                    // Remove the FIRST Upcoming Round Record
                    // List of Upcoming Rounds
                    int CompID       = scoreCardImage.CompID;
                    int compPlayerID = Convert.ToInt32(Session["CompPlayerID"]);
                    var FirstRnd     = (from rd in db.UpcomingRnds
                                        where rd.CompPlayerID == compPlayerID && rd.CompID == CompID
                                        orderby rd.RndDate
                                        select rd).First();

                    db.UpcomingRnds.Remove(FirstRnd);
                    db.SaveChanges();

                    // Send email to Admin to inform of new scorecard upload
                    MessageInfo messageInfo = new MessageInfo();
                    UserInfo    userInfo    = new UserInfo();

                    var AllAdmin = userInfo.GetAllAdmin();

                    string AdminEmail = "";
                    string Subject    = "";
                    string Body       = "";
                    string userName   = userInfo.GetUserName(Convert.ToInt32(scoreCardImage.UserID));

                    foreach (var item in AllAdmin)
                    {
                        // messageInfo.CreateMessage(newprofile.UserID, item.UserID, DateTime.Now, user.UserName + " has registered to join Tigerline Scores.");
                        AdminEmail = item.Email;
                        Subject    = "PLAYER SCORECARD IMAGE UPLOADED";
                        Body       = "<span style='font-family: Calibri; font-size: 24px; font-weight: bold; color: green'>TIGERLINE SCORES</span><br/><br/>";
                        Body      += "<span style='font-family: Calibri'>Player " + userName + " has uploaded a new scorecard image ..<br/><br/>";
                        Body      += "<a href='www.tigerlinescores.co.uk'>Tigerline Scores</a>";
                        messageInfo.SendEmail(AdminEmail, Subject, Body, null);
                    }

                    return(RedirectToAction("Index", "PLayerCompList"));
                }
                else
                {
                    TempData["FailUpload"]    = "Unable to upload the score card image ..";
                    TempData["SuccessUpload"] = null;
                }
            }
            return(RedirectToAction("Index", "PLayerCompList"));
        }
Exemplo n.º 7
0
        // GET: ScoreCardImages/Create
        public ActionResult Create(int CompID)
        {
            if ((Session["userid"]) != null)
            {
                var cardImageModel = new ScoreCardImage();

                //Check User is in this Competition
                CompInfo cInfo    = new CompInfo();
                int      userID   = Convert.ToInt32(Session["userid"]);
                Boolean  IsInComp = cInfo.IsUserinComp(CompID, userID);
                if (IsInComp == false)
                {
                    TempData["FailUpload"]    = "You need to be in this competition to upload a score card ..";
                    TempData["SuccessUpload"] = null;

                    return(RedirectToAction("Index", "PLayerCompList"));
                }

                // default players home course
                var pStats = new PlayerStats();

                cardImageModel.UserID = userID;

                // competition name
                var compInfo = new CompInfo();
                ViewBag.CompName      = compInfo.GetCompetitonName(CompID);
                cardImageModel.CompID = CompID;

                // User Name
                ViewBag.UserName = Session["UserName"];

                //CompPlayerID
                ViewBag.CompPlayerID = Session["CompPlayerID"];

                // Get Club Names For Drop Down List
                var courseInfo = new CourseInfo();
                ViewBag.CourseList = courseInfo.GetCourseList();

                // Tee Colour List
                List <SelectListItem> teecolor = new List <SelectListItem>();
                teecolor.Add(new SelectListItem()
                {
                    Text = "White", Value = "White"
                });
                teecolor.Add(new SelectListItem()
                {
                    Text = "Yellow", Value = "Yellow"
                });
                teecolor.Add(new SelectListItem()
                {
                    Text = "Red", Value = "Red"
                });
                ViewBag.TeeColour = teecolor;

                // List of Upcoming Rounds
                int compPlayerID = Convert.ToInt32(Session["CompPlayerID"]);
                var Rnds         = from rd in db.UpcomingRnds
                                   where rd.CompPlayerID == compPlayerID && rd.CompID == CompID
                                   orderby rd.RndDate
                                   select rd;

                int      rndCount         = 1;
                int      upcomingCourseID = 0;
                DateTime upcomingRndDate  = new DateTime();
                string   upcomingTeeColor = "Yellow";
                string   upcomingNote     = "";
                foreach (var item in Rnds)
                {
                    item.CourseName = courseInfo.GetCourseName(item.CourseID);
                    if (rndCount == 1)
                    {
                        upcomingCourseID = item.CourseID;
                        upcomingRndDate  = Convert.ToDateTime(item.RndDate);
                        upcomingNote     = item.Note;
                        if (item.RndType == "Competition")
                        {
                            upcomingTeeColor = "White";
                        }
                    }
                    rndCount += 1;
                }
                ViewBag.UpcomingRnds = Rnds.ToList();

                // Pre-Populate the Model Items with the FIRST Upcoming Rnd
                cardImageModel.CourseID  = upcomingCourseID;
                cardImageModel.RoundDate = upcomingRndDate;
                cardImageModel.TeeColour = upcomingTeeColor;
                cardImageModel.Note      = upcomingNote;

                return(View(cardImageModel));
            }

            return(RedirectToAction("Index", "Home"));
        }