summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY2
-rw-r--r--buildscripts/jsbuilder/build.php10
-rw-r--r--framework/Web/UI/WebControls/TBaseValidator.php11
-rw-r--r--framework/Web/UI/WebControls/TValidationSummary.php6
-rw-r--r--tests/FunctionalTests/features/protected/pages/ValidatorEffects.page18
5 files changed, 18 insertions, 29 deletions
diff --git a/HISTORY b/HISTORY
index 7835a6f5..e9c69a48 100644
--- a/HISTORY
+++ b/HISTORY
@@ -18,7 +18,7 @@ ENH: TLiteral will display body content if Text is empty (Qiang)
ENH: Format string in classes extending TDataGridColumn can now evaluate an expression (Qiang)
ENH: Format string in classes extending TListControl can now evaluate an expression (Qiang)
ENH: Added THttpResponse::reload() (Qiang)
-ENH: Custom visual effects can be added to client-side validators. (Wei)
+ENH: Custom visual effects can be added to client-side validators via ClientSide property in validators. (Wei)
ENH: TJavascript::encode() allows raw javascript code when string begins with "javascript:" (Wei)
ENH: Update TinyMCE to 2.0.5.1
CHG: Rewrote client-side javascript validators, check your client-side validation behaviour (Wei)
diff --git a/buildscripts/jsbuilder/build.php b/buildscripts/jsbuilder/build.php
index d7e5925c..68bbe427 100644
--- a/buildscripts/jsbuilder/build.php
+++ b/buildscripts/jsbuilder/build.php
@@ -188,14 +188,4 @@ else if($builds > 0)
else
echo "No files to build.";
-//remove comments from javascript files.
-function compress_js($string)
-{
- $string = preg_replace('/\/\/[^\n\r]*[\n\r]/', ' ', $string);
- $string = preg_replace('/\/\*[^*]*\*+([^\/][^*]*\*+)*\//', ' ', $string);
- $string = preg_replace('/ |\t|\r/', '', $string);
- $string = preg_replace('/(\n[ \t]*){2,}/', "\n", $string);
- return $string;
-}
-
?> \ No newline at end of file
diff --git a/framework/Web/UI/WebControls/TBaseValidator.php b/framework/Web/UI/WebControls/TBaseValidator.php
index a63941db..ea1a5836 100644
--- a/framework/Web/UI/WebControls/TBaseValidator.php
+++ b/framework/Web/UI/WebControls/TBaseValidator.php
@@ -42,7 +42,7 @@
* be displayed. Error display is controlled by {@link setDisplay Display} property.
*
* You can also customized the client-side behaviour by adding javascript
- * code to the subproperties of the {@link getClientValidation ClientValidation}
+ * code to the subproperties of the {@link getClientSide ClientSide}
* property. See quickstart documentation for further details.
*
* You can also place a {@link TValidationSummary} control on a page to display error messages
@@ -176,7 +176,7 @@ abstract class TBaseValidator extends TLabel implements IValidator
*
* @return TValidatorClientScript javascript validator event options.
*/
- public function getClientValidation()
+ public function getClientSide()
{
if(is_null($this->_clientScript))
$this->_clientScript = $this->createClientScript();
@@ -494,10 +494,9 @@ abstract class TBaseValidator extends TLabel implements IValidator
* TValidatorClientScript class.
*
* Client-side validator events can be modified through the {@link
- * TBaseValidator::getClientValidation ClientValidation} property of a
- * validator. The subproperties of ClientValidation are those of the
- * TValidatorClientScript properties. The client-side validator supports the
- * following events.
+ * TBaseValidator::getClientSide ClientSide} property of a validator. The
+ * subproperties of ClientSide are those of the TValidatorClientScript
+ * properties. The client-side validator supports the following events.
*
* The <tt>OnValidate</tt> event is raise before the validator validation
* functions are called.
diff --git a/framework/Web/UI/WebControls/TValidationSummary.php b/framework/Web/UI/WebControls/TValidationSummary.php
index aa46142b..87821292 100644
--- a/framework/Web/UI/WebControls/TValidationSummary.php
+++ b/framework/Web/UI/WebControls/TValidationSummary.php
@@ -258,7 +258,7 @@ class TValidationSummary extends TWebControl
* @return TValidationSummaryClientScript client-side validation summary
* event options.
*/
- public function getClientValidation()
+ public function getClientSide()
{
if(is_null($this->_clientScript))
$this->_clientScript = $this->createClientScript();
@@ -376,8 +376,8 @@ class TValidationSummary extends TWebControl
*
* Client-side validation summary events such as {@link setOnHideSummary
* OnHideSummary} and {@link setOnShowSummary OnShowSummary} can be modified
- * through the {@link TBaseValidator:: getClientValidation ClientValidation}
- * property of a validation summary.
+ * through the {@link TBaseValidator:: getClientSide ClientSide} property of a
+ * validation summary.
*
* The <tt>OnHideSummary</tt> event is raise when the validation summary
* requests to hide the messages.
diff --git a/tests/FunctionalTests/features/protected/pages/ValidatorEffects.page b/tests/FunctionalTests/features/protected/pages/ValidatorEffects.page
index da03f9b8..1a97a249 100644
--- a/tests/FunctionalTests/features/protected/pages/ValidatorEffects.page
+++ b/tests/FunctionalTests/features/protected/pages/ValidatorEffects.page
@@ -16,13 +16,13 @@
ControlCssClass="required"
Display="Dynamic"
ErrorMessage="a username is required.">
- <prop:ClientValidation.OnError>
+ <prop:ClientSide.OnError>
Effect.Shake(validator.control);
Effect.Appear(validator.message);
- </prop:ClientValidation.OnError>
- <prop:ClientValidation.OnSuccess>
+ </prop:ClientSide.OnError>
+ <prop:ClientSide.OnSuccess>
Effect.Fade(validator.message);
- </prop:ClientValidation.OnSuccess>
+ </prop:ClientSide.OnSuccess>
</com:TRequiredFieldValidator>
</div>
<div class="password">
@@ -37,8 +37,8 @@
ValidationGroup="registration"
ControlCssClass="required"
Display="Dynamic"
- ClientValidation.OnError="validator.message.visualEffect('appear')"
- ClientValidation.OnSuccess="validator.message.visualEffect('fade')"
+ ClientSide.OnError="validator.message.visualEffect('appear')"
+ ClientSide.OnSuccess="validator.message.visualEffect('fade')"
ErrorMessage="a password is required." />
</div>
<div class="create">
@@ -82,12 +82,12 @@
ID="summary2"
ValidationGroup="signin"
Display="Dynamic"
- ClientValidation.OnHideSummary="Effect.Squish(summary.messages)"
+ ClientSide.OnHideSummary="Effect.Squish(summary.messages)"
HeaderText="<p>You could not login because</p>">
- <prop:ClientValidation.OnShowSummary>
+ <prop:ClientSide.OnShowSummary>
Effect.Appear(summary.messages)
Effect.Shake(summary.messages,{ queue: 'end'})
- </prop:ClientValidation.OnShowSummary>
+ </prop:ClientSide.OnShowSummary>
</com:TValidationSummary>
</div>