## Class TCustomValidator

Description

TCustomValidator class

TCustomValidator performs user-defined validation (either server-side or client-side or both) on an input component.

To create a server-side validation function, provide a handler for the OnServerValidate event that performs the validation. The data string of the input control to validate can be accessed by TServerValidateEventParameter::getValue of the event parameter. The result of the validation should be stored in the TServerValidateEventParameter::getIsValid property of the event parameter.

To create a client-side validation function, add the client-side validation javascript function to the page template. The function should have the following signature:

     <script type="text/javascript"><!--
     function ValidationFunctionName(sender, parameter)
     {
        // if(parameter == ...)
        //    return true;
        // else
        //    return false;
     }
     --></script>

Use the ClientValidationFunction property to specify the name of the client-side validation script function associated with the TCustomValidator.

- since: 3.0
- version: $Id: TCustomValidator.php 2630 2009-04-04 09:53:57Z godzilla80@gmx.net $
- author: Qiang Xue <qiang.xue@gmail.com>

Located in /Web/UI/WebControls/TCustomValidator.php (line 55)

    TComponent
       |
       --TApplicationComponent
          |
          --TControl
             |
             --TWebControl
                |
                --TLabel
                   |
                   --TBaseValidator
                      |
                      --TCustomValidator

Direct descendents

Class | Description
--- | ---
TActiveCustomValidator | TActiveCustomValidator Class

Method Summary
boolean evaluateIsValid ()
string getClientClassName ()
array getClientScriptOptions ()
string getClientValidationFunction ()
TControl getValidationTarget ()
boolean onServerValidate (string $value)
void registerClientScriptValidator ()
void setClientValidationFunction (string $value)
Methods
evaluateIsValid (line 89)

This method overrides the parent's implementation.

The validation succeeds if onServerValidate returns true.

- return: whether the validation succeeds
- access: public

boolean evaluateIsValid ()

Redefinition of:

TBaseValidator::evaluateIsValid()
  This is the major method for validation.

getClientClassName (line 62)

Gets the name of the javascript class responsible for performing validation for this control.

This method overrides the parent implementation.

- return: the javascript class name
- access: protected

string getClientClassName ()

Redefinition of:

TBaseValidator::getClientClassName()
  Gets the name of the javascript class responsible for performing validation for this control.

Redefined in descendants as:

- TActiveCustomValidator::getClientClassName()

getClientScriptOptions (line 133)

Returns an array of javascript validator options.

- return: javascript validator options.
- access: protected

array getClientScriptOptions ()

Redefinition of:

TBaseValidator::getClientScriptOptions()
  Returns an array of javascript validator options.

Redefined in descendants as:

- TActiveCustomValidator::getClientScriptOptions() : Returns an array of javascript validator options.

getClientValidationFunction (line 70)

- return: the name of the custom client-side script function used for validation.
- access: public

string getClientValidationFunction ()
getValidationTarget (line 119)

- return: control to be validated. Null if no control is found.
- access: public

TControl getValidationTarget ()

Redefinition of:

TBaseValidator::getValidationTarget()

onServerValidate (line 106)

This method is invoked when the server side validation happens.

It will raise the OnServerValidate event. The method also allows derived classes to handle the event without attaching a delegate. Note The derived classes should call parent implementation to ensure the OnServerValidate event is raised.

- return: whether the value is valid
- access: public

boolean onServerValidate (string $value)

- string $value: the value to be validated

registerClientScriptValidator (line 145)

Only register the client-side validator if setClientValidationFunction is set.

- access: protected

void registerClientScriptValidator ()

Redefinition of:

TBaseValidator::registerClientScriptValidator()
  Registers the individual validator client-side javascript code.

setClientValidationFunction (line 79)

Sets the name of the custom client-side script function used for validation.

- access: public

void setClientValidationFunction (string $value)

- string $value: the script function name

Redefined in descendants as:

- TActiveCustomValidator::setClientValidationFunction() : Client validation function is NOT supported.

#### Inherited Methods

Inherited From TBaseValidator

> TBaseValidator::__construct()
> TBaseValidator::addAttributesToRender()
> TBaseValidator::createClientSide()
> TBaseValidator::evaluateIsValid()
> TBaseValidator::getClientClassName()
> TBaseValidator::getClientScriptOptions()
> TBaseValidator::getClientSide()
> TBaseValidator::getControlCssClass()
> TBaseValidator::getControlToValidate()
> TBaseValidator::getDisplay()
> TBaseValidator::getEnableClientScript()
> TBaseValidator::getErrorMessage()
> TBaseValidator::getFocusElementID()
> TBaseValidator::getFocusOnError()
> TBaseValidator::getIsValid()
> TBaseValidator::getValidationGroup()
> TBaseValidator::getValidationTarget()
> TBaseValidator::getValidationValue()
> TBaseValidator::onInit()
> TBaseValidator::onPreRender()
> TBaseValidator::onUnload()
> TBaseValidator::onValidate()
> TBaseValidator::onValidationError()
> TBaseValidator::onValidationSuccess()
> TBaseValidator::registerClientScriptValidator()
> TBaseValidator::renderClientControlScript()
> TBaseValidator::renderContents()
> TBaseValidator::setControlCssClass()
> TBaseValidator::setControlToValidate()
> TBaseValidator::setDisplay()
> TBaseValidator::setEnableClientScript()
> TBaseValidator::setEnabled()
> TBaseValidator::setErrorMessage()
> TBaseValidator::setFocusElementID()
> TBaseValidator::setFocusOnError()
> TBaseValidator::setForControl()
> TBaseValidator::setIsValid()
> TBaseValidator::setValidationGroup()
> TBaseValidator::updateControlCssClass()
> TBaseValidator::validate()

Inherited From TLabel

> TLabel::addAttributesToRender()
> TLabel::getData()
> TLabel::getForControl()
> TLabel::getTagName()
> TLabel::getText()
> TLabel::render()
> TLabel::renderContents()
> TLabel::setData()
> TLabel::setForControl()
> TLabel::setText()

Inherited From TWebControl

> TWebControl::addAttributesToRender()
> TWebControl::clearStyle()
> TWebControl::copyBaseAttributes()
> TWebControl::createStyle()
> TWebControl::getAccessKey()
> TWebControl::getBackColor()
> TWebControl::getBorderColor()
> TWebControl::getBorderStyle()
> TWebControl::getBorderWidth()
> TWebControl::getCssClass()
> TWebControl::getDisplay()
> TWebControl::getFont()
> TWebControl::getForeColor()
> TWebControl::getHasStyle()
> TWebControl::getHeight()
> TWebControl::getStyle()
> TWebControl::getTabIndex()
> TWebControl::getTagName()
> TWebControl::getToolTip()
> TWebControl::getWidth()
> TWebControl::render()
> TWebControl::renderBeginTag()
> TWebControl::renderContents()
> TWebControl::renderEndTag()
> TWebControl::setAccessKey()
> TWebControl::setBackColor()
> TWebControl::setBorderColor()
> TWebControl::setBorderStyle()
> TWebControl::setBorderWidth()
> TWebControl::setCssClass()
> TWebControl::setDisplay()
> TWebControl::setForeColor()
> TWebControl::setHeight()
> TWebControl::setStyle()
> TWebControl::setTabIndex()
> TWebControl::setToolTip()
> TWebControl::setWidth()

Inherited From TControl

> TControl::__construct()
> TControl::addedControl()
> TControl::addParsedObject()
> TControl::addToPostDataLoader()
> TControl::applyStyleSheetSkin()
> TControl::autoBindProperty()
> TControl::autoDataBindProperties()
> TControl::bindProperty()
> TControl::broadcastEvent()
> TControl::bubbleEvent()
> TControl::clearChildState()
> TControl::clearControlState()
> TControl::clearNamingContainer()
> TControl::clearViewState()
> TControl::convertUniqueIdToClientId()
> TControl::createChildControls()
> TControl::createControlCollection()
> TControl::dataBind()
> TControl::dataBindChildren()
> TControl::dataBindProperties()
> TControl::ensureChildControls()
> TControl::findControl()
> TControl::findControlsByID()
> TControl::findControlsByType()
> TControl::focus()
> TControl::getAdapter()
> TControl::getAllowChildControls()
> TControl::getAttribute()
> TControl::getAttributes()
> TControl::getChildControlsCreated()
> TControl::getClientID()
> TControl::getControls()
> TControl::getControlStage()
> TControl::getControlState()
> TControl::getCustomData()
> TControl::getEnabled()
> TControl::getEnableTheming()
> TControl::getEnableViewState()
> TControl::getHasAdapter()
> TControl::getHasAttributes()
> TControl::getHasChildInitialized()
> TControl::getHasControls()
> TControl::getHasInitialized()
> TControl::getHasLoaded()
> TControl::getHasLoadedPostData()
> TControl::getHasPreRendered()
> TControl::getID()
> TControl::getNamingContainer()
> TControl::getPage()
> TControl::getParent()
> TControl::getRegisteredObject()
> TControl::getSkinID()
> TControl::getSourceTemplateControl()
> TControl::getTemplateControl()
> TControl::getUniqueID()
> TControl::getViewState()
> TControl::getVisible()
> TControl::hasAttribute()
> TControl::initRecursive()
> TControl::isDescendentOf()
> TControl::isObjectRegistered()
> TControl::loadRecursive()
> TControl::loadState()
> TControl::loadStateRecursive()
> TControl::onDataBinding()
> TControl::onInit()
> TControl::onLoad()
> TControl::onPreRender()
> TControl::onUnload()
> TControl::preRenderRecursive()
> TControl::raiseBubbleEvent()
> TControl::registerObject()
> TControl::removeAttribute()
> TControl::removedControl()
> TControl::render()
> TControl::renderChildren()
> TControl::renderControl()
> TControl::saveState()
> TControl::saveStateRecursive()
> TControl::setAdapter()
> TControl::setAttribute()
> TControl::setChildControlsCreated()
> TControl::setControlStage()
> TControl::setControlState()
> TControl::setCustomData()
> TControl::setEnabled()
> TControl::setEnableTheming()
> TControl::setEnableViewState()
> TControl::setID()
> TControl::setPage()
> TControl::setSkinID()
> TControl::setTemplateControl()
> TControl::setViewState()
> TControl::setVisible()
> TControl::trackViewState()
> TControl::traverseChildControls()
> TControl::unbindProperty()
> TControl::unloadRecursive()
> TControl::unregisterObject()
> TControl::__get()

Inherited From TApplicationComponent

> TApplicationComponent::getApplication()
> TApplicationComponent::getRequest()
> TApplicationComponent::getResponse()
> TApplicationComponent::getService()
> TApplicationComponent::getSession()
> TApplicationComponent::getUser()
> TApplicationComponent::publishAsset()
> TApplicationComponent::publishFilePath()

Inherited From TComponent

> TComponent::addParsedObject()
> TComponent::attachEventHandler()
> TComponent::canGetProperty()
> TComponent::canSetProperty()
> TComponent::createdOnTemplate()
> TComponent::detachEventHandler()
> TComponent::evaluateExpression()
> TComponent::evaluateStatements()
> TComponent::getEventHandlers()
> TComponent::getSubProperty()
> TComponent::hasEvent()
> TComponent::hasEventHandler()
> TComponent::hasProperty()
> TComponent::raiseEvent()
> TComponent::setSubProperty()
> TComponent::__get()
> TComponent::__set()

Class Constants

#### Inherited Constants

Inherited from TControl

> TControl::AUTOMATIC_ID_PREFIX
> TControl::CLIENT_ID_SEPARATOR
> TControl::CS_CHILD_INITIALIZED
> TControl::CS_CONSTRUCTED
> TControl::CS_INITIALIZED
> TControl::CS_LOADED
> TControl::CS_PRERENDERED
> TControl::CS_STATE_LOADED
> TControl::ID_FORMAT
> TControl::ID_SEPARATOR
> TControl::IS_CHILD_CREATED
> TControl::IS_CREATING_CHILD
> TControl::IS_DISABLE_THEMING
> TControl::IS_DISABLE_VIEWSTATE
> TControl::IS_ID_SET
> TControl::IS_SKIN_APPLIED
> TControl::IS_STYLESHEET_APPLIED
> TControl::RF_ADAPTER
> TControl::RF_AUTO_BINDINGS
> TControl::RF_CHILD_STATE
> TControl::RF_CONTROLS
> TControl::RF_CONTROLSTATE
> TControl::RF_DATA_BINDINGS
> TControl::RF_EVENTS
> TControl::RF_NAMED_CONTROLS
> TControl::RF_NAMED_CONTROLS_ID
> TControl::RF_NAMED_OBJECTS
> TControl::RF_SKIN_ID

Documentation generated on Mon, 22 Feb 2010 12:17:16 +0000 by phpDocumentor 1.3.0RC4