Example #1
0
 public function finalizeSave(Form $form, SiteTreeNodeInterface $model)
 {
     $config = $this->configModel()->getConfig($model->getPageTypeId(), $model->getIdentifier());
     foreach ($form->getData($this->fieldPrefix()) as $key => $value) {
         $config->set($key, $value);
     }
     $this->configModel()->saveConfig($config, $model->id);
 }
 protected function translateProperty(Form $form, Field $field, $property)
 {
     if ($property != 'title') {
         return;
     }
     $model = $form->getModel();
     if (!$model) {
         $model = $this->modelOfFormClass($form);
     }
     if (!$model) {
         return $field->getName();
     }
     return $this->titles->keyTitle($model, $this->fieldKey($field));
 }
 /**
  * This method returns a default action where to send the form if none was
  * excplicit setted via Form::setAction()
  *
  * @param \FormObject\Form $form
  * @return string
  **/
 public function setActionUrl(Form $form)
 {
     $current = explode('/', rtrim($this->urlProvider->currentUrl(), '/'));
     $lastSegment = array_pop($current);
     if (in_array($lastSegment, ['create', 'edit'])) {
         $parentUrl = implode('/', $current);
         $form->setAction($parentUrl);
     }
     if ($lastSegment == 'create') {
         $form->setVerb('post');
     } elseif ($lastSegment == 'edit') {
         $form->setVerb('put');
     }
 }
Example #4
0
 public function createActions()
 {
     $actions = parent::createActions();
     $actions('action_submit')->setTitle(trans('cmsable::forms.save'));
     $actions->push(Action::create('delete')->setTitle(trans('cmsable::forms.delete')));
     return $actions;
 }
Example #5
0
 protected function addRuleCssClassesIfNotAdded()
 {
     if (!$this->ruleClassesAdded && $this->form) {
         foreach ($this->form->getRuleNames($this->name) as $ruleName) {
             $this->getCssClasses()->append($ruleName);
         }
         $this->ruleClassesAdded = TRUE;
     }
 }
Example #6
0
 public function createFields()
 {
     $fields = parent::createFields();
     $name = new TextField('name', 'Please enter your name');
     $name->setValue('Jennifer');
     $name->minLength = 3;
     $name->maxLength = 12;
     $surname = new TextField('surname', 'Please enter your surname');
     $surname->setValue('Batten');
     $rememberMe = new CheckboxField('remember', 'Remember Me');
     $rememberMyRadio = new BooleanRadioField('rememberMyRadio');
     $rememberMyRadio->trueString = 'Remember my Radio';
     $rememberMyRadio->falseString = 'Forget my Radio';
     $rememberMyRadio->setValue(TRUE);
     $rememberMyRadio->mustBeTrue = TRUE;
 }
 /**
  * This method returns a default action where to send the form if none was
  * excplicit setted via Form::setAction()
  *
  * @param \FormObject\Form $form
  * @return string
  **/
 public function setActionUrl(Form $form)
 {
     return $form->setAction(strtok($_SERVER["REQUEST_URI"], '?'));
 }
Example #8
0
<?php

ini_set("display_errors", "On");
error_reporting(E_ALL);
require_once "lib/AutoLoader.php";
use FormObject\Renderer\PhpRenderer;
use FormObject\Form;
use FormObject\Field;
use FormObject\Field\TextField;
use FormObject\AdapterFactorySimple;
$renderer = new PhpRenderer();
$renderer->addPath(__DIR__ . '/themes/simple');
$adapter = new AdapterFactorySimple();
$adapter->setRenderer($renderer);
Form::setGlobalAdapter($adapter);
/**
 * @brief ...
 * @var \FormObject\Form
 */
$form = Form::create();
$form->push(TextField::create('name')->setValue('Billy')->setTitle('Please enter your name'), TextField::create('surname')->setValue('Talent')->setTitle('Please enter your surname'));
// echo $form;
echo "\n" . $form['name'];
echo "\n" . $form['surname'];
$data = array('name' => 'Smith', 'surname' => 'Steven');
$form->fillByArray($data);
$form('name')->addCssClass('important');
echo $form;
echo "\n";
Example #9
0
class DT extends DateTime
{
    public function __toString()
    {
        return $this->format('Y-m-d H:i:s');
    }
}
$interestList = array(array('id' => 3, 'name' => 'Play guitar', 'categoryId' => 2, 'start' => new DT('1998-10-25 10:00:00')), array('id' => 7, 'name' => 'Calligraphy', 'categoryId' => 4, 'start' => new DT('2004-05-21 13:00:00')), array('id' => 14, 'name' => 'Karate', 'categoryId' => 1, 'start' => new DT('1982-04-12 17:45:00')), array('id' => 78, 'name' => 'Calculating PI', 'categoryId' => 5, 'start' => new DT('1977-02-01 03:14:15')));
$columns = array('id' => 'InterestID', 'name' => 'Description', 'categoryId' => 'Category', 'start' => 'Interested since');
$itemForm = Form::create($factory);
$itemForm->push(HiddenField::create('id', 'ID'), TextField::create('name', 'Description'), SelectOneField::create('categoryId', 'Category')->setSrc($categories), TextField::create('start', 'Interested since'));
/**
 * @brief ...
 * @var \FormObject\Form
 */
$form = Form::create($factory);
$form->push($interests = EditManyField::create('items', 'Interests')->setValue($interestList)->setItemForm($itemForm));
$interests->addCssClass('draggable')->addCssClass('removable')->addCssClass('addable');
$nameValidator = new TextValidator();
$nameValidator->required = TRUE;
$nameValidator->minLength = 3;
$nameValidator->setMaxLength = 12;
$surnameValidator = new RequiredValidator();
$surnameValidator->required = TRUE;
$requiredValidator = new BooleanValidator();
$requiredValidator->mustBeTrue = TRUE;
$validator = new SimpleValidator($form);
$validator->set('name', $nameValidator);
// $validator->set('surname', $surnameValidator);
// $validator->set('rememberMyRadio', $requiredValidator);
// $validator->set('message', $requiredValidator);
 public function boot()
 {
     Form::addFormModifier(function (Form $form) {
         // Trigger auto action setter
         $form->getAction();
         $verb = strtoupper($form->getVerb());
         if (in_array($verb, ['PUT', 'PATCH', 'DELETE'])) {
             $form->push(HiddenField::create('_method')->setValue($verb));
         }
     });
 }
Example #11
0
<?php

use FormObject\Form;
use FormObject\Renderer\PhpRenderer;
use FormObject\AdapterFactorySimple;
$renderer = new PhpRenderer();
$renderer->addPath(realpath(__DIR__ . '/../themes/bootstrap/templates/forms'));
$factory = new AdapterFactorySimple();
$factory->setRenderer($renderer);
Form::setGlobalAdapter($factory);
 protected function registerFormObjectNamer()
 {
     if (!class_exists('FormObject\\Form', false)) {
         return;
     }
     Form::provideAdditionalNamer(function ($chain) {
         $chain->append($this->getTitleIntrospectorNamer());
     });
 }
 /**
  * This method returns a default action where to send the form if none was
  * excplicit setted via Form::setAction()
  *
  * @param \FormObject\Form $form
  * @return string
  **/
 public function setActionUrl(Form $form)
 {
     $form->setAction($this->currentUrl());
 }
Example #14
0
use FormObject\FieldList;
use FormObject\Field\TextField;
use FormObject\Field\Action;
use FormObject\Field\CheckboxField;
use FormObject\Field\BooleanRadioField;
use FormObject\Field\SelectOneField;
use FormObject\Validator\SimpleValidator;
use FormObject\Validator\TextValidator;
use FormObject\Validator\BooleanValidator;
use FormObject\Validator\RequiredValidator;
Registry::getRenderer()->addPath(dirname(__FILE__) . '/themes/bootstrap/templates/forms');
/**
 * @brief ...
 * @var \FormObject\Form
 */
$form = new Form();
$form->setMethod(Form::GET);
$name = new TextField('name', 'Please enter your name');
$name->setValue('Jennifer');
$surname = new TextField('surname', 'Please enter your surname');
$surname->setValue('Batten');
$rememberMe = new CheckboxField('remember', 'Remember Me');
$rememberMyRadio = new BooleanRadioField('rememberMyRadio');
$rememberMyRadio->trueString = 'Remember my Radio';
$rememberMyRadio->falseString = 'Forget my Radio';
$rememberMyRadio->setValue(TRUE);
$container = new FieldList('group1', 'Group One');
$form->push($container);
$container->push($name)->push($surname)->push($rememberMe)->push($rememberMyRadio);
$category = new SelectOneField('category', 'User Category');
$category->setSrc(array(1 => 'Customer', 2 => 'Co-Worker', 3 => 'Family', 4 => 'Organisation', 5 => 'Prospect'))->setValue(2);
Example #15
0
 protected function getCacheId(Form $form, Field $field, $property)
 {
     return $form->getName() . '|' . $field->getName() . "|{$property}";
 }
 protected function fireEvent($eventPrefix, array $params)
 {
     $eventName = $eventPrefix . '.' . $this->form->getEventSuffix();
     $this->fire($eventName, $params);
 }