Exemple #1
0
 public function init()
 {
     $this->addPrefixPath('Ynevent_Form_Decorator', APPLICATION_PATH . '/application/modules/Ynevent/Form/Decorator', 'decorator')->addPrefixPath('Ynevent_Form_Element', APPLICATION_PATH . '/application/modules/Ynevent/Form/Element', 'element')->addElementPrefixPath('Ynevent_Form_Decorator', APPLICATION_PATH . '/application/modules/Ynevent/Form/Decorator', 'decorator');
     $this->setTitle('Global Settings')->setDescription('These settings affect all members in your community.');
     $ynevent_day = new Ynevent_Form_Element_YnCalendarSimple('ynevent_day');
     $ynevent_day->setLabel("Maximum end day repeat");
     $ynevent_day->setAllowEmpty(true);
     $ynevent_day->setValue(Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.day', ''));
     $this->addElement($ynevent_day);
     /*	
     $this->addElement('Text', 'ynevent_day',array(
     	      'label'=>'Maximum end day repeat',
     	      'title' => '',  
     	      'description' => '',
     	      'filters' => array(
     	        new Engine_Filter_Censor(),
     	      ),
     	     'value'=> Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.day', ''),
      )); 
     */
     $this->addElement('Text', 'ynevent_instance', array('label' => 'Maximum instances of each repeat events', 'title' => '', 'description' => '', 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.instance', 50)));
     $this->addElement('Text', 'ynevent_google_api', array('label' => 'Google API key', 'title' => '', 'description' => '', 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.google.api', '')));
     $this->addElement('Text', 'ynevent_google_oauth_client_id', array('label' => 'Google OAuth 2.0 Client ID', 'title' => '', 'description' => '', 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.google.oauth.client.id', '')));
     $this->addElement('Text', 'ynevent_google_oauth_client_secret', array('label' => 'Google OAuth 2.0 Client Secret', 'title' => '', 'description' => '', 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.google.oauth.client.secret', '')));
     $defaultCallbackUrl = Engine_Api::_()->ynevent()->getCurrentSiteUrl();
     $defaultCallbackUrl .= '?' . http_build_query(array('m' => 'lite', 'module' => 'ynevent', 'name' => 'googlecal'));
     $this->addElement('Text', 'ynevent_google_redirect_uri', array('label' => 'Redirect URIs', 'title' => '', 'description' => 'Please use this setting when creating new OAuth 2.0', 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.google.redirect.uri', $defaultCallbackUrl)));
     $this->getElement('ynevent_google_redirect_uri')->getDecorator("Description")->setOption("placement", "append");
     $this->addElement('Text', 'ynevent_max_review_report', array('label' => 'Maximum reports of user review to hide', 'title' => '', 'description' => "User's reviews will be hidden when number of report is over.", 'filters' => array(new Engine_Filter_Censor()), 'value' => Engine_Api::_()->getApi('settings', 'core')->getSetting('ynevent.max.review.report', 10)));
     $this->getElement('ynevent_max_review_report')->getDecorator("Description")->setOption("placement", "append");
     // Add submit button
     $this->addElement('Button', 'submit', array('label' => 'Save Changes', 'type' => 'submit', 'ignore' => true));
 }
Exemple #2
0
 public function init()
 {
     $this->addPrefixPath('Ynevent_Form_Decorator', APPLICATION_PATH . '/application/modules/Ynevent/Form/Decorator', 'decorator')->addPrefixPath('Ynevent_Form_Element', APPLICATION_PATH . '/application/modules/Ynevent/Form/Element', 'element')->addElementPrefixPath('Ynevent_Form_Decorator', APPLICATION_PATH . '/application/modules/Ynevent/Form/Decorator', 'decorator');
     $this->setAttrib('id', 'filter_form');
     $translate = Zend_Registry::get("Zend_Translate");
     $this->clearDecorators()->addDecorators(array('FormElements', array('HtmlTag', array('tag' => 'dl')), 'Form'))->setMethod('get')->setAttrib('class', 'global_form_box');
     $this->addElement('Text', 'keyword', array('label' => 'Keyword', 'maxlength' => '60', 'placeholder' => $translate->translate('Search events..'), 'required' => false));
     $this->addElement('Select', 'order', array('label' => 'Sort by', 'multiOptions' => array('starttime ASC' => 'Start Time', 'creation_date DESC' => 'Recently Created', 'member_count DESC' => 'Most Popular'), 'value' => 'creation_date DESC'));
     // Category
     $this->addElement('MultiLevel2', 'category_id', array('label' => 'Event Category', 'required' => false, 'model' => 'Ynevent_Model_DbTable_Categories', 'module' => 'ynevent'));
     $this->addElement('Dummy', 'location', array('label' => 'Location', 'decorators' => array(array('ViewScript', array('viewScript' => '_location_search.tpl', 'class' => 'form element')))));
     $this->addElement('Text', 'within', array('label' => 'Radius (mile)', 'placeholder' => $translate->translate('Radius (mile)..'), 'maxlength' => '60', 'required' => false, 'style' => "display: block", 'validators' => array(array('Int', true), new Engine_Validate_AtLeast(0))));
     // Start time
     $start = new Ynevent_Form_Element_YnCalendarSimple('start_date');
     $start->setLabel("Start Time");
     $start->setAllowEmpty(true);
     $this->addElement($start);
     // End time
     $end = new Ynevent_Form_Element_YnCalendarSimple('end_date');
     $end->setLabel("End Time");
     $end->setAllowEmpty(true);
     $this->addElement($end);
     $this->addElement('hidden', 'is_search', array('value' => '1', 'order' => '0'));
     $this->addElement('hidden', 'lat', array('value' => '0', 'order' => '98'));
     $this->addElement('hidden', 'long', array('value' => '0', 'order' => '99'));
     $this->addElement('hidden', 'filter', array('value' => 'future', 'order' => '100'));
     // Buttons
     $this->addElement('Button', 'Search', array('label' => 'Search', 'type' => 'submit'));
 }