/** * Get a table records * * @param array $options * * @return array */ public function getRowsArraysTable($options = NULL) { $newRows = array(); $sortRows = array(); $newRow = array(); //------------------- // Получим параметры запроса $request = $this->getRequest(); $params = $request->getParams(); $table = $params['table']; $fromPage = $options['fromPage']; $toPage = $options['toPage']; if ($options['sortColumn']) { $sortColumn = $options['sortColumn']; } else { $sortColumn = 'id'; } $ascDescFlg = $options['ascDescFlg']; $count = 1; if ($table == 'admin.blog_posts') { // Получим все строки сообщений с учетом параметров $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { } else { $newRow[$key] = $value; } } $newRows[] = $newRow; $newRow = array(); } return $newRows; } if ($table == 'admin.blog_posts_tags') { // Получим все строки сообщений с учетом параметров $options['offset'] = NULL; $options['limit'] = NULL; $options['sort'] = FALSE; $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { if ($key == '_tags_') { $arrValues = $value; $arrPost = $newRow; foreach ($arrValues as $arrValue) { $newRow = $arrValue + $arrPost + array('sortColumn' => $sortColumn, 'ascDescFlg' => $ascDescFlg); $newRows[] = $newRow; } } } else { if ($sortColumn !== 'id' && $key == $sortColumn || $key == 'title') { $newRow[$key] = $value; } } } } usort($newRows, array("Default_Model_DatabaseObject", "_SortProfiles_Arrays")); foreach ($newRows as $newRow) { if ($count >= $fromPage && $count <= $toPage) { $sortRows[] = $newRow; } $count++; } return $sortRows; } if ($table == 'admin.blog_posts_images') { // Получим все строки сообщений с учетом параметров $options['offset'] = NULL; $options['limit'] = NULL; $options['sort'] = FALSE; $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { if ($key == '_images_') { $arrValues = $value; $arrPost = $newRow; foreach ($arrValues as $arrValue) { $newRow = $arrValue + $arrPost + array('sortColumn' => $sortColumn, 'ascDescFlg' => $ascDescFlg); $newRows[] = $newRow; } } } else { if ($sortColumn !== 'id' && $key == $sortColumn || $key == 'title') { $newRow[$key] = $value; } } } } usort($newRows, array("Default_Model_DatabaseObject", "_SortProfiles_Arrays")); foreach ($newRows as $newRow) { if ($count >= $fromPage && $count <= $toPage) { $sortRows[] = $newRow; } $count++; } return $sortRows; } if ($table == 'admin.blog_posts_audio') { // Получим все строки сообщений с учетом параметров $options['offset'] = NULL; $options['limit'] = NULL; $options['sort'] = FALSE; $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { if ($key == '_audio_') { $arrValues = $value; $arrPost = $newRow; foreach ($arrValues as $arrValue) { $newRow = $arrValue + $arrPost + array('sortColumn' => $sortColumn, 'ascDescFlg' => $ascDescFlg); $newRows[] = $newRow; } } } else { if ($sortColumn !== 'id' && $key == $sortColumn || $key == 'title') { $newRow[$key] = $value; } } } } usort($newRows, array("Default_Model_DatabaseObject", "_SortProfiles_Arrays")); foreach ($newRows as $newRow) { if ($count >= $fromPage && $count <= $toPage) { $sortRows[] = $newRow; } $count++; } return $sortRows; } if ($table == 'admin.blog_posts_video') { // Получим все строки сообщений с учетом параметров $options['offset'] = NULL; $options['limit'] = NULL; $options['sort'] = FALSE; $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { if ($key == '_video_') { $arrValues = $value; $arrPost = $newRow; foreach ($arrValues as $arrValue) { $newRow = $arrValue + $arrPost + array('sortColumn' => $sortColumn, 'ascDescFlg' => $ascDescFlg); $newRows[] = $newRow; } } } else { if ($sortColumn !== 'id' && $key == $sortColumn || $key == 'title') { $newRow[$key] = $value; } } } } usort($newRows, array("Default_Model_DatabaseObject", "_SortProfiles_Arrays")); foreach ($newRows as $newRow) { if ($count >= $fromPage && $count <= $toPage) { $sortRows[] = $newRow; } $count++; } return $sortRows; } if ($table == 'admin.blog_posts_locations') { // Получим все строки сообщений с учетом параметров $options['offset'] = NULL; $options['limit'] = NULL; $options['sort'] = FALSE; $rows = Default_Model_DbTable_BlogPost::GetPosts_Array($this->db, $options); foreach ($rows as $row) { foreach ($row as $key => $value) { if (is_array($value)) { if ($key == '_locations_') { $arrValues = $value; $arrPost = $newRow; foreach ($arrValues as $arrValue) { $newRow = $arrValue + $arrPost + array('sortColumn' => $sortColumn, 'ascDescFlg' => $ascDescFlg); $newRows[] = $newRow; } } } else { if ($sortColumn !== 'id' && $key == $sortColumn || $key == 'title') { $newRow[$key] = $value; } } } } usort($newRows, array("Default_Model_DatabaseObject", "_SortProfiles_Arrays")); foreach ($newRows as $newRow) { if ($count >= $fromPage && $count <= $toPage) { $sortRows[] = $newRow; } $count++; } return $sortRows; } }