Javascript for Episerver 7.5 cms

EmailValidationBase

Summary

Represents the email input textbox.

Location

epi-cms/form/EmailValidationBase

Extends

Properties

__skipInputEvent

_attrPairNames

_blankGif

Path to a blank 1x1 image. Used by <img> nodes in templates that really get their image via CSS background-image.

_blankValue

_buttonInputDisabled

_earlyTemplatedStartup

A fallback to preserve the 1.0 - 1.3 behavior of children in templates having their startup called before the parent widget fires postCreate. Defaults to 'false', causing child widgets to have their .startup() called immediately before a parent widget .startup(), but always after the parent .postCreate(). Set to 'true' to re-enable to previous, arguably broken, behavior.

_focusManager

_maskValidSubsetError

_setClassAttr

_setDirAttr

_setIdAttr

_setLangAttr

_setTabIndexAttr

_setTypeAttr

_singleNodeTemplate

_skipNodeCache

_started

startup() has completed.

active

True if mouse was pressed while over this widget, and hasn't been released yet

alt

Corresponds to the native HTML <input> element's attribute.

aria-label

attributeMap

Deprecated. Instead of attributeMap, widget should have a _setXXXAttr attribute for each XXX attribute to be mapped to the DOM.

attributeMap sets up a "binding" between attributes (aka properties) of the widget and the widget's DOM. Changes to widget attributes listed in attributeMap will be reflected into the DOM.

For example, calling set('title', 'hello') on a TitlePane will automatically cause the TitlePane's DOM to update with the new title.

attributeMap is a hash where the key is an attribute of the widget, and the value reflects a binding to a:

  • DOM node attribute

    focus: {node: "focusNode", type: "attribute"} Maps this.focus to this.focusNode.focus

  • DOM node innerHTML

    title: { node: "titleNode", type: "innerHTML" } Maps this.title to this.titleNode.innerHTML

  • DOM node innerText

    title: { node: "titleNode", type: "innerText" } Maps this.title to this.titleNode.innerText

  • DOM node CSS class

    myClass: { node: "domNode", type: "class" } Maps this.myClass to this.domNode.className

If the value is an array, then each element in the array matches one of the formats of the above list.

There are also some shorthands for backwards compatibility:

  • string --> { node: string, type: "attribute" }, for example:
"focusNode" ---> { node: "focusNode", type: "attribute" }
  • "" --> { node: "domNode", type: "attribute" }

baseClass

class

constraints

user-defined object needed to pass parameters to the validator functions

containerNode

Designates where children of the source DOM node will be placed. "Children" in this case refers to both DOM nodes and widgets. For example, for myWidget:

<div data-dojo-type=myWidget>
    <b> here's a plain DOM node
    <span data-dojo-type=subWidget>and a widget</span>
    <i> and another plain DOM node </i>
</div>

containerNode would point to:

<b> here's a plain DOM node
<span data-dojo-type=subWidget>and a widget</span>
<i> and another plain DOM node </i>

In templated widgets, "containerNode" is set via a data-dojo-attach-point assignment.

containerNode must be defined for any widget that accepts innerHTML (like ContentPane or BorderContainer or even Button), and conversely is null for widgets that don't, like TextBox.

cssStateNodes

List of sub-nodes within the widget that need CSS classes applied on mouse hover/press and focus

Each entry in the hash is a an attachpoint names (like "upArrowButton") mapped to a CSS class names (like "dijitUpArrowButton"). Example:

{
    "upArrowButton": "dijitUpArrowButton",
    "downArrowButton": "dijitDownArrowButton"
}

The above will set the CSS class dijitUpArrowButton to the this.upArrowButton DOMNode when it

is hovered, etc.

dir

Bi-directional support, as defined by the HTML DIR attribute. Either left-to-right "ltr" or right-to-left "rtl". If undefined, widgets renders in page's default direction.

disabled

Should this widget respond to user input? In markup, this is specified as "disabled='disabled'", or just "disabled".

displayedValue

For subclasses like ComboBox where the displayed value (ex: Kentucky) and the serialized value (ex: KY) are different, this represents the displayed value.

Setting 'displayedValue' through set('displayedValue', ...) updates 'value', and vice-versa. Otherwise 'value' is updated from 'displayedValue' periodically, like onBlur etc.

TODO: move declaration to MappedTextBox? Problem is that ComboBox references displayedValue, for benefit of FilteringSelect.

dndType

Defines a type of widget.

domNode

This is our visible representation of the widget! Other DOM Nodes may by assigned to other properties, usually through the template system's data-dojo-attach-point syntax, but the domNode property is the canonical "top level" node in widget UI.

focused

This widget or a widget it contains has focus, or is "active" because it was recently clicked.

hovering

True if cursor is over this widget

id

A unique, opaque ID string that can be assigned by users or by the system. If the developer passes an ID which is known not to be unique, the specified ID is ignored and the system-generated ID is used instead.

intermediateChanges

Fires onChange for each value change or only on demand

invalidMessage

lang

Rarely used. Overrides the default Dojo locale used to render this widget, as defined by the HTML LANG attribute. Value must be among the list of locales specified during by the Dojo bootstrap, formatted according to RFC 3066 (like en-us).

lowercase

Converts all characters to lowercase if true. Default is false.

maxLength

HTML INPUT tag maxLength declaration.

message

Currently error/prompt message. When using the default tooltip implementation, this will only be displayed when the field is focused.

missingMessage

The message to display if value is empty and the field is required. The translated string value is read from the message file by default. Set to "" to use the invalidMessage instead.

module

epi-cms/form/EmailValidationBase

name

Name used when submitting form; same as "name" attribute or plain HTML elements

ownerDocument

The document this widget belongs to. If not specified to constructor, will default to srcNodeRef.ownerDocument, or if no sourceRef specified, then to dojo/_base/window::doc

pattern

This defines the regular expression used to validate the input. Do not add leading ^ or $ characters since the widget adds these. A function may be used to generate a valid pattern when dependent on constraints or other runtime factors. set('pattern', String|Function).

placeHolder

Defines a hint to help users fill out the input field (as defined in HTML 5). This should only contain plain text (no html markup).

promptMessage

If defined, display this hint string immediately on focus to the textbox, if empty. Also displays if the textbox value is Incomplete (not yet valid but will be with additional input). Think of this like a tooltip that tells the user what to do, not an error message that tells the user what they've done wrong.

Message disappears when user starts typing.

propercase

Converts the first character of each word to uppercase if true.

readOnly

Should this widget respond to user input? In markup, this is specified as "readOnly". Similar to disabled except readOnly form values are submitted.

regExp

required

User is required to enter data into this field.

scrollOnFocus

On focus, should this widget scroll into view?

selectOnClick

If true, all text will be selected when focused with mouse

srcNodeRef

pointer to original DOM node

state

Shows current state (ie, validation result) of input (""=Normal, Incomplete, or Error)

style

HTML style attributes as cssText string or name/value hash

tabIndex

Order fields are traversed when user hits the tab key

templatePath

Path to template (HTML file) for this widget relative to dojo.baseUrl. Deprecated: use templateString with require([... "dojo/text!..."], ...) instead

templateString

textDir

Bi-directional support, the main variable which is responsible for the direction of the text. The text direction can be different than the GUI direction by using this parameter in creation of a widget.

Allowed values:

  1. "ltr"
  2. "rtl"
  3. "auto" - contextual the direction of a text defined by first strong letter.

By default is as the page direction.

title

HTML title attribute.

For form widgets this specifies a tooltip to display when hovering over the widget (just like the native HTML title attribute).

For TitlePane or for when this widget is a child of a TabContainer, AccordionContainer, etc., it's used to specify the tab label, accordion pane title, etc.

tooltip

When this widget's title attribute is used to for a tab label, accordion pane title, etc., this specifies the tooltip to appear when the mouse is hovered over that text.

tooltipPosition

See description of dijit/Tooltip.defaultPosition for details on this parameter.

trim

Removes leading and trailing whitespace if true. Default is false.

type

Corresponds to the native HTML <input> element's attribute.

uppercase

Converts all characters to uppercase if true. Default is false.

value

Corresponds to the native HTML <input> element's attribute.

Methods

protected method _fillContent ( source )

Relocate source contents to templated container node. this.containerNode must be able to receive children, or exceptions will be thrown.

Parameters

protected method _setStyleAttr ( value )

Sets the style attribute of the widget according to value, which is either a hash like {height: "5px", width: "3px"} or a plain string

Parameters

protected method applyTextDir ( element , text )

The function overridden in the _BidiSupport module, originally used for setting element.dir according to this.textDir. In this case does nothing.

Parameters

protected method buildRendering ( )

Construct the UI for this widget, setting this.domNode. Most widgets will mixin dijit._TemplatedMixin, which implements this method.


protected method compare ( val1 , val2 )

Compare 2 values (as returned by get('value') for this widget).

Parameters

protected method connect ( obj , event , method )

Deprecated, will be removed in 2.0, use this.own(on(...)) or this.own(aspect.after(...)) instead.

Connects specified obj/event to specified method of this object and registers for disconnect() on widget destroy.

Provide widget-specific analog to dojo.connect, except with the implicit use of this widget as the target object. Events connected with this.connect are disconnected upon destruction.

Parameters
Examples
var btn = new Button();
// when foo.bar() is called, call the listener we're going to
// provide in the scope of btn
btn.connect(foo, "bar", function(){
    console.debug(this.toString());
});

protected method defer ( fcn , delay )

Wrapper to setTimeout to avoid deferred functions executing after the originating widget has been destroyed. Returns an object handle with a remove method (that returns null) (replaces clearTimeout).

Parameters

protected method destroyRendering ( preserveDom )

Destroys the DOM nodes associated with this widget

Parameters

protected method disconnect ( handle )

Deprecated, will be removed in 2.0, use handle.remove() instead.

Disconnects handle created by connect.

Parameters

public inherited method displayMessage ( message )

Overridable method to display validation errors/hints. By default uses a tooltip.

Parameters

protected method emit ( type , eventObj , callbackArgs )

Used by widgets to signal that a synthetic event occurred, ex:

myWidget.emit("attrmodified-selectedChildWidget", {}).

Emits an event on this.domNode named type.toLowerCase(), based on eventObj. Also calls onType() method, if present, and returns value from that method. By default passes eventObj to callback, but will pass callbackArgs instead, if specified. Modifies eventObj by adding missing parameters (bubbles, cancelable, widget).

Parameters

protected method filter ( val )

Auto-corrections (such as trimming) that are applied to textbox value on blur or form submit.

Parameters

protected method format ( value , constraints )

Replaceable function to convert a value to a properly formatted string.

Parameters

public inherited method getDisplayedValue ( )

Deprecated. Use get('displayedValue') instead.


protected method getErrorMessage ( isFocused )

Return an error message to show if appropriate

Parameters

protected method getPromptMessage ( isFocused )

Return a hint message to show when widget is first focused

Parameters

protected method getTextDir ( text , originalDir )

Return direction of the text. The function overridden in the _BidiSupport module, its main purpose is to calculate the direction of the text, if was defined by the programmer through textDir.

Parameters

protected method isLeftToRight ( )

Return this widget's explicit or implicit orientation (true for LTR, false for RTL)


protected method isValid ( isFocused )

Tests if value is valid. Can override with your own routine in a subclass.

Parameters

public inherited method onBlur ( )

Called when the widget stops being "active" because focus moved to something outside of it, or the user clicked somewhere outside of it, or the widget was hidden.


public inherited method onChange ( newValue )

Callback when this widget's value is changed.

Parameters

public inherited method onClick ( event )

Connect to this function to receive notifications of mouse click events.

Parameters

public inherited method onClose ( )

Called when this widget is being displayed as a popup (ex: a Calendar popped up from a DateTextBox), and it is hidden. This is called from the dijit.popup code, and should not be called directly.

Also used as a parameter for children of dijit/layout/StackContainer or subclasses. Callback if a user tries to close the child. Child will be closed if this function returns true.


public inherited method onDblClick ( event )

Connect to this function to receive notifications of mouse double click events.

Parameters

public inherited method onFocus ( )

Called when the widget becomes "active" because it or a widget inside of it either has focus, or has recently been clicked.


public inherited method onHide ( )

Called when another widget becomes the selected pane in a dijit/layout/TabContainer, dijit/layout/StackContainer, dijit/layout/AccordionContainer, etc.

Also called to indicate hide of a dijit.Dialog, dijit.TooltipDialog, or dijit.TitlePane.


public inherited method onKeyDown ( event )

Connect to this function to receive notifications of keys being pressed down.

Parameters

public inherited method onKeyPress ( event )

Connect to this function to receive notifications of printable keys being typed.

Parameters

public inherited method onKeyUp ( event )

Connect to this function to receive notifications of keys being released.

Parameters

public inherited method onMouseDown ( event )

Connect to this function to receive notifications of when the mouse button is pressed down.

Parameters

public inherited method onMouseEnter ( event )

Connect to this function to receive notifications of when the mouse moves onto this widget.

Parameters

public inherited method onMouseLeave ( event )

Connect to this function to receive notifications of when the mouse moves off of this widget.

Parameters

public inherited method onMouseMove ( event )

Connect to this function to receive notifications of when the mouse moves over nodes contained within this widget.

Parameters

public inherited method onMouseOut ( event )

Connect to this function to receive notifications of when the mouse moves off of nodes contained within this widget.

Parameters

public inherited method onMouseOver ( event )

Connect to this function to receive notifications of when the mouse moves onto nodes contained within this widget.

Parameters

public inherited method onMouseUp ( event )

Connect to this function to receive notifications of when the mouse button is released.

Parameters

public inherited method onShow ( )

Called when this widget becomes the selected pane in a dijit/layout/TabContainer, dijit/layout/StackContainer, dijit/layout/AccordionContainer, etc.

Also called to indicate display of a dijit.Dialog, dijit.TooltipDialog, or dijit.TitlePane.


protected method own ( )

Track specified handles and remove/destroy them when this instance is destroyed, unless they were already removed/destroyed manually.


protected method parse ( value , constraints )

Replaceable function to convert a formatted string to a value

Parameters

public inherited method setAttribute ( attr , value )

Deprecated. Use set() instead.

Parameters

public inherited method setDisplayedValue ( value )

Deprecated. Use set('displayedValue', ...) instead.

Parameters

protected method subscribe ( t , method )

Deprecated, will be removed in 2.0, use this.own(topic.subscribe()) instead.

Subscribes to the specified topic and calls the specified method of this object and registers for unsubscribe() on widget destroy.

Provide widget-specific analog to dojo.subscribe, except with the implicit use of this widget as the target object.

Parameters
Examples
var btn = new Button();
// when /my/topic is published, this button changes its label to
// be the parameter of the topic.
btn.subscribe("/my/topic", function(v){
    this.set("label", v);
});

protected method uninitialize ( )

Deprecated. Override destroy() instead to implement custom widget tear-down behavior.


protected method unsubscribe ( handle )

Deprecated, will be removed in 2.0, use handle.remove() instead.

Unsubscribes handle created by this.subscribe. Also removes handle from this widget's list of subscriptions

Parameters

protected method validate ( isFocused )

Called by oninit, onblur, and onkeypress.

Parameters

public method validator ( value , constraints )

Validate the text input with email address validation.

Parameters