Kronolith::tabs PHP Method

tabs() public static method

public static tabs ( object $renderer )
$renderer object A Kronolith view.
    public static function tabs($renderer)
    {
        global $injector, $prefs;
        $view = $injector->createInstance('Horde_View');
        $date = self::currentDate();
        $date_stamp = array('date' => $date->dateString());
        $tabname = basename($_SERVER['PHP_SELF']) == 'index.php' ? $GLOBALS['prefs']->getValue('defaultview') : str_replace('.php', '', basename($_SERVER['PHP_SELF']));
        $view->active = $tabname;
        $view->previous = $renderer->link(-1);
        $view->next = $renderer->link(1);
        switch ($tabname) {
            case 'day':
                $view->current = $renderer->getTime($prefs->getValue('date_format'));
                break;
            case 'workweek':
            case 'week':
                $view->current = $renderer->days[$renderer->startDay]->getTime($prefs->getValue('date_format')) . ' - ' . $renderer->days[$renderer->endDay]->getTime($prefs->getValue('date_format'));
                break;
            case 'month':
                $view->current = $renderer->date->strftime('%B %Y');
                break;
            case 'year':
                $view->current = $renderer->year;
                break;
        }
        $view->today = Horde::url($prefs->getValue('defaultview') . '.php')->link(Horde::getAccessKeyAndTitle(_("_Today"), false, true)) . _("Today") . '</a>';
        $view->day = Horde::widget(array('url' => Horde::url('day.php')->add($date_stamp), 'id' => 'kronolithNavDay', 'accesskey' => '1', 'title' => _("Day")));
        $view->workWeek = Horde::widget(array('url' => Horde::url('workweek.php')->add($date_stamp), 'id' => 'kronolithNavWorkweek', 'accesskey' => '2', 'title' => _("Work Week")));
        $view->week = Horde::widget(array('url' => Horde::url('week.php')->add($date_stamp), 'id' => 'kronolithNavWeek', 'accesskey' => '3', 'title' => _("Week")));
        $view->month = Horde::widget(array('url' => Horde::url('month.php')->add($date_stamp), 'id' => 'kronolithNavMonth', 'accesskey' => '4', 'title' => _("Month")));
        $view->year = Horde::widget(array('url' => Horde::url('year.php')->add($date_stamp), 'id' => 'kronolithNavYear', 'accesskey' => '5', 'title' => _("Year")));
        echo $view->render('buttonbar');
    }

Usage Example

Example #1
0
<?php

/**
 * Copyright 1999-2015 Horde LLC (http://www.horde.org/)
 *
 * See the enclosed file COPYING for license information (GPL). If you
 * did not receive this file, see http://www.horde.org/licenses/gpl.
 *
 * @author  Chuck Hagenbuch <*****@*****.**>
 * @package Kronolith
 */
require_once __DIR__ . '/lib/Application.php';
Horde_Registry::appInit('kronolith');
if (Kronolith::showAjaxView()) {
    Horde::url('', true)->setAnchor('day:' . Kronolith::currentDate()->dateString())->redirect();
}
$view = Kronolith::getView('Day');
$page_output->addScriptFile('tooltips.js', 'horde');
Kronolith::addCalendarLinks();
$page_output->header(array('body_class' => $prefs->getValue('show_panel') ? 'rightPanel' : null, 'title' => $view->getTime($prefs->getValue('date_format'))));
require KRONOLITH_TEMPLATES . '/javascript_defs.php';
$notification->notify(array('listeners' => 'status'));
Kronolith::tabs($view);
$view->html(KRONOLITH_TEMPLATES);
require KRONOLITH_TEMPLATES . '/calendar_titles.inc';
$page_output->footer();
All Usage Examples Of Kronolith::tabs