Example #1
0
 public function dashboard()
 {
     $settings = $this->app->storage->getKey('cockpit/options', 'dashboard.widgets.' . $this->user["_id"], []);
     $widgets = new \ArrayObject([]);
     $this->app->trigger('admin.dashboard.widgets', [$widgets]);
     $areas = ['main' => new \SplPriorityQueue(), 'aside-left' => new \SplPriorityQueue(), 'aside-right' => new \SplPriorityQueue()];
     foreach ($widgets as &$widget) {
         $name = $widget['name'];
         $area = isset($widget['area']) && in_array($widget['area'], ['main', 'aside-left', 'aside-right']) ? $widget['area'] : 'main';
         $area = \Lime\fetch_from_array($settings, "{$name}/area", $area);
         $prio = \Lime\fetch_from_array($settings, "{$name}/prio", 0);
         $areas[$area]->insert($widget, -1 * $prio);
     }
     return $this->render('cockpit:views/base/dashboard.php', compact('areas', 'widgets'));
 }
Example #2
0
 function thumbnail($image, $width = null, $height = null, $options = array())
 {
     if ($width && is_array($height)) {
         $options = $height;
         $height = $width;
     } else {
         $height = $height ?: $width;
     }
     $url = cockpit("mediamanager")->thumbnail($image, $width, $height, $options);
     // generate attributes list
     $attributes = \Lime\fetch_from_array($options, 'attrs', []);
     if (is_array($attributes)) {
         $tmp = [];
         $attributes = array_merge(['alt' => $image], $attributes);
         foreach ($attributes as $key => $val) {
             $tmp[] = $key . '="' . $val . '"';
         }
         $attributes = implode(' ', $tmp);
     }
     echo '<img src="' . $url . '" ' . $attributes . '>';
 }
Example #3
0
<?php

$modules = new \SplPriorityQueue();
$menuorder = $app->storage->getKey('cockpit/options', 'app.menu.order.' . $app["user"]["_id"], []);
if ($app('admin')->data['menu.modules']->count()) {
    foreach ($app('admin')->data['menu.modules'] as &$item) {
        $modules->insert($item, -1 * intval(\Lime\fetch_from_array($menuorder, $item['route'], 0)));
    }
}
?>
<!doctype html>
<html lang="{{ $app('i18n')->locale }}" data-base="@base('/')" data-route="@route('/')" data-version="{{ $app['cockpit/version'] }}" data-locale="{{ $app('i18n')->locale }}">
<head>
    <meta charset="UTF-8">
    <title>{{ $app['app.name'] }}</title>
    <link rel="icon" href="@base('/favicon.ico')" type="image/x-icon">
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />

    <script>
        // App constants
        var SITE_URL = '{{ rtrim($app->pathToUrl('site:'), '/') }}';
    </script>

    {{ $app->assets($app('admin')->data->get('assets'), $app['cockpit/version']) }}

    <script src="@route('/cockpit.i18n.data')"></script>

    <script>
        App.$data = {{ json_encode($app('admin')->data->get('extract')) }};
    </script>