@@ -25,7 +25,7 @@ discard block |
||
| 25 | 25 | * |
| 26 | 26 | */ |
| 27 | 27 | class DataTable extends Widget { |
| 28 | - use TableTrait,DataTableFieldAsTrait,HasCheckboxesTrait,BaseTrait; |
|
| 28 | + use TableTrait, DataTableFieldAsTrait, HasCheckboxesTrait, BaseTrait; |
|
| 29 | 29 | protected $_searchField; |
| 30 | 30 | protected $_urls; |
| 31 | 31 | protected $_pagination; |
@@ -44,41 +44,41 @@ discard block |
||
| 44 | 44 | protected $_colWidths; |
| 45 | 45 | |
| 46 | 46 | |
| 47 | - public function __construct($identifier,$model,$modelInstance=NULL) { |
|
| 48 | - parent::__construct($identifier, $model,$modelInstance); |
|
| 49 | - $this->_init(new InstanceViewer($identifier), "table", new HtmlTable($identifier, 0,0), false); |
|
| 47 | + public function __construct($identifier, $model, $modelInstance=NULL) { |
|
| 48 | + parent::__construct($identifier, $model, $modelInstance); |
|
| 49 | + $this->_init(new InstanceViewer($identifier), "table", new HtmlTable($identifier, 0, 0), false); |
|
| 50 | 50 | $this->_urls=[]; |
| 51 | - $this->_emptyMessage=new HtmlMessage("","nothing to display"); |
|
| 51 | + $this->_emptyMessage=new HtmlMessage("", "nothing to display"); |
|
| 52 | 52 | $this->_emptyMessage->setIcon("info circle"); |
| 53 | 53 | } |
| 54 | 54 | |
| 55 | - public function run(JsUtils $js){ |
|
| 55 | + public function run(JsUtils $js) { |
|
| 56 | 56 | $offset=$js->scriptCount(); |
| 57 | - if($this->_hasCheckboxes && isset($js)){ |
|
| 57 | + if ($this->_hasCheckboxes && isset($js)) { |
|
| 58 | 58 | $this->_runCheckboxes($js); |
| 59 | 59 | } |
| 60 | - if($this->_visibleHover){ |
|
| 61 | - $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');",["preventDefault"=>false,"stopPropagation"=>true]); |
|
| 62 | - $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');",["preventDefault"=>false,"stopPropagation"=>true]); |
|
| 60 | + if ($this->_visibleHover) { |
|
| 61 | + $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');", ["preventDefault"=>false, "stopPropagation"=>true]); |
|
| 62 | + $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');", ["preventDefault"=>false, "stopPropagation"=>true]); |
|
| 63 | 63 | } |
| 64 | - if(\is_array($this->_deleteBehavior)) |
|
| 65 | - $this->_generateBehavior("delete",$this->_deleteBehavior, $js); |
|
| 66 | - if(\is_array($this->_editBehavior)) |
|
| 67 | - $this->_generateBehavior("edit",$this->_editBehavior,$js); |
|
| 68 | - if(\is_array($this->_displayBehavior)){ |
|
| 69 | - $this->_generateBehavior("display",$this->_displayBehavior,$js); |
|
| 64 | + if (\is_array($this->_deleteBehavior)) |
|
| 65 | + $this->_generateBehavior("delete", $this->_deleteBehavior, $js); |
|
| 66 | + if (\is_array($this->_editBehavior)) |
|
| 67 | + $this->_generateBehavior("edit", $this->_editBehavior, $js); |
|
| 68 | + if (\is_array($this->_displayBehavior)) { |
|
| 69 | + $this->_generateBehavior("display", $this->_displayBehavior, $js); |
|
| 70 | 70 | } |
| 71 | 71 | parent::run($js); |
| 72 | - if(isset($this->_pagination)) |
|
| 73 | - $this->_associatePaginationBehavior($js,$offset); |
|
| 74 | - $this->_associateSearchFieldBehavior($js,$offset); |
|
| 72 | + if (isset($this->_pagination)) |
|
| 73 | + $this->_associatePaginationBehavior($js, $offset); |
|
| 74 | + $this->_associateSearchFieldBehavior($js, $offset); |
|
| 75 | 75 | |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | - protected function _generateBehavior($op,$params,JsUtils $js){ |
|
| 79 | - if(isset($this->_urls[$op])){ |
|
| 80 | - $params=\array_merge($params,["attr"=>"data-ajax"]); |
|
| 81 | - $js->ajaxOnClick("#".$this->identifier." ._".$op, $this->_urls[$op],$this->getTargetSelector($op),$params); |
|
| 78 | + protected function _generateBehavior($op, $params, JsUtils $js) { |
|
| 79 | + if (isset($this->_urls[$op])) { |
|
| 80 | + $params=\array_merge($params, ["attr"=>"data-ajax"]); |
|
| 81 | + $js->ajaxOnClick("#".$this->identifier." ._".$op, $this->_urls[$op], $this->getTargetSelector($op), $params); |
|
| 82 | 82 | } |
| 83 | 83 | } |
| 84 | 84 | |
@@ -91,21 +91,21 @@ discard block |
||
| 91 | 91 | } |
| 92 | 92 | |
| 93 | 93 | |
| 94 | - public function compile(JsUtils $js=NULL,&$view=NULL){ |
|
| 95 | - if(!$this->_generated){ |
|
| 96 | - if(isset($this->_buttonsColumn)){ |
|
| 94 | + public function compile(JsUtils $js=NULL, &$view=NULL) { |
|
| 95 | + if (!$this->_generated) { |
|
| 96 | + if (isset($this->_buttonsColumn)) { |
|
| 97 | 97 | $this->_instanceViewer->sortColumnContent($this->_buttonsColumn, $this->_buttons); |
| 98 | 98 | } |
| 99 | 99 | $this->_instanceViewer->setInstance($this->_model); |
| 100 | 100 | $captions=$this->_instanceViewer->getCaptions(); |
| 101 | 101 | $table=$this->content["table"]; |
| 102 | - if($this->_hasCheckboxes){ |
|
| 102 | + if ($this->_hasCheckboxes) { |
|
| 103 | 103 | $this->_generateMainCheckbox($captions); |
| 104 | 104 | } |
| 105 | 105 | $table->setRowCount(0, \sizeof($captions)); |
| 106 | - $this->_generateHeader($table,$captions); |
|
| 106 | + $this->_generateHeader($table, $captions); |
|
| 107 | 107 | |
| 108 | - if(isset($this->_compileParts)) |
|
| 108 | + if (isset($this->_compileParts)) |
|
| 109 | 109 | $table->setCompileParts($this->_compileParts); |
| 110 | 110 | |
| 111 | 111 | $this->_generateContent($table); |
@@ -113,147 +113,147 @@ discard block |
||
| 113 | 113 | $this->compileExtraElements($table, $captions); |
| 114 | 114 | $this->_compileSearchFieldBehavior($js); |
| 115 | 115 | |
| 116 | - $this->content=JArray::sortAssociative($this->content, [PositionInTable::BEFORETABLE,"table",PositionInTable::AFTERTABLE]); |
|
| 116 | + $this->content=JArray::sortAssociative($this->content, [PositionInTable::BEFORETABLE, "table", PositionInTable::AFTERTABLE]); |
|
| 117 | 117 | $this->_compileForm(); |
| 118 | 118 | $this->_applyStyleAttributes($table); |
| 119 | 119 | $this->_generated=true; |
| 120 | 120 | } |
| 121 | - return parent::compile($js,$view); |
|
| 121 | + return parent::compile($js, $view); |
|
| 122 | 122 | } |
| 123 | 123 | |
| 124 | - protected function compileExtraElements($table,$captions){ |
|
| 124 | + protected function compileExtraElements($table, $captions) { |
|
| 125 | 125 | |
| 126 | - if($this->_hasCheckboxes && $table->hasPart("thead")){ |
|
| 126 | + if ($this->_hasCheckboxes && $table->hasPart("thead")) { |
|
| 127 | 127 | $table->getHeader()->getCell(0, 0)->addClass("no-sort"); |
| 128 | 128 | } |
| 129 | 129 | |
| 130 | - if(isset($this->_toolbar)){ |
|
| 130 | + if (isset($this->_toolbar)) { |
|
| 131 | 131 | $this->_setToolbarPosition($table, $captions); |
| 132 | 132 | } |
| 133 | - if(isset($this->_pagination) && $this->_pagination->getVisible()){ |
|
| 133 | + if (isset($this->_pagination) && $this->_pagination->getVisible()) { |
|
| 134 | 134 | $this->_generatePagination($table); |
| 135 | 135 | } |
| 136 | 136 | } |
| 137 | 137 | |
| 138 | - protected function _applyStyleAttributes($table){ |
|
| 139 | - if(isset($this->_hiddenColumns)) |
|
| 138 | + protected function _applyStyleAttributes($table) { |
|
| 139 | + if (isset($this->_hiddenColumns)) |
|
| 140 | 140 | $this->_hideColumns(); |
| 141 | - if(isset($this->_colWidths)){ |
|
| 142 | - foreach ($this->_colWidths as $colIndex=>$width){ |
|
| 143 | - $table->setColWidth($colIndex,$width); |
|
| 141 | + if (isset($this->_colWidths)) { |
|
| 142 | + foreach ($this->_colWidths as $colIndex=>$width) { |
|
| 143 | + $table->setColWidth($colIndex, $width); |
|
| 144 | 144 | } |
| 145 | 145 | } |
| 146 | 146 | } |
| 147 | 147 | |
| 148 | - protected function _hideColumns(){ |
|
| 149 | - foreach ($this->_hiddenColumns as $colIndex){ |
|
| 148 | + protected function _hideColumns() { |
|
| 149 | + foreach ($this->_hiddenColumns as $colIndex) { |
|
| 150 | 150 | $this->_self->hideColumn($colIndex); |
| 151 | 151 | } |
| 152 | 152 | return $this; |
| 153 | 153 | } |
| 154 | 154 | |
| 155 | - protected function _generateHeader(HtmlTable $table,$captions){ |
|
| 155 | + protected function _generateHeader(HtmlTable $table, $captions) { |
|
| 156 | 156 | $table->setHeaderValues($captions); |
| 157 | - if(isset($this->_sortable)){ |
|
| 157 | + if (isset($this->_sortable)) { |
|
| 158 | 158 | $table->setSortable($this->_sortable); |
| 159 | 159 | } |
| 160 | 160 | } |
| 161 | 161 | |
| 162 | 162 | |
| 163 | 163 | |
| 164 | - protected function _generateContent($table){ |
|
| 164 | + protected function _generateContent($table) { |
|
| 165 | 165 | $objects=$this->_modelInstance; |
| 166 | - if(isset($this->_pagination)){ |
|
| 166 | + if (isset($this->_pagination)) { |
|
| 167 | 167 | $objects=$this->_pagination->getObjects($this->_modelInstance); |
| 168 | 168 | } |
| 169 | 169 | InstanceViewer::setIndex(0); |
| 170 | 170 | $fields=$this->_instanceViewer->getSimpleProperties(); |
| 171 | 171 | $groupByFields=$this->_instanceViewer->getGroupByFields(); |
| 172 | - if(!is_array($groupByFields)){ |
|
| 173 | - $table->fromDatabaseObjects($objects, function($instance) use($table,$fields){ |
|
| 174 | - return $this->_generateRow($instance, $fields,$table); |
|
| 172 | + if (!is_array($groupByFields)) { |
|
| 173 | + $table->fromDatabaseObjects($objects, function($instance) use($table, $fields){ |
|
| 174 | + return $this->_generateRow($instance, $fields, $table); |
|
| 175 | 175 | }); |
| 176 | - }else{ |
|
| 176 | + } else { |
|
| 177 | 177 | $activeValues=array_combine($groupByFields, array_fill(0, sizeof($groupByFields), null)); |
| 178 | 178 | $uuids=[]; |
| 179 | - $table->fromDatabaseObjects($objects, function($instance) use($table,$fields,&$activeValues,$groupByFields,&$uuids){ |
|
| 179 | + $table->fromDatabaseObjects($objects, function($instance) use($table, $fields, &$activeValues, $groupByFields, &$uuids){ |
|
| 180 | 180 | $this->_instanceViewer->setInstance($instance); |
| 181 | - foreach ($groupByFields as $index=>$gbField){ |
|
| 182 | - $this->_generateGroupByRow($index, $gbField, $table,$fields,$activeValues, $uuids); |
|
| 181 | + foreach ($groupByFields as $index=>$gbField) { |
|
| 182 | + $this->_generateGroupByRow($index, $gbField, $table, $fields, $activeValues, $uuids); |
|
| 183 | 183 | } |
| 184 | - return $this->_generateRow($instance, $fields,$table,null,$uuids); |
|
| 184 | + return $this->_generateRow($instance, $fields, $table, null, $uuids); |
|
| 185 | 185 | }); |
| 186 | 186 | } |
| 187 | - if($table->getRowCount()==0){ |
|
| 187 | + if ($table->getRowCount()==0) { |
|
| 188 | 188 | $result=$table->addRow(); |
| 189 | 189 | $result->mergeRow(); |
| 190 | 190 | $result->setValues([$this->_emptyMessage]); |
| 191 | 191 | } |
| 192 | 192 | } |
| 193 | 193 | |
| 194 | - protected function _generateGroupByRow($index,$gbField,$table,$fields,&$activeValues,&$uuids){ |
|
| 194 | + protected function _generateGroupByRow($index, $gbField, $table, $fields, &$activeValues, &$uuids) { |
|
| 195 | 195 | $newValue=$this->_instanceViewer->getValue($gbField); |
| 196 | - if($this->getElementContent($activeValues[$gbField])!==$this->getElementContent($newValue)){ |
|
| 197 | - if($index==0){ |
|
| 196 | + if ($this->getElementContent($activeValues[$gbField])!==$this->getElementContent($newValue)) { |
|
| 197 | + if ($index==0) { |
|
| 198 | 198 | $uuids=[]; |
| 199 | 199 | } |
| 200 | 200 | $uuid=uniqid("grp"); |
| 201 | 201 | $uuids[$gbField]=$uuid; |
| 202 | 202 | $id=$this->_instanceViewer->getIdentifier(); |
| 203 | - $result=$table->addMergeRow(sizeof($fields)+1,$newValue); |
|
| 203 | + $result=$table->addMergeRow(sizeof($fields)+1, $newValue); |
|
| 204 | 204 | $result->setIdentifier($this->identifier."-tr-gb-".$id); |
| 205 | - $result->setProperty("data-ajax",$id); |
|
| 206 | - $result->setProperty("data-group",$uuid); |
|
| 207 | - $result->addToProperty("class",$this->_rowClass); |
|
| 205 | + $result->setProperty("data-ajax", $id); |
|
| 206 | + $result->setProperty("data-group", $uuid); |
|
| 207 | + $result->addToProperty("class", $this->_rowClass); |
|
| 208 | 208 | $activeValues[$gbField]=$newValue; |
| 209 | 209 | } |
| 210 | 210 | } |
| 211 | 211 | |
| 212 | - private function getElementContent($elm){ |
|
| 213 | - if($elm instanceof HtmlDoubleElement){ |
|
| 212 | + private function getElementContent($elm) { |
|
| 213 | + if ($elm instanceof HtmlDoubleElement) { |
|
| 214 | 214 | return $elm->getTextContent(); |
| 215 | 215 | } |
| 216 | 216 | return $elm; |
| 217 | 217 | } |
| 218 | 218 | |
| 219 | - protected function _generateRow($instance,$fields,&$table,$checkedClass=null,$uuids=null){ |
|
| 219 | + protected function _generateRow($instance, $fields, &$table, $checkedClass=null, $uuids=null) { |
|
| 220 | 220 | $this->_instanceViewer->setInstance($instance); |
| 221 | 221 | InstanceViewer::$index++; |
| 222 | - $values= $this->_instanceViewer->getValues(); |
|
| 222 | + $values=$this->_instanceViewer->getValues(); |
|
| 223 | 223 | $id=$this->_instanceViewer->getIdentifier(); |
| 224 | 224 | $dataAjax=$id; |
| 225 | 225 | $id=$this->cleanIdentifier($id); |
| 226 | - if($this->_hasCheckboxes){ |
|
| 227 | - $ck=new HtmlCheckbox("ck-".$this->identifier."-".$id,""); |
|
| 226 | + if ($this->_hasCheckboxes) { |
|
| 227 | + $ck=new HtmlCheckbox("ck-".$this->identifier."-".$id, ""); |
|
| 228 | 228 | $checked=false; |
| 229 | - if(isset($this->_checkedCallback)){ |
|
| 229 | + if (isset($this->_checkedCallback)) { |
|
| 230 | 230 | $func=$this->_checkedCallback; |
| 231 | 231 | $checked=$func($instance); |
| 232 | 232 | } |
| 233 | 233 | $ck->setChecked($checked); |
| 234 | 234 | $ck->setOnChange("event.stopPropagation();"); |
| 235 | 235 | $field=$ck->getField(); |
| 236 | - $field->setProperty("value",$dataAjax); |
|
| 236 | + $field->setProperty("value", $dataAjax); |
|
| 237 | 237 | $field->setProperty("name", "selection[]"); |
| 238 | - if(isset($checkedClass)) |
|
| 238 | + if (isset($checkedClass)) |
|
| 239 | 239 | $field->setClass($checkedClass); |
| 240 | 240 | \array_unshift($values, $ck); |
| 241 | 241 | } |
| 242 | 242 | $result=$table->newRow(); |
| 243 | 243 | $result->setIdentifier($this->identifier."-tr-".$id); |
| 244 | - $result->setProperty("data-ajax",$dataAjax); |
|
| 244 | + $result->setProperty("data-ajax", $dataAjax); |
|
| 245 | 245 | $result->setValues($values); |
| 246 | - $result->addToProperty("class",$this->_rowClass); |
|
| 246 | + $result->addToProperty("class", $this->_rowClass); |
|
| 247 | 247 | $result->setPropertyValues("data-field", $fields); |
| 248 | - if(isset($uuids)){ |
|
| 249 | - $result->setProperty("data-child",implode(" ", $uuids)); |
|
| 248 | + if (isset($uuids)) { |
|
| 249 | + $result->setProperty("data-child", implode(" ", $uuids)); |
|
| 250 | 250 | } |
| 251 | 251 | return $result; |
| 252 | 252 | } |
| 253 | 253 | |
| 254 | - protected function _generatePagination($table){ |
|
| 255 | - if(isset($this->_toolbar)){ |
|
| 256 | - if($this->_toolbarPosition==PositionInTable::FOOTER) |
|
| 254 | + protected function _generatePagination($table) { |
|
| 255 | + if (isset($this->_toolbar)) { |
|
| 256 | + if ($this->_toolbarPosition==PositionInTable::FOOTER) |
|
| 257 | 257 | $this->_toolbar->setFloated("left"); |
| 258 | 258 | } |
| 259 | 259 | $footer=$table->getFooter(); |
@@ -261,13 +261,13 @@ discard block |
||
| 261 | 261 | $footer->addValues($this->_pagination->generateMenu($this->identifier)); |
| 262 | 262 | } |
| 263 | 263 | |
| 264 | - protected function _associatePaginationBehavior(JsUtils $js=NULL,$offset=null){ |
|
| 265 | - if(isset($this->_urls["refresh"])){ |
|
| 264 | + protected function _associatePaginationBehavior(JsUtils $js=NULL, $offset=null) { |
|
| 265 | + if (isset($this->_urls["refresh"])) { |
|
| 266 | 266 | $menu=$this->_pagination->getMenu(); |
| 267 | - if(isset($menu) && isset($js)){ |
|
| 268 | - $js->postOnClick("#".$menu->getIdentifier()." .item",$this->_urls["refresh"],"{'p':$(this).attr('data-page'),'_model':'".JString::doubleBackSlashes($this->_model)."'}",$this->getRefreshSelector(),["preventDefault"=>false,"jqueryDone"=>"replaceWith","hasLoader"=>false,"jsCallback"=>'$("#'.$this->identifier.'").trigger("pageChange");$("#'.$this->identifier.'").trigger("activeRowChange");']); |
|
| 267 | + if (isset($menu) && isset($js)) { |
|
| 268 | + $js->postOnClick("#".$menu->getIdentifier()." .item", $this->_urls["refresh"], "{'p':$(this).attr('data-page'),'_model':'".JString::doubleBackSlashes($this->_model)."'}", $this->getRefreshSelector(), ["preventDefault"=>false, "jqueryDone"=>"replaceWith", "hasLoader"=>false, "jsCallback"=>'$("#'.$this->identifier.'").trigger("pageChange");$("#'.$this->identifier.'").trigger("activeRowChange");']); |
|
| 269 | 269 | $page=URequest::post("p"); |
| 270 | - if(isset($page)){ |
|
| 270 | + if (isset($page)) { |
|
| 271 | 271 | $js->execAtLast('$("#'.$this->getIdentifier().' .pagination").children("a.item").removeClass("active");$("#'.$this->getIdentifier().' .pagination").children("a.item[data-page='.$page.']:not(.no-active)").addClass("active");'); |
| 272 | 272 | } |
| 273 | 273 | |
@@ -275,38 +275,38 @@ discard block |
||
| 275 | 275 | } |
| 276 | 276 | } |
| 277 | 277 | |
| 278 | - protected function _compileSearchFieldBehavior(JsUtils $js=NULL){ |
|
| 279 | - if(isset($this->_searchField) && isset($js) && isset($this->_urls["refresh"])){ |
|
| 280 | - $this->_searchField->postOn("change", $this->_urls["refresh"],"{'s':$(self).val(),'_model':'".JString::doubleBackSlashes($this->_model)."'}","#".$this->identifier." tbody",["preventDefault"=>false,"jqueryDone"=>"replaceWith","hasLoader"=>"internal","jsCallback"=>'$("#'.$this->identifier.'").trigger("searchTerminate",[$(self).val()]);']); |
|
| 278 | + protected function _compileSearchFieldBehavior(JsUtils $js=NULL) { |
|
| 279 | + if (isset($this->_searchField) && isset($js) && isset($this->_urls["refresh"])) { |
|
| 280 | + $this->_searchField->postOn("change", $this->_urls["refresh"], "{'s':$(self).val(),'_model':'".JString::doubleBackSlashes($this->_model)."'}", "#".$this->identifier." tbody", ["preventDefault"=>false, "jqueryDone"=>"replaceWith", "hasLoader"=>"internal", "jsCallback"=>'$("#'.$this->identifier.'").trigger("searchTerminate",[$(self).val()]);']); |
|
| 281 | 281 | } |
| 282 | 282 | } |
| 283 | - protected function _associateSearchFieldBehavior(JsUtils $js=NULL,$offset=null){ |
|
| 283 | + protected function _associateSearchFieldBehavior(JsUtils $js=NULL, $offset=null) { |
|
| 284 | 284 | |
| 285 | 285 | } |
| 286 | 286 | |
| 287 | - protected function _getFieldName($index){ |
|
| 287 | + protected function _getFieldName($index) { |
|
| 288 | 288 | $fieldName=parent::_getFieldName($index); |
| 289 | - if(\is_object($fieldName)) |
|
| 289 | + if (\is_object($fieldName)) |
|
| 290 | 290 | $fieldName="field-".$index; |
| 291 | 291 | return $fieldName."[]"; |
| 292 | 292 | } |
| 293 | 293 | |
| 294 | - protected function _getFieldCaption($index){ |
|
| 294 | + protected function _getFieldCaption($index) { |
|
| 295 | 295 | return null; |
| 296 | 296 | } |
| 297 | 297 | |
| 298 | - protected function _setToolbarPosition($table,$captions=NULL){ |
|
| 299 | - switch ($this->_toolbarPosition){ |
|
| 298 | + protected function _setToolbarPosition($table, $captions=NULL) { |
|
| 299 | + switch ($this->_toolbarPosition) { |
|
| 300 | 300 | case PositionInTable::BEFORETABLE: |
| 301 | 301 | case PositionInTable::AFTERTABLE: |
| 302 | - if(isset($this->_compileParts)===false){ |
|
| 302 | + if (isset($this->_compileParts)===false) { |
|
| 303 | 303 | $this->content[$this->_toolbarPosition]=$this->_toolbar; |
| 304 | 304 | } |
| 305 | 305 | break; |
| 306 | 306 | case PositionInTable::HEADER: |
| 307 | 307 | case PositionInTable::FOOTER: |
| 308 | 308 | case PositionInTable::BODY: |
| 309 | - $this->addToolbarRow($this->_toolbarPosition,$table, $captions); |
|
| 309 | + $this->addToolbarRow($this->_toolbarPosition, $table, $captions); |
|
| 310 | 310 | break; |
| 311 | 311 | } |
| 312 | 312 | } |
@@ -318,16 +318,16 @@ discard block |
||
| 318 | 318 | * @param callable $callback function called after the field compilation |
| 319 | 319 | * @return DataTable |
| 320 | 320 | */ |
| 321 | - public function afterCompile($index,$callback){ |
|
| 322 | - $this->_instanceViewer->afterCompile($index,$callback); |
|
| 321 | + public function afterCompile($index, $callback) { |
|
| 322 | + $this->_instanceViewer->afterCompile($index, $callback); |
|
| 323 | 323 | return $this; |
| 324 | 324 | } |
| 325 | 325 | |
| 326 | - private function addToolbarRow($part,$table,$captions){ |
|
| 326 | + private function addToolbarRow($part, $table, $captions) { |
|
| 327 | 327 | $hasPart=$table->hasPart($part); |
| 328 | - if($hasPart){ |
|
| 328 | + if ($hasPart) { |
|
| 329 | 329 | $row=$table->getPart($part)->addRow(\sizeof($captions)); |
| 330 | - }else{ |
|
| 330 | + } else { |
|
| 331 | 331 | $row=$table->getPart($part)->getRow(0); |
| 332 | 332 | } |
| 333 | 333 | $row->mergeCol(); |
@@ -339,7 +339,7 @@ discard block |
||
| 339 | 339 | * @see Widget::getHtmlComponent() |
| 340 | 340 | * @return HtmlTable |
| 341 | 341 | */ |
| 342 | - public function getHtmlComponent(){ |
|
| 342 | + public function getHtmlComponent() { |
|
| 343 | 343 | return $this->content["table"]; |
| 344 | 344 | } |
| 345 | 345 | |
@@ -354,13 +354,13 @@ discard block |
||
| 354 | 354 | * @return DataTable |
| 355 | 355 | */ |
| 356 | 356 | public function setUrls($urls) { |
| 357 | - if(\is_array($urls)){ |
|
| 358 | - $this->_urls["refresh"]=JArray::getValue($urls, "refresh",0); |
|
| 359 | - $this->_urls["edit"]=JArray::getValue($urls, "edit",1); |
|
| 360 | - $this->_urls["delete"]=JArray::getValue($urls, "delete",2); |
|
| 361 | - $this->_urls["display"]=JArray::getValue($urls, "display",3); |
|
| 362 | - }else{ |
|
| 363 | - $this->_urls=["refresh"=>$urls,"edit"=>$urls,"delete"=>$urls,"display"=>$urls]; |
|
| 357 | + if (\is_array($urls)) { |
|
| 358 | + $this->_urls["refresh"]=JArray::getValue($urls, "refresh", 0); |
|
| 359 | + $this->_urls["edit"]=JArray::getValue($urls, "edit", 1); |
|
| 360 | + $this->_urls["delete"]=JArray::getValue($urls, "delete", 2); |
|
| 361 | + $this->_urls["display"]=JArray::getValue($urls, "display", 3); |
|
| 362 | + } else { |
|
| 363 | + $this->_urls=["refresh"=>$urls, "edit"=>$urls, "delete"=>$urls, "display"=>$urls]; |
|
| 364 | 364 | } |
| 365 | 365 | return $this; |
| 366 | 366 | } |
@@ -373,8 +373,8 @@ discard block |
||
| 373 | 373 | * @param number $pages_visibles The number of visible pages in the Pagination component |
| 374 | 374 | * @return DataTable |
| 375 | 375 | */ |
| 376 | - public function paginate($page,$total_rowcount,$items_per_page=10,$pages_visibles=null){ |
|
| 377 | - $this->_pagination=new Pagination($items_per_page,$pages_visibles,$page,$total_rowcount); |
|
| 376 | + public function paginate($page, $total_rowcount, $items_per_page=10, $pages_visibles=null) { |
|
| 377 | + $this->_pagination=new Pagination($items_per_page, $pages_visibles, $page, $total_rowcount); |
|
| 378 | 378 | return $this; |
| 379 | 379 | } |
| 380 | 380 | |
@@ -385,8 +385,8 @@ discard block |
||
| 385 | 385 | * @param number $pages_visibles The number of visible pages in the Pagination component |
| 386 | 386 | * @return DataTable |
| 387 | 387 | */ |
| 388 | - public function autoPaginate($page=1,$items_per_page=10,$pages_visibles=4){ |
|
| 389 | - $this->_pagination=new Pagination($items_per_page,$pages_visibles,$page); |
|
| 388 | + public function autoPaginate($page=1, $items_per_page=10, $pages_visibles=4) { |
|
| 389 | + $this->_pagination=new Pagination($items_per_page, $pages_visibles, $page); |
|
| 390 | 390 | return $this; |
| 391 | 391 | } |
| 392 | 392 | |
@@ -396,7 +396,7 @@ discard block |
||
| 396 | 396 | * @param array $compileParts |
| 397 | 397 | * @return DataTable |
| 398 | 398 | */ |
| 399 | - public function refresh($compileParts=["tbody"]){ |
|
| 399 | + public function refresh($compileParts=["tbody"]) { |
|
| 400 | 400 | $this->_compileParts=$compileParts; |
| 401 | 401 | return $this; |
| 402 | 402 | } |
@@ -407,14 +407,14 @@ discard block |
||
| 407 | 407 | * @param string $position |
| 408 | 408 | * @return \Ajax\common\html\HtmlDoubleElement |
| 409 | 409 | */ |
| 410 | - public function addSearchInToolbar($position=Direction::RIGHT){ |
|
| 410 | + public function addSearchInToolbar($position=Direction::RIGHT) { |
|
| 411 | 411 | return $this->addInToolbar($this->getSearchField())->setPosition($position); |
| 412 | 412 | } |
| 413 | 413 | |
| 414 | - public function getSearchField(){ |
|
| 415 | - if(isset($this->_searchField)===false){ |
|
| 416 | - $this->_searchField=new HtmlInput("search-".$this->identifier,"search","","Search..."); |
|
| 417 | - $this->_searchField->addIcon("search",Direction::RIGHT); |
|
| 414 | + public function getSearchField() { |
|
| 415 | + if (isset($this->_searchField)===false) { |
|
| 416 | + $this->_searchField=new HtmlInput("search-".$this->identifier, "search", "", "Search..."); |
|
| 417 | + $this->_searchField->addIcon("search", Direction::RIGHT); |
|
| 418 | 418 | } |
| 419 | 419 | return $this->_searchField; |
| 420 | 420 | } |
@@ -434,7 +434,7 @@ discard block |
||
| 434 | 434 | * Returns a form corresponding to the Datatable |
| 435 | 435 | * @return \Ajax\semantic\html\collections\form\HtmlForm |
| 436 | 436 | */ |
| 437 | - public function asForm(){ |
|
| 437 | + public function asForm() { |
|
| 438 | 438 | return $this->getForm(); |
| 439 | 439 | } |
| 440 | 440 | |
@@ -442,7 +442,7 @@ discard block |
||
| 442 | 442 | |
| 443 | 443 | protected function getTargetSelector($op) { |
| 444 | 444 | $result=$this->_targetSelector; |
| 445 | - if(!isset($result[$op])) |
|
| 445 | + if (!isset($result[$op])) |
|
| 446 | 446 | $result="#".$this->identifier; |
| 447 | 447 | return $result[$op]; |
| 448 | 448 | } |
@@ -453,15 +453,15 @@ discard block |
||
| 453 | 453 | * @return DataTable |
| 454 | 454 | */ |
| 455 | 455 | public function setTargetSelector($_targetSelector) { |
| 456 | - if(!\is_array($_targetSelector)){ |
|
| 457 | - $_targetSelector=["edit"=>$_targetSelector,"delete"=>$_targetSelector]; |
|
| 456 | + if (!\is_array($_targetSelector)) { |
|
| 457 | + $_targetSelector=["edit"=>$_targetSelector, "delete"=>$_targetSelector]; |
|
| 458 | 458 | } |
| 459 | 459 | $this->_targetSelector=$_targetSelector; |
| 460 | 460 | return $this; |
| 461 | 461 | } |
| 462 | 462 | |
| 463 | 463 | public function getRefreshSelector() { |
| 464 | - if(isset($this->_refreshSelector)) |
|
| 464 | + if (isset($this->_refreshSelector)) |
|
| 465 | 465 | return $this->_refreshSelector; |
| 466 | 466 | return "#".$this->identifier." tbody"; |
| 467 | 467 | } |
@@ -479,9 +479,9 @@ discard block |
||
| 479 | 479 | * {@inheritDoc} |
| 480 | 480 | * @see \Ajax\common\Widget::show() |
| 481 | 481 | */ |
| 482 | - public function show($modelInstance){ |
|
| 483 | - if(\is_array($modelInstance)){ |
|
| 484 | - if(isset($modelInstance[0]) && \is_array(array_values($modelInstance)[0])) |
|
| 482 | + public function show($modelInstance) { |
|
| 483 | + if (\is_array($modelInstance)) { |
|
| 484 | + if (isset($modelInstance[0]) && \is_array(array_values($modelInstance)[0])) |
|
| 485 | 485 | $modelInstance=\json_decode(\json_encode($modelInstance), FALSE); |
| 486 | 486 | } |
| 487 | 487 | $this->_modelInstance=$modelInstance; |
@@ -516,37 +516,37 @@ discard block |
||
| 516 | 516 | return $this; |
| 517 | 517 | } |
| 518 | 518 | |
| 519 | - public function setActiveRowSelector($class="active",$event="click",$multiple=false){ |
|
| 520 | - $this->_self->setActiveRowSelector($class,$event,$multiple); |
|
| 519 | + public function setActiveRowSelector($class="active", $event="click", $multiple=false) { |
|
| 520 | + $this->_self->setActiveRowSelector($class, $event, $multiple); |
|
| 521 | 521 | return $this; |
| 522 | 522 | } |
| 523 | 523 | |
| 524 | - public function hideColumn($colIndex){ |
|
| 525 | - if(!\is_array($this->_hiddenColumns)) |
|
| 524 | + public function hideColumn($colIndex) { |
|
| 525 | + if (!\is_array($this->_hiddenColumns)) |
|
| 526 | 526 | $this->_hiddenColumns=[]; |
| 527 | 527 | $this->_hiddenColumns[]=$colIndex; |
| 528 | 528 | return $this; |
| 529 | 529 | } |
| 530 | 530 | |
| 531 | - public function setColWidth($colIndex,$width){ |
|
| 531 | + public function setColWidth($colIndex, $width) { |
|
| 532 | 532 | $this->_colWidths[$colIndex]=$width; |
| 533 | 533 | return $this; |
| 534 | 534 | } |
| 535 | 535 | public function setColWidths($_colWidths) { |
| 536 | - $this->_colWidths = $_colWidths; |
|
| 536 | + $this->_colWidths=$_colWidths; |
|
| 537 | 537 | return $this; |
| 538 | 538 | } |
| 539 | 539 | |
| 540 | - public function setColAlignment($colIndex,$alignment){ |
|
| 541 | - $this->content["table"]->setColAlignment($colIndex,$alignment); |
|
| 540 | + public function setColAlignment($colIndex, $alignment) { |
|
| 541 | + $this->content["table"]->setColAlignment($colIndex, $alignment); |
|
| 542 | 542 | return $this; |
| 543 | 543 | } |
| 544 | 544 | |
| 545 | - public function trigger($event,$params="[]"){ |
|
| 546 | - return $this->getHtmlComponent()->trigger($event,$params); |
|
| 545 | + public function trigger($event, $params="[]") { |
|
| 546 | + return $this->getHtmlComponent()->trigger($event, $params); |
|
| 547 | 547 | } |
| 548 | 548 | |
| 549 | - public function onActiveRowChange($jsCode){ |
|
| 549 | + public function onActiveRowChange($jsCode) { |
|
| 550 | 550 | $this->getHtmlComponent()->onActiveRowChange($jsCode); |
| 551 | 551 | return $this; |
| 552 | 552 | } |
@@ -574,7 +574,7 @@ discard block |
||
| 574 | 574 | * @param mixed $_displayBehavior |
| 575 | 575 | */ |
| 576 | 576 | public function setDisplayBehavior($_displayBehavior) { |
| 577 | - $this->_displayBehavior = $_displayBehavior; |
|
| 577 | + $this->_displayBehavior=$_displayBehavior; |
|
| 578 | 578 | } |
| 579 | 579 | /** |
| 580 | 580 | * @return mixed |
@@ -61,16 +61,19 @@ discard block |
||
| 61 | 61 | $js->execOn("mouseover", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'visible');",["preventDefault"=>false,"stopPropagation"=>true]); |
| 62 | 62 | $js->execOn("mouseout", "#".$this->identifier." tr", "$(event.target).closest('tr').find('.visibleover').css('visibility', 'hidden');",["preventDefault"=>false,"stopPropagation"=>true]); |
| 63 | 63 | } |
| 64 | - if(\is_array($this->_deleteBehavior)) |
|
| 65 | - $this->_generateBehavior("delete",$this->_deleteBehavior, $js); |
|
| 66 | - if(\is_array($this->_editBehavior)) |
|
| 67 | - $this->_generateBehavior("edit",$this->_editBehavior,$js); |
|
| 64 | + if(\is_array($this->_deleteBehavior)) { |
|
| 65 | + $this->_generateBehavior("delete",$this->_deleteBehavior, $js); |
|
| 66 | + } |
|
| 67 | + if(\is_array($this->_editBehavior)) { |
|
| 68 | + $this->_generateBehavior("edit",$this->_editBehavior,$js); |
|
| 69 | + } |
|
| 68 | 70 | if(\is_array($this->_displayBehavior)){ |
| 69 | 71 | $this->_generateBehavior("display",$this->_displayBehavior,$js); |
| 70 | 72 | } |
| 71 | 73 | parent::run($js); |
| 72 | - if(isset($this->_pagination)) |
|
| 73 | - $this->_associatePaginationBehavior($js,$offset); |
|
| 74 | + if(isset($this->_pagination)) { |
|
| 75 | + $this->_associatePaginationBehavior($js,$offset); |
|
| 76 | + } |
|
| 74 | 77 | $this->_associateSearchFieldBehavior($js,$offset); |
| 75 | 78 | |
| 76 | 79 | } |
@@ -105,8 +108,9 @@ discard block |
||
| 105 | 108 | $table->setRowCount(0, \sizeof($captions)); |
| 106 | 109 | $this->_generateHeader($table,$captions); |
| 107 | 110 | |
| 108 | - if(isset($this->_compileParts)) |
|
| 109 | - $table->setCompileParts($this->_compileParts); |
|
| 111 | + if(isset($this->_compileParts)) { |
|
| 112 | + $table->setCompileParts($this->_compileParts); |
|
| 113 | + } |
|
| 110 | 114 | |
| 111 | 115 | $this->_generateContent($table); |
| 112 | 116 | |
@@ -136,8 +140,9 @@ discard block |
||
| 136 | 140 | } |
| 137 | 141 | |
| 138 | 142 | protected function _applyStyleAttributes($table){ |
| 139 | - if(isset($this->_hiddenColumns)) |
|
| 140 | - $this->_hideColumns(); |
|
| 143 | + if(isset($this->_hiddenColumns)) { |
|
| 144 | + $this->_hideColumns(); |
|
| 145 | + } |
|
| 141 | 146 | if(isset($this->_colWidths)){ |
| 142 | 147 | foreach ($this->_colWidths as $colIndex=>$width){ |
| 143 | 148 | $table->setColWidth($colIndex,$width); |
@@ -173,7 +178,7 @@ discard block |
||
| 173 | 178 | $table->fromDatabaseObjects($objects, function($instance) use($table,$fields){ |
| 174 | 179 | return $this->_generateRow($instance, $fields,$table); |
| 175 | 180 | }); |
| 176 | - }else{ |
|
| 181 | + } else{ |
|
| 177 | 182 | $activeValues=array_combine($groupByFields, array_fill(0, sizeof($groupByFields), null)); |
| 178 | 183 | $uuids=[]; |
| 179 | 184 | $table->fromDatabaseObjects($objects, function($instance) use($table,$fields,&$activeValues,$groupByFields,&$uuids){ |
@@ -235,8 +240,9 @@ discard block |
||
| 235 | 240 | $field=$ck->getField(); |
| 236 | 241 | $field->setProperty("value",$dataAjax); |
| 237 | 242 | $field->setProperty("name", "selection[]"); |
| 238 | - if(isset($checkedClass)) |
|
| 239 | - $field->setClass($checkedClass); |
|
| 243 | + if(isset($checkedClass)) { |
|
| 244 | + $field->setClass($checkedClass); |
|
| 245 | + } |
|
| 240 | 246 | \array_unshift($values, $ck); |
| 241 | 247 | } |
| 242 | 248 | $result=$table->newRow(); |
@@ -253,8 +259,9 @@ discard block |
||
| 253 | 259 | |
| 254 | 260 | protected function _generatePagination($table){ |
| 255 | 261 | if(isset($this->_toolbar)){ |
| 256 | - if($this->_toolbarPosition==PositionInTable::FOOTER) |
|
| 257 | - $this->_toolbar->setFloated("left"); |
|
| 262 | + if($this->_toolbarPosition==PositionInTable::FOOTER) { |
|
| 263 | + $this->_toolbar->setFloated("left"); |
|
| 264 | + } |
|
| 258 | 265 | } |
| 259 | 266 | $footer=$table->getFooter(); |
| 260 | 267 | $footer->mergeCol(); |
@@ -286,8 +293,9 @@ discard block |
||
| 286 | 293 | |
| 287 | 294 | protected function _getFieldName($index){ |
| 288 | 295 | $fieldName=parent::_getFieldName($index); |
| 289 | - if(\is_object($fieldName)) |
|
| 290 | - $fieldName="field-".$index; |
|
| 296 | + if(\is_object($fieldName)) { |
|
| 297 | + $fieldName="field-".$index; |
|
| 298 | + } |
|
| 291 | 299 | return $fieldName."[]"; |
| 292 | 300 | } |
| 293 | 301 | |
@@ -327,7 +335,7 @@ discard block |
||
| 327 | 335 | $hasPart=$table->hasPart($part); |
| 328 | 336 | if($hasPart){ |
| 329 | 337 | $row=$table->getPart($part)->addRow(\sizeof($captions)); |
| 330 | - }else{ |
|
| 338 | + } else{ |
|
| 331 | 339 | $row=$table->getPart($part)->getRow(0); |
| 332 | 340 | } |
| 333 | 341 | $row->mergeCol(); |
@@ -359,7 +367,7 @@ discard block |
||
| 359 | 367 | $this->_urls["edit"]=JArray::getValue($urls, "edit",1); |
| 360 | 368 | $this->_urls["delete"]=JArray::getValue($urls, "delete",2); |
| 361 | 369 | $this->_urls["display"]=JArray::getValue($urls, "display",3); |
| 362 | - }else{ |
|
| 370 | + } else{ |
|
| 363 | 371 | $this->_urls=["refresh"=>$urls,"edit"=>$urls,"delete"=>$urls,"display"=>$urls]; |
| 364 | 372 | } |
| 365 | 373 | return $this; |
@@ -442,8 +450,9 @@ discard block |
||
| 442 | 450 | |
| 443 | 451 | protected function getTargetSelector($op) { |
| 444 | 452 | $result=$this->_targetSelector; |
| 445 | - if(!isset($result[$op])) |
|
| 446 | - $result="#".$this->identifier; |
|
| 453 | + if(!isset($result[$op])) { |
|
| 454 | + $result="#".$this->identifier; |
|
| 455 | + } |
|
| 447 | 456 | return $result[$op]; |
| 448 | 457 | } |
| 449 | 458 | |
@@ -461,8 +470,9 @@ discard block |
||
| 461 | 470 | } |
| 462 | 471 | |
| 463 | 472 | public function getRefreshSelector() { |
| 464 | - if(isset($this->_refreshSelector)) |
|
| 465 | - return $this->_refreshSelector; |
|
| 473 | + if(isset($this->_refreshSelector)) { |
|
| 474 | + return $this->_refreshSelector; |
|
| 475 | + } |
|
| 466 | 476 | return "#".$this->identifier." tbody"; |
| 467 | 477 | } |
| 468 | 478 | |
@@ -481,8 +491,9 @@ discard block |
||
| 481 | 491 | */ |
| 482 | 492 | public function show($modelInstance){ |
| 483 | 493 | if(\is_array($modelInstance)){ |
| 484 | - if(isset($modelInstance[0]) && \is_array(array_values($modelInstance)[0])) |
|
| 485 | - $modelInstance=\json_decode(\json_encode($modelInstance), FALSE); |
|
| 494 | + if(isset($modelInstance[0]) && \is_array(array_values($modelInstance)[0])) { |
|
| 495 | + $modelInstance=\json_decode(\json_encode($modelInstance), FALSE); |
|
| 496 | + } |
|
| 486 | 497 | } |
| 487 | 498 | $this->_modelInstance=$modelInstance; |
| 488 | 499 | } |
@@ -522,8 +533,9 @@ discard block |
||
| 522 | 533 | } |
| 523 | 534 | |
| 524 | 535 | public function hideColumn($colIndex){ |
| 525 | - if(!\is_array($this->_hiddenColumns)) |
|
| 526 | - $this->_hiddenColumns=[]; |
|
| 536 | + if(!\is_array($this->_hiddenColumns)) { |
|
| 537 | + $this->_hiddenColumns=[]; |
|
| 538 | + } |
|
| 527 | 539 | $this->_hiddenColumns[]=$colIndex; |
| 528 | 540 | return $this; |
| 529 | 541 | } |
@@ -28,8 +28,8 @@ discard block |
||
| 28 | 28 | |
| 29 | 29 | public function __construct($autoCompile=true) { |
| 30 | 30 | $this->autoCompile=$autoCompile; |
| 31 | - $this->components=array (); |
|
| 32 | - $this->htmlComponents=array (); |
|
| 31 | + $this->components=array(); |
|
| 32 | + $this->htmlComponents=array(); |
|
| 33 | 33 | } |
| 34 | 34 | |
| 35 | 35 | public function isAutoCompile() { |
@@ -42,9 +42,9 @@ discard block |
||
| 42 | 42 | } |
| 43 | 43 | |
| 44 | 44 | public function compile($internal=false) { |
| 45 | - if ($internal===false&&$this->autoCompile===true) |
|
| 45 | + if ($internal===false && $this->autoCompile===true) |
|
| 46 | 46 | throw new \Exception("Impossible to compile if autoCompile is set to 'true'"); |
| 47 | - foreach ( $this->components as $component ) { |
|
| 47 | + foreach ($this->components as $component) { |
|
| 48 | 48 | $component->compile(); |
| 49 | 49 | } |
| 50 | 50 | } |
@@ -70,12 +70,12 @@ discard block |
||
| 70 | 70 | } |
| 71 | 71 | |
| 72 | 72 | public function compileHtml(JsUtils $js=NULL, &$view=NULL) { |
| 73 | - foreach ( $this->htmlComponents as $htmlComponent ) { |
|
| 73 | + foreach ($this->htmlComponents as $htmlComponent) { |
|
| 74 | 74 | $htmlComponent->compile($js, $view); |
| 75 | 75 | } |
| 76 | 76 | } |
| 77 | 77 | |
| 78 | - public function matchHtmlComponents($callback){ |
|
| 79 | - return array_filter($this->htmlComponents,$callback); |
|
| 78 | + public function matchHtmlComponents($callback) { |
|
| 79 | + return array_filter($this->htmlComponents, $callback); |
|
| 80 | 80 | } |
| 81 | 81 | } |