예제 #1
0
        public ActionResult ApprenticeshipContentSave(string htmlText1, string htmlText2, string htmlText3, string htmlText4, int apprenticeshipId)
        {
            string msg = "The content of the apprenticeship was successfully saved.";

            var contentService = Services.ContentService;
            var content        = contentService.GetById(apprenticeshipId);

            UmbracoApprenticeshipModel model = new UmbracoApprenticeshipModel();

            string htmlValue1 = JsonConvert.DeserializeObject(htmlText1).ToString();

            model.Description = new HtmlString(htmlValue1);

            string htmlValue2 = JsonConvert.DeserializeObject(htmlText2).ToString();

            model.Responsibilities = new HtmlString(htmlValue2);

            string htmlValue3 = JsonConvert.DeserializeObject(htmlText3).ToString();

            model.Benefits = new HtmlString(htmlValue3);

            string htmlValue4 = JsonConvert.DeserializeObject(htmlText4).ToString();

            model.Qualifications = new HtmlString(htmlValue4);

            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Description).Alias, model.Description);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Responsibilities).Alias, model.Responsibilities);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Benefits).Alias, model.Benefits);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Qualifications).Alias, model.Qualifications);

            contentService.SaveAndPublish(content);

            return(Json(msg, JsonRequestBehavior.AllowGet));
        }
예제 #2
0
        public UmbracoApprenticeshipModel GetApprenticeshipContent(int apprenticeshipId)
        {
            var contentService = Services.ContentService;
            var content        = contentService.GetById(apprenticeshipId);

            JArray rawCategories   = content.GetValue("category") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("category").ToString()) : new JArray();
            JArray rawKeywords     = content.GetValue("metaKeywords") != null ?(JArray)JsonConvert.DeserializeObject(content.GetValue("metaKeywords").ToString()) : new JArray();
            JArray rawCountry      = content.GetValue("country") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("country").ToString()) : new JArray();
            JArray rawJobSector    = content.GetValue("jobSector") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("jobSector").ToString()) : new JArray();
            JArray rawDuration     = content.GetValue("duration") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("duration").ToString()) : new JArray();
            JArray rawCommitment   = content.GetValue("commitment") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("commitment").ToString()) : new JArray();
            JArray rawCompensation = content.GetValue("compensation") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("compensation").ToString()) : new JArray();
            JArray rawStatus       = content.GetValue("status") != null ? (JArray)JsonConvert.DeserializeObject(content.GetValue("status").ToString()) : new JArray();

            string[] taggedCategories = rawCategories.ToObject <string[]>();
            string[] taggedKeywords   = rawKeywords.ToObject <string[]>();
            string[] countries        = rawCountry.ToObject <string[]>();
            string[] jobSectors       = rawJobSector.ToObject <string[]>();
            string[] durations        = rawDuration.ToObject <string[]>();
            string[] commitments      = rawCommitment.ToObject <string[]>();
            string[] compensations    = rawCompensation.ToObject <string[]>();
            string[] statuses         = rawStatus.ToObject <string[]>();

            string keywords     = utilities.ConcatenateStringArray(taggedKeywords);
            string country      = countries.Length > 0 ? countries[0] : "";
            string jobSector    = jobSectors.Length > 0 ? jobSectors[0] : "";
            string duration     = durations.Length > 0 ? durations[0] : "";
            string commitment   = commitments.Length > 0 ? commitments[0] : "";
            string compensation = compensations.Length > 0 ? compensations[0] : "";
            string status       = statuses.Length > 0 ? statuses[0] : "";

            UmbracoApprenticeshipModel model = new UmbracoApprenticeshipModel()
            {
                ApprenticeshipId   = content.Id,
                ApprenticeshipName = content.Name,
                Title = content.GetValue("title") != null?content.GetValue("title").ToString() : "",
                            PostDate  = content.GetValue("postDate") != null ? (DateTime)content.GetValue("postDate") : DateTime.Now.Date,
                            StartDate = content.GetValue("startDate") != null ? (DateTime)content.GetValue("startDate") : DateTime.Now.Date,
                            EndDate   = content.GetValue("endDate") != null ? (DateTime)content.GetValue("endDate") : DateTime.Now.Date,
                            MetaName  = content.GetValue("metaName") != null?content.GetValue("metaName").ToString() : "",
                                            MetaDescription = content.GetValue("metaDescription") != null?content.GetValue("metaDescription").ToString() : "",
                                                                  MetaKeywords       = keywords,
                                                                  Duration           = duration,
                                                                  Commitment         = commitment,
                                                                  Compensation       = compensation,
                                                                  Country            = country,
                                                                  JobSector          = jobSector,
                                                                  Status             = status,
                                                                  SelectedCategories = taggedCategories,
                                                                  Categories         = utilities.GetContentCategories(),
                                                                  Countries          = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Countries", null),
                                                                  JobSectors         = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Job Sectors", null),
                                                                  Durations          = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Duration", null),
                                                                  Commitments        = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Commitment", null),
                                                                  Compensations      = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Compensation", null),
                                                                  Statuses           = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Status", null)
            };

            return(model);
        }
예제 #3
0
        public void UpdateApprenticeshipGridFields(IContent content, UmbracoApprenticeshipModel model)
        {
            loggedMember = GetLoggedMember();
            var memberUdi = Current.Services.MemberService.GetById(loggedMember.MemberId).GetUdi();

            content.Name = model.ApprenticeshipName;
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Title).Alias, model.Title);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.PostDate).Alias, model.PostDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.StartDate).Alias, model.StartDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.EndDate).Alias, model.EndDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.MetaName).Alias, model.MetaName);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Employer).Alias, memberUdi);
        }
예제 #4
0
        public ActionResult ApprenticeshipContent(int apprenticeshipId)
        {
            var contentService = Services.ContentService;
            var content        = contentService.GetById(apprenticeshipId);

            UmbracoApprenticeshipModel model = new UmbracoApprenticeshipModel();

            model.Description      = new HtmlString(content.GetValue("description").ToString());
            model.Responsibilities = new HtmlString(content.GetValue("responsibilities").ToString());
            model.Benefits         = new HtmlString(content.GetValue("benefits").ToString());
            model.Qualifications   = new HtmlString(content.GetValue("qualifications").ToString());

            model.ApprenticeshipId = apprenticeshipId;

            return(PartialView(GetTasksViewPath("_ApprenticeshipContent"), model));
        }
예제 #5
0
        public void UpdateApprenticeshipDetail(IContent content, UmbracoApprenticeshipModel model)
        {
            List <string> keywords   = model.MetaKeywords.Split(',').ToList();
            List <string> categories = model.SelectedCategories.ToList();

            content.Name = model.ApprenticeshipName;
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Title).Alias, model.Title);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.PostDate).Alias, model.PostDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.StartDate).Alias, model.StartDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.EndDate).Alias, model.EndDate);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.MetaName).Alias, model.MetaName);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.MetaDescription).Alias, model.MetaDescription);
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.JobSector).Alias, JsonConvert.SerializeObject(new[] { model.JobSector }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Duration).Alias, JsonConvert.SerializeObject(new[] { model.Duration }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Commitment).Alias, JsonConvert.SerializeObject(new[] { model.Commitment }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Compensation).Alias, JsonConvert.SerializeObject(new[] { model.Compensation }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Status).Alias, JsonConvert.SerializeObject(new[] { model.Status }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Country).Alias, JsonConvert.SerializeObject(new[] { model.Country }));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.Category).Alias, JsonConvert.SerializeObject(categories));
            content.SetValue(Apprenticeship.GetModelPropertyType(x => x.MetaKeywords).Alias, JsonConvert.SerializeObject(keywords));
        }
예제 #6
0
        public ActionResult SubmitApprenticeshipDetail(UmbracoApprenticeshipModel model)
        {
            var contentService = Services.ContentService;
            var content        = contentService.GetById(model.ApprenticeshipId);

            if (model != null && ModelState.IsValid)
            {
                UpdateApprenticeshipDetail(content, model);
                contentService.SaveAndPublish(content);
            }

            // required to set the sources again on post
            model.Countries     = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Countries", null);
            model.JobSectors    = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Job Sectors", null);
            model.Durations     = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Duration", null);
            model.Commitments   = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Commitment", null);
            model.Compensations = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Compensation", null);
            model.Statuses      = _dataTypeValueService.GetItemsFromValueListDataType("Dropdown Status", null);
            model.Categories    = utilities.GetContentCategories();

            ViewData["successMessage"] = "Detail data were successfully saved at " + string.Format("{0:dd/MM/yyyy HH:mm:ss}", DateTime.Now);

            return(PartialView(GetTasksViewPath("_ApprenticeshipDetail"), model));
        }
예제 #7
0
        public ActionResult ApprenticeshipDetail(int apprenticeshipId)
        {
            UmbracoApprenticeshipModel model = GetApprenticeshipContent(apprenticeshipId);

            return(PartialView(GetTasksViewPath("_ApprenticeshipDetail"), model));
        }
예제 #8
0
        public ActionResult Apprenticeship_Destroy([DataSourceRequest] DataSourceRequest request, UmbracoApprenticeshipModel model)
        {
            var contentService = Services.ContentService;
            var content        = contentService.GetById(model.ApprenticeshipId);

            contentService.Unpublish(content);
            contentService.Delete(content);     // here content gets deleted
            contentService.EmptyRecycleBin(userId: -1);

            return(Json(new[] { model }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet));
        }
예제 #9
0
        public ActionResult Apprenticeship_Update([DataSourceRequest] DataSourceRequest request, UmbracoApprenticeshipModel model)
        {
            var contentService = Services.ContentService;
            var content        = contentService.GetById(model.ApprenticeshipId);

            if (model != null && ModelState.IsValid)
            {
                UpdateApprenticeshipGridFields(content, model);
                contentService.SaveAndPublish(content);
            }
            return(Json(new[] { model }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet));
        }
예제 #10
0
        public ActionResult Apprenticeship_Create([DataSourceRequest] DataSourceRequest request, UmbracoApprenticeshipModel model)
        {
            IPublishedContent homePage           = Umbraco.ContentAtRoot().Where(f => f.IsDocumentType(HOMEPAGE_DOCTYPE_ALIAS)).FirstOrDefault();
            IPublishedContent apprenticeshipList = homePage.Descendants().Where(x => x.IsDocumentType(APPR_LIST_DOCTYPE_ALIAS)).FirstOrDefault();
            var parentId = apprenticeshipList.Id;

            var contentService = Services.ContentService;

            if (model != null && ModelState.IsValid)
            {
                var content = contentService.Create(model.ApprenticeshipName, parentId, Apprenticeship.ModelTypeAlias);

                UpdateApprenticeshipGridFields(content, model);
                contentService.SaveAndPublish(content);
                model.ApprenticeshipId = content.Id;
            }
            return(Json(new[] { model }.ToDataSourceResult(request, ModelState), JsonRequestBehavior.AllowGet));
        }