protected function getPageTreeType($page, &$pageData) { // calculate tree-type $treeType = 'page'; if ($page['hidden'] == 'Y') { $treeType = 'hidden'; } // homepage should have a special icon if ($page['id'] == 1) { $treeType = 'home'; } elseif ($page['id'] == 404) { $treeType = 'error'; } elseif ($page['id'] < 404 && mb_substr_count($page['extra_ids'], $this->getSitemapId()) > 0) { // get extras $extraIDs = explode(',', $page['extra_ids']); // loop extras foreach ($extraIDs as $id) { // check if this is the sitemap id if ($id == $this->getSitemapId()) { // set type $treeType = 'sitemap'; // break it break; } } } // any data? if (isset($page['data'])) { // get data $data = unserialize($page['data']); // internal alias? if (isset($data['internal_redirect']['page_id']) && $data['internal_redirect']['page_id'] != '') { $pageData['redirect_page_id'] = $data['internal_redirect']['page_id']; $pageData['redirect_code'] = $data['internal_redirect']['code']; $treeType = 'redirect'; } // external alias? if (isset($data['external_redirect']['url']) && $data['external_redirect']['url'] != '') { $pageData['redirect_url'] = $data['external_redirect']['url']; $pageData['redirect_code'] = $data['external_redirect']['code']; $treeType = 'redirect'; } // direct action? if (isset($data['is_action']) && $data['is_action']) { $treeType = 'direct_action'; } } return $treeType; }