2007-07-24 Igor Zelmanovich <igorz@mainsoft.com>
[mono.git] / mcs / class / System.Web / System.Web.UI.WebControls / RequiredFieldValidator.cs
index 4f13793eea5367a43ef2a2c35f17ed7a15b9edc6..607c742d5def22463ebcdc507787c6e910902ca5 100644 (file)
@@ -1,4 +1,10 @@
-
+//
+// System.Web.UI.WebControls.RequiredFieldValidator
+//
+// Authors:
+//     Ben Maurer (bmaurer@novell.com)
+//
+// (C) 2005 Novell, Inc (http://www.novell.com)
 //
 // Permission is hereby granted, free of charge, to any person obtaining
 // a copy of this software and associated documentation files (the
 // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 //
-/**\r
- * Namespace: System.Web.UI.WebControls\r
- * Class:     RequiredFieldValidator\r
- *\r
- * Author:  Gaurav Vaish\r
- * Maintainer: gvaish@iitk.ac.in\r
- * Contact: <my_scripts2001@yahoo.com>, <gvaish@iitk.ac.in>\r
- * Implementation: yes\r
- * Status:  100%\r
- *\r
- * (C) Gaurav Vaish (2002)\r
- */
 
-using System.ComponentModel;\r
-\r
-namespace System.Web.UI.WebControls\r
-{\r
-       [ToolboxData("<{0}:RequiredFieldValidator runat=\"server\" "\r
-                  + "ErrorMessage=\"RequiredFieldValidator\">"\r
-                  + "</{0}:RequiredFieldValidator>")]\r
-       public class RequiredFieldValidator : BaseValidator\r
-       {\r
-               public RequiredFieldValidator(): base()\r
-               {\r
-               }\r
+using System.ComponentModel;
+using System.Security.Permissions;
+
+namespace System.Web.UI.WebControls {
+       // CAS
+       [AspNetHostingPermission (SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
+       [AspNetHostingPermission (SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
+       // attributes
+#if NET_2_0
+       [ToolboxData ("<{0}:RequiredFieldValidator runat=\"server\" ErrorMessage=\"RequiredFieldValidator\"></{0}:RequiredFieldValidator>")]
+#else
+       [ToolboxData ("<{0}:RequiredFieldValidator runat=server ErrorMessage=\"RequiredFieldValidator\"></{0}:RequiredFieldValidator>")]
+#endif
+       public class RequiredFieldValidator : BaseValidator {
+               protected override void AddAttributesToRender (HtmlTextWriter w)
+               {
+                       if (RenderUplevel) {
+                               w.AddAttribute ("evaluationfunction", "RequiredFieldValidatorEvaluateIsValid");
+                               w.AddAttribute ("initialvalue", InitialValue);
+                       }
+
+                       base.AddAttributesToRender (w);
+               }
+               
+               protected override bool EvaluateIsValid ()
+               {
+                       return GetControlValidationValue (ControlToValidate) != InitialValue;
+               }
+               
 
-               [DefaultValue (""), Bindable (true), WebCategory ("Behavior")]
-               [WebSysDescription ("The initial value for the required field.")]\r
-               public string InitialValue\r
-               {\r
-                       get\r
-                       {\r
-                               object o = ViewState["InitialValue"];\r
-                               if(o != null)\r
-                                       return (String)o;\r
-                               return String.Empty;\r
-                       }\r
-                       set\r
-                       {\r
-                               ViewState["InitialValue"] = value;\r
-                       }\r
-               }\r
-\r
-               protected override void AddAttributesToRender(HtmlTextWriter writer)\r
-               {\r
-                       base.AddAttributesToRender(writer);\r
-                       if(RenderUplevel)\r
-                       {\r
-                               writer.AddAttribute("evaluationfunction", "RequiredFieldValidatorEvaluateIsValid");\r
-                               writer.AddAttribute("initialvalue", InitialValue);\r
-                       }\r
-               }\r
-\r
-               protected override bool EvaluateIsValid()\r
-               {\r
-                       string val = GetControlValidationValue(ControlToValidate);\r
-                       if(val != null)\r
-                       {\r
-                               return (val.Trim() != InitialValue.Trim());\r
-                       }\r
-                       return true;\r
-               }\r
-       }\r
-}\r
+#if NET_2_0
+               [Themeable(false)]
+#else
+               [Bindable(true)]
+#endif
+               [DefaultValue("")]
+               [WebSysDescription ("")]
+               [WebCategory ("Behavior")]
+               public string InitialValue {
+                       get {
+                               return ViewState.GetString ("InitialValue", "");
+                       }
+                       set {
+                               ViewState ["InitialValue"] = value;
+                       }
+               }
+       }
+}