Example #1
0
    $appconf = parse_ini_file($file, true);
    if (isset($appconf['Admin']['handler'])) {
        if (isset($appconf['Admin']['install'])) {
            $ver = $this->installed($app, $appconf['Admin']['version']);
            if ($ver === true) {
                // installed
                $tools[$appconf['Admin']['handler']] = $appconf['Admin'];
                $tools[$appconf['Admin']['handler']]['class'] = false;
            } elseif ($ver === false) {
                // not installed
                $appconf['Admin']['name'] .= ' (' . i18n_get('click to install') . ')';
                $tools[$appconf['Admin']['install']] = $appconf['Admin'];
                $tools[$appconf['Admin']['install']]['class'] = 'not-installed';
            } else {
                // needs upgrade
                $appconf['Admin']['name'] .= ' (' . i18n_get('click to upgrade') . ')';
                $tools[$appconf['Admin']['upgrade']] = $appconf['Admin'];
                $tools[$appconf['Admin']['upgrade']]['class'] = 'needs-upgrade';
            }
        } else {
            // no installer, as you were
            $tools[$appconf['Admin']['handler']] = $appconf['Admin'];
            $tools[$appconf['Admin']['handler']]['class'] = false;
        }
    }
}
uasort($tools, 'admin_head_links_sort');
$out = array('name' => Product::name(), 'logo' => Product::logo_toolbar(), 'links' => $tpl->render('admin/head/links', array('user' => User::val('name'), 'tools' => $tools)));
$page->layout = false;
header('Content-Type: application/json');
echo json_encode($out);
Example #2
0
if (count($tools) === 0 && admin\Toolbar::$autofill === false) {
    $tools = admin\Toolbar::apps($this);
    $is_apps = true;
} else {
    if (admin\Toolbar::$autofill) {
        // Extend the tools list with any unused app resources.
        $apps = admin\Toolbar::apps($this);
        foreach ($tools as $column => $group) {
            // filter out resources that are already in use
            $apps = array_diff_key($apps, $group);
        }
        if (count($apps)) {
            $i = 0;
            $j = 2;
            $column = admin\Toolbar::$autofill;
            $tools[$column] = array();
            foreach ($apps as $handler => $app) {
                if (++$i > 7) {
                    $i = 0;
                    $column = admin\Toolbar::$autofill . ' (' . $j++ . ')';
                    $tools[$column] = array();
                }
                $tools[$column][$handler] = $apps[$handler];
            }
        }
    }
    $is_apps = false;
}
$editable = User::require_acl('admin/toolbar');
$out = array('name' => Product::name(), 'logo' => Product::logo_toolbar(), 'is_apps' => $is_apps || count($tools) === 0 && !$editable, 'links' => $tpl->render('admin/head/links', array('user' => User::val('name'), 'tools' => $tools, 'is_apps' => $is_apps, 'editable' => $editable)));
echo json_encode($out);