public string RenderAdminField(IEditFieldData data) { long id = ((ImageEditFieldData)data).SprocketFileID; StringBuilder sb = new StringBuilder(); if (id > 0) { sb.AppendFormat( "<div class=\"imageeditfield-thumb\"><img src=\"{0}admin/pages/imgthumb/{1}/\" /></div>" + "<input type=\"hidden\" name=\"existingimage_{2}\" value=\"{1}\" />", WebUtility.BasePath, id, fieldName ); } sb.AppendFormat("<div class=\"imageeditfield-browse\"><input type=\"file\" size=\"60\" name=\"{0}\" id=\"imageeditfield-file-{0}\" class=\"file\" /></div>", fieldName); if (id > 0) { sb.AppendFormat( "<div class=\"imageeditfield-delete\"><input type=\"checkbox\" name=\"deleteimage_{0}\" value=\"yes\" " + "onclick=\"$('imageeditfield-file-{0}').disabled = this.checked;\" " + "id=\"imageeditfield-delete-{0}\" class=\"checkbox\" /><label for=\"imageeditfield-delete-{0}\">" + "Delete this image (no image will be selected for this field)</label></div><div style=\"clear:both;overflow:hidden;\"></div>", fieldName ); } return(sb.ToString()); }
public Result SaveData(long dataID, IEditFieldData efdata) { ImageEditFieldData data = (ImageEditFieldData)efdata; try { using (TransactionScope scope = new TransactionScope()) { DatabaseManager.DatabaseEngine.GetConnection(); if (data.SprocketFile != null) { data.SprocketFileID = data.SprocketFile.SprocketFileID = DatabaseManager.DatabaseEngine.GetUniqueID(); } Result r = ContentManager.Instance.DataProvider.StoreEditField_Image(dataID, data.SprocketFileID); if (r.Succeeded && data.SprocketFile != null) { r = FileManager.FileManager.DataLayer.Store(data.SprocketFile); } if (r.Succeeded) { scope.Complete(); } return(r); } } catch (Exception e) { return(new Result(e.Message)); } finally { DatabaseManager.DatabaseEngine.ReleaseConnection(); } }
public Result ReadAdminField(out IEditFieldData data) { TextBoxData box = new TextBoxData(); string text = HttpContext.Current.Request.Form[fieldName]; box.Text = text ?? ""; data = box; return new Result(); }
public bool IsContentDifferent(IEditFieldData a, IEditFieldData b) { ImageEditFieldData d1 = (ImageEditFieldData)a; ImageEditFieldData d2 = (ImageEditFieldData)b; return d1.SprocketFileID != d2.SprocketFileID || (d1.SprocketFileID == 0 && d2.SprocketFile != null) || (d2.SprocketFileID == 0 && d1.SprocketFile != null); }
public bool IsContentDifferent(IEditFieldData a, IEditFieldData b) { ImageEditFieldData d1 = (ImageEditFieldData)a; ImageEditFieldData d2 = (ImageEditFieldData)b; return(d1.SprocketFileID != d2.SprocketFileID || (d1.SprocketFileID == 0 && d2.SprocketFile != null) || (d2.SprocketFileID == 0 && d1.SprocketFile != null)); }
public Result ReadAdminField(out IEditFieldData data) { TextBoxEditField.TextBoxData box = new TextBoxEditField.TextBoxData(); string text = HttpContext.Current.Request.Form[fieldName]; box.Text = text ?? ""; data = box; return(new Result()); }
public Result ReadAdminField(out IEditFieldData efdata) { ImageEditFieldData data = new ImageEditFieldData(); SprocketFile file = null; if (HttpContext.Current.Request.Files[fieldName] != null) { if (HttpContext.Current.Request.Files[fieldName].ContentLength > 0) { file = new SprocketFile(SecurityProvider.ClientSpaceID, HttpContext.Current.Request.Files[fieldName], "", ""); Image img; Result r = file.ValidateImageData(out img); if (!r.Succeeded) { efdata = new ImageEditFieldData(); return(new Result("The image selected could not be loaded. The system reported back the following error: " + r.Message)); } if (maxwidth > 0 || maxheight > 0) { SizingOptions options = new SizingOptions(maxwidth, maxheight, SizingOptions.Display.Constrain, 0); options.Image = img; MemoryStream stream = new MemoryStream(); FileManager.FileManager.Instance.ResizeImage(options, stream); file.FileData = stream.ToArray(); } } } bool deleted = HttpContext.Current.Request.Form["deleteimage_" + fieldName] != null; long existing; if (!long.TryParse(HttpContext.Current.Request.Form["existingimage_" + fieldName], out existing)) { existing = 0; } if (deleted) { data.SprocketFileID = 0; } else if (file != null) { data.SprocketFile = file; } else { data.SprocketFileID = existing; } efdata = data; return(new Result()); }
public Result ReadAdminField(out IEditFieldData efdata) { ImageEditFieldData data = new ImageEditFieldData(); SprocketFile file = null; if (HttpContext.Current.Request.Files[fieldName] != null) if (HttpContext.Current.Request.Files[fieldName].ContentLength > 0) { file = new SprocketFile(SecurityProvider.ClientSpaceID, HttpContext.Current.Request.Files[fieldName], "", ""); Image img; Result r = file.ValidateImageData(out img); if (!r.Succeeded) { efdata = new ImageEditFieldData(); return new Result("The image selected could not be loaded. The system reported back the following error: " + r.Message); } if (maxwidth > 0 || maxheight > 0) { SizingOptions options = new SizingOptions(maxwidth, maxheight, SizingOptions.Display.Constrain, 0); options.Image = img; MemoryStream stream = new MemoryStream(); FileManager.FileManager.Instance.ResizeImage(options, stream); file.FileData = stream.ToArray(); } } bool deleted = HttpContext.Current.Request.Form["deleteimage_" + fieldName] != null; long existing; if (!long.TryParse(HttpContext.Current.Request.Form["existingimage_" + fieldName], out existing)) existing = 0; if (deleted) data.SprocketFileID = 0; else if (file != null) data.SprocketFile = file; else data.SprocketFileID = existing; efdata = data; return new Result(); }
public string RenderAdminField(IEditFieldData data) { return(string.Format("<textarea name=\"{0}\" class=\"{1}\" style=\"{2}\" cols=\"{4}\" rows=\"{5}\">{3}</textarea>", fieldName, classname, style, HttpUtility.HtmlEncode(((TextBoxEditField.TextBoxData)data).Text), size, lines)); }
public object GetOutputValue(IEditFieldData data) { return(data == null ? "" : data.ToString()); }
public void InitialiseData(IEditFieldData data) { ((TextBoxEditField.TextBoxData)data).Text = String.Empty; }
public Result SaveData(long dataID, IEditFieldData data) { return(ContentManager.Instance.DataProvider.StoreEditField_TextBox(dataID, ((TextBoxEditField.TextBoxData)data).Text)); }
public void InitialiseData(IEditFieldData data) { ((TextBoxData)data).Text = String.Empty; }
public string RenderAdminField(IEditFieldData data) { long id = ((ImageEditFieldData)data).SprocketFileID; StringBuilder sb = new StringBuilder(); if (id > 0) { sb.AppendFormat( "<div class=\"imageeditfield-thumb\"><img src=\"{0}admin/pages/imgthumb/{1}/\" /></div>" + "<input type=\"hidden\" name=\"existingimage_{2}\" value=\"{1}\" />", WebUtility.BasePath, id, fieldName ); } sb.AppendFormat("<div class=\"imageeditfield-browse\"><input type=\"file\" size=\"60\" name=\"{0}\" id=\"imageeditfield-file-{0}\" class=\"file\" /></div>", fieldName); if (id > 0) { sb.AppendFormat( "<div class=\"imageeditfield-delete\"><input type=\"checkbox\" name=\"deleteimage_{0}\" value=\"yes\" " + "onclick=\"$('imageeditfield-file-{0}').disabled = this.checked;\" " + "id=\"imageeditfield-delete-{0}\" class=\"checkbox\" /><label for=\"imageeditfield-delete-{0}\">" + "Delete this image (no image will be selected for this field)</label></div><div style=\"clear:both;overflow:hidden;\"></div>", fieldName ); } return sb.ToString(); }
public Result SaveData(long dataID, IEditFieldData efdata) { ImageEditFieldData data = (ImageEditFieldData)efdata; try { using (TransactionScope scope = new TransactionScope()) { DatabaseManager.DatabaseEngine.GetConnection(); if (data.SprocketFile != null) data.SprocketFileID = data.SprocketFile.SprocketFileID = DatabaseManager.DatabaseEngine.GetUniqueID(); Result r = ContentManager.Instance.DataProvider.StoreEditField_Image(dataID, data.SprocketFileID); if (r.Succeeded && data.SprocketFile != null) r = FileManager.FileManager.DataLayer.Store(data.SprocketFile); if (r.Succeeded) scope.Complete(); return r; } } catch (Exception e) { return new Result(e.Message); } finally { DatabaseManager.DatabaseEngine.ReleaseConnection(); } }
public object GetOutputValue(IEditFieldData data) { return ((ImageEditFieldData)data).SprocketFileID; }
public object GetOutputValue(IEditFieldData data) { return(((ImageEditFieldData)data).SprocketFileID); }
public void InitialiseData(IEditFieldData data) { ((ImageEditFieldData)data).SprocketFileID = 0; }
public string RenderAdminField(IEditFieldData data) { return string.Format("<textarea name=\"{0}\" class=\"{1}\" style=\"{2}\" cols=\"{4}\" rows=\"{5}\">{3}</textarea>", fieldName, classname, style, HttpUtility.HtmlEncode(((TextBoxEditField.TextBoxData)data).Text), size, lines); }
public Result SaveData(long dataID, IEditFieldData data) { return ContentManager.Instance.DataProvider.StoreEditField_TextBox(dataID, ((TextBoxData)data).Text); }
internal void BuildAdminSectionList(Dictionary <string, List <EditFieldInfo> > editFieldsBySectionName) { // sort nodesByFieldName in ascending order, ready to be matched to the template admin fields foreach (List <EditFieldInfo> list in editFieldsBySectionName.Values) { list.Sort(); } adminSectionList = new List <PreparedPageAdminSection>(); Template t = ContentManager.Templates[TemplateName]; if (t == null) { return; } // combine t.GetPageAdminSections() with nodesByFieldName PreparedPageAdminSection pas = new PreparedPageAdminSection(); foreach (PageAdminSectionDefinition def in t.GetPageAdminSections()) { PreparedPageAdminSection section = new PreparedPageAdminSection(); List <EditFieldInfo> list; if (!editFieldsBySectionName.TryGetValue(def.SectionName, out list)) { list = new List <EditFieldInfo>(); } section.SectionDefinition = def; section.FieldList = new List <EditFieldInfo>(); // now that we've preliminarily prepared the section, fill its field list with what will appear in the admin ui foreach (IEditFieldHandler handler in def.EditFieldHandlers) { int index = list.FindIndex(delegate(EditFieldInfo obj) { return(handler.FieldName == obj.FieldName && handler.TypeName == obj.Handler.TypeName); }); EditFieldInfo info; if (index == -1) // create a new field to handle it { IEditFieldHandlerDatabaseInterface dbi = ContentManager.GetEditFieldObjectCreator(handler.TypeName).CreateDatabaseInterface(); info = new EditFieldInfo(0, def.SectionName, handler.FieldName, section.FieldList.Count, handler, dbi); IEditFieldObjectCreator creator = ContentManager.GetEditFieldObjectCreator(handler.TypeName); IEditFieldData data = creator.CreateDataObject(); handler.InitialiseData(data); info.Data = data; } else { info = list[index]; info.Handler = handler; // set it to the template's handler as the one created during database retrieval was for type name purposes only list.RemoveAt(index); info.Rank = section.FieldList.Count; } section.FieldList.Add(info); } section.UpdateFieldsByName(); adminSectionList.Add(section); adminSectionsByName[section.SectionDefinition.SectionName] = section; } }
public object GetOutputValue(IEditFieldData data) { return data == null ? "" : data.ToString(); }
public bool IsContentDifferent(IEditFieldData a, IEditFieldData b) { return(!a.Equals(b)); }
public bool IsContentDifferent(IEditFieldData a, IEditFieldData b) { return !a.Equals(b); }
public string RenderAdminField(IEditFieldData data) { return string.Format("<input type=\"text\" name=\"{0}\" class=\"{1}\" style=\"{2}\" value=\"{3}\" size=\"{4}\" maxlength=\"{5}\" />", fieldName, classname, style, HttpUtility.HtmlEncode(((TextBoxData)data).Text), size, maxLength); }
public string RenderAdminField(IEditFieldData data) { return(string.Format("<input type=\"text\" name=\"{0}\" class=\"{1}\" style=\"{2}\" value=\"{3}\" size=\"{4}\" maxlength=\"{5}\" />", fieldName, classname, style, HttpUtility.HtmlEncode(((TextBoxData)data).Text), size, maxLength)); }