Ejemplo n.º 1
0
 /**
  * Return the form to edit an existing disk.
  *
  * @param DiskFormBuilder          $disk
  * @param AdapterFormBuilder       $form
  * @param DiskRepositoryInterface  $disks
  * @param ConfigurationFormBuilder $configuration
  * @param                          $id
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function edit(DiskFormBuilder $disk, AdapterFormBuilder $form, DiskRepositoryInterface $disks, ConfigurationFormBuilder $configuration, $id)
 {
     $entry = $disks->find($id);
     $adapter = $entry->getAdapter();
     $form->addForm('disk', $disk->setEntry($id)->setAdapter($adapter));
     $form->addForm('configuration', $configuration->setEntry($adapter->getNamespace())->setScope($entry->getSlug()));
     return $form->render();
 }
Ejemplo n.º 2
0
 /**
  * Return the form to edit an existing block.
  *
  * @param BlockFormBuilder         $block
  * @param BlockTypeFormBuilder     $form
  * @param BlockRepositoryInterface $blocks
  * @param ConfigurationFormBuilder $configuration
  * @param                          $id
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function edit(BlockFormBuilder $block, BlockTypeFormBuilder $form, BlockRepositoryInterface $blocks, ConfigurationFormBuilder $configuration, $id)
 {
     /* @var BlockInterface $entry */
     $entry = $blocks->find($id);
     $type = $entry->getType();
     $form->addForm('block', $block->setEntry($id)->setType($type));
     $form->addForm('configuration', $configuration->setEntry($type->getNamespace())->setScope($entry->getSlug()));
     return $form->render();
 }
 /**
  * Edit an existing entry.
  *
  * @param ExtensionCollection                          $extensions
  * @param WidgetExtensionFormBuilder|WidgetFormBuilder $form
  * @param WidgetFormBuilder                            $widget
  * @param ConfigurationFormBuilder                     $configuration
  * @return \Symfony\Component\HttpFoundation\Response
  */
 public function edit(ExtensionCollection $extensions, WidgetExtensionFormBuilder $form, WidgetFormBuilder $widget, ConfigurationFormBuilder $configuration, WidgetRepositoryInterface $widgets, $id)
 {
     /* @var WidgetInterface $entry */
     $entry = $widgets->find($id);
     /* @var WidgetExtension $extension */
     $extension = $entry->getExtension();
     $form->setEntry($id);
     $form->addForm('widget', $widget->setEntry($id));
     $form->addForm('configuration', $configuration->setScope($id)->setEntry($extension->getNamespace()));
     return $form->render();
 }
 /**
  * Return the form fields.
  *
  * @param ConfigurationFormBuilder $builder
  */
 public function handle(ConfigurationFormBuilder $builder, ConfigurationRepositoryInterface $configuration)
 {
     $scope = $builder->getScope();
     $namespace = $builder->getFormEntry() . '::';
     /**
      * Get the fields from the config system. Sections are
      * optionally defined the same way.
      */
     if (!($fields = $this->config->get($namespace . 'configuration/configuration'))) {
         $fields = $fields = $this->config->get($namespace . 'configuration', []);
     }
     if ($sections = $this->config->get($namespace . 'configuration/sections')) {
         $builder->setSections($sections);
     }
     /**
      * Finish each field.
      */
     foreach ($fields as $slug => &$field) {
         /**
          * Force an array. This is done later
          * too in normalization but we need it now
          * because we are normalizing / guessing our
          * own parameters somewhat.
          */
         if (is_string($field)) {
             $field = ['type' => $field];
         }
         // Make sure we have a config property.
         $field['config'] = array_get($field, 'config', []);
         // Default the label.
         if (trans()->has($label = array_get($field, 'label', $namespace . 'configuration.' . $slug . '.label'))) {
             $field['label'] = trans($label);
         }
         // Default the label.
         $field['label'] = trans(array_get($field, 'label', $namespace . 'configuration.' . $slug . '.name'));
         // Default the warning.
         if (trans()->has($warning = array_get($field, 'warning', $namespace . 'configuration.' . $slug . '.warning'))) {
             $field['warning'] = trans($warning);
         }
         // Default the placeholder.
         $field['config']['placeholder'] = trans(array_get($field, 'placeholder', $namespace . 'configuration.' . $slug . '.placeholder'));
         // Default the instructions.
         if (trans()->has($instructions = array_get($field, 'instructions', $namespace . 'configuration.' . $slug . '.instructions'))) {
             $field['instructions'] = trans($instructions);
         }
         // Get the value defaulting to the default value.
         if ($applied = $configuration->get($namespace . $slug, $scope)) {
             $field['value'] = $applied->getValue();
         } else {
             $field['value'] = array_get($field['config'], 'default_value');
         }
     }
     $builder->setFields($fields);
 }