作者:MooonWe
项目:TestAja
protected function getForm()
{
$builder = new AnnotationBuilder();
$entity = new TestEntity();
$form = $builder->createForm($entity);
return $form;
}
作者:neuwe
项目:idaut
public function authenticateAction()
{
$user = new Forms\Login();
$builder = new AnnotationBuilder();
$form = $builder->createForm($user);
$request = $this->getRequest();
if ($request->isPost()) {
$form->setData($request->getPost());
if ($form->isValid()) {
$user = $request->getPost('username');
$pass = $request->getPost('password');
$redir = urldecode($this->params()->fromQuery('redir'));
$authService = $this->getAuthService();
$authService->setIdentity($user);
$authService->setCredential($pass);
$result = $authService->authenticate();
/* $d = new \Zend\Debug\Debug();
$d->dump($result);
die; */
foreach ($result->getMessages() as $message) {
//save message temporary into flashmessenger
$this->flashmessenger()->addMessage($message);
}
$conf = $this->getServiceLocator()->get('IdAuth\\Config');
if ($conf['settings']['usePrevPageRedir']) {
return $this->redirect()->toUrl($redir);
} else {
return $this->redirect()->toRoute('idAuth');
}
}
}
return $this->redirect()->toRoute('idAuth/login');
}
作者:jordiwe
项目:zf2.unlikelysource.or
/**
* The default action - show the home page
*/
public function indexAction()
{
// init vars
$data = NULL;
$table = $this->getServiceLocator()->get('city-codes-table');
$catList = $this->getServiceLocator()->get('form-demo-categories');
$cityList = $table->getAllCityCodesForForm();
$countryList = $table->getAllCountryCodesForForm();
// submit button
$submit = new Submit('submit');
$submit->setAttribute('value', 'Submit');
// build form
$builder = new AnnotationBuilder();
$entity = $this->getServiceLocator()->get('form-demo-listings-entity');
$form = $builder->createForm($entity);
$form->get('category')->setValueOptions(array_combine($catList, $catList));
$form->getInputFilter()->get('category')->getValidatorChain()->attachByName('InArray', array('haystack' => $catList));
$form->get('country')->setValueOptions($countryList);
$form->getInputFilter()->get('country')->getValidatorChain()->attachByName('InArray', array('haystack' => $countryList));
$form->add($submit);
$form->bind($entity);
if ($this->getRequest()->isPost()) {
$form->setData($this->params()->fromPost());
if ($form->isValid()) {
$data = $form->getData();
}
}
return new ViewModel(array('form' => $form, 'data' => $data, 'cityList' => $cityList));
}
作者:debranov
项目:progra
/**
* @param EntityManager $entityManager
* @param Entity\EntityAbstract $object
*/
public function __construct(EntityManager $entityManager, Entity\EntityAbstract $object)
{
parent::__construct($object->get('underscore_entity_name'));
$doctrineHydrator = new DoctrineHydrator($entityManager);
$this->setHydrator($doctrineHydrator)->setObject($object);
$builder = new AnnotationBuilder();
/**
* Go over the different form elements and add them to the form
*/
foreach ($builder->createForm($object)->getElements() as $element) {
/**
* Go over each element to add the objectManager to the EntitySelect
*/
if ($element instanceof EntitySelect || $element instanceof EntityMultiCheckbox) {
$element->setOptions(array_merge_recursive($element->getOptions(), ['object_manager' => $entityManager]));
}
if ($element instanceof Radio) {
$attributes = $element->getAttributes();
$valueOptionsArray = 'get' . ucfirst($attributes['array']);
$element->setOptions(array_merge_recursive($element->getOptions(), ['value_options' => $object->{$valueOptionsArray}()]));
}
//Add only when a type is provided
if (array_key_exists('type', $element->getAttributes())) {
$this->add($element);
}
}
}
作者:gsokolowsk
项目:learnzf
public function addAction()
{
// The annotation builder help us create a form from the annotations in the user entity.
$builder = new AnnotationBuilder();
$entity = $this->serviceLocator->get('user-entity');
$form = $builder->createForm($entity);
$form->add(array('name' => 'password_verify', 'type' => 'Zend\\Form\\Element\\Password', 'attributes' => array('placeholder' => 'Verify Password Here...', 'required' => 'required'), 'options' => array('label' => 'Verify Password')), array('priority' => $form->get('password')->getOption('priority')));
// This is the special code that protects our form being submitted from automated scripts
$form->add(array('name' => 'csrf', 'type' => 'Zend\\Form\\Element\\Csrf'));
// This is the submit button
$form->add(array('name' => 'submit', 'type' => 'Zend\\Form\\Element\\Submit', 'attributes' => array('value' => 'Submit', 'required' => 'false')));
// We bind the entity to the user. If the form tries to read/write data from/to the entity
// it will use the hydrator specified in the entity to achieve this. In our case we use ClassMethods
// hydrator which means that reading will happen calling the getter methods and writing will happen by
// calling the setter methods.
$form->bind($entity);
if ($this->getRequest()->isPost()) {
$data = array_merge_recursive($this->getRequest()->getPost()->toArray(), $this->getRequest()->getFiles()->toArray());
$form->setData($data);
if ($form->isValid()) {
// We use now the Doctrine 2 entity manager to save user data to the database
$entityManager = $this->serviceLocator->get('entity-manager');
$entityManager->persist($entity);
$entityManager->flush();
$this->flashmessenger()->addSuccessMessage('User was added successfully.');
$event = new EventManager('user');
$event->trigger('register', $this, array('user' => $entity));
// redirect the user to the view user action
return $this->redirect()->toRoute('user/default', array('controller' => 'account', 'action' => 'view', 'id' => $entity->getId()));
}
}
// pass the data to the view for visualization
return array('form1' => $form);
}
作者:Newman10
项目:affiliatio
/**
* @param EntityManager $entityManager
*/
public function __construct(EntityManager $entityManager)
{
parent::__construct('doa');
$doa = new Entity\Doa();
$doctrineHydrator = new DoctrineHydrator($entityManager, 'Affiliation\\Entity\\Doa');
$this->setHydrator($doctrineHydrator)->setObject($doa);
$builder = new AnnotationBuilder();
/**
* Go over the different form elements and add them to the form
*/
foreach ($builder->createForm($doa)->getElements() as $element) {
/**
* Go over each element to add the objectManager to the EntitySelect
*/
if ($element instanceof EntitySelect) {
$element->setOptions(['object_manager' => $entityManager]);
}
//Add only when a type is provided
if (array_key_exists('type', $element->getAttributes())) {
$this->add($element);
}
}
$this->add(['type' => '\\Zend\\Form\\Element\\Select', 'name' => 'contact', 'options' => ["label" => "txt-signer"]]);
$this->add(['type' => '\\Zend\\Form\\Element\\File', 'name' => 'file', 'options' => ["label" => "txt-source-file", "help-block" => _("txt-attachment-requirements")]]);
}
作者:rav99
项目:AplikacjaRestPh
/**
* For JS AJAX validation - validates a property of Equipment object.
* @return JSON status=ok|error,message={string}
*/
public function validateJSONAction()
{
try {
$propName = $this->params()->fromPost('propName');
if (!in_array($propName, Equipment::propertyNames())) {
throw new \Exception('Wrong property provided.');
}
$value = $this->params()->fromPost('value');
if (!$propName || !$value) {
throw new \Exception('No property and/or value given.');
}
$equipment = new Equipment();
$builder = new AnnotationBuilder();
$form = $builder->createForm($equipment);
$form->setData(array($propName => $value))->isValid();
$elements = $form->getElements();
$element = $elements[$propName];
if (count($element->getMessages())) {
return $this->myJsonModel(array('status' => 'error', 'message' => $element->getMessages()));
} else {
return $this->myJsonModel(array('status' => 'ok', 'message' => ''));
}
} catch (\Exception $e) {
// @TODO: set status to syserror so JS doesn't confuse with
// validation error
return $this->myJsonModel(array('status' => 'error', 'message' => $e->getMessage()));
}
}
作者:iteaoffic
项目:contac
/**
* @param EntityManager $entityManager
* @param Entity\EntityAbstract $object
*/
public function __construct(EntityManager $entityManager, Entity\EntityAbstract $object)
{
parent::__construct($object->get('underscore_entity_name'));
$doctrineHydrator = new DoctrineHydrator($entityManager);
$this->setHydrator($doctrineHydrator)->setObject($object);
$builder = new AnnotationBuilder();
/**
* Go over the different form elements and add them to the form
*/
foreach ($builder->createForm($object)->getElements() as $element) {
/**
* Go over each element to add the objectManager to the EntitySelect
*/
if ($element instanceof EntitySelect || $element instanceof EntityMultiCheckbox) {
$element->setOptions(array_merge_recursive($element->getOptions(), ['object_manager' => $entityManager]));
}
if ($element instanceof Radio) {
$attributes = $element->getAttributes();
$valueOptionsArray = 'get' . ucfirst($attributes['array']);
$element->setOptions(array_merge_recursive($element->getOptions(), ['value_options' => $object->{$valueOptionsArray}()]));
}
//Add only when a type is provided
if (array_key_exists('type', $element->getAttributes())) {
$this->add($element);
}
}
$this->add(['type' => '\\Zend\\Form\\Element\\Select', 'name' => 'organisation', 'options' => ['disable_inarray_validator' => true, "label" => _("txt-organisation"), "help-block" => _("txt-organisation-help-block")]]);
$this->add(['type' => '\\Zend\\Form\\Element\\Text', 'name' => 'branch', 'options' => ["label" => _("txt-branch"), "help-block" => _("txt-branch-help-block")]]);
}
作者:debranov
项目:projec
/**
* @param EntityManager $entityManager
* @param Entity\EntityAbstract $object
*/
public function __construct(EntityManager $entityManager, Entity\EntityAbstract $object)
{
parent::__construct($object->get('underscore_entity_name'));
$doctrineHydrator = new DoctrineHydrator($entityManager);
$this->setHydrator($doctrineHydrator)->setObject($object);
$builder = new AnnotationBuilder();
/*
* Go over the different form elements and add them to the form
*/
foreach ($builder->createForm($object)->getElements() as $element) {
/*
* Go over each element to add the objectManager to the EntitySelect
*/
if ($element instanceof EntitySelect || $element instanceof EntityMultiCheckbox) {
$element->setOptions(['object_manager' => $entityManager]);
}
if ($element instanceof Radio) {
$attributes = $element->getAttributes();
$valueOptionsArray = 'get' . ucfirst($attributes['array']);
$element->setOptions(['value_options' => $object->{$valueOptionsArray}()]);
}
//Add only when a type is provided
if (array_key_exists('type', $element->getAttributes())) {
$this->add($element);
}
}
$this->add(['type' => '\\Zend\\Form\\Element\\File', 'name' => 'file', 'attributes' => ["class" => "form-control"], 'options' => ["label" => _("txt-source-file"), "help-block" => _("txt-attachment-requirements")]]);
}
作者:guenter
项目:vufin
/**
* Returns constructed Feedback
*
* @param ServiceManager $sm ServiceManager
*
* @return Form
*/
public static function getFeedbackForm(ServiceManager $sm)
{
$builder = new AnnotationBuilder();
$form = $builder->createForm('\\Swissbib\\Feedback\\Form\\FeedbackForm');
$form->add(new Csrf('security'));
$form->add(['name' => 'submit', 'type' => 'Submit', 'attributes' => ['value' => 'feedback.form.submit']]);
return $form;
}
作者:Gunners6940
项目:BACCAM_ESCALIER_ZEND_APPLICATIO
public function getForm()
{
if (!$this->form) {
$user = new User();
$builder = new AnnotationBuilder();
$this->form = $builder->createForm($user);
}
return $this->form;
}
作者:arnie8
项目:gofiliate_tes
private function getForm()
{
if (!$this->form) {
$form = new LoginForm();
$builder = new AnnotationBuilder();
$this->form = $builder->createForm($form);
}
return $this->form;
}
作者:CUSA
项目:vufin
/**
* @param ServiceManager $sm
*
* @return Form
*/
public static function getCopyForm(ServiceManager $sm)
{
AbstractValidator::setDefaultTranslator($sm->get('\\VuFind\\Translator'));
$builder = new AnnotationBuilder();
$form = $builder->createForm('\\Swissbib\\Record\\Form\\CopyForm');
$form->add(new Csrf('security'));
$form->add(['name' => 'submit', 'type' => 'Submit', 'attributes' => ['value' => 'request_copy_text']]);
return $form;
}
作者:JVerstr
项目:Zend-2-Login-Access-Control-Dem
public function __construct()
{
$this->lastAttemptResult = LoginLogoutService::$failedLoginAttempt;
$this->authservice = new AuthenticationService();
$this->authservice->setStorage(new \Main\Service\UserSessionStorage());
$user = new User();
$builder = new AnnotationBuilder();
$this->form = $builder->createForm($user);
}
作者:vrkansagar
项目:PhlyPee
public static function factory(PeepEntity $peep = null)
{
if (null === $peep) {
$peep = __NAMESPACE__ . '\\PeepEntity';
}
$builder = new AnnotationBuilder();
$form = $builder->createForm($peep);
$form->add(new CsrfElement('secure'));
$form->add(array('name' => 'peep', 'attributes' => array('type' => 'submit', 'value' => 'Peep!')));
if ($peep instanceof PeepEntity) {
$form->bind($peep);
}
return $form;
}
作者:augustoalves
项目:datawar
/**
* Primerio oter todos os atributos da classe de forma automática;
* Depois, obter todos atributos que possuem annotações que serão utilizadas;
* Estes atributos serão gerados na grid.
*
* @param \Dataware\Entity\Grid $grid
*/
private function makeGridColumnsByEntity(Grid $grid)
{
if (strlen($grid->getEntity()) > 0) {
$annotationBuilder = new AnnotationBuilder();
$formEspecification = $annotationBuilder->getFormSpecification($grid->getEntity());
foreach ($formEspecification['elements'] as $element) {
if (strlen($element['spec']['options']['label']) > 0) {
// É possível a partir do tipo, conseguir descobrir o alinhamento dos registros.
$gridColumn = new GridColumn($element['spec']['name'], $element['spec']['options']['label']);
$grid->addColumn($gridColumn);
}
}
}
}
作者:zfur
项目:cm
/**
* {@inheritDoc}
*/
protected function getCreateForm()
{
$entityManager = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
$builder = new AnnotationBuilder($entityManager);
$form = $builder->createForm($this->getEntity());
$options = $entityManager->getRepository('Comment\\Entity\\EntityType')->getEntities();
$select = $form->getElements()['entity'];
$select->setValueOptions($options);
$select->setOptions(array('empty_option' => 'Please choose entity'));
$form->setInputFilter(new Filter\EntityTypeInputFilter($this->getServiceLocator()));
$urlHelper = $this->getUrlHelper();
$form->setAttribute('action', $urlHelper('comment/default', ['controller' => 'entity-type', 'action' => 'create']));
// $form->setData(['isVisible' => true, 'isEnabled' => true]);
return $form;
}
作者:LeCoyot
项目:epeires
private function getRadarForm()
{
$em = $this->getServiceLocator()->get('Doctrine\\ORM\\EntityManager');
$event = new Event();
$builder = new AnnotationBuilder();
$form = $builder->createForm($event);
$form->setHydrator(new DoctrineObject($em))->setObject($event);
$categories = $em->getRepository('Application\\Entity\\RadarCategory')->findBy(array('defaultradarcategory' => true));
if ($categories) {
$cat = $categories[0];
$form->add(new CustomFieldset($this->getServiceLocator(), $cat->getId()));
//uniquement les champs ajoutés par conf
$form->get('custom_fields')->remove($cat->getRadarfield()->getId());
$form->get('custom_fields')->remove($cat->getStatefield()->getId());
}
return $form;
}
作者:nsenkevic
项目:se
/**
* Create service
*
* @param ServiceLocatorInterface $sm
* @return \Zend\Form\Form
*/
public function createService(ServiceLocatorInterface $sm)
{
$seo = new Seo(Null, Null, Null, Null);
$builder = new AnnotationBuilder();
$form = $builder->createForm($seo);
$form->bind($seo);
$form->get('type')->setValueOptions(Seo::$entityType);
// $form->add(array(
// 'type' => 'DoctrineModule\Form\Element\ObjectSelect',
// 'name' => 'pageId',
// 'priority' => 5,
// 'options' => array(
// 'label' => 'Homeowners',
// 'object_manager' => $sm->get('doctrine.entitymanager.orm_default'),
// 'target_class' => '\BuilderJob\Entity\Homeowner',
// 'property' => 'email',
// 'empty_option' => '--- please choose ---',
// 'is_method' => true,
// 'find_method' => array(
// 'name' => 'findAll',
// ),
// ),
// ));
$form->add(array('type' => 'DoctrineModule\\Form\\Element\\ObjectSelect', 'name' => 'pageId', 'priority' => 5, 'options' => array('label' => 'Builder', 'object_manager' => $sm->get('doctrine.entitymanager.orm_default'), 'target_class' => '\\BuilderJob\\Entity\\Builder', 'property' => 'email', 'empty_option' => '--- please choose ---', 'is_method' => true, 'find_method' => array('name' => 'findAll'))));
$form->getInputFilter()->add(array('name' => 'pageId', 'required' => TRUE));
//
// $form->add(array(
// 'type' => 'DoctrineModule\Form\Element\ObjectSelect',
// 'name' => 'pageId',
// 'priority' => 5,
// 'options' => array(
// 'label' => 'Job',
// 'object_manager' => $sm->get('doctrine.entitymanager.orm_default'),
// 'target_class' => '\BuilderJob\Entity\Job',
// 'property' => 'title',
// 'empty_option' => '--- please choose ---',
// 'is_method' => true,
// 'find_method' => array(
// 'name' => 'findAll',
// ),
// ),
// ));
$form->add(array('name' => 'security', 'type' => 'Zend\\Form\\Element\\Csrf'));
$form->add(array('name' => 'submit', 'attributes' => array('type' => 'submit', 'value' => 'Add Seo')));
return $form;
}
作者:zendframewor
项目:zend-for
/**
* Inject annotations from configuration, if any.
*
* @param array $config
* @param AnnotationBuilder $builder
* @return void
*/
private function injectAnnotations(array $config, AnnotationBuilder $builder)
{
if (!isset($config['annotations'])) {
return;
}
$parser = $builder->getAnnotationParser();
foreach ($config['annotations'] as $fullyQualifiedClassName) {
$parser->registerAnnotation($fullyQualifiedClassName);
}
}