protected void RenderQuestion_EOC( HtmlTextWriter writer, Lib.Data.DSQ.Question q, string a = null, bool pending_changes = false ) { long eoc_id; if( !long.TryParse( q.Answers, out eoc_id ) ) throw new InvalidOperationException( "[" + q.Answers + "] is not a valid EOC ID." ); var eoc = new Lib.Data.Eoc( eoc_id ); var children = Lib.Data.DSQ.Question.FindByParent( q ); bool has_children = false; if( children.Count > 0 ) has_children = true; string cssClass = "clearfix form-row eoc-row has-children"; if( pending_changes ) cssClass += " pending-changes"; if( q.ParentID.HasValue ) { writer.AddAttribute( "data-parent-id", q.ParentID.Value.ToString() ); writer.AddAttribute( "data-parent-checks", q.ParentChecks ); } writer.AddAttribute( "data-id", q.ID.Value.ToString() ); writer.AddAttribute( "class", cssClass ); writer.RenderBeginTag( "div" ); { writer.AddAttribute( "class", "form-label" ); writer.AddAttribute( "for", "form-q-" + q.ID.Value.ToString() ); writer.RenderBeginTag( "label" ); { writer.WriteEncodedText( q.Text ); if( q.Required ) { writer.WriteEncodedText( " " ); writer.RenderBeginTag( "em" ); { writer.WriteEncodedText( "*" ); } writer.RenderEndTag(); } } writer.RenderEndTag(); writer.AddAttribute( "class", "form-input" ); writer.RenderBeginTag( "div" ); { writer.AddAttribute( "id", "form-q-" + q.ID.Value.ToString() ); writer.AddAttribute( "name", "q-" + q.ID.Value.ToString() ); if( q.Required ) writer.AddAttribute( "required", "required" ); writer.RenderBeginTag( "select" ); var answers = new [] {"","Required","Optional","No"}; foreach( var ans in answers ) { writer.AddAttribute( "value", ans.Trim() ); if( !string.IsNullOrEmpty( a ) && ans.Trim() == a ) writer.AddAttribute( "selected", "selected" ); writer.RenderBeginTag( "option" ); writer.WriteEncodedText( ans.Trim() ); writer.RenderEndTag(); } writer.RenderEndTag(); } writer.RenderEndTag(); } writer.RenderEndTag(); writer.AddAttribute( "id", "form-q-" + q.ID.Value.ToString() + "-children" ); writer.AddAttribute( "class", "to-be-hidden contains-children" ); writer.RenderBeginTag( "div" ); { // Render a Link List RenderQuestion_LinkList( writer, q, null, pending_changes, true ); if( has_children ) foreach( var cq in children ) RenderQuestion( writer, cq ); } writer.RenderEndTag(); }
public static ReturnObject Delete( HttpContext context, long id ) { if( id <= 0 ) return new ReturnObject() { Error = true, Message = "Invalid EOC." }; var item = new Lib.Data.Eoc( id ); item.Delete(); return new ReturnObject() { Growl = new ReturnGrowlObject() { Type = "default", Vars = new ReturnGrowlVarsObject() { text = "You have successfully deleted this eoc.", title = "Report deleted" } }, Actions = new List<ReturnActionObject>() { new ReturnActionObject() { Ele = "#eocs-table tr[data-id=\""+id.ToString()+"\"]", Type = "remove" } } }; }
protected void Page_Init(object sender, EventArgs e) { string strID = Request.QueryString["id"]; long id; if (string.IsNullOrEmpty(strID) || !long.TryParse(strID, out id)) item = new Lib.Data.Eoc(); else item = new Lib.Data.Eoc( id ); UserTypes = Lib.Data.UserType.FindAll(); EocUserTypes = item.GetUserTypes(); }