public function setup() { $this->setWidgets(array('post_id' => new sfWidgetFormDoctrineChoice(array('model' => 'DmTestPost', 'add_empty' => true)), 'author' => new sfWidgetFormFilterInput(), 'body' => new sfWidgetFormFilterInput(), 'is_active' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'created_at' => new sfWidgetFormFilterDate(array('from_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'to_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'with_empty' => false)), 'updated_at' => new sfWidgetFormFilterDate(array('from_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'to_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'with_empty' => false)), 'version' => new sfWidgetFormFilterInput())); $this->setValidators(array('post_id' => new sfValidatorDoctrineChoice(array('required' => false, 'model' => $this->getRelatedModelName('Post'), 'column' => 'id')), 'author' => new sfValidatorPass(array('required' => false)), 'body' => new sfValidatorPass(array('required' => false)), 'is_active' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'created_at' => new sfValidatorDateRange(array('required' => false, 'from_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 00:00:00')), 'to_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 23:59:59')))), 'updated_at' => new sfValidatorDateRange(array('required' => false, 'from_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 00:00:00')), 'to_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 23:59:59')))), 'version' => new sfValidatorSchemaFilter('text', new sfValidatorInteger(array('required' => false))))); $this->widgetSchema->setNameFormat('dm_test_comment_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
public function setup() { $this->setWidgets(array('slug' => new sfWidgetFormFilterInput(), 'name' => new sfWidgetFormFilterInput(), 'title' => new sfWidgetFormFilterInput(), 'h1' => new sfWidgetFormFilterInput(), 'description' => new sfWidgetFormFilterInput(), 'keywords' => new sfWidgetFormFilterInput(), 'auto_mod' => new sfWidgetFormFilterInput(), 'is_active' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'is_secure' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'is_indexable' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))))); $this->setValidators(array('slug' => new sfValidatorPass(array('required' => false)), 'name' => new sfValidatorPass(array('required' => false)), 'title' => new sfValidatorPass(array('required' => false)), 'h1' => new sfValidatorPass(array('required' => false)), 'description' => new sfValidatorPass(array('required' => false)), 'keywords' => new sfValidatorPass(array('required' => false)), 'auto_mod' => new sfValidatorPass(array('required' => false)), 'is_active' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'is_secure' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'is_indexable' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))))); $this->widgetSchema->setNameFormat('dm_page_translation_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
public function setup() { $this->setWidgets(array('title' => new sfWidgetFormFilterInput(), 'excerpt' => new sfWidgetFormFilterInput(), 'body' => new sfWidgetFormFilterInput(), 'url' => new sfWidgetFormFilterInput(), 'is_active' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))))); $this->setValidators(array('title' => new sfValidatorPass(array('required' => false)), 'excerpt' => new sfValidatorPass(array('required' => false)), 'body' => new sfValidatorPass(array('required' => false)), 'url' => new sfValidatorPass(array('required' => false)), 'is_active' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))))); $this->widgetSchema->setNameFormat('dm_test_post_translation_version_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
public function setup() { $this->setWidgets(array('username' => new sfWidgetFormFilterInput(), 'email' => new sfWidgetFormFilterInput(), 'algorithm' => new sfWidgetFormFilterInput(), 'salt' => new sfWidgetFormFilterInput(), 'password' => new sfWidgetFormFilterInput(), 'is_active' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'is_super_admin' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'last_login' => new sfWidgetFormFilterDate(array('from_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'to_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'with_empty' => true)), 'created_at' => new sfWidgetFormFilterDate(array('from_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'to_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'with_empty' => false)), 'updated_at' => new sfWidgetFormFilterDate(array('from_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'to_date' => new sfWidgetFormInputText(array(), array("class" => "datepicker_me")), 'with_empty' => false)), 'groups_list' => new sfWidgetFormDoctrineChoice(array('multiple' => true, 'model' => 'DmGroup')), 'permissions_list' => new sfWidgetFormDoctrineChoice(array('multiple' => true, 'model' => 'DmPermission')))); $this->setValidators(array('username' => new sfValidatorPass(array('required' => false)), 'email' => new sfValidatorPass(array('required' => false)), 'algorithm' => new sfValidatorPass(array('required' => false)), 'salt' => new sfValidatorPass(array('required' => false)), 'password' => new sfValidatorPass(array('required' => false)), 'is_active' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'is_super_admin' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'last_login' => new sfValidatorDateRange(array('required' => false, 'from_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 00:00:00')), 'to_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 23:59:59')))), 'created_at' => new sfValidatorDateRange(array('required' => false, 'from_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 00:00:00')), 'to_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 23:59:59')))), 'updated_at' => new sfValidatorDateRange(array('required' => false, 'from_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 00:00:00')), 'to_date' => new sfValidatorDateTime(array('required' => false, 'datetime_output' => 'Y-m-d 23:59:59')))), 'groups_list' => new sfValidatorDoctrineChoice(array('multiple' => true, 'model' => 'DmGroup', 'required' => false)), 'permissions_list' => new sfValidatorDoctrineChoice(array('multiple' => true, 'model' => 'DmPermission', 'required' => false)))); $this->widgetSchema->setNameFormat('dm_user_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
public function setup() { $this->setWidgets(array('title' => new sfWidgetFormFilterInput(), 'is_active' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))), 'created_by' => new sfWidgetFormDoctrineChoice(array('model' => 'DmUser', 'add_empty' => true)), 'updated_by' => new sfWidgetFormDoctrineChoice(array('model' => 'DmUser', 'add_empty' => true)))); $this->setValidators(array('title' => new sfValidatorPass(array('required' => false)), 'is_active' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))), 'created_by' => new sfValidatorDoctrineChoice(array('required' => false, 'model' => $this->getRelatedModelName('CreatedBy'), 'column' => 'id')), 'updated_by' => new sfValidatorDoctrineChoice(array('required' => false, 'model' => $this->getRelatedModelName('UpdatedBy'), 'column' => 'id')))); $this->widgetSchema->setNameFormat('dm_test_domain_translation_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
public function setup() { $this->setWidgets(array('name' => new sfWidgetFormFilterInput(), 'description' => new sfWidgetFormFilterInput(), 'media_id' => new sfWidgetFormDoctrineChoice(array('model' => 'DmMedia', 'add_empty' => true)), 'is_visible' => new sfWidgetFormChoice(array('choices' => array('' => dm::getI18n()->__('yes or no', array(), 'dm'), 1 => dm::getI18n()->__('yes', array(), 'dm'), 0 => dm::getI18n()->__('no', array(), 'dm')))))); $this->setValidators(array('name' => new sfValidatorPass(array('required' => false)), 'description' => new sfValidatorPass(array('required' => false)), 'media_id' => new sfValidatorDoctrineChoice(array('required' => false, 'model' => $this->getRelatedModelName('Media'), 'column' => 'id')), 'is_visible' => new sfValidatorChoice(array('required' => false, 'choices' => array('', 1, 0))))); $this->widgetSchema->setNameFormat('dm_test_user_filters[%s]'); $this->errorSchema = new sfValidatorErrorSchema($this->validatorSchema); $this->setupInheritance(); parent::setup(); }
/** * Configures the current validator. * * Available options: * * * date_format: A regular expression that dates must match * * with_time: true if the validator must return a time, false otherwise * * date_output: The format to use when returning a date (default to Y-m-d) * * datetime_output: The format to use when returning a date with time (default to Y-m-d H:i:s) * * date_format_error: The date format to use when displaying an error for a bad_format error (use date_format if not provided) * * max: The maximum date allowed (as a timestamp) * * min: The minimum date allowed (as a timestamp) * * date_format_range_error: The date format to use when displaying an error for min/max (default to d/m/Y H:i:s) * * Available error codes: * * * bad_format * * min * * max * * @param array $options An array of options * @param array $messages An array of error messages * * @see sfValidatorBase */ protected function configure($options = array(), $messages = array()) { parent::configure($options, $messages); $i18n = dm::getI18n(); $this->addMessage('bad_format', '"%value%" ' . $i18n->__('does not match the date format') . ' (%date_format%).'); $this->addMessage('max', $i18n->__('The date must be before') . ' %max%.'); $this->addMessage('min', $i18n->__('The date must be after') . ' %min%.'); // $this->addOption('date_format', $this->getDateFormat(dm::getUser()->getCulture())); $this->addOption('context', dmContext::getInstance()); }
public function checkSlug($validator, $values) { if (!empty($values['slug'])) { $values['slug'] = dmString::urlize($values['slug'], true); $existingPageName = dmDb::query('DmPageTranslation t')->where('t.lang = ? AND t.slug = ?', array($this->object->lang, $values['slug']))->select('t.name')->fetchValue(); if ($existingPageName) { $error = new sfValidatorError($validator, dm::getI18n()->__('The page "%1%" uses this slug', array('%1%' => $existingPageName))); // throw an error bound to the password field throw new sfValidatorErrorSchema($validator, array('slug' => $error)); } } return $values; }
protected function sortZones(array $zoneList) { $zones = array(); foreach ($zoneList as $position => $zoneId) { $zones[$zoneId] = $position + 1; } try { dmDb::table('DmZone')->doSort($zones); } catch (Exception $e) { if ($this->getUser()->can('system')) { throw $e; } $this->getUser()->logError(dm::getI18n()->__('A problem occured when sorting the items')); } }
public function checkModuleAction($validator, $values) { if (!empty($values['module']) && !empty($values['action'])) { foreach (array('module', 'action') as $key) { $values[$key] = dmString::modulize(str_replace('-', '_', dmString::slugify(dmString::underscore($values[$key])))); } $existingPage = dmDb::query('DmPage p')->where('p.module = ? AND p.action = ? and p.record_id = ? AND p.id != ?', array($values['module'], $values['action'], $this->object->record_id, $this->object->id))->fetchRecord(); if ($existingPage) { $error = new sfValidatorError($validator, dm::getI18n()->__('The page "%1%" uses this module.action', array('%1%' => $existingPage->name))); // throw an error bound to the password field throw new sfValidatorErrorSchema($validator, array('action' => $error)); } } return $values; }
protected function generateRow(myDoctrineRecord $record) { $row = array(); foreach ($this->fields as $field => $fieldName) { try { $cell = $this->generateCell($field, $record); } catch (Exception $e) { $cell = dm::getI18n()->__('Error'); if (sfConfig::get('sf_debug')) { throw $e; $cell .= ' ' . $e->getMessage(); } } $row[] = $cell; } return $row; }
public function executeSaveSortReferers(sfWebRequest $request) { $this->forward404Unless($module = $this->context->getModuleManager()->getModuleOrNull($request->getParameter('dm_module'))); $this->forward404Unless($refererModule = $this->context->getModuleManager()->getModuleOrNull($request->getParameter('dm_referer_module'))); $elements = $request->getParameter('dm_sort_element'); $currentPosition = 1; foreach ($elements as $elementId => $position) { $elements[$elementId] = $currentPosition++; } try { $refererModule->getTable()->doSort($elements); } catch (Exception $e) { if ($this->getUser()->can('system')) { throw $e; } $this->getUser()->logError(dm::getI18n()->__('A problem occured when sorting the items'), array(), true); } $this->getUser()->logInfo(dm::getI18n()->__('The items have been sorted successfully'), array(), true); return $this->redirectBack(); }
protected function doExport(array $options) { /* * get data in an array */ $exportClass = $options['exportClass']; $export = new $exportClass($options['module']->getTable()); $data = $export->generate($options['format']); /* * transform into downloadable data */ switch ($options['extension']) { default: $csv = new dmCsvWriter(',', '"'); $csv->setCharset($options['encoding']); $data = $csv->convert($data); $mime = 'text/csv'; } $this->download($data, array('file_name' => sprintf('%s-%s_%s.%s', dmConfig::get('site_name'), dm::getI18n()->__($options['module']->getName()), date('Y-m-d'), $options['extension']), 'mime_type' => sprintf('%s; charset=%s', $mime, $options['encoding']))); }