1
0
mirror of https://github.com/monstra-cms/monstra.git synced 2025-08-06 05:07:49 +02:00

#123 General method getPages() created

This commit is contained in:
Awilum
2013-11-23 15:35:53 +04:00
parent 9e2a7bc23b
commit eaeff17cb9
2 changed files with 55 additions and 54 deletions

View File

@@ -314,6 +314,59 @@ class Pages extends Frontend
return Pages::$page['keywords']; return Pages::$page['keywords'];
} }
/**
* Get pages
*/
public static function getPages()
{
// Init vars
$pages_array = array();
$count = 0;
// Get pages table
$pages = new Table('pages');
// Get Pages List
$pages_list = $pages->select('[slug!="error404" and status="published"]');
foreach ($pages_list as $page) {
$pages_array[$count]['title'] = Html::toText($page['title']);
$pages_array[$count]['parent'] = $page['parent'];
$pages_array[$count]['date'] = $page['date'];
$pages_array[$count]['author'] = $page['author'];
$pages_array[$count]['slug'] = ($page['slug'] == Option::get('defaultpage')) ? '' : $page['slug'] ;
if (isset($page['parent'])) {
$c_p = $page['parent'];
} else {
$c_p = '';
}
if ($c_p != '') {
$_page = $pages->select('[slug="'.$page['parent'].'"]', null);
if (isset($_page['title'])) {
$_title = $_page['title'];
} else {
$_title = '';
}
$pages_array[$count]['sort'] = $_title . ' ' . $page['title'];
} else {
$pages_array[$count]['sort'] = $page['title'];
}
$_title = '';
$count++;
}
// Sort pages
$_pages_list = Arr::subvalSort($pages_array, 'sort');
// return
return $_pages_list;
}
} }
/** /**

View File

@@ -64,7 +64,7 @@ class Sitemap extends Frontend
{ {
// Display view // Display view
return View::factory('box/sitemap/views/frontend/index') return View::factory('box/sitemap/views/frontend/index')
->assign('pages_list', Sitemap::getPages()) ->assign('pages_list', Pages::getPages())
->assign('components', Sitemap::getComponents()) ->assign('components', Sitemap::getComponents())
->render(); ->render();
} }
@@ -75,7 +75,7 @@ class Sitemap extends Frontend
public static function create() public static function create()
{ {
// Get pages list // Get pages list
$pages_list = Sitemap::getPages(); $pages_list = Pages::getPages();
// Create sitemap content // Create sitemap content
$map = '<?xml version="1.0" encoding="UTF-8"?>'."\n"; $map = '<?xml version="1.0" encoding="UTF-8"?>'."\n";
@@ -102,58 +102,6 @@ class Sitemap extends Frontend
return File::setContent(ROOT . DS . 'sitemap.xml', $map); return File::setContent(ROOT . DS . 'sitemap.xml', $map);
} }
/**
* Get pages
*/
protected static function getPages()
{
// Init vars
$pages_array = array();
$count = 0;
// Get pages table
$pages = new Table('pages');
// Get Pages List
$pages_list = $pages->select('[slug!="error404" and status="published"]');
foreach ($pages_list as $page) {
$pages_array[$count]['title'] = Html::toText($page['title']);
$pages_array[$count]['parent'] = $page['parent'];
$pages_array[$count]['date'] = $page['date'];
$pages_array[$count]['author'] = $page['author'];
$pages_array[$count]['slug'] = ($page['slug'] == Option::get('defaultpage')) ? '' : $page['slug'] ;
if (isset($page['parent'])) {
$c_p = $page['parent'];
} else {
$c_p = '';
}
if ($c_p != '') {
$_page = $pages->select('[slug="'.$page['parent'].'"]', null);
if (isset($_page['title'])) {
$_title = $_page['title'];
} else {
$_title = '';
}
$pages_array[$count]['sort'] = $_title . ' ' . $page['title'];
} else {
$pages_array[$count]['sort'] = $page['title'];
}
$_title = '';
$count++;
}
// Sort pages
$_pages_list = Arr::subvalSort($pages_array, 'sort');
// return
return $_pages_list;
}
/** /**
* Get components * Get components
*/ */