Example #1
0
<?php

namespace Vane;

\Bundle::$bundles['vane']['ignorePlarx'] = array('Str', 'HLEx', 'Log', 'Event', 'Validator');
if (!\Bundle::exists('plarx')) {
    throw new Error('Vane requires Plarx bundle installed.');
} else {
    \Bundle::start('plarx');
    \Px\Plarx::supersede(__NAMESPACE__, \Bundle::option('vane', 'ignorePlarx'));
}
if (!\Bundle::exists('squall')) {
    throw new Error('Vane requires Squall bundle installed.');
} else {
    \Bundle::start('squall');
    \Squall\initEx(__NAMESPACE__);
}
\Autoloader::namespaces(array(__NAMESPACE__ => __DIR__ . DS . 'classes'));
require_once __DIR__ . DS . 'core.php';
overrideHTMLki('vane::', __NAMESPACE__);
// vane::auth[:[!]perm[:[!]perm.2[...]]] [|filter:2 [|...]]
//
// This filter will always deny access for non-authorized users even if guest
// permissions allow for given features - this is so because protected controllers
// rely on current user being logged in.
\Route::filter('vane::auth', function ($feature_1 = null) {
    $features = is_array($feature_1) ? $feature_1 : func_get_args();
    $block = is_object(end($features)) ? array_pop($features) : null;
    $user = \Auth::user();
    if ($user and !$user instanceof UserInterface) {
        $msg = "When using vane::auth filter object returned by Auth::user()" . " (" . get_class($user) . " here) must implement Vane\\UserInterface." . " This is not so - returned 403 for user {$user->id}.";
Example #2
0
<?php

if (!Bundle::exists('vane')) {
    throw new Error('VaneMart requires Vane bundle installed.');
} else {
    Bundle::start('vane');
    Vane\aliasIn('VaneMart');
}
Squall\initEx('VaneMart');
Vane\overrideHTMLki('vanemart::', array('ns' => 'VaneMart', 'stickyFormHiddens' => array('back')));
require_once __DIR__ . DS . 'core.php';
require_once __DIR__ . DS . 'events.php';
Vane\Current::set(VaneMart\VANE_NS);
// More flexible autoloader for VaneMart flat class structure.
spl_autoload_register(function ($class) {
    $base = $file = __DIR__ . DS . 'classes' . DS;
    if (substr($class, 0, 9) === 'VaneMart\\') {
        @(list($group, $rest) = explode('_', substr($class, 9), 2));
        if (isset($rest)) {
            $file .= strtolower($group) . DS . $rest;
        } else {
            $file .= is_file("{$file}{$group}.php") ? $group : 'model' . DS . substr($class, 9);
        }
    } else {
        $file .= 'vendor' . DS . $class;
    }
    $file .= '.php';
    is_file($file) and (include $file);
});
View::composer('vanemart::full', function ($view) {
    $normAssets = function ($type) use($view) {