@@ -34,6 +34,10 @@ discard block |
||
| 34 | 34 | protected $_visibleHover=false; |
| 35 | 35 | protected $_targetSelector; |
| 36 | 36 | |
| 37 | + /** |
|
| 38 | + * @param string $identifier |
|
| 39 | + * @param string $model |
|
| 40 | + */ |
|
| 37 | 41 | public function __construct($identifier,$model,$modelInstance=NULL) { |
| 38 | 42 | parent::__construct($identifier, $model,$modelInstance); |
| 39 | 43 | $this->_init(new InstanceViewer($identifier), "table", new HtmlTable($identifier, 0,0), false); |
@@ -58,6 +62,9 @@ discard block |
||
| 58 | 62 | return parent::run($js); |
| 59 | 63 | } |
| 60 | 64 | |
| 65 | + /** |
|
| 66 | + * @param string $op |
|
| 67 | + */ |
|
| 61 | 68 | protected function _generateBehavior($op,JsUtils $js){ |
| 62 | 69 | if(isset($this->_urls[$op])) |
| 63 | 70 | $js->getOnClick("#".$this->identifier." .".$op, $this->_urls[$op],$this->getTargetSelector(),["preventDefault"=>false,"attr"=>"data-ajax"]); |
@@ -190,6 +197,9 @@ discard block |
||
| 190 | 197 | return $this; |
| 191 | 198 | } |
| 192 | 199 | |
| 200 | + /** |
|
| 201 | + * @param PositionInTable $part |
|
| 202 | + */ |
|
| 193 | 203 | private function addToolbarRow($part,$table,$captions){ |
| 194 | 204 | $hasPart=$table->hasPart($part); |
| 195 | 205 | if($hasPart){ |
@@ -246,7 +256,7 @@ discard block |
||
| 246 | 256 | * @param string $caption |
| 247 | 257 | * @param callable $callback |
| 248 | 258 | * @param boolean $visibleHover |
| 249 | - * @return callable |
|
| 259 | + * @return \Closure |
|
| 250 | 260 | */ |
| 251 | 261 | private function getFieldButtonCallable($caption,$visibleHover=true,$callback=null){ |
| 252 | 262 | return $this->getCallable("getFieldButton",[$caption,$visibleHover],$callback); |
@@ -256,7 +266,7 @@ discard block |
||
| 256 | 266 | * @param callable $thisCallback |
| 257 | 267 | * @param array $parameters |
| 258 | 268 | * @param callable $callback |
| 259 | - * @return callable |
|
| 269 | + * @return \Closure |
|
| 260 | 270 | */ |
| 261 | 271 | private function getCallable($thisCallback,$parameters,$callback=null){ |
| 262 | 272 | $result=function($instance) use($thisCallback,$parameters,$callback){ |
@@ -325,11 +335,19 @@ discard block |
||
| 325 | 335 | return $this; |
| 326 | 336 | } |
| 327 | 337 | |
| 338 | + /** |
|
| 339 | + * @param string $icon |
|
| 340 | + * @param string $class |
|
| 341 | + */ |
|
| 328 | 342 | private function addDefaultButton($icon,$class=null,$visibleHover=true,$callback=null){ |
| 329 | 343 | $this->addField($this->getCallable("getDefaultButton",[$icon,$class,$visibleHover],$callback)); |
| 330 | 344 | return $this; |
| 331 | 345 | } |
| 332 | 346 | |
| 347 | + /** |
|
| 348 | + * @param string $icon |
|
| 349 | + * @param string $class |
|
| 350 | + */ |
|
| 333 | 351 | private function insertDefaultButtonIn($index,$icon,$class=null,$visibleHover=true,$callback=null){ |
| 334 | 352 | $this->insertInField($index,$this->getCallable("getDefaultButton",[$icon,$class,$visibleHover],$callback)); |
| 335 | 353 | return $this; |
@@ -416,6 +434,9 @@ discard block |
||
| 416 | 434 | }, $index,$attributes); |
| 417 | 435 | } |
| 418 | 436 | |
| 437 | + /** |
|
| 438 | + * @param HtmlButton $element |
|
| 439 | + */ |
|
| 419 | 440 | protected function _visibleOver($element){ |
| 420 | 441 | $this->_visibleHover=true; |
| 421 | 442 | return $element->addToProperty("class", "visibleover")->setProperty("style","visibility:hidden;"); |
@@ -34,33 +34,33 @@ discard block |
||
| 34 | 34 | protected $_visibleHover=false; |
| 35 | 35 | protected $_targetSelector; |
| 36 | 36 | |
| 37 | - public function __construct($identifier,$model,$modelInstance=NULL) { |
|
| 38 | - parent::__construct($identifier, $model,$modelInstance); |
|
| 39 | - $this->_init(new InstanceViewer($identifier), "table", new HtmlTable($identifier, 0,0), false); |
|
| 37 | + public function __construct($identifier, $model, $modelInstance=NULL) { |
|
| 38 | + parent::__construct($identifier, $model, $modelInstance); |
|
| 39 | + $this->_init(new InstanceViewer($identifier), "table", new HtmlTable($identifier, 0, 0), false); |
|
| 40 | 40 | $this->_urls=[]; |
| 41 | 41 | } |
| 42 | 42 | |
| 43 | - public function run(JsUtils $js){ |
|
| 44 | - if($this->_hasCheckboxes && isset($js)){ |
|
| 43 | + public function run(JsUtils $js) { |
|
| 44 | + if ($this->_hasCheckboxes && isset($js)) { |
|
| 45 | 45 | $js->execOn("change", "#".$this->identifier." [name='selection[]']", " |
| 46 | 46 | var \$parentCheckbox=\$('#ck-main-ck-{$this->identifier}'),\$checkbox=\$('#{$this->identifier} [name=\"selection[]\"]'),allChecked=true,allUnchecked=true; |
| 47 | 47 | \$checkbox.each(function() {if($(this).prop('checked')){allUnchecked = false;}else{allChecked = false;}}); |
| 48 | 48 | if(allChecked) {\$parentCheckbox.checkbox('set checked');}else if(allUnchecked){\$parentCheckbox.checkbox('set unchecked');}else{\$parentCheckbox.checkbox('set indeterminate');}"); |
| 49 | 49 | } |
| 50 | - if($this->_visibleHover){ |
|
| 51 | - $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');",["preventDefault"=>false,"stopPropagation"=>true]); |
|
| 52 | - $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');",["preventDefault"=>false,"stopPropagation"=>true]); |
|
| 50 | + if ($this->_visibleHover) { |
|
| 51 | + $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');", ["preventDefault"=>false, "stopPropagation"=>true]); |
|
| 52 | + $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');", ["preventDefault"=>false, "stopPropagation"=>true]); |
|
| 53 | 53 | } |
| 54 | - if($this->_hasDelete) |
|
| 54 | + if ($this->_hasDelete) |
|
| 55 | 55 | $this->_generateBehavior("delete", $js); |
| 56 | - if($this->_hasEdit) |
|
| 56 | + if ($this->_hasEdit) |
|
| 57 | 57 | $this->_generateBehavior("edit", $js); |
| 58 | 58 | return parent::run($js); |
| 59 | 59 | } |
| 60 | 60 | |
| 61 | - protected function _generateBehavior($op,JsUtils $js){ |
|
| 62 | - if(isset($this->_urls[$op])) |
|
| 63 | - $js->getOnClick("#".$this->identifier." .".$op, $this->_urls[$op],$this->getTargetSelector(),["preventDefault"=>false,"attr"=>"data-ajax"]); |
|
| 61 | + protected function _generateBehavior($op, JsUtils $js) { |
|
| 62 | + if (isset($this->_urls[$op])) |
|
| 63 | + $js->getOnClick("#".$this->identifier." .".$op, $this->_urls[$op], $this->getTargetSelector(), ["preventDefault"=>false, "attr"=>"data-ajax"]); |
|
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | /** |
@@ -72,67 +72,67 @@ discard block |
||
| 72 | 72 | } |
| 73 | 73 | |
| 74 | 74 | |
| 75 | - public function compile(JsUtils $js=NULL,&$view=NULL){ |
|
| 76 | - if(!$this->_generated){ |
|
| 75 | + public function compile(JsUtils $js=NULL, &$view=NULL) { |
|
| 76 | + if (!$this->_generated) { |
|
| 77 | 77 | $this->_instanceViewer->setInstance($this->_model); |
| 78 | 78 | $captions=$this->_instanceViewer->getCaptions(); |
| 79 | 79 | |
| 80 | 80 | $table=$this->content["table"]; |
| 81 | 81 | |
| 82 | - if($this->_hasCheckboxes){ |
|
| 82 | + if ($this->_hasCheckboxes) { |
|
| 83 | 83 | $this->_generateMainCheckbox($captions); |
| 84 | 84 | } |
| 85 | 85 | |
| 86 | 86 | $table->setRowCount(0, \sizeof($captions)); |
| 87 | 87 | $table->setHeaderValues($captions); |
| 88 | - if(isset($this->_compileParts)) |
|
| 88 | + if (isset($this->_compileParts)) |
|
| 89 | 89 | $table->setCompileParts($this->_compileParts); |
| 90 | 90 | |
| 91 | - if(isset($this->_searchField) && isset($js)){ |
|
| 92 | - if(isset($this->_urls["refresh"])) |
|
| 93 | - $this->_searchField->postOn("change", $this->_urls["refresh"],"{'s':$(this).val()}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 91 | + if (isset($this->_searchField) && isset($js)) { |
|
| 92 | + if (isset($this->_urls["refresh"])) |
|
| 93 | + $this->_searchField->postOn("change", $this->_urls["refresh"], "{'s':$(this).val()}", "#".$this->identifier." tbody", ["preventDefault"=>false, "jqueryDone"=>"replaceWith"]); |
|
| 94 | 94 | } |
| 95 | 95 | |
| 96 | 96 | $this->_generateContent($table); |
| 97 | 97 | |
| 98 | - if($this->_hasCheckboxes && $table->hasPart("thead")){ |
|
| 99 | - $table->getHeader()->getCell(0, 0)->addToProperty("class","no-sort"); |
|
| 98 | + if ($this->_hasCheckboxes && $table->hasPart("thead")) { |
|
| 99 | + $table->getHeader()->getCell(0, 0)->addToProperty("class", "no-sort"); |
|
| 100 | 100 | } |
| 101 | 101 | |
| 102 | - if(isset($this->_pagination) && $this->_pagination->getVisible()){ |
|
| 102 | + if (isset($this->_pagination) && $this->_pagination->getVisible()) { |
|
| 103 | 103 | $this->_generatePagination($table); |
| 104 | 104 | } |
| 105 | - if(isset($this->_toolbar)){ |
|
| 105 | + if (isset($this->_toolbar)) { |
|
| 106 | 106 | $this->_setToolbarPosition($table, $captions); |
| 107 | 107 | } |
| 108 | - $this->content=JArray::sortAssociative($this->content, [PositionInTable::BEFORETABLE,"table",PositionInTable::AFTERTABLE]); |
|
| 108 | + $this->content=JArray::sortAssociative($this->content, [PositionInTable::BEFORETABLE, "table", PositionInTable::AFTERTABLE]); |
|
| 109 | 109 | $this->_compileForm(); |
| 110 | 110 | $this->_generated=true; |
| 111 | 111 | } |
| 112 | - return parent::compile($js,$view); |
|
| 112 | + return parent::compile($js, $view); |
|
| 113 | 113 | } |
| 114 | 114 | |
| 115 | - private function _generateMainCheckbox(&$captions){ |
|
| 116 | - $ck=new HtmlCheckbox("main-ck-".$this->identifier,""); |
|
| 115 | + private function _generateMainCheckbox(&$captions) { |
|
| 116 | + $ck=new HtmlCheckbox("main-ck-".$this->identifier, ""); |
|
| 117 | 117 | $ck->setOnChecked("$('#".$this->identifier." [name=%quote%selection[]%quote%]').prop('checked',true);"); |
| 118 | 118 | $ck->setOnUnchecked("$('#".$this->identifier." [name=%quote%selection[]%quote%]').prop('checked',false);"); |
| 119 | 119 | \array_unshift($captions, $ck); |
| 120 | 120 | } |
| 121 | 121 | |
| 122 | - protected function _generateContent($table){ |
|
| 122 | + protected function _generateContent($table) { |
|
| 123 | 123 | $objects=$this->_modelInstance; |
| 124 | - if(isset($this->_pagination)){ |
|
| 124 | + if (isset($this->_pagination)) { |
|
| 125 | 125 | $objects=$this->_pagination->getObjects($this->_modelInstance); |
| 126 | 126 | } |
| 127 | 127 | InstanceViewer::setIndex(0); |
| 128 | 128 | $table->fromDatabaseObjects($objects, function($instance) use($table){ |
| 129 | 129 | $this->_instanceViewer->setInstance($instance); |
| 130 | 130 | InstanceViewer::$index++; |
| 131 | - $values= $this->_instanceViewer->getValues(); |
|
| 132 | - if($this->_hasCheckboxes){ |
|
| 133 | - $ck=new HtmlCheckbox("ck-".$this->identifier,""); |
|
| 131 | + $values=$this->_instanceViewer->getValues(); |
|
| 132 | + if ($this->_hasCheckboxes) { |
|
| 133 | + $ck=new HtmlCheckbox("ck-".$this->identifier, ""); |
|
| 134 | 134 | $field=$ck->getField(); |
| 135 | - $field->setProperty("value",$this->_instanceViewer->getIdentifier()); |
|
| 135 | + $field->setProperty("value", $this->_instanceViewer->getIdentifier()); |
|
| 136 | 136 | $field->setProperty("name", "selection[]"); |
| 137 | 137 | \array_unshift($values, $ck); |
| 138 | 138 | } |
@@ -143,37 +143,37 @@ discard block |
||
| 143 | 143 | }); |
| 144 | 144 | } |
| 145 | 145 | |
| 146 | - private function _generatePagination($table){ |
|
| 146 | + private function _generatePagination($table) { |
|
| 147 | 147 | $footer=$table->getFooter(); |
| 148 | 148 | $footer->mergeCol(); |
| 149 | - $menu=new HtmlPaginationMenu("pagination-".$this->identifier,$this->_pagination->getPagesNumbers()); |
|
| 149 | + $menu=new HtmlPaginationMenu("pagination-".$this->identifier, $this->_pagination->getPagesNumbers()); |
|
| 150 | 150 | $menu->floatRight(); |
| 151 | 151 | $menu->setActiveItem($this->_pagination->getPage()-1); |
| 152 | 152 | $footer->setValues($menu); |
| 153 | - if(isset($this->_urls["refresh"])) |
|
| 154 | - $menu->postOnClick($this->_urls["refresh"],"{'p':$(this).attr('data-page')}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 153 | + if (isset($this->_urls["refresh"])) |
|
| 154 | + $menu->postOnClick($this->_urls["refresh"], "{'p':$(this).attr('data-page')}", "#".$this->identifier." tbody", ["preventDefault"=>false, "jqueryDone"=>"replaceWith"]); |
|
| 155 | 155 | } |
| 156 | 156 | |
| 157 | - protected function _getFieldName($index){ |
|
| 157 | + protected function _getFieldName($index) { |
|
| 158 | 158 | return parent::_getFieldName($index)."[]"; |
| 159 | 159 | } |
| 160 | 160 | |
| 161 | - protected function _getFieldCaption($index){ |
|
| 161 | + protected function _getFieldCaption($index) { |
|
| 162 | 162 | return null; |
| 163 | 163 | } |
| 164 | 164 | |
| 165 | - protected function _setToolbarPosition($table,$captions=NULL){ |
|
| 166 | - switch ($this->_toolbarPosition){ |
|
| 165 | + protected function _setToolbarPosition($table, $captions=NULL) { |
|
| 166 | + switch ($this->_toolbarPosition) { |
|
| 167 | 167 | case PositionInTable::BEFORETABLE: |
| 168 | 168 | case PositionInTable::AFTERTABLE: |
| 169 | - if(isset($this->_compileParts)===false){ |
|
| 169 | + if (isset($this->_compileParts)===false) { |
|
| 170 | 170 | $this->content[$this->_toolbarPosition]=$this->_toolbar; |
| 171 | 171 | } |
| 172 | 172 | break; |
| 173 | 173 | case PositionInTable::HEADER: |
| 174 | 174 | case PositionInTable::FOOTER: |
| 175 | 175 | case PositionInTable::BODY: |
| 176 | - $this->addToolbarRow($this->_toolbarPosition,$table, $captions); |
|
| 176 | + $this->addToolbarRow($this->_toolbarPosition, $table, $captions); |
|
| 177 | 177 | break; |
| 178 | 178 | } |
| 179 | 179 | } |
@@ -185,23 +185,23 @@ discard block |
||
| 185 | 185 | * @param callable $callback function called after the field compilation |
| 186 | 186 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 187 | 187 | */ |
| 188 | - public function afterCompile($index,$callback){ |
|
| 189 | - $this->_instanceViewer->afterCompile($index,$callback); |
|
| 188 | + public function afterCompile($index, $callback) { |
|
| 189 | + $this->_instanceViewer->afterCompile($index, $callback); |
|
| 190 | 190 | return $this; |
| 191 | 191 | } |
| 192 | 192 | |
| 193 | - private function addToolbarRow($part,$table,$captions){ |
|
| 193 | + private function addToolbarRow($part, $table, $captions) { |
|
| 194 | 194 | $hasPart=$table->hasPart($part); |
| 195 | - if($hasPart){ |
|
| 195 | + if ($hasPart) { |
|
| 196 | 196 | $row=$table->getPart($part)->addRow(\sizeof($captions)); |
| 197 | - }else{ |
|
| 197 | + } else { |
|
| 198 | 198 | $row=$table->getPart($part)->getRow(0); |
| 199 | 199 | } |
| 200 | 200 | $row->mergeCol(); |
| 201 | 201 | $row->setValues([$this->_toolbar]); |
| 202 | 202 | } |
| 203 | 203 | |
| 204 | - public function getHtmlComponent(){ |
|
| 204 | + public function getHtmlComponent() { |
|
| 205 | 205 | return $this->content["table"]; |
| 206 | 206 | } |
| 207 | 207 | |
@@ -215,18 +215,18 @@ discard block |
||
| 215 | 215 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 216 | 216 | */ |
| 217 | 217 | public function setUrls($urls) { |
| 218 | - if(\is_array($urls)){ |
|
| 219 | - $this->_urls["refresh"]=JArray::getValue($urls, "refresh",0); |
|
| 220 | - $this->_urls["edit"]=JArray::getValue($urls, "edit",1); |
|
| 221 | - $this->_urls["delete"]=JArray::getValue($urls, "delete",2); |
|
| 222 | - }else{ |
|
| 223 | - $this->_urls=["refresh"=>$urls,"edit"=>$urls,"delete"=>$urls]; |
|
| 218 | + if (\is_array($urls)) { |
|
| 219 | + $this->_urls["refresh"]=JArray::getValue($urls, "refresh", 0); |
|
| 220 | + $this->_urls["edit"]=JArray::getValue($urls, "edit", 1); |
|
| 221 | + $this->_urls["delete"]=JArray::getValue($urls, "delete", 2); |
|
| 222 | + } else { |
|
| 223 | + $this->_urls=["refresh"=>$urls, "edit"=>$urls, "delete"=>$urls]; |
|
| 224 | 224 | } |
| 225 | 225 | return $this; |
| 226 | 226 | } |
| 227 | 227 | |
| 228 | - public function paginate($items_per_page=10,$page=1){ |
|
| 229 | - $this->_pagination=new Pagination($items_per_page,4,$page); |
|
| 228 | + public function paginate($items_per_page=10, $page=1) { |
|
| 229 | + $this->_pagination=new Pagination($items_per_page, 4, $page); |
|
| 230 | 230 | } |
| 231 | 231 | |
| 232 | 232 | public function getHasCheckboxes() { |
@@ -238,7 +238,7 @@ discard block |
||
| 238 | 238 | return $this; |
| 239 | 239 | } |
| 240 | 240 | |
| 241 | - public function refresh($compileParts=["tbody"]){ |
|
| 241 | + public function refresh($compileParts=["tbody"]) { |
|
| 242 | 242 | $this->_compileParts=$compileParts; |
| 243 | 243 | return $this; |
| 244 | 244 | } |
@@ -248,8 +248,8 @@ discard block |
||
| 248 | 248 | * @param boolean $visibleHover |
| 249 | 249 | * @return callable |
| 250 | 250 | */ |
| 251 | - private function getFieldButtonCallable($caption,$visibleHover=true,$callback=null){ |
|
| 252 | - return $this->getCallable("getFieldButton",[$caption,$visibleHover],$callback); |
|
| 251 | + private function getFieldButtonCallable($caption, $visibleHover=true, $callback=null) { |
|
| 252 | + return $this->getCallable("getFieldButton", [$caption, $visibleHover], $callback); |
|
| 253 | 253 | } |
| 254 | 254 | |
| 255 | 255 | /** |
@@ -258,19 +258,19 @@ discard block |
||
| 258 | 258 | * @param callable $callback |
| 259 | 259 | * @return callable |
| 260 | 260 | */ |
| 261 | - private function getCallable($thisCallback,$parameters,$callback=null){ |
|
| 262 | - $result=function($instance) use($thisCallback,$parameters,$callback){ |
|
| 263 | - $object=call_user_func_array(array($this,$thisCallback), $parameters); |
|
| 264 | - if(isset($callback)){ |
|
| 265 | - if(\is_callable($callback)){ |
|
| 266 | - $callback($object,$instance); |
|
| 261 | + private function getCallable($thisCallback, $parameters, $callback=null) { |
|
| 262 | + $result=function($instance) use($thisCallback, $parameters, $callback){ |
|
| 263 | + $object=call_user_func_array(array($this, $thisCallback), $parameters); |
|
| 264 | + if (isset($callback)) { |
|
| 265 | + if (\is_callable($callback)) { |
|
| 266 | + $callback($object, $instance); |
|
| 267 | 267 | } |
| 268 | 268 | } |
| 269 | - if($object instanceof HtmlSemDoubleElement){ |
|
| 270 | - $object->setProperty("data-ajax",$this->_instanceViewer->getIdentifier()); |
|
| 271 | - if($object->propertyContains("class","visibleover")){ |
|
| 269 | + if ($object instanceof HtmlSemDoubleElement) { |
|
| 270 | + $object->setProperty("data-ajax", $this->_instanceViewer->getIdentifier()); |
|
| 271 | + if ($object->propertyContains("class", "visibleover")) { |
|
| 272 | 272 | $this->_visibleHover=true; |
| 273 | - $object->setProperty("style","visibility:hidden;"); |
|
| 273 | + $object->setProperty("style", "visibility:hidden;"); |
|
| 274 | 274 | } |
| 275 | 275 | } |
| 276 | 276 | return $object; |
@@ -282,9 +282,9 @@ discard block |
||
| 282 | 282 | * @param string $caption |
| 283 | 283 | * @return HtmlButton |
| 284 | 284 | */ |
| 285 | - private function getFieldButton($caption,$visibleHover=true){ |
|
| 286 | - $bt= new HtmlButton("",$caption); |
|
| 287 | - if($visibleHover) |
|
| 285 | + private function getFieldButton($caption, $visibleHover=true) { |
|
| 286 | + $bt=new HtmlButton("", $caption); |
|
| 287 | + if ($visibleHover) |
|
| 288 | 288 | $this->_visibleOver($bt); |
| 289 | 289 | return $bt; |
| 290 | 290 | } |
@@ -296,8 +296,8 @@ discard block |
||
| 296 | 296 | * @param boolean $visibleHover |
| 297 | 297 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 298 | 298 | */ |
| 299 | - public function addFieldButton($caption,$visibleHover=true,$callback=null){ |
|
| 300 | - $this->addField($this->getCallable("getFieldButton",[$caption,$visibleHover],$callback)); |
|
| 299 | + public function addFieldButton($caption, $visibleHover=true, $callback=null) { |
|
| 300 | + $this->addField($this->getCallable("getFieldButton", [$caption, $visibleHover], $callback)); |
|
| 301 | 301 | return $this; |
| 302 | 302 | } |
| 303 | 303 | |
@@ -308,8 +308,8 @@ discard block |
||
| 308 | 308 | * @param callable $callback |
| 309 | 309 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 310 | 310 | */ |
| 311 | - public function insertFieldButton($index,$caption,$visibleHover=true,$callback=null){ |
|
| 312 | - $this->insertField($index, $this->getFieldButtonCallable($caption,$visibleHover,$callback)); |
|
| 311 | + public function insertFieldButton($index, $caption, $visibleHover=true, $callback=null) { |
|
| 312 | + $this->insertField($index, $this->getFieldButtonCallable($caption, $visibleHover, $callback)); |
|
| 313 | 313 | return $this; |
| 314 | 314 | } |
| 315 | 315 | |
@@ -320,64 +320,64 @@ discard block |
||
| 320 | 320 | * @param callable $callback |
| 321 | 321 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 322 | 322 | */ |
| 323 | - public function insertInFieldButton($index,$caption,$visibleHover=true,$callback=null){ |
|
| 324 | - $this->insertInField($index, $this->getFieldButtonCallable($caption,$visibleHover,$callback)); |
|
| 323 | + public function insertInFieldButton($index, $caption, $visibleHover=true, $callback=null) { |
|
| 324 | + $this->insertInField($index, $this->getFieldButtonCallable($caption, $visibleHover, $callback)); |
|
| 325 | 325 | return $this; |
| 326 | 326 | } |
| 327 | 327 | |
| 328 | - private function addDefaultButton($icon,$class=null,$visibleHover=true,$callback=null){ |
|
| 329 | - $this->addField($this->getCallable("getDefaultButton",[$icon,$class,$visibleHover],$callback)); |
|
| 328 | + private function addDefaultButton($icon, $class=null, $visibleHover=true, $callback=null) { |
|
| 329 | + $this->addField($this->getCallable("getDefaultButton", [$icon, $class, $visibleHover], $callback)); |
|
| 330 | 330 | return $this; |
| 331 | 331 | } |
| 332 | 332 | |
| 333 | - private function insertDefaultButtonIn($index,$icon,$class=null,$visibleHover=true,$callback=null){ |
|
| 334 | - $this->insertInField($index,$this->getCallable("getDefaultButton",[$icon,$class,$visibleHover],$callback)); |
|
| 333 | + private function insertDefaultButtonIn($index, $icon, $class=null, $visibleHover=true, $callback=null) { |
|
| 334 | + $this->insertInField($index, $this->getCallable("getDefaultButton", [$icon, $class, $visibleHover], $callback)); |
|
| 335 | 335 | return $this; |
| 336 | 336 | } |
| 337 | 337 | |
| 338 | - private function getDefaultButton($icon,$class=null,$visibleHover=true){ |
|
| 339 | - $bt=$this->getFieldButton("",$visibleHover); |
|
| 338 | + private function getDefaultButton($icon, $class=null, $visibleHover=true) { |
|
| 339 | + $bt=$this->getFieldButton("", $visibleHover); |
|
| 340 | 340 | $bt->asIcon($icon); |
| 341 | - if(isset($class)) |
|
| 341 | + if (isset($class)) |
|
| 342 | 342 | $bt->addToProperty("class", $class); |
| 343 | 343 | return $bt; |
| 344 | 344 | } |
| 345 | 345 | |
| 346 | - public function addDeleteButton($visibleHover=true,$generateBehavior=true,$callback=null){ |
|
| 346 | + public function addDeleteButton($visibleHover=true, $generateBehavior=true, $callback=null) { |
|
| 347 | 347 | $this->_hasDelete=$generateBehavior; |
| 348 | - return $this->addDefaultButton("remove","delete red basic",$visibleHover,$callback); |
|
| 348 | + return $this->addDefaultButton("remove", "delete red basic", $visibleHover, $callback); |
|
| 349 | 349 | } |
| 350 | 350 | |
| 351 | - public function addEditButton($visibleHover=true,$generateBehavior=true,$callback=null){ |
|
| 351 | + public function addEditButton($visibleHover=true, $generateBehavior=true, $callback=null) { |
|
| 352 | 352 | $this->_hasEdit=$generateBehavior; |
| 353 | - return $this->addDefaultButton("edit","edit basic",$visibleHover,$callback); |
|
| 353 | + return $this->addDefaultButton("edit", "edit basic", $visibleHover, $callback); |
|
| 354 | 354 | } |
| 355 | 355 | |
| 356 | - public function addEditDeleteButtons($visibleHover=true,$generateBehavior=true,$callbackEdit=null,$callbackDelete=null){ |
|
| 357 | - $this->addEditButton($visibleHover,$generateBehavior,$callbackEdit); |
|
| 356 | + public function addEditDeleteButtons($visibleHover=true, $generateBehavior=true, $callbackEdit=null, $callbackDelete=null) { |
|
| 357 | + $this->addEditButton($visibleHover, $generateBehavior, $callbackEdit); |
|
| 358 | 358 | $index=$this->_instanceViewer->visiblePropertiesCount()-1; |
| 359 | - $this->insertDeleteButtonIn($index,$visibleHover,$generateBehavior,$callbackDelete); |
|
| 359 | + $this->insertDeleteButtonIn($index, $visibleHover, $generateBehavior, $callbackDelete); |
|
| 360 | 360 | return $this; |
| 361 | 361 | } |
| 362 | 362 | |
| 363 | - public function insertDeleteButtonIn($index,$visibleHover=true,$generateBehavior=true,$callback=null){ |
|
| 363 | + public function insertDeleteButtonIn($index, $visibleHover=true, $generateBehavior=true, $callback=null) { |
|
| 364 | 364 | $this->_hasDelete=$generateBehavior; |
| 365 | - return $this->insertDefaultButtonIn($index,"remove","delete red basic",$visibleHover,$callback); |
|
| 365 | + return $this->insertDefaultButtonIn($index, "remove", "delete red basic", $visibleHover, $callback); |
|
| 366 | 366 | } |
| 367 | 367 | |
| 368 | - public function insertEditButtonIn($index,$visibleHover=true,$generateBehavior=true,$callback=null){ |
|
| 368 | + public function insertEditButtonIn($index, $visibleHover=true, $generateBehavior=true, $callback=null) { |
|
| 369 | 369 | $this->_hasEdit=$generateBehavior; |
| 370 | - return $this->insertDefaultButtonIn($index,"edit","edit basic",$visibleHover,$callback); |
|
| 370 | + return $this->insertDefaultButtonIn($index, "edit", "edit basic", $visibleHover, $callback); |
|
| 371 | 371 | } |
| 372 | 372 | |
| 373 | - public function addSearchInToolbar($position=Direction::RIGHT){ |
|
| 373 | + public function addSearchInToolbar($position=Direction::RIGHT) { |
|
| 374 | 374 | return $this->addInToolbar($this->getSearchField())->setPosition($position); |
| 375 | 375 | } |
| 376 | 376 | |
| 377 | - public function getSearchField(){ |
|
| 378 | - if(isset($this->_searchField)===false){ |
|
| 379 | - $this->_searchField=new HtmlInput("search-".$this->identifier,"search","","Search..."); |
|
| 380 | - $this->_searchField->addIcon("search",Direction::RIGHT); |
|
| 377 | + public function getSearchField() { |
|
| 378 | + if (isset($this->_searchField)===false) { |
|
| 379 | + $this->_searchField=new HtmlInput("search-".$this->identifier, "search", "", "Search..."); |
|
| 380 | + $this->_searchField->addIcon("search", Direction::RIGHT); |
|
| 381 | 381 | } |
| 382 | 382 | return $this->_searchField; |
| 383 | 383 | } |
@@ -393,7 +393,7 @@ discard block |
||
| 393 | 393 | return $this; |
| 394 | 394 | } |
| 395 | 395 | |
| 396 | - public function asForm(){ |
|
| 396 | + public function asForm() { |
|
| 397 | 397 | return $this->getForm(); |
| 398 | 398 | } |
| 399 | 399 | |
@@ -406,24 +406,24 @@ discard block |
||
| 406 | 406 | * @param array $attributes |
| 407 | 407 | * @return \Ajax\semantic\widgets\datatable\DataTable |
| 408 | 408 | */ |
| 409 | - public function fieldAsSubmit($index,$cssStyle=NULL,$url=NULL,$responseElement=NULL,$attributes=NULL){ |
|
| 410 | - return $this->_fieldAs(function($id,$name,$value,$caption) use ($url,$responseElement,$cssStyle,$index,$attributes){ |
|
| 411 | - $button=new HtmlButton($id,$value,$cssStyle); |
|
| 412 | - $button->postOnClick($url,"$(event.target).closest('tr').find(':input').serialize()",$responseElement,$attributes["ajax"]); |
|
| 413 | - if(!isset($attributes["visibleHover"]) || $attributes["visibleHover"]) |
|
| 409 | + public function fieldAsSubmit($index, $cssStyle=NULL, $url=NULL, $responseElement=NULL, $attributes=NULL) { |
|
| 410 | + return $this->_fieldAs(function($id, $name, $value, $caption) use ($url, $responseElement, $cssStyle, $index, $attributes){ |
|
| 411 | + $button=new HtmlButton($id, $value, $cssStyle); |
|
| 412 | + $button->postOnClick($url, "$(event.target).closest('tr').find(':input').serialize()", $responseElement, $attributes["ajax"]); |
|
| 413 | + if (!isset($attributes["visibleHover"]) || $attributes["visibleHover"]) |
|
| 414 | 414 | $this->_visibleOver($button); |
| 415 | 415 | return $button; |
| 416 | - }, $index,$attributes); |
|
| 416 | + }, $index, $attributes); |
|
| 417 | 417 | } |
| 418 | 418 | |
| 419 | - protected function _visibleOver($element){ |
|
| 419 | + protected function _visibleOver($element) { |
|
| 420 | 420 | $this->_visibleHover=true; |
| 421 | - return $element->addToProperty("class", "visibleover")->setProperty("style","visibility:hidden;"); |
|
| 421 | + return $element->addToProperty("class", "visibleover")->setProperty("style", "visibility:hidden;"); |
|
| 422 | 422 | } |
| 423 | 423 | |
| 424 | 424 | protected function getTargetSelector() { |
| 425 | 425 | $result=$this->_targetSelector; |
| 426 | - if(!isset($result)) |
|
| 426 | + if (!isset($result)) |
|
| 427 | 427 | $result="#".$this->identifier; |
| 428 | 428 | return $result; |
| 429 | 429 | } |
@@ -51,16 +51,19 @@ discard block |
||
| 51 | 51 | $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');",["preventDefault"=>false,"stopPropagation"=>true]); |
| 52 | 52 | $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');",["preventDefault"=>false,"stopPropagation"=>true]); |
| 53 | 53 | } |
| 54 | - if($this->_hasDelete) |
|
| 55 | - $this->_generateBehavior("delete", $js); |
|
| 56 | - if($this->_hasEdit) |
|
| 57 | - $this->_generateBehavior("edit", $js); |
|
| 54 | + if($this->_hasDelete) { |
|
| 55 | + $this->_generateBehavior("delete", $js); |
|
| 56 | + } |
|
| 57 | + if($this->_hasEdit) { |
|
| 58 | + $this->_generateBehavior("edit", $js); |
|
| 59 | + } |
|
| 58 | 60 | return parent::run($js); |
| 59 | 61 | } |
| 60 | 62 | |
| 61 | 63 | protected function _generateBehavior($op,JsUtils $js){ |
| 62 | - if(isset($this->_urls[$op])) |
|
| 63 | - $js->getOnClick("#".$this->identifier." .".$op, $this->_urls[$op],$this->getTargetSelector(),["preventDefault"=>false,"attr"=>"data-ajax"]); |
|
| 64 | + if(isset($this->_urls[$op])) { |
|
| 65 | + $js->getOnClick("#".$this->identifier." .".$op, $this->_urls[$op],$this->getTargetSelector(),["preventDefault"=>false,"attr"=>"data-ajax"]); |
|
| 66 | + } |
|
| 64 | 67 | } |
| 65 | 68 | |
| 66 | 69 | /** |
@@ -85,12 +88,14 @@ discard block |
||
| 85 | 88 | |
| 86 | 89 | $table->setRowCount(0, \sizeof($captions)); |
| 87 | 90 | $table->setHeaderValues($captions); |
| 88 | - if(isset($this->_compileParts)) |
|
| 89 | - $table->setCompileParts($this->_compileParts); |
|
| 91 | + if(isset($this->_compileParts)) { |
|
| 92 | + $table->setCompileParts($this->_compileParts); |
|
| 93 | + } |
|
| 90 | 94 | |
| 91 | 95 | if(isset($this->_searchField) && isset($js)){ |
| 92 | - if(isset($this->_urls["refresh"])) |
|
| 93 | - $this->_searchField->postOn("change", $this->_urls["refresh"],"{'s':$(this).val()}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 96 | + if(isset($this->_urls["refresh"])) { |
|
| 97 | + $this->_searchField->postOn("change", $this->_urls["refresh"],"{'s':$(this).val()}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 98 | + } |
|
| 94 | 99 | } |
| 95 | 100 | |
| 96 | 101 | $this->_generateContent($table); |
@@ -150,8 +155,9 @@ discard block |
||
| 150 | 155 | $menu->floatRight(); |
| 151 | 156 | $menu->setActiveItem($this->_pagination->getPage()-1); |
| 152 | 157 | $footer->setValues($menu); |
| 153 | - if(isset($this->_urls["refresh"])) |
|
| 154 | - $menu->postOnClick($this->_urls["refresh"],"{'p':$(this).attr('data-page')}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 158 | + if(isset($this->_urls["refresh"])) { |
|
| 159 | + $menu->postOnClick($this->_urls["refresh"],"{'p':$(this).attr('data-page')}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith"]); |
|
| 160 | + } |
|
| 155 | 161 | } |
| 156 | 162 | |
| 157 | 163 | protected function _getFieldName($index){ |
@@ -194,7 +200,7 @@ discard block |
||
| 194 | 200 | $hasPart=$table->hasPart($part); |
| 195 | 201 | if($hasPart){ |
| 196 | 202 | $row=$table->getPart($part)->addRow(\sizeof($captions)); |
| 197 | - }else{ |
|
| 203 | + } else{ |
|
| 198 | 204 | $row=$table->getPart($part)->getRow(0); |
| 199 | 205 | } |
| 200 | 206 | $row->mergeCol(); |
@@ -219,7 +225,7 @@ discard block |
||
| 219 | 225 | $this->_urls["refresh"]=JArray::getValue($urls, "refresh",0); |
| 220 | 226 | $this->_urls["edit"]=JArray::getValue($urls, "edit",1); |
| 221 | 227 | $this->_urls["delete"]=JArray::getValue($urls, "delete",2); |
| 222 | - }else{ |
|
| 228 | + } else{ |
|
| 223 | 229 | $this->_urls=["refresh"=>$urls,"edit"=>$urls,"delete"=>$urls]; |
| 224 | 230 | } |
| 225 | 231 | return $this; |
@@ -284,8 +290,9 @@ discard block |
||
| 284 | 290 | */ |
| 285 | 291 | private function getFieldButton($caption,$visibleHover=true){ |
| 286 | 292 | $bt= new HtmlButton("",$caption); |
| 287 | - if($visibleHover) |
|
| 288 | - $this->_visibleOver($bt); |
|
| 293 | + if($visibleHover) { |
|
| 294 | + $this->_visibleOver($bt); |
|
| 295 | + } |
|
| 289 | 296 | return $bt; |
| 290 | 297 | } |
| 291 | 298 | |
@@ -338,8 +345,9 @@ discard block |
||
| 338 | 345 | private function getDefaultButton($icon,$class=null,$visibleHover=true){ |
| 339 | 346 | $bt=$this->getFieldButton("",$visibleHover); |
| 340 | 347 | $bt->asIcon($icon); |
| 341 | - if(isset($class)) |
|
| 342 | - $bt->addToProperty("class", $class); |
|
| 348 | + if(isset($class)) { |
|
| 349 | + $bt->addToProperty("class", $class); |
|
| 350 | + } |
|
| 343 | 351 | return $bt; |
| 344 | 352 | } |
| 345 | 353 | |
@@ -410,8 +418,9 @@ discard block |
||
| 410 | 418 | return $this->_fieldAs(function($id,$name,$value,$caption) use ($url,$responseElement,$cssStyle,$index,$attributes){ |
| 411 | 419 | $button=new HtmlButton($id,$value,$cssStyle); |
| 412 | 420 | $button->postOnClick($url,"$(event.target).closest('tr').find(':input').serialize()",$responseElement,$attributes["ajax"]); |
| 413 | - if(!isset($attributes["visibleHover"]) || $attributes["visibleHover"]) |
|
| 414 | - $this->_visibleOver($button); |
|
| 421 | + if(!isset($attributes["visibleHover"]) || $attributes["visibleHover"]) { |
|
| 422 | + $this->_visibleOver($button); |
|
| 423 | + } |
|
| 415 | 424 | return $button; |
| 416 | 425 | }, $index,$attributes); |
| 417 | 426 | } |
@@ -423,8 +432,9 @@ discard block |
||
| 423 | 432 | |
| 424 | 433 | protected function getTargetSelector() { |
| 425 | 434 | $result=$this->_targetSelector; |
| 426 | - if(!isset($result)) |
|
| 427 | - $result="#".$this->identifier; |
|
| 435 | + if(!isset($result)) { |
|
| 436 | + $result="#".$this->identifier; |
|
| 437 | + } |
|
| 428 | 438 | return $result; |
| 429 | 439 | } |
| 430 | 440 | |