protected function getRootNodeSelect()
 {
     $select = SelectOneField::create($this->fieldName('sitetree_root_id'), Lang::get('cmsable::forms.page-form.sitetree_root_id'));
     $entries = [];
     foreach ($this->getScopes() as $scope) {
         $entries[$scope->getModelRootId()] = $scope->getTitle();
     }
     $select->setSrc($entries);
     return $select;
 }
예제 #2
0
 public function createFields()
 {
     $parentFields = parent::createFields();
     $securityFields = new FieldList('security', trans('cmsable::forms.page-form.security'));
     $securityFields->setSwitchable(TRUE);
     $permFinder = App::make(__NAMESPACE__ . '\\PermissionFinder', array($this));
     $viewPermissions = $permFinder->buildFormValues($permFinder->getViewPermissions());
     $editPermissions = $permFinder->buildFormValues($permFinder->getEditPermissions());
     $deletePermissions = $permFinder->buildFormValues($permFinder->getDeletePermissions());
     $addChildPermissions = $permFinder->buildFormValues($permFinder->getAddChildPermissions());
     $securityFields->push(SelectOneField::create('view_permission')->setTitle(trans('cmsable::models.page.fields.view_permission'))->setSrc($viewPermissions), SelectOneField::create('edit_permission')->setTitle(trans('cmsable::models.page.fields.edit_permission'))->setSrc($editPermissions));
     $parentFields->push($securityFields);
     return $parentFields;
 }
예제 #3
0
$renderer = new Renderer\PhpRenderer();
$renderer->addPath(dirname(__FILE__) . '/themes/bootstrap/templates/forms');
$factory = new AdapterFactorySimple();
$factory->setRenderer($renderer);
$categories = array(1 => 'Customer', 2 => 'Co-Worker', 3 => 'Family', 4 => 'Organisation', 5 => 'Prospect');
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;
예제 #4
0
 protected function getSiteTreeSelect($page)
 {
     $select = SelectOneField::create('redirect__redirect_target_i', Lang::get('cmsable::forms.page-form.redirect_target_i'));
     $select->setSrc($this->getPageList($page));
     return $select;
 }
예제 #5
0
$category2 = SelectOneField::create('category2', 'User Category 2');
$category2->setSrc($categories)->setClassName('RadioButtonsField');
$grouper = new OptionGrouper(function ($grouper, $item) {
    if (in_array("{$item}", array('Customer', 'Organisation', 'Organisation'))) {
        return 'Business';
    }
    return 'Personal';
});
$grouper2 = new OptionGrouper(function ($grouper, $item) {
    if (in_array("{$item}", array('Customer', 'Organisation', 'Organisation'))) {
        return 'Business';
    }
    return 'Personal';
});
$grouper2->setTitle('Business', 'Work')->setTitle('Personal', 'Home');
$form->push(TextField::create('name')->setTitle('Please enter your name')->setValue('Billy'), TextField::create('surname')->setTitle('Please enter your surname')->setValue('Talent'), CheckboxField::create('rememberMe')->setTitle('Remember Me'), BooleanRadioField::create('rememberMyRadio')->setTitle('Remember my radio')->setStringForTrue('Remember my radio')->setStringForFalse('Forget my radio')->setValue(TRUE), TextField::create('message')->setTitle('Message')->setValue('')->setMultiLine(TRUE), SelectOneField::create('category', 'User Category')->setSrc($categories)->setGrouper($grouper), SelectOneField::create('category2', 'User Category 2')->setSrc($categories)->setGrouper($grouper2));
$nameValidator = new TextValidator();
$nameValidator->required = FALSE;
$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);
$form->setValidator($validator);
$data = array();
예제 #6
0
$rememberMyRadio = new BooleanRadioField('rememberMyRadio');
$rememberMyRadio->trueString = 'Remember my Radio';
$rememberMyRadio->falseString = 'Forget my Radio';
$rememberMyRadio->setValue(TRUE);
$container = new FieldList('group1', 'Tab One');
$container->setSwitchable(TRUE);
$form->push($container);
$container->push($name)->push($surname)->push($rememberMe)->push($rememberMyRadio);
$container2 = new FieldList('group2', 'Tab Two');
$container2->setSwitchable(TRUE);
// $container2->push($category)->push($tagsField)->push($category2)->push($tags2);
$linkTypes = array('internal' => 'Internal', 'external' => 'External');
$selectGroup = SelectOneGroup::create('linkType', 'Link')->setSrc($linkTypes);
$selectGroup->setValue('internal');
$targets = array('firstchild' => 'First Child Page', '1' => 'Home', '2' => 'Contact', '3' => 'About us');
$pages = SelectOneField::create('internalTarget', 'Target')->setSrc($targets);
$selectGroup->push($pages);
$externalTarget = TextField::create('externalTarget', 'URL');
$selectGroup->push($externalTarget);
$container2->push($selectGroup);
$form->push($container2);
$form->actions->push(Action::create('delete')->setTitle('Delete'));
$form('surname')->setValue('Button');
$nameValidator = new TextValidator();
$nameValidator->required = FALSE;
$nameValidator->minLength = 3;
$nameValidator->setMaxLength = 12;
$requiredValidator = new RequiredValidator();
$requiredValidator->required = TRUE;
$trueValidator = new BooleanValidator();
$trueValidator->mustBeTrue = TRUE;
예제 #7
0
 */
$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);
$container2 = new FieldList('group2', 'Group Two');
$container2->push($category);
$form->push($container2);
$form('surname')->setValue('Hunter');
$nameValidator = new TextValidator();
$nameValidator->required = FALSE;
$nameValidator->minLength = 3;
$nameValidator->setMaxLength = 12;
$requiredValidator = new RequiredValidator();
$requiredValidator->required = TRUE;
$trueValidator = new BooleanValidator();
$trueValidator->mustBeTrue = TRUE;
$validator = new SimpleValidator($form);
$validator->set('name', $nameValidator);
예제 #8
0
 protected function createPageTypeField()
 {
     return SelectOneField::create('page_type')->setTitle(trans('cmsable::pagetypes.pagetype'))->setSrc(PageType::all($this->getRouteScope()), new Extractor('getId()', 'singularName()'));
 }
예제 #9
0
$form = Form::create();
$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', 'Tab One');
$container->setSwitchable(TRUE);
$form->push($container);
$container->push($name)->push($surname)->push($rememberMe)->push($rememberMyRadio);
$category = new SelectOneField('category', 'User Category');
$categories = array(1 => 'Customer', 2 => 'Co-Worker', 3 => 'Family', 4 => 'Organisation', 5 => 'Prospect');
$tags = array(1 => 'New', 2 => 'Partner', 3 => 'Important', 4 => 'Reused');
$category->setSrc($categories)->setValue(2);
$tagsField = SelectManyField::create('tags')->setTitle('Tags')->setSrc($tags);
$category2 = SelectOneField::create('category2', 'User Category 2');
$category2->setSrc($categories)->setClassName('RadioButtonsField');
$tags2 = SelectManyField::create('tags2')->setTitle('Tags 2')->setSrc($tags);
$tags2->setClassName('MultiCheckboxField');
$container2 = new FieldList('group2', 'Tab Two');
$container2->setSwitchable(TRUE);
$container2->push($category)->push($tagsField)->push($category2)->push($tags2);
$form->push($container2);
$form->actions->push(Action::create('delete')->setTitle('Delete'));
$form('surname')->setValue('Button');
$nameValidator = new TextValidator();