@@ -4203,10 +4203,10 @@ discard block |
||
| 4203 | 4203 | { |
| 4204 | 4204 | $value=TPropertyValue::ensureEnum($value,'THttpSessionCookieMode'); |
| 4205 | 4205 | if($value===THttpSessionCookieMode::None) |
| 4206 | - { |
|
| 4206 | + { |
|
| 4207 | 4207 | ini_set('session.use_cookies','0'); |
| 4208 | 4208 | ini_set('session.use_only_cookies','0'); |
| 4209 | - } |
|
| 4209 | + } |
|
| 4210 | 4210 | else if($value===THttpSessionCookieMode::Allow) |
| 4211 | 4211 | { |
| 4212 | 4212 | ini_set('session.use_cookies','1'); |
@@ -6805,77 +6805,77 @@ discard block |
||
| 6805 | 6805 | throw new TConfigurationException('templatecontrol_mastercontrol_required',get_class($this)); |
| 6806 | 6806 | parent::initRecursive($namingContainer); |
| 6807 | 6807 | } |
| 6808 | - public function tryToUpdateView($arObj, $throwExceptions = false) |
|
| 6809 | - { |
|
| 6810 | - $objAttrs = get_class_vars(get_class($arObj)); |
|
| 6811 | - foreach (array_keys($objAttrs) as $key) |
|
| 6812 | - { |
|
| 6813 | - try |
|
| 6814 | - { |
|
| 6815 | - if ($key != "RELATIONS") |
|
| 6816 | - { |
|
| 6817 | - $control = $this->{$key}; |
|
| 6818 | - if ($control instanceof TTextBox) |
|
| 6819 | - $control->Text = $arObj->{$key}; |
|
| 6820 | - elseif ($control instanceof TCheckBox) |
|
| 6821 | - $control->Checked = (boolean) $arObj->{$key}; |
|
| 6822 | - elseif ($control instanceof TDatePicker) |
|
| 6823 | - $control->Date = $arObj->{$key}; |
|
| 6824 | - } |
|
| 6825 | - else |
|
| 6826 | - { |
|
| 6827 | - foreach ($objAttrs["RELATIONS"] as $relKey => $relValues) |
|
| 6828 | - { |
|
| 6829 | - $relControl = $this->{$relKey}; |
|
| 6830 | - switch ($relValues[0]) |
|
| 6831 | - { |
|
| 6832 | - case TActiveRecord::BELONGS_TO: |
|
| 6833 | - case TActiveRecord::HAS_ONE: |
|
| 6834 | - $relControl->Text = $arObj->{$relKey}; |
|
| 6835 | - break; |
|
| 6836 | - case TActiveRecord::HAS_MANY: |
|
| 6837 | - if ($relControl instanceof TListControl) |
|
| 6838 | - { |
|
| 6839 | - $relControl->DataSource = $arObj->{$relKey}; |
|
| 6840 | - $relControl->dataBind(); |
|
| 6841 | - } |
|
| 6842 | - break; |
|
| 6843 | - } |
|
| 6844 | - } |
|
| 6845 | - break; |
|
| 6846 | - } |
|
| 6847 | - } |
|
| 6848 | - catch (Exception $ex) |
|
| 6849 | - { |
|
| 6850 | - if ($throwExceptions) |
|
| 6851 | - throw $ex; |
|
| 6852 | - } |
|
| 6853 | - } |
|
| 6854 | - } |
|
| 6855 | - public function tryToUpdateAR($arObj, $throwExceptions = false) |
|
| 6856 | - { |
|
| 6857 | - $objAttrs = get_class_vars(get_class($arObj)); |
|
| 6858 | - foreach (array_keys($objAttrs) as $key) |
|
| 6859 | - { |
|
| 6860 | - try |
|
| 6861 | - { |
|
| 6862 | - if ($key == "RELATIONS") |
|
| 6863 | - break; |
|
| 6864 | - $control = $this->{$key}; |
|
| 6865 | - if ($control instanceof TTextBox) |
|
| 6866 | - $arObj->{$key} = $control->Text; |
|
| 6867 | - elseif ($control instanceof TCheckBox) |
|
| 6868 | - $arObj->{$key} = $control->Checked; |
|
| 6869 | - elseif ($control instanceof TDatePicker) |
|
| 6870 | - $arObj->{$key} = $control->Date; |
|
| 6871 | - } |
|
| 6872 | - catch (Exception $ex) |
|
| 6873 | - { |
|
| 6874 | - if ($throwExceptions) |
|
| 6875 | - throw $ex; |
|
| 6876 | - } |
|
| 6877 | - } |
|
| 6878 | - } |
|
| 6808 | + public function tryToUpdateView($arObj, $throwExceptions = false) |
|
| 6809 | + { |
|
| 6810 | + $objAttrs = get_class_vars(get_class($arObj)); |
|
| 6811 | + foreach (array_keys($objAttrs) as $key) |
|
| 6812 | + { |
|
| 6813 | + try |
|
| 6814 | + { |
|
| 6815 | + if ($key != "RELATIONS") |
|
| 6816 | + { |
|
| 6817 | + $control = $this->{$key}; |
|
| 6818 | + if ($control instanceof TTextBox) |
|
| 6819 | + $control->Text = $arObj->{$key}; |
|
| 6820 | + elseif ($control instanceof TCheckBox) |
|
| 6821 | + $control->Checked = (boolean) $arObj->{$key}; |
|
| 6822 | + elseif ($control instanceof TDatePicker) |
|
| 6823 | + $control->Date = $arObj->{$key}; |
|
| 6824 | + } |
|
| 6825 | + else |
|
| 6826 | + { |
|
| 6827 | + foreach ($objAttrs["RELATIONS"] as $relKey => $relValues) |
|
| 6828 | + { |
|
| 6829 | + $relControl = $this->{$relKey}; |
|
| 6830 | + switch ($relValues[0]) |
|
| 6831 | + { |
|
| 6832 | + case TActiveRecord::BELONGS_TO: |
|
| 6833 | + case TActiveRecord::HAS_ONE: |
|
| 6834 | + $relControl->Text = $arObj->{$relKey}; |
|
| 6835 | + break; |
|
| 6836 | + case TActiveRecord::HAS_MANY: |
|
| 6837 | + if ($relControl instanceof TListControl) |
|
| 6838 | + { |
|
| 6839 | + $relControl->DataSource = $arObj->{$relKey}; |
|
| 6840 | + $relControl->dataBind(); |
|
| 6841 | + } |
|
| 6842 | + break; |
|
| 6843 | + } |
|
| 6844 | + } |
|
| 6845 | + break; |
|
| 6846 | + } |
|
| 6847 | + } |
|
| 6848 | + catch (Exception $ex) |
|
| 6849 | + { |
|
| 6850 | + if ($throwExceptions) |
|
| 6851 | + throw $ex; |
|
| 6852 | + } |
|
| 6853 | + } |
|
| 6854 | + } |
|
| 6855 | + public function tryToUpdateAR($arObj, $throwExceptions = false) |
|
| 6856 | + { |
|
| 6857 | + $objAttrs = get_class_vars(get_class($arObj)); |
|
| 6858 | + foreach (array_keys($objAttrs) as $key) |
|
| 6859 | + { |
|
| 6860 | + try |
|
| 6861 | + { |
|
| 6862 | + if ($key == "RELATIONS") |
|
| 6863 | + break; |
|
| 6864 | + $control = $this->{$key}; |
|
| 6865 | + if ($control instanceof TTextBox) |
|
| 6866 | + $arObj->{$key} = $control->Text; |
|
| 6867 | + elseif ($control instanceof TCheckBox) |
|
| 6868 | + $arObj->{$key} = $control->Checked; |
|
| 6869 | + elseif ($control instanceof TDatePicker) |
|
| 6870 | + $arObj->{$key} = $control->Date; |
|
| 6871 | + } |
|
| 6872 | + catch (Exception $ex) |
|
| 6873 | + { |
|
| 6874 | + if ($throwExceptions) |
|
| 6875 | + throw $ex; |
|
| 6876 | + } |
|
| 6877 | + } |
|
| 6878 | + } |
|
| 6879 | 6879 | } |
| 6880 | 6880 | class TForm extends TControl |
| 6881 | 6881 | { |
@@ -7536,13 +7536,13 @@ discard block |
||
| 7536 | 7536 | { |
| 7537 | 7537 | Prado::using('System.Web.UI.ActiveControls.TActivePageAdapter'); |
| 7538 | 7538 | $this->setAdapter(new TActivePageAdapter($this)); |
| 7539 | - $callbackEventParameter = $this->getRequest()->itemAt(TPage::FIELD_CALLBACK_PARAMETER); |
|
| 7540 | - if(strlen($callbackEventParameter) > 0) |
|
| 7541 | - $this->_postData[TPage::FIELD_CALLBACK_PARAMETER]=TJavaScript::jsonDecode((string)$callbackEventParameter); |
|
| 7542 | - if (($g=$this->getApplication()->getGlobalization(false))!==null && |
|
| 7543 | - strtoupper($enc=$g->getCharset())!='UTF-8') |
|
| 7544 | - foreach ($this->_postData as $k=>$v) |
|
| 7545 | - $this->_postData[$k]=self::decodeUTF8($v, $enc); |
|
| 7539 | + $callbackEventParameter = $this->getRequest()->itemAt(TPage::FIELD_CALLBACK_PARAMETER); |
|
| 7540 | + if(strlen($callbackEventParameter) > 0) |
|
| 7541 | + $this->_postData[TPage::FIELD_CALLBACK_PARAMETER]=TJavaScript::jsonDecode((string)$callbackEventParameter); |
|
| 7542 | + if (($g=$this->getApplication()->getGlobalization(false))!==null && |
|
| 7543 | + strtoupper($enc=$g->getCharset())!='UTF-8') |
|
| 7544 | + foreach ($this->_postData as $k=>$v) |
|
| 7545 | + $this->_postData[$k]=self::decodeUTF8($v, $enc); |
|
| 7546 | 7546 | $this->onPreInit(null); |
| 7547 | 7547 | $this->initRecursive(); |
| 7548 | 7548 | $this->onInitComplete(null); |
@@ -9127,15 +9127,15 @@ discard block |
||
| 9127 | 9127 | $component=new ReflectionClass('TComponent'); |
| 9128 | 9128 | $behaviors=$component->getStaticProperties(); |
| 9129 | 9129 | if(!isset($behaviors['_um'])) |
| 9130 | - return false; |
|
| 9130 | + return false; |
|
| 9131 | 9131 | foreach($behaviors['_um'] as $name=>$list) |
| 9132 | 9132 | { |
| 9133 | - if(strtolower($class->getShortName())!==$name && !$class->isSubclassOf($name)) continue; |
|
| 9134 | - foreach($list as $param) |
|
| 9135 | - { |
|
| 9136 | - if(method_exists($param->getBehavior(),$method)) |
|
| 9137 | - return true; |
|
| 9138 | - } |
|
| 9133 | + if(strtolower($class->getShortName())!==$name && !$class->isSubclassOf($name)) continue; |
|
| 9134 | + foreach($list as $param) |
|
| 9135 | + { |
|
| 9136 | + if(method_exists($param->getBehavior(),$method)) |
|
| 9137 | + return true; |
|
| 9138 | + } |
|
| 9139 | 9139 | } |
| 9140 | 9140 | return false; |
| 9141 | 9141 | } |
@@ -78,6 +78,10 @@ discard block |
||
| 78 | 78 | } |
| 79 | 79 | exit(1); |
| 80 | 80 | } |
| 81 | + |
|
| 82 | + /** |
|
| 83 | + * @param TApplication $application |
|
| 84 | + */ |
|
| 81 | 85 | public static function setApplication($application) |
| 82 | 86 | { |
| 83 | 87 | if(self::$_application!==null && !defined('PRADO_TEST_RUN')) |
@@ -371,14 +375,26 @@ discard block |
||
| 371 | 375 | interface IModule |
| 372 | 376 | { |
| 373 | 377 | public function init($config); |
| 378 | + |
|
| 379 | + /** |
|
| 380 | + * @return string |
|
| 381 | + */ |
|
| 374 | 382 | public function getID(); |
| 375 | 383 | public function setID($id); |
| 376 | 384 | } |
| 377 | 385 | interface IService |
| 378 | 386 | { |
| 379 | 387 | public function init($config); |
| 388 | + |
|
| 389 | + /** |
|
| 390 | + * @return string |
|
| 391 | + */ |
|
| 380 | 392 | public function getID(); |
| 381 | 393 | public function setID($id); |
| 394 | + |
|
| 395 | + /** |
|
| 396 | + * @return boolean |
|
| 397 | + */ |
|
| 382 | 398 | public function getEnabled(); |
| 383 | 399 | public function setEnabled($value); |
| 384 | 400 | public function run(); |
@@ -390,14 +406,37 @@ discard block |
||
| 390 | 406 | } |
| 391 | 407 | interface IUser |
| 392 | 408 | { |
| 409 | + /** |
|
| 410 | + * @return string |
|
| 411 | + */ |
|
| 393 | 412 | public function getName(); |
| 394 | 413 | public function setName($value); |
| 414 | + |
|
| 415 | + /** |
|
| 416 | + * @return boolean |
|
| 417 | + */ |
|
| 395 | 418 | public function getIsGuest(); |
| 419 | + |
|
| 420 | + /** |
|
| 421 | + * @param boolean $value |
|
| 422 | + */ |
|
| 396 | 423 | public function setIsGuest($value); |
| 397 | 424 | public function getRoles(); |
| 398 | 425 | public function setRoles($value); |
| 426 | + |
|
| 427 | + /** |
|
| 428 | + * @return boolean |
|
| 429 | + */ |
|
| 399 | 430 | public function isInRole($role); |
| 431 | + |
|
| 432 | + /** |
|
| 433 | + * @return string |
|
| 434 | + */ |
|
| 400 | 435 | public function saveToString(); |
| 436 | + |
|
| 437 | + /** |
|
| 438 | + * @return TUser |
|
| 439 | + */ |
|
| 401 | 440 | public function loadFromString($string); |
| 402 | 441 | } |
| 403 | 442 | interface IStatePersister |
@@ -409,6 +448,12 @@ discard block |
||
| 409 | 448 | { |
| 410 | 449 | public function get($id); |
| 411 | 450 | public function set($id,$value,$expire=0,$dependency=null); |
| 451 | + |
|
| 452 | + /** |
|
| 453 | + * @param string $id |
|
| 454 | + * |
|
| 455 | + * @return boolean |
|
| 456 | + */ |
|
| 412 | 457 | public function add($id,$value,$expire=0,$dependency=null); |
| 413 | 458 | public function delete($id); |
| 414 | 459 | public function flush(); |
@@ -427,12 +472,22 @@ discard block |
||
| 427 | 472 | } |
| 428 | 473 | interface IStyleable |
| 429 | 474 | { |
| 475 | + /** |
|
| 476 | + * @return boolean |
|
| 477 | + */ |
|
| 430 | 478 | public function getHasStyle(); |
| 479 | + |
|
| 480 | + /** |
|
| 481 | + * @return TStyle |
|
| 482 | + */ |
|
| 431 | 483 | public function getStyle(); |
| 432 | 484 | public function clearStyle(); |
| 433 | 485 | } |
| 434 | 486 | interface IActiveControl |
| 435 | 487 | { |
| 488 | + /** |
|
| 489 | + * @return TBaseActiveControl |
|
| 490 | + */ |
|
| 436 | 491 | public function getActiveControl(); |
| 437 | 492 | } |
| 438 | 493 | interface ICallbackEventHandler |
@@ -442,6 +497,10 @@ discard block |
||
| 442 | 497 | interface IDataRenderer |
| 443 | 498 | { |
| 444 | 499 | public function getData(); |
| 500 | + |
|
| 501 | + /** |
|
| 502 | + * @param TActiveRecord $value |
|
| 503 | + */ |
|
| 445 | 504 | public function setData($value); |
| 446 | 505 | } |
| 447 | 506 | class TApplicationComponent extends TComponent |
@@ -470,6 +529,10 @@ discard block |
||
| 470 | 529 | { |
| 471 | 530 | return Prado::getApplication()->getUser(); |
| 472 | 531 | } |
| 532 | + |
|
| 533 | + /** |
|
| 534 | + * @param string $assetPath |
|
| 535 | + */ |
|
| 473 | 536 | public function publishAsset($assetPath,$className=null) |
| 474 | 537 | { |
| 475 | 538 | if($className===null) |
@@ -478,6 +541,10 @@ discard block |
||
| 478 | 541 | $fullPath=dirname($class->getFileName()).DIRECTORY_SEPARATOR.$assetPath; |
| 479 | 542 | return $this->publishFilePath($fullPath); |
| 480 | 543 | } |
| 544 | + |
|
| 545 | + /** |
|
| 546 | + * @param string $fullPath |
|
| 547 | + */ |
|
| 481 | 548 | public function publishFilePath($fullPath, $checkTimestamp=false) |
| 482 | 549 | { |
| 483 | 550 | return Prado::getApplication()->getAssetManager()->publishFilePath($fullPath, $checkTimestamp); |
@@ -509,6 +576,10 @@ discard block |
||
| 509 | 576 | { |
| 510 | 577 | return $this->_id; |
| 511 | 578 | } |
| 579 | + |
|
| 580 | + /** |
|
| 581 | + * @param string $value |
|
| 582 | + */ |
|
| 512 | 583 | public function setID($value) |
| 513 | 584 | { |
| 514 | 585 | $this->_id=$value; |
@@ -548,6 +619,10 @@ discard block |
||
| 548 | 619 | else |
| 549 | 620 | throw new TConfigurationException('errorhandler_errortemplatepath_invalid',$value); |
| 550 | 621 | } |
| 622 | + |
|
| 623 | + /** |
|
| 624 | + * @param null|TApplication $sender |
|
| 625 | + */ |
|
| 551 | 626 | public function handleError($sender,$param) |
| 552 | 627 | { |
| 553 | 628 | static $handling=false; |
@@ -570,6 +645,10 @@ discard block |
||
| 570 | 645 | $this->handleExternalError(500,$param); |
| 571 | 646 | } |
| 572 | 647 | } |
| 648 | + |
|
| 649 | + /** |
|
| 650 | + * @return string |
|
| 651 | + */ |
|
| 573 | 652 | protected static function hideSecurityRelated($value, $exception=null) |
| 574 | 653 | { |
| 575 | 654 | $aRpl = array(); |
@@ -589,6 +668,10 @@ discard block |
||
| 589 | 668 | $aRpl = array_reverse($aRpl, true); |
| 590 | 669 | return str_replace(array_keys($aRpl), $aRpl, $value); |
| 591 | 670 | } |
| 671 | + |
|
| 672 | + /** |
|
| 673 | + * @param integer $statusCode |
|
| 674 | + */ |
|
| 592 | 675 | protected function handleExternalError($statusCode,$exception) |
| 593 | 676 | { |
| 594 | 677 | if(!($exception instanceof THttpException)) |
@@ -722,6 +805,10 @@ discard block |
||
| 722 | 805 | return null; |
| 723 | 806 | return $result; |
| 724 | 807 | } |
| 808 | + |
|
| 809 | + /** |
|
| 810 | + * @param string $pattern |
|
| 811 | + */ |
|
| 725 | 812 | private function getPropertyAccessTrace($trace,$pattern) |
| 726 | 813 | { |
| 727 | 814 | $result=null; |
@@ -751,6 +838,10 @@ discard block |
||
| 751 | 838 | } |
| 752 | 839 | return $source; |
| 753 | 840 | } |
| 841 | + |
|
| 842 | + /** |
|
| 843 | + * @param string $message |
|
| 844 | + */ |
|
| 754 | 845 | private function addLink($message) |
| 755 | 846 | { |
| 756 | 847 | $baseUrl='http://pradosoft.github.io/docs/manual/class-'; |
@@ -772,6 +863,10 @@ discard block |
||
| 772 | 863 | { |
| 773 | 864 | return $this->_r; |
| 774 | 865 | } |
| 866 | + |
|
| 867 | + /** |
|
| 868 | + * @param boolean $value |
|
| 869 | + */ |
|
| 775 | 870 | protected function setReadOnly($value) |
| 776 | 871 | { |
| 777 | 872 | $this->_r=TPropertyValue::ensureBoolean($value); |
@@ -1018,9 +1113,27 @@ discard block |
||
| 1018 | 1113 | { |
| 1019 | 1114 | throw new TNotSupportedException('cache_flush_unsupported'); |
| 1020 | 1115 | } |
| 1116 | + |
|
| 1117 | + /** |
|
| 1118 | + * @param string $key |
|
| 1119 | + */ |
|
| 1021 | 1120 | abstract protected function getValue($key); |
| 1121 | + |
|
| 1122 | + /** |
|
| 1123 | + * @param string $key |
|
| 1124 | + * @param integer $expire |
|
| 1125 | + */ |
|
| 1022 | 1126 | abstract protected function setValue($key,$value,$expire); |
| 1127 | + |
|
| 1128 | + /** |
|
| 1129 | + * @param string $key |
|
| 1130 | + * @param integer $expire |
|
| 1131 | + */ |
|
| 1023 | 1132 | abstract protected function addValue($key,$value,$expire); |
| 1133 | + |
|
| 1134 | + /** |
|
| 1135 | + * @param string $key |
|
| 1136 | + */ |
|
| 1024 | 1137 | abstract protected function deleteValue($key); |
| 1025 | 1138 | public function offsetExists($id) |
| 1026 | 1139 | { |
@@ -1109,14 +1222,26 @@ discard block |
||
| 1109 | 1222 | { |
| 1110 | 1223 | return $this->generateTimestamps($this->_directory)!=$this->_timestamps; |
| 1111 | 1224 | } |
| 1225 | + |
|
| 1226 | + /** |
|
| 1227 | + * @param string $fileName |
|
| 1228 | + */ |
|
| 1112 | 1229 | protected function validateFile($fileName) |
| 1113 | 1230 | { |
| 1114 | 1231 | return true; |
| 1115 | 1232 | } |
| 1233 | + |
|
| 1234 | + /** |
|
| 1235 | + * @param string $directory |
|
| 1236 | + */ |
|
| 1116 | 1237 | protected function validateDirectory($directory) |
| 1117 | 1238 | { |
| 1118 | 1239 | return true; |
| 1119 | 1240 | } |
| 1241 | + |
|
| 1242 | + /** |
|
| 1243 | + * @param string $directory |
|
| 1244 | + */ |
|
| 1120 | 1245 | protected function generateTimestamps($directory,$level=0) |
| 1121 | 1246 | { |
| 1122 | 1247 | if(($dir=opendir($directory))===false) |
@@ -1207,6 +1332,10 @@ discard block |
||
| 1207 | 1332 | $this->_str=''; |
| 1208 | 1333 | return $str; |
| 1209 | 1334 | } |
| 1335 | + |
|
| 1336 | + /** |
|
| 1337 | + * @param string $str |
|
| 1338 | + */ |
|
| 1210 | 1339 | public function write($str) |
| 1211 | 1340 | { |
| 1212 | 1341 | $this->_str.=$str; |
@@ -1254,6 +1383,10 @@ discard block |
||
| 1254 | 1383 | { |
| 1255 | 1384 | return $this->_dp; |
| 1256 | 1385 | } |
| 1386 | + |
|
| 1387 | + /** |
|
| 1388 | + * @param integer $value |
|
| 1389 | + */ |
|
| 1257 | 1390 | protected function setDefaultPriority($value) |
| 1258 | 1391 | { |
| 1259 | 1392 | $this->_dp=(string)round(TPropertyValue::ensureFloat($value),$this->_p); |
@@ -1262,6 +1395,10 @@ discard block |
||
| 1262 | 1395 | { |
| 1263 | 1396 | return $this->_p; |
| 1264 | 1397 | } |
| 1398 | + |
|
| 1399 | + /** |
|
| 1400 | + * @param integer $value |
|
| 1401 | + */ |
|
| 1265 | 1402 | protected function setPrecision($value) |
| 1266 | 1403 | { |
| 1267 | 1404 | $this->_p=TPropertyValue::ensureInteger($value); |
@@ -1500,6 +1637,10 @@ discard block |
||
| 1500 | 1637 | $this->sortPriorities(); |
| 1501 | 1638 | return $this->_d; |
| 1502 | 1639 | } |
| 1640 | + |
|
| 1641 | + /** |
|
| 1642 | + * @param integer $priority |
|
| 1643 | + */ |
|
| 1503 | 1644 | public function toArrayBelowPriority($priority,$inclusive=false) |
| 1504 | 1645 | { |
| 1505 | 1646 | $this->sortPriorities(); |
@@ -1512,6 +1653,10 @@ discard block |
||
| 1512 | 1653 | } |
| 1513 | 1654 | return $items; |
| 1514 | 1655 | } |
| 1656 | + |
|
| 1657 | + /** |
|
| 1658 | + * @param integer $priority |
|
| 1659 | + */ |
|
| 1515 | 1660 | public function toArrayAbovePriority($priority,$inclusive=true) |
| 1516 | 1661 | { |
| 1517 | 1662 | $this->sortPriorities(); |
@@ -1609,6 +1754,10 @@ discard block |
||
| 1609 | 1754 | { |
| 1610 | 1755 | return $this->_r; |
| 1611 | 1756 | } |
| 1757 | + |
|
| 1758 | + /** |
|
| 1759 | + * @param boolean $value |
|
| 1760 | + */ |
|
| 1612 | 1761 | protected function setReadOnly($value) |
| 1613 | 1762 | { |
| 1614 | 1763 | $this->_r=TPropertyValue::ensureBoolean($value); |
@@ -1681,6 +1830,10 @@ discard block |
||
| 1681 | 1830 | else if($data!==null) |
| 1682 | 1831 | throw new TInvalidDataTypeException('map_data_not_iterable'); |
| 1683 | 1832 | } |
| 1833 | + |
|
| 1834 | + /** |
|
| 1835 | + * @param TMap $data |
|
| 1836 | + */ |
|
| 1684 | 1837 | public function mergeWith($data) |
| 1685 | 1838 | { |
| 1686 | 1839 | if(is_array($data) || $data instanceof Traversable) |
@@ -1732,6 +1885,10 @@ discard block |
||
| 1732 | 1885 | { |
| 1733 | 1886 | return $this->_r; |
| 1734 | 1887 | } |
| 1888 | + |
|
| 1889 | + /** |
|
| 1890 | + * @param boolean $value |
|
| 1891 | + */ |
|
| 1735 | 1892 | protected function setReadOnly($value) |
| 1736 | 1893 | { |
| 1737 | 1894 | $this->_r=TPropertyValue::ensureBoolean($value); |
@@ -1740,6 +1897,10 @@ discard block |
||
| 1740 | 1897 | { |
| 1741 | 1898 | return $this->_dp; |
| 1742 | 1899 | } |
| 1900 | + |
|
| 1901 | + /** |
|
| 1902 | + * @param integer $value |
|
| 1903 | + */ |
|
| 1743 | 1904 | protected function setDefaultPriority($value) |
| 1744 | 1905 | { |
| 1745 | 1906 | $this->_dp = (string)round(TPropertyValue::ensureFloat($value), $this->_p); |
@@ -1748,6 +1909,10 @@ discard block |
||
| 1748 | 1909 | { |
| 1749 | 1910 | return $this->_p; |
| 1750 | 1911 | } |
| 1912 | + |
|
| 1913 | + /** |
|
| 1914 | + * @param integer $value |
|
| 1915 | + */ |
|
| 1751 | 1916 | protected function setPrecision($value) |
| 1752 | 1917 | { |
| 1753 | 1918 | $this->_p=TPropertyValue::ensureInteger($value); |
@@ -2133,6 +2298,10 @@ discard block |
||
| 2133 | 2298 | { |
| 2134 | 2299 | return $this->_parent; |
| 2135 | 2300 | } |
| 2301 | + |
|
| 2302 | + /** |
|
| 2303 | + * @param TXmlElement|null $parent |
|
| 2304 | + */ |
|
| 2136 | 2305 | public function setParent($parent) |
| 2137 | 2306 | { |
| 2138 | 2307 | $this->_parent=$parent; |
@@ -2194,6 +2363,10 @@ discard block |
||
| 2194 | 2363 | } |
| 2195 | 2364 | return null; |
| 2196 | 2365 | } |
| 2366 | + |
|
| 2367 | + /** |
|
| 2368 | + * @param string $tagName |
|
| 2369 | + */ |
|
| 2197 | 2370 | public function getElementsByTagName($tagName) |
| 2198 | 2371 | { |
| 2199 | 2372 | $list=new TList; |
@@ -2263,6 +2436,10 @@ discard block |
||
| 2263 | 2436 | { |
| 2264 | 2437 | return $this->_version; |
| 2265 | 2438 | } |
| 2439 | + |
|
| 2440 | + /** |
|
| 2441 | + * @param string $version |
|
| 2442 | + */ |
|
| 2266 | 2443 | public function setVersion($version) |
| 2267 | 2444 | { |
| 2268 | 2445 | $this->_version=$version; |
@@ -2271,6 +2448,10 @@ discard block |
||
| 2271 | 2448 | { |
| 2272 | 2449 | return $this->_encoding; |
| 2273 | 2450 | } |
| 2451 | + |
|
| 2452 | + /** |
|
| 2453 | + * @param string $encoding |
|
| 2454 | + */ |
|
| 2274 | 2455 | public function setEncoding($encoding) |
| 2275 | 2456 | { |
| 2276 | 2457 | $this->_encoding=$encoding; |
@@ -2341,6 +2522,10 @@ discard block |
||
| 2341 | 2522 | { |
| 2342 | 2523 | return $this->saveToString(); |
| 2343 | 2524 | } |
| 2525 | + |
|
| 2526 | + /** |
|
| 2527 | + * @param DOMElement $node |
|
| 2528 | + */ |
|
| 2344 | 2529 | protected function buildElement($node) |
| 2345 | 2530 | { |
| 2346 | 2531 | $element=new TXmlElement($node->tagName); |
@@ -2499,10 +2684,18 @@ discard block |
||
| 2499 | 2684 | } |
| 2500 | 2685 | return 0; |
| 2501 | 2686 | } |
| 2687 | + |
|
| 2688 | + /** |
|
| 2689 | + * @param IUser $user |
|
| 2690 | + */ |
|
| 2502 | 2691 | private function isUserMatched($user) |
| 2503 | 2692 | { |
| 2504 | 2693 | return ($this->_everyone || ($this->_guest && $user->getIsGuest()) || ($this->_authenticated && !$user->getIsGuest()) || in_array(strtolower($user->getName()),$this->_users)); |
| 2505 | 2694 | } |
| 2695 | + |
|
| 2696 | + /** |
|
| 2697 | + * @param IUser $user |
|
| 2698 | + */ |
|
| 2506 | 2699 | private function isRoleMatched($user) |
| 2507 | 2700 | { |
| 2508 | 2701 | foreach($this->_roles as $role) |
@@ -2519,6 +2712,11 @@ discard block |
||
| 2519 | 2712 | } |
| 2520 | 2713 | class TAuthorizationRuleCollection extends TList |
| 2521 | 2714 | { |
| 2715 | + /** |
|
| 2716 | + * @param IUser $user |
|
| 2717 | + * @param string $verb |
|
| 2718 | + * @param string $ip |
|
| 2719 | + */ |
|
| 2522 | 2720 | public function isUserAllowed($user,$verb,$ip) |
| 2523 | 2721 | { |
| 2524 | 2722 | if($user instanceof IUser) |
@@ -2626,6 +2824,10 @@ discard block |
||
| 2626 | 2824 | { |
| 2627 | 2825 | $this->_cryptAlgorithm = $value; |
| 2628 | 2826 | } |
| 2827 | + |
|
| 2828 | + /** |
|
| 2829 | + * @param string $data |
|
| 2830 | + */ |
|
| 2629 | 2831 | public function encrypt($data) |
| 2630 | 2832 | { |
| 2631 | 2833 | $module=$this->openCryptModule(); |
@@ -2638,6 +2840,10 @@ discard block |
||
| 2638 | 2840 | mcrypt_module_close($module); |
| 2639 | 2841 | return $encrypted; |
| 2640 | 2842 | } |
| 2843 | + |
|
| 2844 | + /** |
|
| 2845 | + * @param string $data |
|
| 2846 | + */ |
|
| 2641 | 2847 | public function decrypt($data) |
| 2642 | 2848 | { |
| 2643 | 2849 | $module=$this->openCryptModule(); |
@@ -2699,6 +2905,11 @@ discard block |
||
| 2699 | 2905 | { |
| 2700 | 2906 | return $this->_mbstring ? mb_strlen($string,'8bit') : strlen($string); |
| 2701 | 2907 | } |
| 2908 | + |
|
| 2909 | + /** |
|
| 2910 | + * @param integer $start |
|
| 2911 | + * @param integer $length |
|
| 2912 | + */ |
|
| 2702 | 2913 | private function substr($string,$start,$length) |
| 2703 | 2914 | { |
| 2704 | 2915 | return $this->_mbstring ? mb_substr($string,$start,$length,'8bit') : substr($string,$start,$length); |
@@ -2858,6 +3069,10 @@ discard block |
||
| 2858 | 3069 | self::checkJsonError(); |
| 2859 | 3070 | return $s; |
| 2860 | 3071 | } |
| 3072 | + |
|
| 3073 | + /** |
|
| 3074 | + * @param string $sourceEncoding |
|
| 3075 | + */ |
|
| 2861 | 3076 | private static function convertToUtf8(&$value, $sourceEncoding) { |
| 2862 | 3077 | if(is_string($value)) |
| 2863 | 3078 | $value=iconv($sourceEncoding, 'UTF-8', $value); |
@@ -2867,6 +3082,10 @@ discard block |
||
| 2867 | 3082 | self::convertToUtf8($element, $sourceEncoding); |
| 2868 | 3083 | } |
| 2869 | 3084 | } |
| 3085 | + |
|
| 3086 | + /** |
|
| 3087 | + * @param string $value |
|
| 3088 | + */ |
|
| 2870 | 3089 | public static function jsonDecode($value, $assoc = false, $depth = 512) |
| 2871 | 3090 | { |
| 2872 | 3091 | $s= @json_decode($value, $assoc, $depth); |
@@ -2901,6 +3120,10 @@ discard block |
||
| 2901 | 3120 | } |
| 2902 | 3121 | throw new Exception("JSON error ($err): $msg"); |
| 2903 | 3122 | } |
| 3123 | + |
|
| 3124 | + /** |
|
| 3125 | + * @param string $code |
|
| 3126 | + */ |
|
| 2904 | 3127 | public static function JSMin($code) |
| 2905 | 3128 | { |
| 2906 | 3129 | Prado::using('System.Web.Javascripts.JSMin'); |
@@ -3088,6 +3311,10 @@ discard block |
||
| 3088 | 3311 | { |
| 3089 | 3312 | return $this->getID(); |
| 3090 | 3313 | } |
| 3314 | + |
|
| 3315 | + /** |
|
| 3316 | + * @param TUrlManager $manager |
|
| 3317 | + */ |
|
| 3091 | 3318 | protected function cacheUrlManager($manager) |
| 3092 | 3319 | { |
| 3093 | 3320 | if($this->getEnableCache()) |
@@ -3337,6 +3564,10 @@ discard block |
||
| 3337 | 3564 | { |
| 3338 | 3565 | return $_ENV; |
| 3339 | 3566 | } |
| 3567 | + |
|
| 3568 | + /** |
|
| 3569 | + * @param string $serviceID |
|
| 3570 | + */ |
|
| 3340 | 3571 | public function constructUrl($serviceID,$serviceParam,$getItems=null,$encodeAmpersand=true,$encodeGetItems=true) |
| 3341 | 3572 | { |
| 3342 | 3573 | if ($this->_cookieOnly===null) |
@@ -3457,6 +3688,10 @@ discard block |
||
| 3457 | 3688 | class THttpCookieCollection extends TList |
| 3458 | 3689 | { |
| 3459 | 3690 | private $_o; |
| 3691 | + |
|
| 3692 | + /** |
|
| 3693 | + * @param THttpResponse $owner |
|
| 3694 | + */ |
|
| 3460 | 3695 | public function __construct($owner=null) |
| 3461 | 3696 | { |
| 3462 | 3697 | $this->_o=$owner; |
@@ -3520,6 +3755,10 @@ discard block |
||
| 3520 | 3755 | { |
| 3521 | 3756 | return $this->_expire; |
| 3522 | 3757 | } |
| 3758 | + |
|
| 3759 | + /** |
|
| 3760 | + * @param integer $value |
|
| 3761 | + */ |
|
| 3523 | 3762 | public function setExpire($value) |
| 3524 | 3763 | { |
| 3525 | 3764 | $this->_expire=TPropertyValue::ensureInteger($value); |
@@ -3586,6 +3825,10 @@ discard block |
||
| 3586 | 3825 | private $_query; |
| 3587 | 3826 | private $_fragment; |
| 3588 | 3827 | private $_uri; |
| 3828 | + |
|
| 3829 | + /** |
|
| 3830 | + * @param string $uri |
|
| 3831 | + */ |
|
| 3589 | 3832 | public function __construct($uri) |
| 3590 | 3833 | { |
| 3591 | 3834 | if(($ret=@parse_url($uri))!==false) |
@@ -3651,6 +3894,10 @@ discard block |
||
| 3651 | 3894 | class THttpResponseAdapter extends TApplicationComponent |
| 3652 | 3895 | { |
| 3653 | 3896 | private $_response; |
| 3897 | + |
|
| 3898 | + /** |
|
| 3899 | + * @param THttpResponse $response |
|
| 3900 | + */ |
|
| 3654 | 3901 | public function __construct($response) |
| 3655 | 3902 | { |
| 3656 | 3903 | $this->_response=$response; |
@@ -3746,6 +3993,10 @@ discard block |
||
| 3746 | 3993 | { |
| 3747 | 3994 | return $this->_charset; |
| 3748 | 3995 | } |
| 3996 | + |
|
| 3997 | + /** |
|
| 3998 | + * @param string $charset |
|
| 3999 | + */ |
|
| 3749 | 4000 | public function setCharset($charset) |
| 3750 | 4001 | { |
| 3751 | 4002 | $this->_charset = (strToLower($charset) === 'false') ? false : (string)$charset; |
@@ -3969,6 +4220,10 @@ discard block |
||
| 3969 | 4220 | return array_change_key_case($result, $case); |
| 3970 | 4221 | return $result; |
| 3971 | 4222 | } |
| 4223 | + |
|
| 4224 | + /** |
|
| 4225 | + * @param string $value |
|
| 4226 | + */ |
|
| 3972 | 4227 | public function appendHeader($value, $replace=true) |
| 3973 | 4228 | { |
| 3974 | 4229 | header($value, $replace); |
@@ -3977,6 +4232,10 @@ discard block |
||
| 3977 | 4232 | { |
| 3978 | 4233 | error_log($message,$messageType,$destination,$extraHeaders); |
| 3979 | 4234 | } |
| 4235 | + |
|
| 4236 | + /** |
|
| 4237 | + * @param THttpCookie $cookie |
|
| 4238 | + */ |
|
| 3980 | 4239 | public function addCookie($cookie) |
| 3981 | 4240 | { |
| 3982 | 4241 | $request=$this->getRequest(); |
@@ -4034,6 +4293,10 @@ discard block |
||
| 4034 | 4293 | else |
| 4035 | 4294 | return $this->createNewHtmlWriter($type, $this); |
| 4036 | 4295 | } |
| 4296 | + |
|
| 4297 | + /** |
|
| 4298 | + * @param THttpResponse $writer |
|
| 4299 | + */ |
|
| 4037 | 4300 | public function createNewHtmlWriter($type, $writer) |
| 4038 | 4301 | { |
| 4039 | 4302 | return Prado::createComponent($type, $writer); |
@@ -4143,6 +4406,10 @@ discard block |
||
| 4143 | 4406 | { |
| 4144 | 4407 | return $this->_customStorage; |
| 4145 | 4408 | } |
| 4409 | + |
|
| 4410 | + /** |
|
| 4411 | + * @param boolean $value |
|
| 4412 | + */ |
|
| 4146 | 4413 | public function setUseCustomStorage($value) |
| 4147 | 4414 | { |
| 4148 | 4415 | $this->_customStorage=TPropertyValue::ensureBoolean($value); |
@@ -4285,10 +4552,18 @@ discard block |
||
| 4285 | 4552 | { |
| 4286 | 4553 | return array_keys($_SESSION); |
| 4287 | 4554 | } |
| 4555 | + |
|
| 4556 | + /** |
|
| 4557 | + * @param string $key |
|
| 4558 | + */ |
|
| 4288 | 4559 | public function itemAt($key) |
| 4289 | 4560 | { |
| 4290 | 4561 | return isset($_SESSION[$key]) ? $_SESSION[$key] : null; |
| 4291 | 4562 | } |
| 4563 | + |
|
| 4564 | + /** |
|
| 4565 | + * @param string $key |
|
| 4566 | + */ |
|
| 4292 | 4567 | public function add($key,$value) |
| 4293 | 4568 | { |
| 4294 | 4569 | $_SESSION[$key]=$value; |
@@ -4395,6 +4670,10 @@ discard block |
||
| 4395 | 4670 | { |
| 4396 | 4671 | return $this->_caseSensitive; |
| 4397 | 4672 | } |
| 4673 | + |
|
| 4674 | + /** |
|
| 4675 | + * @param boolean $value |
|
| 4676 | + */ |
|
| 4398 | 4677 | public function setCaseSensitive($value) |
| 4399 | 4678 | { |
| 4400 | 4679 | $this->_caseSensitive=TPropertyValue::ensureBoolean($value); |
@@ -4407,6 +4686,10 @@ discard block |
||
| 4407 | 4686 | { |
| 4408 | 4687 | parent::add($this->_caseSensitive?$key:strtolower($key),$value); |
| 4409 | 4688 | } |
| 4689 | + |
|
| 4690 | + /** |
|
| 4691 | + * @param string $key |
|
| 4692 | + */ |
|
| 4410 | 4693 | public function remove($key) |
| 4411 | 4694 | { |
| 4412 | 4695 | return parent::remove($this->_caseSensitive?$key:strtolower($key)); |
@@ -4557,6 +4840,10 @@ discard block |
||
| 4557 | 4840 | } |
| 4558 | 4841 | return $this->_page; |
| 4559 | 4842 | } |
| 4843 | + |
|
| 4844 | + /** |
|
| 4845 | + * @param TPage $page |
|
| 4846 | + */ |
|
| 4560 | 4847 | public function setPage($page) |
| 4561 | 4848 | { |
| 4562 | 4849 | $this->_page=$page; |
@@ -4700,6 +4987,10 @@ discard block |
||
| 4700 | 4987 | else |
| 4701 | 4988 | return $this->getViewState('Visible',true); |
| 4702 | 4989 | } |
| 4990 | + |
|
| 4991 | + /** |
|
| 4992 | + * @param boolean $value |
|
| 4993 | + */ |
|
| 4703 | 4994 | public function setVisible($value) |
| 4704 | 4995 | { |
| 4705 | 4996 | $this->setViewState('Visible',TPropertyValue::ensureBoolean($value),true); |
@@ -4738,6 +5029,10 @@ discard block |
||
| 4738 | 5029 | return $attributes; |
| 4739 | 5030 | } |
| 4740 | 5031 | } |
| 5032 | + |
|
| 5033 | + /** |
|
| 5034 | + * @param string $name |
|
| 5035 | + */ |
|
| 4741 | 5036 | public function hasAttribute($name) |
| 4742 | 5037 | { |
| 4743 | 5038 | if($attributes=$this->getViewState('Attributes',null)) |
@@ -4745,6 +5040,10 @@ discard block |
||
| 4745 | 5040 | else |
| 4746 | 5041 | return false; |
| 4747 | 5042 | } |
| 5043 | + |
|
| 5044 | + /** |
|
| 5045 | + * @param string $name |
|
| 5046 | + */ |
|
| 4748 | 5047 | public function getAttribute($name) |
| 4749 | 5048 | { |
| 4750 | 5049 | if($attributes=$this->getViewState('Attributes',null)) |
@@ -4752,6 +5051,10 @@ discard block |
||
| 4752 | 5051 | else |
| 4753 | 5052 | return null; |
| 4754 | 5053 | } |
| 5054 | + |
|
| 5055 | + /** |
|
| 5056 | + * @param string $name |
|
| 5057 | + */ |
|
| 4755 | 5058 | public function setAttribute($name,$value) |
| 4756 | 5059 | { |
| 4757 | 5060 | $this->getAttributes()->add($name,$value); |
@@ -4775,6 +5078,10 @@ discard block |
||
| 4775 | 5078 | else |
| 4776 | 5079 | return !($this->_flags & self::IS_DISABLE_VIEWSTATE); |
| 4777 | 5080 | } |
| 5081 | + |
|
| 5082 | + /** |
|
| 5083 | + * @param boolean $value |
|
| 5084 | + */ |
|
| 4778 | 5085 | public function setEnableViewState($value) |
| 4779 | 5086 | { |
| 4780 | 5087 | if(TPropertyValue::ensureBoolean($value)) |
@@ -4782,10 +5089,20 @@ discard block |
||
| 4782 | 5089 | else |
| 4783 | 5090 | $this->_flags |= self::IS_DISABLE_VIEWSTATE; |
| 4784 | 5091 | } |
| 5092 | + |
|
| 5093 | + /** |
|
| 5094 | + * @param string $key |
|
| 5095 | + * @param integer $defaultValue |
|
| 5096 | + */ |
|
| 4785 | 5097 | protected function getControlState($key,$defaultValue=null) |
| 4786 | 5098 | { |
| 4787 | 5099 | return isset($this->_rf[self::RF_CONTROLSTATE][$key])?$this->_rf[self::RF_CONTROLSTATE][$key]:$defaultValue; |
| 4788 | 5100 | } |
| 5101 | + |
|
| 5102 | + /** |
|
| 5103 | + * @param string $key |
|
| 5104 | + * @param integer $defaultValue |
|
| 5105 | + */ |
|
| 4789 | 5106 | protected function setControlState($key,$value,$defaultValue=null) |
| 4790 | 5107 | { |
| 4791 | 5108 | if($value===$defaultValue) |
@@ -4797,6 +5114,10 @@ discard block |
||
| 4797 | 5114 | { |
| 4798 | 5115 | unset($this->_rf[self::RF_CONTROLSTATE][$key]); |
| 4799 | 5116 | } |
| 5117 | + |
|
| 5118 | + /** |
|
| 5119 | + * @param boolean $enabled |
|
| 5120 | + */ |
|
| 4800 | 5121 | public function trackViewState($enabled) |
| 4801 | 5122 | { |
| 4802 | 5123 | $this->_trackViewState=TPropertyValue::ensureBoolean($enabled); |
@@ -4814,6 +5135,10 @@ discard block |
||
| 4814 | 5135 | else |
| 4815 | 5136 | return $defaultValue; |
| 4816 | 5137 | } |
| 5138 | + |
|
| 5139 | + /** |
|
| 5140 | + * @param string $key |
|
| 5141 | + */ |
|
| 4817 | 5142 | public function setViewState($key,$value,$defaultValue=null) |
| 4818 | 5143 | { |
| 4819 | 5144 | if($this->_trackViewState) |
@@ -4833,6 +5158,10 @@ discard block |
||
| 4833 | 5158 | $this->_tempState[$key]=$value; |
| 4834 | 5159 | } |
| 4835 | 5160 | } |
| 5161 | + |
|
| 5162 | + /** |
|
| 5163 | + * @param string $key |
|
| 5164 | + */ |
|
| 4836 | 5165 | public function clearViewState($key) |
| 4837 | 5166 | { |
| 4838 | 5167 | unset($this->_viewState[$key]); |
@@ -4889,6 +5218,10 @@ discard block |
||
| 4889 | 5218 | { |
| 4890 | 5219 | return ($this->_flags & self::IS_CHILD_CREATED)!==0; |
| 4891 | 5220 | } |
| 5221 | + |
|
| 5222 | + /** |
|
| 5223 | + * @param boolean $value |
|
| 5224 | + */ |
|
| 4892 | 5225 | final protected function setChildControlsCreated($value) |
| 4893 | 5226 | { |
| 4894 | 5227 | if($value) |
@@ -4948,6 +5281,10 @@ discard block |
||
| 4948 | 5281 | return null; |
| 4949 | 5282 | } |
| 4950 | 5283 | } |
| 5284 | + |
|
| 5285 | + /** |
|
| 5286 | + * @param string $type |
|
| 5287 | + */ |
|
| 4951 | 5288 | public function findControlsByType($type,$strict=true) |
| 4952 | 5289 | { |
| 4953 | 5290 | $controls=array(); |
@@ -4985,6 +5322,10 @@ discard block |
||
| 4985 | 5322 | unset($this->_rf[self::RF_NAMED_CONTROLS_ID]); |
| 4986 | 5323 | $this->clearNameTable(); |
| 4987 | 5324 | } |
| 5325 | + |
|
| 5326 | + /** |
|
| 5327 | + * @param TCheckBox $object |
|
| 5328 | + */ |
|
| 4988 | 5329 | public function registerObject($name,$object) |
| 4989 | 5330 | { |
| 4990 | 5331 | if(isset($this->_rf[self::RF_NAMED_OBJECTS][$name])) |
@@ -5019,6 +5360,10 @@ discard block |
||
| 5019 | 5360 | { |
| 5020 | 5361 | return $this->getControlStage() >= self::CS_PRERENDERED; |
| 5021 | 5362 | } |
| 5363 | + |
|
| 5364 | + /** |
|
| 5365 | + * @param string $name |
|
| 5366 | + */ |
|
| 5022 | 5367 | public function getRegisteredObject($name) |
| 5023 | 5368 | { |
| 5024 | 5369 | return isset($this->_rf[self::RF_NAMED_OBJECTS][$name])?$this->_rf[self::RF_NAMED_OBJECTS][$name]:null; |
@@ -5042,6 +5387,10 @@ discard block |
||
| 5042 | 5387 | $control=$control->_parent; |
| 5043 | 5388 | return $control===$ancestor; |
| 5044 | 5389 | } |
| 5390 | + |
|
| 5391 | + /** |
|
| 5392 | + * @param TControl $control |
|
| 5393 | + */ |
|
| 5045 | 5394 | public function addedControl($control) |
| 5046 | 5395 | { |
| 5047 | 5396 | if($control->_parent) |
@@ -5080,6 +5429,10 @@ discard block |
||
| 5080 | 5429 | } |
| 5081 | 5430 | } |
| 5082 | 5431 | } |
| 5432 | + |
|
| 5433 | + /** |
|
| 5434 | + * @param TControl $control |
|
| 5435 | + */ |
|
| 5083 | 5436 | public function removedControl($control) |
| 5084 | 5437 | { |
| 5085 | 5438 | if($this->_namingContainer) |
@@ -5225,6 +5578,10 @@ discard block |
||
| 5225 | 5578 | $rootControl=(($page=$this->getPage())===null)?$this:$page; |
| 5226 | 5579 | $rootControl->broadcastEventInternal($name,$sender,new TBroadcastEventParameter($name,$param)); |
| 5227 | 5580 | } |
| 5581 | + |
|
| 5582 | + /** |
|
| 5583 | + * @param TBroadcastEventParameter $param |
|
| 5584 | + */ |
|
| 5228 | 5585 | private function broadcastEventInternal($name,$sender,$param) |
| 5229 | 5586 | { |
| 5230 | 5587 | if($this->hasEvent($name)) |
@@ -5370,6 +5727,10 @@ discard block |
||
| 5370 | 5727 | else if($this->_flags & self::IS_STYLESHEET_APPLIED) |
| 5371 | 5728 | throw new TInvalidOperationException('control_stylesheet_applied',get_class($this)); |
| 5372 | 5729 | } |
| 5730 | + |
|
| 5731 | + /** |
|
| 5732 | + * @param boolean $recursive |
|
| 5733 | + */ |
|
| 5373 | 5734 | private function clearCachedUniqueID($recursive) |
| 5374 | 5735 | { |
| 5375 | 5736 | if($recursive && $this->_uid!==null && isset($this->_rf[self::RF_CONTROLS])) |
@@ -5393,6 +5754,10 @@ discard block |
||
| 5393 | 5754 | { |
| 5394 | 5755 | unset($this->_rf[self::RF_NAMED_CONTROLS]); |
| 5395 | 5756 | } |
| 5757 | + |
|
| 5758 | + /** |
|
| 5759 | + * @param TControl $container |
|
| 5760 | + */ |
|
| 5396 | 5761 | private function fillNameTable($container,$controls) |
| 5397 | 5762 | { |
| 5398 | 5763 | foreach($controls as $control) |
@@ -5465,11 +5830,18 @@ discard block |
||
| 5465 | 5830 | } |
| 5466 | 5831 | interface IPostBackEventHandler |
| 5467 | 5832 | { |
| 5833 | + /** |
|
| 5834 | + * @return void |
|
| 5835 | + */ |
|
| 5468 | 5836 | public function raisePostBackEvent($param); |
| 5469 | 5837 | } |
| 5470 | 5838 | interface IPostBackDataHandler |
| 5471 | 5839 | { |
| 5472 | 5840 | public function loadPostData($key,$values); |
| 5841 | + |
|
| 5842 | + /** |
|
| 5843 | + * @return void |
|
| 5844 | + */ |
|
| 5473 | 5845 | public function raisePostDataChangedEvent(); |
| 5474 | 5846 | public function getDataChanged(); |
| 5475 | 5847 | } |
@@ -5477,8 +5849,16 @@ discard block |
||
| 5477 | 5849 | { |
| 5478 | 5850 | public function validate(); |
| 5479 | 5851 | public function getIsValid(); |
| 5852 | + |
|
| 5853 | + /** |
|
| 5854 | + * @return void |
|
| 5855 | + */ |
|
| 5480 | 5856 | public function setIsValid($value); |
| 5481 | 5857 | public function getErrorMessage(); |
| 5858 | + |
|
| 5859 | + /** |
|
| 5860 | + * @return void |
|
| 5861 | + */ |
|
| 5482 | 5862 | public function setErrorMessage($value); |
| 5483 | 5863 | } |
| 5484 | 5864 | interface IValidatable |
@@ -5493,26 +5873,66 @@ discard block |
||
| 5493 | 5873 | } |
| 5494 | 5874 | interface ITheme |
| 5495 | 5875 | { |
| 5876 | + /** |
|
| 5877 | + * @return boolean |
|
| 5878 | + */ |
|
| 5496 | 5879 | public function applySkin($control); |
| 5497 | 5880 | } |
| 5498 | 5881 | interface ITemplate |
| 5499 | 5882 | { |
| 5883 | + /** |
|
| 5884 | + * @return void |
|
| 5885 | + */ |
|
| 5500 | 5886 | public function instantiateIn($parent); |
| 5501 | 5887 | } |
| 5502 | 5888 | interface IButtonControl |
| 5503 | 5889 | { |
| 5504 | 5890 | public function getText(); |
| 5891 | + |
|
| 5892 | + /** |
|
| 5893 | + * @param string $value |
|
| 5894 | + * |
|
| 5895 | + * @return void |
|
| 5896 | + */ |
|
| 5505 | 5897 | public function setText($value); |
| 5506 | 5898 | public function getCausesValidation(); |
| 5899 | + |
|
| 5900 | + /** |
|
| 5901 | + * @return void |
|
| 5902 | + */ |
|
| 5507 | 5903 | public function setCausesValidation($value); |
| 5508 | 5904 | public function getCommandName(); |
| 5905 | + |
|
| 5906 | + /** |
|
| 5907 | + * @return void |
|
| 5908 | + */ |
|
| 5509 | 5909 | public function setCommandName($value); |
| 5510 | 5910 | public function getCommandParameter(); |
| 5911 | + |
|
| 5912 | + /** |
|
| 5913 | + * @return void |
|
| 5914 | + */ |
|
| 5511 | 5915 | public function setCommandParameter($value); |
| 5512 | 5916 | public function getValidationGroup(); |
| 5917 | + |
|
| 5918 | + /** |
|
| 5919 | + * @return void |
|
| 5920 | + */ |
|
| 5513 | 5921 | public function setValidationGroup($value); |
| 5922 | + |
|
| 5923 | + /** |
|
| 5924 | + * @return void |
|
| 5925 | + */ |
|
| 5514 | 5926 | public function onClick($param); |
| 5927 | + |
|
| 5928 | + /** |
|
| 5929 | + * @return void |
|
| 5930 | + */ |
|
| 5515 | 5931 | public function onCommand($param); |
| 5932 | + |
|
| 5933 | + /** |
|
| 5934 | + * @return void |
|
| 5935 | + */ |
|
| 5516 | 5936 | public function setIsDefaultButton($value); |
| 5517 | 5937 | public function getIsDefaultButton(); |
| 5518 | 5938 | } |
@@ -5970,6 +6390,10 @@ discard block |
||
| 5970 | 6390 | { |
| 5971 | 6391 | return $this->_customStyle===null?'':$this->_customStyle; |
| 5972 | 6392 | } |
| 6393 | + |
|
| 6394 | + /** |
|
| 6395 | + * @param string $value |
|
| 6396 | + */ |
|
| 5973 | 6397 | public function setCustomStyle($value) |
| 5974 | 6398 | { |
| 5975 | 6399 | $this->_customStyle=$value; |
@@ -5978,6 +6402,11 @@ discard block |
||
| 5978 | 6402 | { |
| 5979 | 6403 | return isset($this->_fields[$name])?$this->_fields[$name]:''; |
| 5980 | 6404 | } |
| 6405 | + |
|
| 6406 | + /** |
|
| 6407 | + * @param string $name |
|
| 6408 | + * @param string $value |
|
| 6409 | + */ |
|
| 5981 | 6410 | public function setStyleField($name,$value) |
| 5982 | 6411 | { |
| 5983 | 6412 | $this->_fields[$name]=$value; |
@@ -6473,6 +6902,10 @@ discard block |
||
| 6473 | 6902 | { |
| 6474 | 6903 | private $_ensureid=false; |
| 6475 | 6904 | protected $_decorator; |
| 6905 | + |
|
| 6906 | + /** |
|
| 6907 | + * @param boolean $value |
|
| 6908 | + */ |
|
| 6476 | 6909 | public function setEnsureId($value) |
| 6477 | 6910 | { |
| 6478 | 6911 | $this->_ensureid |= TPropertyValue::ensureBoolean($value); |
@@ -6562,6 +6995,10 @@ discard block |
||
| 6562 | 6995 | else |
| 6563 | 6996 | return ''; |
| 6564 | 6997 | } |
| 6998 | + |
|
| 6999 | + /** |
|
| 7000 | + * @param string $value |
|
| 7001 | + */ |
|
| 6565 | 7002 | public function setForeColor($value) |
| 6566 | 7003 | { |
| 6567 | 7004 | $this->getStyle()->setForeColor($value); |
@@ -6592,6 +7029,10 @@ discard block |
||
| 6592 | 7029 | else |
| 6593 | 7030 | return ''; |
| 6594 | 7031 | } |
| 7032 | + |
|
| 7033 | + /** |
|
| 7034 | + * @param string $value |
|
| 7035 | + */ |
|
| 6595 | 7036 | public function setHeight($value) |
| 6596 | 7037 | { |
| 6597 | 7038 | $this->getStyle()->setHeight($value); |
@@ -6653,6 +7094,10 @@ discard block |
||
| 6653 | 7094 | else |
| 6654 | 7095 | return ''; |
| 6655 | 7096 | } |
| 7097 | + |
|
| 7098 | + /** |
|
| 7099 | + * @param string $value |
|
| 7100 | + */ |
|
| 6656 | 7101 | public function setWidth($value) |
| 6657 | 7102 | { |
| 6658 | 7103 | $this->getStyle()->setWidth($value); |
@@ -6780,6 +7225,10 @@ discard block |
||
| 6780 | 7225 | $tpl->instantiateIn($this); |
| 6781 | 7226 | } |
| 6782 | 7227 | } |
| 7228 | + |
|
| 7229 | + /** |
|
| 7230 | + * @param string $id |
|
| 7231 | + */ |
|
| 6783 | 7232 | public function registerContent($id,TContent $object) |
| 6784 | 7233 | { |
| 6785 | 7234 | if(isset($this->_contents[$id])) |
@@ -6787,6 +7236,10 @@ discard block |
||
| 6787 | 7236 | else |
| 6788 | 7237 | $this->_contents[$id]=$object; |
| 6789 | 7238 | } |
| 7239 | + |
|
| 7240 | + /** |
|
| 7241 | + * @param string $id |
|
| 7242 | + */ |
|
| 6790 | 7243 | public function registerContentPlaceHolder($id,TContentPlaceHolder $object) |
| 6791 | 7244 | { |
| 6792 | 7245 | if(isset($this->_placeholders[$id])) |
@@ -6983,6 +7436,10 @@ discard block |
||
| 6983 | 7436 | { |
| 6984 | 7437 | return $this->getViewState('Enctype',''); |
| 6985 | 7438 | } |
| 7439 | + |
|
| 7440 | + /** |
|
| 7441 | + * @param string $value |
|
| 7442 | + */ |
|
| 6986 | 7443 | public function setEnctype($value) |
| 6987 | 7444 | { |
| 6988 | 7445 | $this->setViewState('Enctype',$value,''); |
@@ -7102,6 +7559,10 @@ discard block |
||
| 7102 | 7559 | $scripts = array_unique($scripts); |
| 7103 | 7560 | return $scripts; |
| 7104 | 7561 | } |
| 7562 | + |
|
| 7563 | + /** |
|
| 7564 | + * @param string $base |
|
| 7565 | + */ |
|
| 7105 | 7566 | protected function getPackagePathUrl($base) |
| 7106 | 7567 | { |
| 7107 | 7568 | $assets = Prado::getApplication()->getAssetManager(); |
@@ -7251,6 +7712,11 @@ discard block |
||
| 7251 | 7712 | $params=func_get_args(); |
| 7252 | 7713 | $this->_page->registerCachingAction('Page.ClientScript','registerEndScript',$params); |
| 7253 | 7714 | } |
| 7715 | + |
|
| 7716 | + /** |
|
| 7717 | + * @param string $name |
|
| 7718 | + * @param string $value |
|
| 7719 | + */ |
|
| 7254 | 7720 | public function registerHiddenField($name,$value) |
| 7255 | 7721 | { |
| 7256 | 7722 | $this->_hiddenFields[$name]=$value; |
@@ -7388,6 +7854,10 @@ discard block |
||
| 7388 | 7854 | $this->renderAllPendingScriptFiles($writer); |
| 7389 | 7855 | } |
| 7390 | 7856 | } |
| 7857 | + |
|
| 7858 | + /** |
|
| 7859 | + * @param boolean $initial |
|
| 7860 | + */ |
|
| 7391 | 7861 | protected function renderHiddenFieldsInt($writer, $initial) |
| 7392 | 7862 | { |
| 7393 | 7863 | if ($initial) $this->_renderedHiddenFields = array(); |
@@ -7423,12 +7893,20 @@ discard block |
||
| 7423 | 7893 | abstract class TClientSideOptions extends TComponent |
| 7424 | 7894 | { |
| 7425 | 7895 | private $_options; |
| 7896 | + |
|
| 7897 | + /** |
|
| 7898 | + * @param string $name |
|
| 7899 | + */ |
|
| 7426 | 7900 | protected function setFunction($name, $code) |
| 7427 | 7901 | { |
| 7428 | 7902 | if(!TJavaScript::isJsLiteral($code)) |
| 7429 | 7903 | $code = TJavaScript::quoteJsLiteral($this->ensureFunction($code)); |
| 7430 | 7904 | $this->setOption($name, $code); |
| 7431 | 7905 | } |
| 7906 | + |
|
| 7907 | + /** |
|
| 7908 | + * @param string $name |
|
| 7909 | + */ |
|
| 7432 | 7910 | protected function getOption($name) |
| 7433 | 7911 | { |
| 7434 | 7912 | if ($this->_options) |
@@ -7551,6 +8029,10 @@ discard block |
||
| 7551 | 8029 | $this->renderControl($writer); |
| 7552 | 8030 | $this->unloadRecursive(); |
| 7553 | 8031 | } |
| 8032 | + |
|
| 8033 | + /** |
|
| 8034 | + * @param string $enc |
|
| 8035 | + */ |
|
| 7554 | 8036 | protected static function decodeUTF8($data, $enc) |
| 7555 | 8037 | { |
| 7556 | 8038 | if(is_array($data)) |
@@ -7633,6 +8115,10 @@ discard block |
||
| 7633 | 8115 | else |
| 7634 | 8116 | throw new TInvalidOperationException('page_form_duplicated'); |
| 7635 | 8117 | } |
| 8118 | + |
|
| 8119 | + /** |
|
| 8120 | + * @param string $validationGroup |
|
| 8121 | + */ |
|
| 7636 | 8122 | public function getValidators($validationGroup=null) |
| 7637 | 8123 | { |
| 7638 | 8124 | if(!$this->_validators) |
@@ -7703,6 +8189,10 @@ discard block |
||
| 7703 | 8189 | { |
| 7704 | 8190 | $this->_styleSheet=empty($value)?null:$value; |
| 7705 | 8191 | } |
| 8192 | + |
|
| 8193 | + /** |
|
| 8194 | + * @param TControl $control |
|
| 8195 | + */ |
|
| 7706 | 8196 | public function applyControlSkin($control) |
| 7707 | 8197 | { |
| 7708 | 8198 | if(($theme=$this->getTheme())!==null) |
@@ -7850,6 +8340,10 @@ discard block |
||
| 7850 | 8340 | { |
| 7851 | 8341 | $this->_postBackEventParameter=$value; |
| 7852 | 8342 | } |
| 8343 | + |
|
| 8344 | + /** |
|
| 8345 | + * @param boolean $beforeLoad |
|
| 8346 | + */ |
|
| 7853 | 8347 | protected function processPostData($postData,$beforeLoad) |
| 7854 | 8348 | { |
| 7855 | 8349 | $this->_isLoadingPostData=true; |
@@ -7938,6 +8432,10 @@ discard block |
||
| 7938 | 8432 | $this->getClientScript()->registerFocusControl($lastFocus); |
| 7939 | 8433 | $this->_inFormRender=false; |
| 7940 | 8434 | } |
| 8435 | + |
|
| 8436 | + /** |
|
| 8437 | + * @param TControl $value |
|
| 8438 | + */ |
|
| 7941 | 8439 | public function setFocus($value) |
| 7942 | 8440 | { |
| 7943 | 8441 | $this->_focus=$value; |
@@ -7983,6 +8481,10 @@ discard block |
||
| 7983 | 8481 | { |
| 7984 | 8482 | return $this->_clientState; |
| 7985 | 8483 | } |
| 8484 | + |
|
| 8485 | + /** |
|
| 8486 | + * @param string $state |
|
| 8487 | + */ |
|
| 7986 | 8488 | public function setClientState($state) |
| 7987 | 8489 | { |
| 7988 | 8490 | $this->_clientState=$state; |
@@ -8042,6 +8544,11 @@ discard block |
||
| 8042 | 8544 | { |
| 8043 | 8545 | $this->_pagePath=$value; |
| 8044 | 8546 | } |
| 8547 | + |
|
| 8548 | + /** |
|
| 8549 | + * @param string $context |
|
| 8550 | + * @param string $funcName |
|
| 8551 | + */ |
|
| 8045 | 8552 | public function registerCachingAction($context,$funcName,$funcParams) |
| 8046 | 8553 | { |
| 8047 | 8554 | if($this->_cachingStack) |
@@ -8064,13 +8571,27 @@ discard block |
||
| 8064 | 8571 | } |
| 8065 | 8572 | interface IPageStatePersister |
| 8066 | 8573 | { |
| 8574 | + /** |
|
| 8575 | + * @return TPage |
|
| 8576 | + */ |
|
| 8067 | 8577 | public function getPage(); |
| 8578 | + |
|
| 8579 | + /** |
|
| 8580 | + * @return void |
|
| 8581 | + */ |
|
| 8068 | 8582 | public function setPage(TPage $page); |
| 8583 | + |
|
| 8584 | + /** |
|
| 8585 | + * @return void |
|
| 8586 | + */ |
|
| 8069 | 8587 | public function save($state); |
| 8070 | 8588 | public function load(); |
| 8071 | 8589 | } |
| 8072 | 8590 | class TPageStateFormatter |
| 8073 | 8591 | { |
| 8592 | + /** |
|
| 8593 | + * @param TPage $page |
|
| 8594 | + */ |
|
| 8074 | 8595 | public static function serialize($page,$data) |
| 8075 | 8596 | { |
| 8076 | 8597 | $sm=$page->getApplication()->getSecurityManager(); |
@@ -8084,6 +8605,10 @@ discard block |
||
| 8084 | 8605 | $str=$sm->encrypt($str); |
| 8085 | 8606 | return base64_encode($str); |
| 8086 | 8607 | } |
| 8608 | + |
|
| 8609 | + /** |
|
| 8610 | + * @param TPage $page |
|
| 8611 | + */ |
|
| 8087 | 8612 | public static function unserialize($page,$data) |
| 8088 | 8613 | { |
| 8089 | 8614 | $str=base64_decode($data); |
@@ -8277,6 +8802,10 @@ discard block |
||
| 8277 | 8802 | { |
| 8278 | 8803 | $this->_cacheModuleID=$value; |
| 8279 | 8804 | } |
| 8805 | + |
|
| 8806 | + /** |
|
| 8807 | + * @param string $value |
|
| 8808 | + */ |
|
| 8280 | 8809 | public function setCacheKeyPrefix($value) |
| 8281 | 8810 | { |
| 8282 | 8811 | $this->_keyPrefix=$value; |
@@ -8327,10 +8856,18 @@ discard block |
||
| 8327 | 8856 | { |
| 8328 | 8857 | $this->_cachePostBack=TPropertyValue::ensureBoolean($value); |
| 8329 | 8858 | } |
| 8859 | + |
|
| 8860 | + /** |
|
| 8861 | + * @param TOutputCacheCheckDependencyEventParameter $param |
|
| 8862 | + */ |
|
| 8330 | 8863 | public function onCheckDependency($param) |
| 8331 | 8864 | { |
| 8332 | 8865 | $this->raiseEvent('OnCheckDependency',$this,$param); |
| 8333 | 8866 | } |
| 8867 | + |
|
| 8868 | + /** |
|
| 8869 | + * @param TOutputCacheCalculateKeyEventParameter $param |
|
| 8870 | + */ |
|
| 8334 | 8871 | public function onCalculateKey($param) |
| 8335 | 8872 | { |
| 8336 | 8873 | $this->raiseEvent('OnCalculateKey',$this,$param); |
@@ -8422,6 +8959,10 @@ discard block |
||
| 8422 | 8959 | $tplFile=dirname($class->getFileName()).DIRECTORY_SEPARATOR.$className.self::TEMPLATE_FILE_EXT; |
| 8423 | 8960 | return $this->getTemplateByFileName($tplFile); |
| 8424 | 8961 | } |
| 8962 | + |
|
| 8963 | + /** |
|
| 8964 | + * @param string $fileName |
|
| 8965 | + */ |
|
| 8425 | 8966 | public function getTemplateByFileName($fileName) |
| 8426 | 8967 | { |
| 8427 | 8968 | if(($fileName=$this->getLocalizedTemplate($fileName))!==null) |
@@ -8461,6 +9002,10 @@ discard block |
||
| 8461 | 9002 | else |
| 8462 | 9003 | return null; |
| 8463 | 9004 | } |
| 9005 | + |
|
| 9006 | + /** |
|
| 9007 | + * @return string |
|
| 9008 | + */ |
|
| 8464 | 9009 | protected function getLocalizedTemplate($filename) |
| 8465 | 9010 | { |
| 8466 | 9011 | if(($app=$this->getApplication()->getGlobalization(false))===null) |
@@ -8626,12 +9171,20 @@ discard block |
||
| 8626 | 9171 | $parentControl->addParsedObject($control); |
| 8627 | 9172 | } |
| 8628 | 9173 | } |
| 9174 | + |
|
| 9175 | + /** |
|
| 9176 | + * @param TControl $control |
|
| 9177 | + */ |
|
| 8629 | 9178 | protected function configureControl($control,$name,$value) |
| 8630 | 9179 | { |
| 8631 | 9180 | if(strncasecmp($name,'on',2)===0) $this->configureEvent($control,$name,$value,$control); |
| 8632 | 9181 | else if(($pos=strrpos($name,'.'))===false) $this->configureProperty($control,$name,$value); |
| 8633 | 9182 | else $this->configureSubProperty($control,$name,$value); |
| 8634 | 9183 | } |
| 9184 | + |
|
| 9185 | + /** |
|
| 9186 | + * @param TComponent $component |
|
| 9187 | + */ |
|
| 8635 | 9188 | protected function configureComponent($component,$name,$value) |
| 8636 | 9189 | { |
| 8637 | 9190 | if(strpos($name,'.')===false) $this->configureProperty($component,$name,$value); |
@@ -8941,6 +9494,11 @@ discard block |
||
| 8941 | 9494 | $tpl=$objects; |
| 8942 | 9495 | return $objects; |
| 8943 | 9496 | } |
| 9497 | + |
|
| 9498 | + /** |
|
| 9499 | + * @param string $str |
|
| 9500 | + * @param string $offset |
|
| 9501 | + */ |
|
| 8944 | 9502 | protected function parseAttributes($str,$offset) |
| 8945 | 9503 | { |
| 8946 | 9504 | if($str==='') |
@@ -8972,11 +9530,19 @@ discard block |
||
| 8972 | 9530 | } |
| 8973 | 9531 | return $attributes; |
| 8974 | 9532 | } |
| 9533 | + |
|
| 9534 | + /** |
|
| 9535 | + * @param string $content |
|
| 9536 | + */ |
|
| 8975 | 9537 | protected function parseTemplateProperty($content,$offset) |
| 8976 | 9538 | { |
| 8977 | 9539 | $line=$this->_startingLine+count(explode("\n",substr($this->_content,0,$offset)))-1; |
| 8978 | 9540 | return array(self::CONFIG_TEMPLATE,new TTemplate($content,$this->_contextPath,$this->_tplFile,$line,false)); |
| 8979 | 9541 | } |
| 9542 | + |
|
| 9543 | + /** |
|
| 9544 | + * @param string $value |
|
| 9545 | + */ |
|
| 8980 | 9546 | protected function parseAttribute($value) |
| 8981 | 9547 | { |
| 8982 | 9548 | if(($n=preg_match_all('/<%[#=].*?%>/msS',$value,$matches,PREG_OFFSET_CAPTURE))>0) |
@@ -9099,6 +9665,11 @@ discard block |
||
| 9099 | 9665 | { |
| 9100 | 9666 | return $this->_includedFiles; |
| 9101 | 9667 | } |
| 9668 | + |
|
| 9669 | + /** |
|
| 9670 | + * @param Exception $e |
|
| 9671 | + * @param integer $line |
|
| 9672 | + */ |
|
| 9102 | 9673 | protected function handleException($e,$line,$input=null) |
| 9103 | 9674 | { |
| 9104 | 9675 | $srcFile=$this->_tplFile; |
@@ -9155,6 +9726,10 @@ discard block |
||
| 9155 | 9726 | } |
| 9156 | 9727 | return $input; |
| 9157 | 9728 | } |
| 9729 | + |
|
| 9730 | + /** |
|
| 9731 | + * @param string $method |
|
| 9732 | + */ |
|
| 9158 | 9733 | protected function isClassBehaviorMethod(ReflectionClass $class,$method) |
| 9159 | 9734 | { |
| 9160 | 9735 | $component=new ReflectionClass('TComponent'); |
@@ -9237,6 +9812,10 @@ discard block |
||
| 9237 | 9812 | throw new TInvalidDataValueException('thememanager_basepath_invalid',$value); |
| 9238 | 9813 | } |
| 9239 | 9814 | } |
| 9815 | + |
|
| 9816 | + /** |
|
| 9817 | + * @return string |
|
| 9818 | + */ |
|
| 9240 | 9819 | public function getBaseUrl() |
| 9241 | 9820 | { |
| 9242 | 9821 | if($this->_baseUrl===null) |
@@ -9635,6 +10214,10 @@ discard block |
||
| 9635 | 10214 | { |
| 9636 | 10215 | return $this->_defaultPage; |
| 9637 | 10216 | } |
| 10217 | + |
|
| 10218 | + /** |
|
| 10219 | + * @param string $value |
|
| 10220 | + */ |
|
| 9638 | 10221 | public function setDefaultPage($value) |
| 9639 | 10222 | { |
| 9640 | 10223 | if($this->_initialized) |
@@ -9723,6 +10306,10 @@ discard block |
||
| 9723 | 10306 | $page->setSubProperty($name,$value); |
| 9724 | 10307 | $page->run($this->getResponse()->createHtmlWriter()); |
| 9725 | 10308 | } |
| 10309 | + |
|
| 10310 | + /** |
|
| 10311 | + * @param string $pagePath |
|
| 10312 | + */ |
|
| 9726 | 10313 | public function constructUrl($pagePath,$getParams=null,$encodeAmpersand=true,$encodeGetItems=true) |
| 9727 | 10314 | { |
| 9728 | 10315 | return $this->getRequest()->constructUrl($this->getID(),$pagePath,$getParams,$encodeAmpersand,$encodeGetItems); |
@@ -9794,11 +10381,20 @@ discard block |
||
| 9794 | 10381 | throw new TConfigurationException('pageserviceconf_file_invalid',$fname); |
| 9795 | 10382 | } |
| 9796 | 10383 | } |
| 10384 | + |
|
| 10385 | + /** |
|
| 10386 | + * @param string $configPath |
|
| 10387 | + */ |
|
| 9797 | 10388 | public function loadFromPhp($config,$configPath,$configPagePath) |
| 9798 | 10389 | { |
| 9799 | 10390 | $this->loadApplicationConfigurationFromPhp($config,$configPath); |
| 9800 | 10391 | $this->loadPageConfigurationFromPhp($config,$configPath,$configPagePath); |
| 9801 | 10392 | } |
| 10393 | + |
|
| 10394 | + /** |
|
| 10395 | + * @param TXmlDocument $dom |
|
| 10396 | + * @param string $configPath |
|
| 10397 | + */ |
|
| 9802 | 10398 | public function loadFromXml($dom,$configPath,$configPagePath) |
| 9803 | 10399 | { |
| 9804 | 10400 | $this->loadApplicationConfigurationFromXml($dom,$configPath); |
@@ -10055,6 +10651,10 @@ discard block |
||
| 10055 | 10651 | else |
| 10056 | 10652 | return $this->_basePath.DIRECTORY_SEPARATOR.$this->hash($path); |
| 10057 | 10653 | } |
| 10654 | + |
|
| 10655 | + /** |
|
| 10656 | + * @param string $path |
|
| 10657 | + */ |
|
| 10058 | 10658 | public function getPublishedUrl($path) |
| 10059 | 10659 | { |
| 10060 | 10660 | $path=realpath($path); |
@@ -10063,10 +10663,19 @@ discard block |
||
| 10063 | 10663 | else |
| 10064 | 10664 | return $this->_baseUrl.'/'.$this->hash($path); |
| 10065 | 10665 | } |
| 10666 | + |
|
| 10667 | + /** |
|
| 10668 | + * @param string $dir |
|
| 10669 | + */ |
|
| 10066 | 10670 | protected function hash($dir) |
| 10067 | 10671 | { |
| 10068 | 10672 | return sprintf('%x',crc32($dir.Prado::getVersion())); |
| 10069 | 10673 | } |
| 10674 | + |
|
| 10675 | + /** |
|
| 10676 | + * @param string $src |
|
| 10677 | + * @param string $dst |
|
| 10678 | + */ |
|
| 10070 | 10679 | protected function copyFile($src,$dst) |
| 10071 | 10680 | { |
| 10072 | 10681 | if(!is_dir($dst)) |
@@ -10080,6 +10689,11 @@ discard block |
||
| 10080 | 10689 | @copy($src,$dstFile); |
| 10081 | 10690 | } |
| 10082 | 10691 | } |
| 10692 | + |
|
| 10693 | + /** |
|
| 10694 | + * @param string $src |
|
| 10695 | + * @param string $dst |
|
| 10696 | + */ |
|
| 10083 | 10697 | public function copyDirectory($src,$dst) |
| 10084 | 10698 | { |
| 10085 | 10699 | if(!is_dir($dst)) |
@@ -10109,6 +10723,11 @@ discard block |
||
| 10109 | 10723 | throw new TInvalidDataValueException('assetmanager_source_directory_invalid', $src); |
| 10110 | 10724 | } |
| 10111 | 10725 | } |
| 10726 | + |
|
| 10727 | + /** |
|
| 10728 | + * @param string $tarfile |
|
| 10729 | + * @param string $md5sum |
|
| 10730 | + */ |
|
| 10112 | 10731 | public function publishTarFile($tarfile, $md5sum, $checkTimestamp=false) |
| 10113 | 10732 | { |
| 10114 | 10733 | if(isset($this->_published[$md5sum])) |
@@ -10131,6 +10750,10 @@ discard block |
||
| 10131 | 10750 | return $this->_published[$md5sum]=$this->_baseUrl.'/'.$dir; |
| 10132 | 10751 | } |
| 10133 | 10752 | } |
| 10753 | + |
|
| 10754 | + /** |
|
| 10755 | + * @param string $destination |
|
| 10756 | + */ |
|
| 10134 | 10757 | protected function deployTarFile($path,$destination) |
| 10135 | 10758 | { |
| 10136 | 10759 | if(($fullpath=realpath($path))===false || !is_file($fullpath)) |
@@ -10352,6 +10975,10 @@ discard block |
||
| 10352 | 10975 | $this->_services=array($this->getPageServiceID()=>array('TPageService',array(),null)); |
| 10353 | 10976 | Prado::setPathOfAlias('Application',$this->_basePath); |
| 10354 | 10977 | } |
| 10978 | + |
|
| 10979 | + /** |
|
| 10980 | + * @param string $basePath |
|
| 10981 | + */ |
|
| 10355 | 10982 | protected function resolvePaths($basePath) |
| 10356 | 10983 | { |
| 10357 | 10984 | if(empty($basePath) || ($basePath=realpath($basePath))===false) |
@@ -10417,10 +11044,18 @@ discard block |
||
| 10417 | 11044 | { |
| 10418 | 11045 | return $this->_requestCompleted; |
| 10419 | 11046 | } |
| 11047 | + |
|
| 11048 | + /** |
|
| 11049 | + * @param integer $defaultValue |
|
| 11050 | + */ |
|
| 10420 | 11051 | public function getGlobalState($key,$defaultValue=null) |
| 10421 | 11052 | { |
| 10422 | 11053 | return isset($this->_globals[$key])?$this->_globals[$key]:$defaultValue; |
| 10423 | 11054 | } |
| 11055 | + |
|
| 11056 | + /** |
|
| 11057 | + * @param string $key |
|
| 11058 | + */ |
|
| 10424 | 11059 | public function setGlobalState($key,$value,$defaultValue=null,$forceSave=false) |
| 10425 | 11060 | { |
| 10426 | 11061 | $this->_stateChanged=true; |
@@ -10480,6 +11115,10 @@ discard block |
||
| 10480 | 11115 | { |
| 10481 | 11116 | return $this->_basePath; |
| 10482 | 11117 | } |
| 11118 | + |
|
| 11119 | + /** |
|
| 11120 | + * @param string $value |
|
| 11121 | + */ |
|
| 10483 | 11122 | public function setBasePath($value) |
| 10484 | 11123 | { |
| 10485 | 11124 | $this->_basePath=$value; |
@@ -10488,6 +11127,10 @@ discard block |
||
| 10488 | 11127 | { |
| 10489 | 11128 | return $this->_configFile; |
| 10490 | 11129 | } |
| 11130 | + |
|
| 11131 | + /** |
|
| 11132 | + * @param string $value |
|
| 11133 | + */ |
|
| 10491 | 11134 | public function setConfigurationFile($value) |
| 10492 | 11135 | { |
| 10493 | 11136 | $this->_configFile=$value; |
@@ -10496,6 +11139,10 @@ discard block |
||
| 10496 | 11139 | { |
| 10497 | 11140 | return $this->_configType; |
| 10498 | 11141 | } |
| 11142 | + |
|
| 11143 | + /** |
|
| 11144 | + * @param string $value |
|
| 11145 | + */ |
|
| 10499 | 11146 | public function setConfigurationType($value) |
| 10500 | 11147 | { |
| 10501 | 11148 | $this->_configType = $value; |
@@ -10535,6 +11182,10 @@ discard block |
||
| 10535 | 11182 | { |
| 10536 | 11183 | return $this->_runtimePath; |
| 10537 | 11184 | } |
| 11185 | + |
|
| 11186 | + /** |
|
| 11187 | + * @param string $value |
|
| 11188 | + */ |
|
| 10538 | 11189 | public function setRuntimePath($value) |
| 10539 | 11190 | { |
| 10540 | 11191 | $this->_runtimePath=$value; |
@@ -10546,6 +11197,10 @@ discard block |
||
| 10546 | 11197 | { |
| 10547 | 11198 | return $this->_service; |
| 10548 | 11199 | } |
| 11200 | + |
|
| 11201 | + /** |
|
| 11202 | + * @param IService $value |
|
| 11203 | + */ |
|
| 10549 | 11204 | public function setService($value) |
| 10550 | 11205 | { |
| 10551 | 11206 | $this->_service=$value; |
@@ -10826,6 +11481,10 @@ discard block |
||
| 10826 | 11481 | else |
| 10827 | 11482 | throw new THttpException(500,'application_service_unknown',$serviceID); |
| 10828 | 11483 | } |
| 11484 | + |
|
| 11485 | + /** |
|
| 11486 | + * @param Exception $param |
|
| 11487 | + */ |
|
| 10829 | 11488 | public function onError($param) |
| 10830 | 11489 | { |
| 10831 | 11490 | Prado::log($param->getMessage(),TLogger::ERROR,'System.TApplication'); |