isPaging == false) UniteFunctionsUC::throwError("The paging should be available"); } /** * validate that it's inside top actions */ private function validateTopActions(){ if($this->isInsideTopActions == false) UniteFunctionsUC::throwError("The top actions form should be started"); } private function a_______GETTERS_______(){} /** * get page from get */ private function getPageFromGet(){ $page = UniteFunctionsUC::getGetVar(self::GET_FIELD_PAGE,1,UniteFunctionsUC::SANITIZE_ID); $page = (int)$page; return($page); } /** * get inpage from get */ private function getInPageFromGet(){ $inpage = UniteFunctionsUC::getGetVar(self::GET_FIELD_INPAGE, $this->defaultInPage, UniteFunctionsUC::SANITIZE_ID); $inpage = (int)$inpage; return($inpage); } /** * get search value from get */ private function getSearchValueFromGet(){ $search = UniteFunctionsUC::getGetVar(self::GET_FIELD_SEARCH, "", UniteFunctionsUC::SANITIZE_TEXT_FIELD); return($search); } /** * get order value from get */ private function getOrderValueFromGet(){ $order = UniteFunctionsUC::getGetVar(self::GET_FIELD_ORDER, "", UniteFunctionsUC::SANITIZE_TEXT_FIELD); if(empty($order)) $order = $this->defaultOrderby; return($order); } /** * get all available get fields */ private function getGetFieldsNames($includeBaseFields = false, $isBaseOnly = false){ $fields = array(); if($includeBaseFields == true){ $fields[] = self::GET_FIELD_OPTION; $fields[] = self::GET_FIELD_VIEW; if($isBaseOnly == true) return($fields); } $fields[] = self::GET_FIELD_PAGE; $fields[] = self::GET_FIELD_INPAGE; $fields[] = self::GET_FIELD_SEARCH; $fields[] = self::GET_FIELD_CATEGORY; $fields[] = self::GET_FIELD_ORDER; $fields[] = self::GET_FIELD_ORDER_DIR; return($fields); } /** * get field values from get, from names array */ private function getArrFieldsValuesFromGet($fieldNames, $exceptField = null){ $arrFields = array(); foreach($fieldNames as $name){ if(!empty($exceptField) && $name == $exceptField) continue; $fieldValue = UniteFunctionsUC::getGetVar($name, "", UniteFunctionsUC::SANITIZE_TEXT_FIELD); if(!empty($fieldValue)) $arrFields[$name] = $fieldValue; } return($arrFields); } /** * get array of fields from get */ private function getArrGetFields($includeBaseFields = false, $exceptField = null){ $fieldNames = $this->getGetFieldsNames($includeBaseFields); $arrFields = $this->getArrFieldsValuesFromGet($fieldNames, $exceptField); return($arrFields); } /** * get base fields obnly */ private function getArrBaseFields(){ $fieldNames = $this->getGetFieldsNames(true, true); $arrFields = $this->getArrFieldsValuesFromGet($fieldNames); return($arrFields); } /** * get page url */ private function getUrlPage($page = null,$exceptField=null){ $arrGetFields = $this->getArrGetFields(false, $exceptField); if(!empty($page)) $arrGetFields[self::GET_FIELD_PAGE] = $page; $urlPage = UniteFunctionsUC::addUrlParams($this->baseUrl, $arrGetFields); return($urlPage); } private function a_______SETTERS_______(){} /** * set default orderby */ public function setDefaultOrderby($orderby){ $this->defaultOrderby = $orderby; } private function a_______GENERAL_GET_______(){} /** * get paging options from get and default */ public function getPagingOptions(){ $output = array(); $output["page"] = $this->getPageFromGet(); $output["inpage"] = $this->getInPageFromGet(); $output["search"] = $this->getSearchValueFromGet(); //take ordering $ordering = $this->getOrderValueFromGet(); $ordering = str_replace("_desc", " desc", $ordering); $output["ordering"] = $ordering; return($output); } /** * set paging data */ public function setPagingData($baseURl, $data){ $this->baseUrl = $baseURl; $this->total = UniteFunctionsUC::getVal($data, "total"); $this->page = UniteFunctionsUC::getVal($data, "page"); $this->inPage = UniteFunctionsUC::getVal($data, "inpage"); $this->numPages = UniteFunctionsUC::getVal($data, "num_pages"); UniteFunctionsUC::validateNotEmpty($this->inPage, "in page"); if($this->total > 0){ UniteFunctionsUC::validateNotEmpty($this->page, "page"); UniteFunctionsUC::validateNotEmpty($this->numPages, "num pages"); } $this->isPaging = true; } private function a_______GET_HTML_______(){} /** * convert fields array to html hidden inputs */ private function arrFieldsToHtmlHiddenInputs($arrGetFields){ $html = ""; foreach($arrGetFields as $name=>$value) $html .= self::TAB3.HelperHtmlUC::getHiddenInputField($name, $value).self::BR; return($html); } /** * get all hidden fields html */ private function getHtmlHiddenInputs($except_field){ $arrGetFields = $this->getArrGetFields(true, $except_field); $html = $this->arrFieldsToHtmlHiddenInputs($arrGetFields); return($html); } /** * get all hidden fields html */ private function getHtmlHiddenBaseInputs(){ $arrGetFields = $this->getArrBaseFields(); $html = $this->arrFieldsToHtmlHiddenInputs($arrGetFields); return($html); } /** * put actions form end */ public function putActionsFormStart(){ $this->validatePaging(); $url = $this->baseUrl; $url = htmlspecialchars($url); $html = ""; $html .= self::TAB2."
".self::BR; $this->isInsideTopActions = false; echo $html; } /** * get input with count content, about 10,25,50,100 */ public function getHTMLInpageSelect(){ $inpage = $this->getInPageFromGet(); $arrNumbers = array( "10","25","50","100" ); $fieldInpage = self::GET_FIELD_INPAGE; $htmlSelect = HelperHtmlUC::getHTMLSelect($arrNumbers, $inpage, "name='{$fieldInpage}' class='unite-tableitems-selectrecords' onchange='this.form.submit()'"); $htmlGetFields = $this->getHtmlHiddenInputs($fieldInpage); $html = ""; if($this->isInsideTopActions == false) $html .= "'; } return $html; } /** * get pagination html */ private function getPaginationHtml(){ $this->validatePaging(); $item_per_page = $this->inPage; $current_page = $this->page; $total_records = $this->total; $total_pages = $this->numPages; $isShowExtras = true; $pagination = ''; if($total_pages > 0 && $total_pages != 1 && $current_page <= $total_pages){ //verify total pages and current page number $pagination .= '