/**
 * The page handler vor vacaturebank
 *
 * @param array $page url segments
 *
 * @return bool
 */
function haarlem_tangram_page_handler($page)
{
    $include_file = false;
    $pages_root = dirname(dirname(__FILE__)) . '/pages/';
    $page_owner_guid = haarlem_tangram_get_page_owner_guid();
    if (!empty($page_owner_guid)) {
        elgg_set_page_owner_guid($page_owner_guid);
    }
    switch ($page[0]) {
        case 'all':
            $include_file = "{$pages_root}all.php";
            break;
        case 'view':
            set_input('vacaturenummer', $page[1]);
            $include_file = "{$pages_root}view.php";
            break;
        default:
            forward('vacaturebank/all');
            break;
    }
    if (!empty($include_file)) {
        include $include_file;
        return true;
    }
    return false;
}
Esempio n. 2
0
/**
 * Add menu item to owner_block
 *
 * @param string         $hook         the name of the hook
 * @param string         $type         the type of the hook
 * @param ElggMenuItem[] $return_value current return value
 * @param array          $params       supplied params
 *
 * @return void|ElggMenuItem[]
 */
function haarlem_tangram_register_owner_block_menu($hook, $type, $return_value, $params)
{
    if (!is_array($return_value)) {
        return;
    }
    if (empty($params) || !is_array($params)) {
        return;
    }
    $page_owner_guid = haarlem_tangram_get_page_owner_guid();
    if (empty($page_owner_guid)) {
        // no page owner was configured, so don't add owner_block menu
        return;
    }
    $entity = elgg_extract('entity', $params);
    if (!$entity instanceof ElggEntity) {
        return;
    }
    if ($entity->getGUID() !== $page_owner_guid) {
        // not this entity
        return;
    }
    $return_value[] = ElggMenuItem::factory(array('name' => 'haarlem_tangram', 'text' => elgg_echo('haarlem_tangram:site_menu:title'), 'href' => 'vacaturebank/all'));
    return $return_value;
}