Beispiel #1
0
 private function _merge(array $array1, array $array2, $recursive = false)
 {
     if ($recursive) {
         return ArrayHelper::merge($array1, $array2);
     }
     return array_merge($array1, $array2);
 }
Beispiel #2
0
\rock\base\Alias::setAlias('root', dirname(dirname(dirname(__DIR__))));
\rock\base\Alias::setAlias('rock', \rock\Rock::$dir);
\rock\base\Alias::setAlias('vendor', '@root/vendor');
\rock\base\Alias::setAlias('assets', '@root/public/assets');
\rock\base\Alias::setAlias('web', '/assets');
\rock\base\Alias::setAlias('web.img', '/assets/images');
\rock\base\Alias::setAlias('app', '@root/apps');
\rock\base\Alias::setAlias('common', '@app/common');
\rock\base\Alias::setAlias('frontend', '@app/frontend');
\rock\base\Alias::setAlias('backend', '@app/backend');
\rock\base\Alias::setAlias('admin', '@backend');
// namespaces
\rock\base\Alias::setAlias('common.ns', 'apps\\common');
\rock\base\Alias::setAlias('frontend.ns', 'apps\\frontend');
\rock\base\Alias::setAlias('backend.ns', 'apps\\backend');
\rock\base\Alias::setAlias('ns', '@common.ns');
// runtime
\rock\base\Alias::setAlias('common.runtime', '@common/runtime');
// views
\rock\base\Alias::setAlias('common.views', '@common/views');
\rock\base\Alias::setAlias('frontend.views', '@frontend/views');
// media
\rock\base\Alias::setAlias('img', '@assets/images');
\rock\base\Alias::setAlias('images', '@img');
// links
$request = new \rock\request\Request();
\rock\base\Alias::setAlias('link.home', $request->getHostInfo() ?: 'localhost');
\rock\base\Alias::setAlias('link.ajax', '@link.home/ajax');
\rock\base\Alias::setAlias('email', 'support@' . ($request->getHost() ?: 'localhost'));
$config = \rock\helpers\ArrayHelper::merge(require \rock\base\Alias::getAlias('@rock/classes.php'), require __DIR__ . '/classes.php', require __DIR__ . '/controllers.php');
return ['components' => $config];
Beispiel #3
0
<?php

// Config scope "frontend"
$config = (require dirname(dirname(__DIR__)) . '/common/configs/configs.php');
\rock\base\Alias::setAlias('scope', '@frontend');
\rock\base\Alias::setAlias('views', '@frontend/views');
\rock\base\Alias::setAlias('runtime', '@frontend/runtime');
\rock\base\Alias::setAlias('ns', '@frontend.ns');
$request = new \rock\request\Request();
\rock\base\Alias::setAlias('link.home', $request->getHostInfo());
\rock\base\Alias::setAlias('link.ajax', '@link.home/ajax');
\rock\base\Alias::setAlias('email', 'support@' . $request->getHost());
$config['components'] = \rock\helpers\ArrayHelper::merge($config['components'], require __DIR__ . '/classes.php', require __DIR__ . '/models.php', require __DIR__ . '/controllers.php');
return $config;
Beispiel #4
0
 /**
  * Generates a form field.
  * A form field is associated with a model and an attribute. It contains a label, an input and an error message
  * and use them to interact with end users to collect their inputs for the attribute.
  *
  * @param \rock\components\Model $model the data model
  * @param string $attribute the attribute name or expression. See `\rock\template\Html::getAttributeName()` for the format
  * about attribute expression.
  * @param array $options the additional configurations for the field object
  * @return ActiveField the created ActiveField object
  * @see fieldConfig
  */
 public function field($model, $attribute, $options = [])
 {
     $config = $this->fieldConfig;
     if ($config instanceof \Closure) {
         $config = call_user_func($config, $model, $attribute);
     }
     if (!isset($config['class'])) {
         $config['class'] = $this->fieldClass;
     }
     return Instance::ensure(ArrayHelper::merge($config, $options, ['model' => $model, 'attribute' => $attribute, 'form' => $this]));
 }