示例#1
0
        public ActionResult EditSeedInfo(string txtEdtSeedTitle, string txtEdtDesc, string seedCoordinatesEdt, string seedLocationEdt, string txtCategoryEdt, IEnumerable<HttpPostedFileBase> mediaFilesEdt, string EdtSeedID)
        {
            #region codeRegion
            try
            {
                SeedAction objSeed = new SeedAction();
                LocationAction objLocation = new LocationAction();

                Seed seed = GetSeedInformation(EdtSeedID);
                seed.title = txtEdtSeedTitle;
                string s = Regex.Replace(txtEdtDesc, @"<(.|\n)*?>", string.Empty);
                s = s.Replace("&nbsp;", " ");
                s = Regex.Replace(s, @"\s+", " ");
                s = Regex.Replace(s, @"\r\n", "\n");
                s = Regex.Replace(s, @"\n+", "\n");
                string description = s;

                badWordsFilter objWords = new badWordsFilter();
                string wordsFilePath = Server.MapPath("~/utils/badWords.xml");
                List<string> lstBadWords = badWordsFilter.BadWordList(ref wordsFilePath);
                description = objWords.FilterBadWords(lstBadWords, description);

                seed.description = description;

                Location loc = seed.Location;
                //Format address and create add seed model
                string[] splitAddress = seedLocationEdt.Split(',');
                string[] strSplitLatLong = seedCoordinatesEdt.Split(',');
                loc.localLat = Convert.ToDouble(strSplitLatLong[0].ToString());
                loc.localLong = Convert.ToDouble(strSplitLatLong[1].ToString());

                if (splitAddress.Length > 4)
                {
                    string[] splitZipRegion = splitAddress[3].ToString().Trim().Split(' ');
                    loc.crossStreet = splitAddress[0].ToString() + ", " + splitAddress[1].ToString();
                    string cityid = objLocation.GetCityIdByCityName(splitAddress[2].ToString().Trim(), splitZipRegion[0].ToString().Trim());
                    loc.cityId = new Guid(cityid);
                    loc.zipcode = splitZipRegion[1].ToString().Trim();
                }
                else
                {
                    string[] splitZipRegion = splitAddress[2].ToString().Trim().Split(' ');
                    loc.crossStreet = splitAddress[0].ToString();
                    string cityid = objLocation.GetCityIdByCityName(splitAddress[1].ToString().Trim(), splitZipRegion[0].ToString().Trim());
                    loc.cityId = new Guid(cityid);
                    loc.zipcode = splitZipRegion[1].ToString().Trim();
                }
                //End formatting address

                loc = objLocation.UpdateLocation(loc);
                seed.locationId = loc.id;
                seed = objSeed.UpdateSeed(seed);
                string plantedSeedId = seed.id.ToString();

                if (txtCategoryEdt != null)
                {
                    string catIds = string.Empty;
                    string[] splitCategories = txtCategoryEdt.Split(',');
                    for (int i = 0; i < splitCategories.Length; i++)
                    {
                        CategoryAction objCatg = new CategoryAction();
                        string idCatg = objCatg.GetCategoryIdByCategoryName(splitCategories[i].ToString());
                        if (!string.IsNullOrEmpty(idCatg))
                        {
                            if (string.IsNullOrEmpty(catIds))
                                catIds = idCatg;
                            else
                                catIds = catIds + "," + idCatg;
                        }
                    }
                    //bool isPlanted = false;
                    if (!string.IsNullOrEmpty(catIds))
                    {
                        string[] arrCatIds = catIds.Split(',');
                        objSeed.AddCategories(plantedSeedId, arrCatIds);
                    }
                }
                if (mediaFilesEdt != null)
                {
                    foreach (var file in mediaFilesEdt)
                    {
                        if (file.ContentLength > 0)
                        {
                            Bitmap sourceImage = new Bitmap(file.InputStream);
                            MediaManagement objMedia = new MediaManagement();
                            bool isMediaSaved = false;
                            int fileSize = file.ContentLength;
                            string fileOk = CheckFile(file.FileName, fileSize);
                            if (fileOk != "Invalid")
                            {
                                string strImgFileExtension = System.IO.Path.GetExtension(file.FileName);
                                DateTime datImg = DateTime.Now;
                                string ImgfileUploadtime = datImg.Day.ToString() + datImg.Month.ToString() + datImg.Year.ToString() + datImg.Hour.ToString() + datImg.Minute.ToString() + datImg.Second.ToString();
                                string filePath = Path.Combine(HttpContext.Server.MapPath("/UploadedMedia"), (plantedSeedId + "_" + ImgfileUploadtime + strImgFileExtension));
                                objMedia.title = plantedSeedId + "_" + ImgfileUploadtime;
                                objMedia.path = "../../UploadedMedia/" + (plantedSeedId + "_" + ImgfileUploadtime + strImgFileExtension);
                                objMedia.type = fileOk;
                                objMedia.seedId = plantedSeedId;
                                sourceImage.Save(filePath, FileExtensionToImageFormat(filePath));
                                objMedia.embedScript = "Image Script";
                                isMediaSaved = SaveMediaInformation(objMedia);
                            }
                            else
                                throw new Exception("Please check file type or file size, Max Size Allowed : (Image : 2 MB) & (Video : 4 MB)");
                        }
                    }
                }
                return Redirect("/Seed/SeedDetails/" + plantedSeedId);
            }
            catch (Exception ex)
            {
                SessionStore.SetSessionValue("PlantError", ex.Message.ToString());
                return RedirectToAction("PlantError", "Seed");
            }
            #endregion
        }
示例#2
0
        public ActionResult EditSeed(string SeedId, string SeedTitle, string SeedDescription, string SeedTags, string categoryIds)
        {
            #region
            SeedAction objSeed = new SeedAction();
            Seed seed = objSeed.GetSeedBySeedId(SeedId);
            seed.title = SeedTitle;

            badWordsFilter objWords = new badWordsFilter();
            string filePath = Server.MapPath("~/utils/badWords.xml");
            List<string> lstBadWords = badWordsFilter.BadWordList(ref filePath);
            string description = objWords.FilterBadWords(lstBadWords, SeedDescription);

            if (description.Length > 999)
                description = description.Substring(0, 995);

            seed.description = description;
            seed = objSeed.UpdateSeed(seed);

            string[] arrCategoryIds;
            char[] separator = new char[] { ',' };
            categoryIds = categoryIds.TrimStart(',');
            arrCategoryIds = categoryIds.Split(',');
            bool isPlanted = false;
            if (categoryIds.Trim().ToString() != "")
            {
                isPlanted = objSeed.AddCategories(SeedId, arrCategoryIds);
            }

            Tag objTagEntity = new Tag();
            if (!string.IsNullOrEmpty(SeedTags))
            {
                objTagEntity.name = SeedTags;
                objTagEntity.seedId = new Guid(SeedId);
                objSeed.ManageTag(objTagEntity);
            }

            if (seed.id != null)
            {
                //send automated email - content of email will be decided later
                // Creating array list for token
                ArrayList arrTokens = new ArrayList();
                arrTokens.Add(seed.Member.firstName + " " + seed.Member.lastName);
                arrTokens.Add(seed.title);

                // Filling mail object
                SendMail objSendMail = new SendMail();
                objSendMail.ToEmailId = seed.Member.username;
                objSendMail.Subject = "email.editSeed.subject.content";
                objSendMail.MsgBody = "email.editSeed.body.content";
                objSendMail.ChangesInMessage = arrTokens;

                objSendMail.SendEmail(objSendMail);
            }
            Response.Redirect("/Seed/SeedDetails/" + SeedId);
            return View();
            #endregion
        }
示例#3
0
        public ActionResult PlantSeed(string seedTitle, string description, string info, string address, string keyword, string categoryIds)
        {
            #region
            try
            {
                SeedAction objSeed = new SeedAction();
                LocationAction objLocation = new LocationAction();

                //Format address and create add seed model
                string[] splitAddress = address.Split(',');
                AddSeed seedData = new AddSeed();
                seedData.SeedName = seedTitle;

                badWordsFilter objWords = new badWordsFilter();
                string filePath=Server.MapPath("~/utils/badWords.xml");
                List<string> lstBadWords = badWordsFilter.BadWordList(ref filePath);
                description = objWords.FilterBadWords(lstBadWords, description);

                seedData.Description = description;
                seedData.LongLat = info;
                seedData.Tag = keyword;
                seedData.StreetAddress = splitAddress[0].ToString();
                seedData.City = splitAddress[1].ToString().Trim();
                string[] splitZipRegion = splitAddress[2].ToString().Trim().Split(' ');
                seedData.ZipCode = splitZipRegion[1].ToString().Trim();
                seedData.StateCode = splitZipRegion[0].ToString().Trim();
                //End formatting address

                string[] arrCategoryIds;
                string latLong = seedData.LongLat;
                char[] separator = new char[] { ',' };
                string[] strSplitLatLong = latLong.Split(separator);
                string lat = strSplitLatLong[0].ToString();
                string longt = strSplitLatLong[1].ToString();
                categoryIds = categoryIds.TrimStart(',');
                arrCategoryIds = categoryIds.Split(',');

                string plantedSeedId = AddSeedData(seedData);
                bool isPlanted = false;
                if (categoryIds.Trim().ToString() != "")
                {
                    isPlanted = objSeed.AddCategories(plantedSeedId, arrCategoryIds);
                }
                bindCheckBox(plantedSeedId);

                Seed seed = GetSeedInformation(plantedSeedId);

                #region Send Mail
                // Creating array list for token
                ArrayList arrTokens = new ArrayList();
                arrTokens.Add(seed.Member.firstName + " " + seed.Member.lastName);
                arrTokens.Add(seed.title);
                arrTokens.Add("http://" + Request.ServerVariables["SERVER_NAME"] + "/Seed/SeedDetails/" + seed.id);
                arrTokens.Add("http://" + Request.ServerVariables["SERVER_NAME"] + "/Member/Profile");

                // Filling mail object
                SendMail objSendMail = new SendMail();
                objSendMail.ToEmailId = seed.Member.username;
                objSendMail.Subject = "email.seedPlanted.subject.content";
                objSendMail.MsgBody = "email.seedPlanted.body.content";
                objSendMail.ChangesInMessage = arrTokens;

                objSendMail.SendEmail(objSendMail);
                #endregion

                return Redirect("/Seed/SeedDetails/" + seed.id);
            }
            catch (Exception ex)
            {
                ViewData["SeedPlant"] = ex.Message.ToString();
            }
            bindCategory();
            return View();
            #endregion
        }
示例#4
0
        public string CheckBadWord(string badWord)
        {
            #region check bad words in string
            bool isChecked = false;
            badWordsFilter objWord = new badWordsFilter();
            string filePath=Server.MapPath("~/utils/badWords.xml");
            isChecked = objWord.IsBadWord(ref badWord, ref filePath);
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            var output = serializer.Serialize(isChecked);

            return output;
            #endregion
        }
示例#5
0
        public string AddSeedData(AddSeed objAddSeedModel)
        {
            #region
            bool actionCompleted = false;
            Seed seedData = null;
            SeedAction objSeed = new SeedAction();

            Seed objSeedEntity = new Seed();
            Member memberData = new Member();
            Tag objTagEntity = new Tag();

            objSeedEntity.title = objAddSeedModel.SeedName;
            if (!string.IsNullOrEmpty(objAddSeedModel.rootSeedId))
                objSeedEntity.rootSeedID = new Guid(objAddSeedModel.rootSeedId);

            if (!string.IsNullOrEmpty(objAddSeedModel.parentSeedId))
                objSeedEntity.parentSeedID = new Guid(objAddSeedModel.parentSeedId);

            string s = Regex.Replace(objAddSeedModel.Description, @"<(.|\n)*?>", string.Empty);
            s = s.Replace("&nbsp;", " ");
            s = Regex.Replace(s, @"\s+", " ");
            s = Regex.Replace(s, @"\r\n", "\n");
            s = Regex.Replace(s, @"\n+", "\n");
            string description = s;

            if (description.Length > 999)
                description = description.Substring(0, 995);

            badWordsFilter objWords = new badWordsFilter();
            string filePath = Server.MapPath("~/utils/badWords.xml");
            List<string> lstBadWords = badWordsFilter.BadWordList(ref filePath);
            description = objWords.FilterBadWords(lstBadWords, description);

            objSeedEntity.description = description;

            LocationAction objLocation = new LocationAction();
            string cityid = objLocation.GetCityIdByCityName(objAddSeedModel.City, objAddSeedModel.StateCode);
            if (string.IsNullOrEmpty(cityid))
                cityid = objSeed.AddCity(objAddSeedModel.City, objAddSeedModel.StateCode);

            if (string.IsNullOrEmpty(cityid))
                throw new Exception("Please select associated state and city");
            string latLong = objAddSeedModel.LongLat;
            char[] separator = new char[] { ',' };
            string[] strSplitLatLong = latLong.Split(separator);
            string lat = strSplitLatLong[0].ToString();
            string longt = strSplitLatLong[1].ToString();
            string crossStreet = objAddSeedModel.StreetAddress.Trim();
            Location objLoc = objLocation.CreateLocation(cityid, (objAddSeedModel.ZipCode).ToString(), Convert.ToDouble(lat), Convert.ToDouble(longt), crossStreet);

            objSeedEntity.locationId = new Guid(objLoc.id.ToString());

            if (SeedSpeak.Util.SessionStore.GetSessionValue(SeedSpeak.Util.SessionStore.Memberobject) != null)
                memberData = (Member)SeedSpeak.Util.SessionStore.GetSessionValue(SeedSpeak.Util.SessionStore.Memberobject);
            objSeedEntity.ownerId = memberData.id;
            seedData = objSeed.AddSeed(objSeedEntity);

            if (objSeedEntity.id != null)
            {
                if (!string.IsNullOrEmpty(objAddSeedModel.Tag))
                {
                    objTagEntity.name = objAddSeedModel.Tag;
                    objTagEntity.seedId = objSeedEntity.id;
                    actionCompleted = objSeed.ManageTag(objTagEntity);
                }
            }
            if (actionCompleted == false)
            {
                ModelState.AddModelError("", "Error while seed planting.");
                RedirectToAction("AddSeed", "Seed");
            }

            return seedData.id.ToString();
            #endregion
        }