public virtual void ProcessRequest(HttpContext context) { NameValueCollection queryString = context.Request.QueryString; string text = queryString[CaptchaControl.KEY]; HttpResponse response = context.Response; Bitmap bmp = CaptchaControl.GenerateImage(text); bmp.Save(response.OutputStream, ImageFormat.Jpeg); }
public void ProcessRequest(HttpContext context) { NameValueCollection queryString = context.Request.QueryString; string text = queryString[CaptchaControl.KEY]; HttpResponse response = context.Response; response.ContentType = MediaTypeNames.Image.Jpeg; Bitmap bmp = CaptchaControl.GenerateImage(text); if (bmp != null) { bmp.Save(response.OutputStream, ImageFormat.Jpeg); } }
void BuildEditForm() { var fieldSettingsTable = FieldSettingsController.GetFieldSettingsTable(ModuleId); var editForm = new List<FormColumnInfo>(); FormColumnInfo currentField; var security = new ModuleSecurity(ModuleContext); _editControls = new EditControls(ModuleContext); foreach (DataRow dr in Data.Tables[DataSetTableName.Fields].Rows) { var fieldTitle = dr[FieldsTableColumn.Title].AsString(); var dataTypeName = dr[FieldsTableColumn.Type].AsString(); var dataType = DataType.ByName(dataTypeName); var isColumnEditable = Convert.ToBoolean((! dataType.SupportsHideOnEdit || Convert.ToBoolean(dr[FieldsTableColumn.ShowOnEdit])) && (! Convert.ToBoolean(dr[FieldsTableColumn.IsPrivate]) || security.IsAllowedToEditAllColumns())); //If Column is hidden, the Fieldtype falls back to "String" as the related EditControl works perfect even if it is not visibile //EditControls of other user defined datatypes may use core controls (e.g. UrlControl or RTE) which are not rock solid regarding viewstate. if (! isColumnEditable && dataType.IsUserDefinedField) { dataTypeName = "String"; } currentField = new FormColumnInfo {IsUserDefinedField = dataType.IsUserDefinedField}; if (dataType.IsSeparator) { var fieldId = (int)dr[FieldsTableColumn.Id]; currentField.IsCollapsible = Data.Tables[DataSetTableName.FieldSettings].GetFieldSetting("IsCollapsible", fieldId).AsBoolean(); currentField.IsSeparator = true; if (dr[FieldsTableColumn.Visible].AsBoolean()) { currentField.Title = fieldTitle; } currentField.Visible = isColumnEditable; } else { currentField.Help = dr[FieldsTableColumn.HelpText].AsString(); currentField.Title = dr[FieldsTableColumn.Title].AsString(); currentField.Required = Convert.ToBoolean(dr[FieldsTableColumn.Required].AsBoolean() && dataType.IsUserDefinedField); //advanced Settings: Dynamic control currentField.EditControl = _editControls.Add(dr[FieldsTableColumn.Title].AsString(), dataTypeName, Convert.ToInt32(dr[FieldsTableColumn.Id]), dr[FieldsTableColumn.HelpText].AsString(), dr[FieldsTableColumn.Default].AsString(), dr[FieldsTableColumn.Required].AsBoolean(), dr[FieldsTableColumn.ValidationRule].AsString(), dr[FieldsTableColumn.ValidationMessage].AsString(), dr[FieldsTableColumn.EditStyle].AsString(), dr[FieldsTableColumn.InputSettings].AsString(), dr[FieldsTableColumn.OutputSettings].AsString(), dr[FieldsTableColumn.NormalizeFlag].AsBoolean(), dr[FieldsTableColumn.MultipleValues].AsBoolean(), fieldSettingsTable, this ); currentField.Visible = isColumnEditable; } editForm.Add(currentField); } if (CaptchaNeeded()) { _ctlCaptcha = new CaptchaControl { ID = "Captcha", CaptchaWidth = Unit.Pixel(130), CaptchaHeight = Unit.Pixel(40), ToolTip = Localization.GetString("CaptchaToolTip", LocalResourceFile), ErrorMessage = Localization.GetString("CaptchaError", LocalResourceFile) }; currentField = new FormColumnInfo { Title = Localization.GetString("Captcha", LocalResourceFile), EditControl = _ctlCaptcha, Visible = true, IsUserDefinedField = false }; editForm.Add(currentField); } BuildCssForm(editForm); //Change captions of buttons in Form mode if (IsNewRow && Settings.ListOrForm.Contains("Form")) { cmdUpdate.Attributes["resourcekey"] = "cmdSend.Text"; } }