public FullCalendarEvent(EventCalendarDb.EventCalendarDetailsData c, List <EventCalendarDb.EventCalendarCategoryData> categoryHaystack) { CmsPage page = CmsContext.getPageById(c.PageId); id = c.PageId.ToString(); title = page.getTitle(c.Lang); start = c.StartDateTime; end = c.EndDateTime; url = page.getUrl(c.Lang); EventCalendarDb.EventCalendarCategoryData category = EventCalendarDb.EventCalendarCategoryData.GetFromHaystack(categoryHaystack, c.CategoryId); backgroundColor = category.ColorHex; borderColor = "black"; textColor = "white"; }
/// <summary> /// Create the jQuery FullCalendar event object for an event with a file attached. /// </summary> /// <param name="c"></param> /// <param name="f"></param> public FullCalendarEvent(EventCalendarDb.EventCalendarDetailsData c, FileLibraryDetailsData attachedFile, List <EventCalendarDb.EventCalendarCategoryData> categoryHaystack) { CmsPage page = CmsContext.getPageById(attachedFile.DetailsPageId); id = "EventFile_" + attachedFile.DetailsPageId.ToString(); title = attachedFile.FileName; start = c.StartDateTime.AddSeconds(1); // show below the event end = c.EndDateTime.AddSeconds(1); // show below the event allDay = true; url = page.getUrl(attachedFile.Lang); EventCalendarDb.EventCalendarCategoryData category = EventCalendarDb.EventCalendarCategoryData.GetFromHaystack(categoryHaystack, c.CategoryId); backgroundColor = category.ColorHex; borderColor = "black"; textColor = "white"; }
/// <summary> /// Create the entity object by reading the updated values from html form. /// </summary> /// <param name="langArray"></param> /// <param name="controlId"></param> /// <param name="id"></param> /// <returns></returns> protected EventCalendarDb.EventCalendarCategoryData[] createUpdateRecord(CmsLanguage[] langArray, string controlId, int id) { int step = langArray.Length; EventCalendarDb.EventCalendarCategoryData[] data = new EventCalendarDb.EventCalendarCategoryData[step]; for (int x = 0; x < step; x++) { string l = langArray[x].shortCode; data[x] = new EventCalendarDb.EventCalendarCategoryData(); data[x].CategoryId = id; data[x].ColorHex = PageUtils.getFromForm(controlId + "colorHex", ""); data[x].Lang = langArray[x]; data[x].Title = PageUtils.getFromForm(controlId + "title_" + l, ""); data[x].Description = PageUtils.getFromForm(controlId + "description_" + l, ""); } return(data); }
/// <summary> /// Create the entity object by reading the new values from html form. /// </summary> /// <param name="langArray"></param> /// <param name="controlId"></param> /// <returns></returns> protected EventCalendarDb.EventCalendarCategoryData[] createAddRecord(CmsLanguage[] langArray, string controlId) { int step = langArray.Length; EventCalendarDb.EventCalendarCategoryData[] data = new EventCalendarDb.EventCalendarCategoryData[step]; EventCalendarDb db = new EventCalendarDb(); int newId = db.fetchNextCategoryId(); for (int x = 0; x < step; x++) { string l = langArray[x].shortCode; data[x] = new EventCalendarDb.EventCalendarCategoryData(); data[x].CategoryId = newId; data[x].ColorHex = PageUtils.getFromForm(controlId + "addColorHex", ""); data[x].Lang = langArray[x]; data[x].Title = PageUtils.getFromForm(controlId + "addTitle_" + l, ""); data[x].Description = PageUtils.getFromForm(controlId + "addDescription_" + l, ""); } return(data); }
/// <summary> /// Create table body to show the Event Calendar Category records. /// </summary> /// <param name="langArray"></param> /// <param name="colorArray"></param> /// <param name="controlId"></param> /// <returns></returns> protected string generateContent(CmsLanguage[] langArray, string[] colorArray, string controlId) { EventCalendarDb db = new EventCalendarDb(); List <EventCalendarDb.EventCalendarCategoryData> list = db.fetchCategoryList(); int step = langArray.Length; StringBuilder html = new StringBuilder(); for (int x = 0; x < list.Count; x = x + step) { html.Append("<tr>" + EOL); EventCalendarDb.EventCalendarCategoryData data1 = list[x]; html.Append("<td>" + EOL); html.Append("<input class=\"" + controlId + "chgButton\" type=\"button\" value=\"Edit\" title=\"" + data1.CategoryId + "\" />" + EOL); html.Append("<input class=\"" + controlId + "chgSaveButton\" type=\"button\" value=\"Save\" title=\"" + data1.CategoryId + "\" />" + EOL); html.Append("<input class=\"" + controlId + "chgCancelButton\" type=\"button\" value=\"Cancel\" title=\"" + data1.CategoryId + "\" />" + EOL); html.Append("</td>" + EOL); html.Append("<td>" + EOL); html.Append("<select title=\"" + data1.ColorHex + "\" class=\"" + controlId + "chg\" disabled=\"disabled\" id=\"" + controlId + "colorHex_" + data1.CategoryId + "\" name=\"" + controlId + "colorHex\" onchange=\"this.style.backgroundColor=this.value;\">" + EOL); html.Append(generateColorOption(colorArray, data1.ColorHex)); html.Append("</select>" + EOL); html.Append("</td>" + EOL); for (int y = 0; y < step; y++) { string l = langArray[y].shortCode; EventCalendarDb.EventCalendarCategoryData data2 = list[y + x]; string title = data2.Title; html.Append("<td><div id=\"" + controlId + "title_" + l + "_" + data1.CategoryId + "\">" + title + "</div></td>" + EOL); string description = StringUtils.nl2br(data2.Description); html.Append("<td><div id=\"" + controlId + "description_" + l + "_" + data1.CategoryId + "\">" + description + "</div></td>" + EOL); } html.Append("</tr>" + EOL); } return(html.ToString()); }