Пример #1
0
 /**
  * Import from config.
  *
  * @param mixed          $value         The value.
  * @param \DataContainer $dataContainer Data container driver.
  *
  * @return mixed
  */
 public function importFromConfig($value, \DataContainer $dataContainer)
 {
     if (!$this->typeManager->hasType($value)) {
         return $value;
     }
     $type = $this->typeManager->getType($value);
     if ($dataContainer->activeRecord->override && \Input::get('override')) {
         if (!$dataContainer->activeRecord->name) {
             $dataContainer->activeRecord->name = \Input::post('name');
         }
         if (!$type->isMultiple() || $dataContainer->activeRecord->name) {
             $key = $type->getPath();
             if ($type->isMultiple()) {
                 $key .= '.' . $dataContainer->activeRecord->name;
             }
             $model = BootstrapConfigModel::findByPk($dataContainer->id);
             $model->type = $value;
             $model->name = $dataContainer->activeRecord->name;
             $type->extractConfig($key, Bootstrap::getConfig(), $model);
             $model->save();
             // unset parameter was only introduced in Contao 3.3
             $this->redirect($this->addToUrl('override=', true, array('override')));
         }
     }
     return $value;
 }