* @access protected
*/
protected $subject = 'New Event Submission';
+ public $formTemplate = 'form.html';
/**
* Message to display if the form is successfully submitted
BASE_SECURE_URL : MEDIA_BASE_URL;
$this->captchaOptions = array(
- 'width' => 100,
- 'height' => 50,
- 'callback' => "{$callbackUrl}Toolkit/qfcaptcha.php?var=$var",
- 'sessionVar' => $var,
+ 'width' => 100,
+ 'height' => 50,
+ 'callback' => "{$callbackUrl}Toolkit/qfcaptcha.php?var=$var",
+ 'sessionVar' => $var,
'imageOptions' => array(
- 'font_size' => 16,
- 'font_path' => GLM_APP_BASE . 'glmPEAR/Image/Canvas/Fonts/',
- 'font_file' => 'times.ttf',
+ 'font_size' => 16,
+ 'font_path' => GLM_APP_BASE . 'glmPEAR/Image/Canvas/Fonts/',
+ 'font_file' => 'times.ttf',
'background_color' => '#cccccc',
- 'obfuscation' => false,
- 'angle' => true,
+ 'obfuscation' => false,
+ 'angle' => true,
),
);
}
// All Elements are created here. This includes group element definitions.
$e[] = array(
'type' => 'header',
- 'name' => 'eventInfoHeader_rmv',
- 'display' => 'Event Information'
+ 'name' => 'eventNameHdr',
+ 'display' => 'Event Name'
);
$e[] = array(
'type' => 'text',
'name' => 'visable',
'val' => 0
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventDateHdr',
+ 'display' => 'Event Date / Time'
+ );
$e[] = array(
'type' => 'text',
'req' => true,
'type' => 'advcheckbox',
'req' => false,
'name' => 'allday',
- 'display' => 'All Day Event?',
- 'opts' => 'Yes',
+ 'display' => '',
+ 'opts' => 'All Day Event',
'val' => array(0, 1)
);
$e[] = array(
'type' => 'date',
'req' => false,
'name' => 'btime',
- 'display' => 'Start Time',
+ 'display' => 'Start Time<br>',
'opts' => array(
'format' => 'h : i A',
'addEmptyOption' => true,
'type' => 'date',
'req' => false,
'name' => 'etime',
- 'display' => 'End Time',
+ 'display' => 'End Time<br>',
'opts' => array(
'format' => 'h : i A',
'addEmptyOption' => true,
),
),
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventRecurHdr',
+ 'display' => 'Event Recurs'
+ );
$e[] = array(
'type' => 'advcheckbox',
'req' => false,
'name' => 'recurr',
- 'display' => 'Recurring Event',
- 'opts' => 'Is this a recurring event?',
+ 'display' => '',
+ 'opts' => 'Event Recurs',
'val' => array(0, 1)
);
$daysOm = array(''=>'');
'seperator' => ' ',
'appendName' => true
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventInfoHdr',
+ 'display' => 'Event Information'
+ );
$e[] = array(
'type' => 'select',
'req' => true,
'type' => 'text',
'req' => false,
'name' => 'website',
- 'display' => 'Website'
+ 'display' => 'Event Website'
);
$e[] = array(
'type' => 'text',
'name' => 'cost',
'display' => 'Cost',
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventIntroHdr',
+ 'display' => 'Event Intro'
+ );
$e[] = array(
'type' => 'textarea',
'req' => false,
'display' => 'Intro <span id="charleft">350</span> characters left',
'opts' => array('id' => 'intro')
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventDescrHdr',
+ 'display' => 'Event Description'
+ );
$e[] = array(
'type' => 'textarea',
'req' => false,
'display' => 'Description',
'opts' => array('id' => 'descr')
);
+ $e[] = array(
+ 'type' => 'header',
+ 'name' => 'eventImgHdr',
+ 'display' => 'Event Image'
+ );
$e[] = array(
'type' => 'static',
'req' => false,
'type' => 'submit',
'req' => false,
'name' => 'submit_rmv',
- 'display' => 'Submit'
+ 'display' => 'Submit',
+ 'opts' => array('class' => 'button')
);
$this->setupElements($e);
'image/pjpeg',
'image/pjp',
'image/gif',
- 'image/png',
+ 'image/png'
);
$r[] = array(
- 'element' => 'topicid',
- 'message' => 'ERROR: Invalid Topic!',
- 'type' => 'numeric',
- 'format' => null,
+ 'element' => 'topicid',
+ 'message' => 'ERROR: Invalid Category!',
+ 'type' => 'numeric',
+ 'format' => null,
'validation' => $this->validationType,
- 'reset' => true,
- 'force' => false
+ 'reset' => true,
+ 'force' => false
);
$r[] = array(
- 'element' => 'email',
- 'message' => 'ERROR: Invalid Email Format!',
- 'type' => 'checkEmail',
- 'format' => array('use_rfc822' => true),
+ 'element' => 'email',
+ 'message' => 'ERROR: Invalid Email Format!',
+ 'type' => 'checkEmail',
+ 'format' => array('use_rfc822' => true),
'validation' => $this->validationType,
- 'reset' => true,
- 'force' => false
+ 'reset' => true,
+ 'force' => false
);
$r[] = array(
- 'element' => array('bdate', 'edate'),
- 'message' => 'ERROR: Starting Date must be before Ending Date',
- 'type' => 'callback',
- 'format' => array(&$this, 'checkDateRange'),
+ 'element' => array('bdate', 'edate'),
+ 'message' => 'ERROR: Starting Date must be before Ending Date',
+ 'type' => 'callback',
+ 'format' => array(&$this, 'checkDateRange'),
'validation' => $this->validationType,
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
$r[] = array(
- 'element' => 'bdate',
- 'message' => 'ERROR: Invalid date!',
- 'type' => 'callback',
- 'format' => array(&$this, 'checkDate'),
+ 'element' => 'bdate',
+ 'message' => 'ERROR: Invalid date!',
+ 'type' => 'callback',
+ 'format' => array(&$this, 'checkDate'),
'validation' => $this->validationType,
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
$r[] = array(
- 'element' => 'edate',
- 'message' => 'ERROR: Invalid date!',
- 'type' => 'callback',
- 'format' => array(&$this, 'checkDate'),
+ 'element' => 'edate',
+ 'message' => 'ERROR: Invalid date!',
+ 'type' => 'callback',
+ 'format' => array(&$this, 'checkDate'),
'validation' => $this->validationType,
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
$r[] = array(
- 'element' => 'url',
- 'message' => 'ERROR: Invalid URL format',
- 'type' => 'checkURI',
- 'format' => array(
+ 'element' => 'url',
+ 'message' => 'ERROR: Invalid URL format',
+ 'type' => 'checkURI',
+ 'format' => array(
'allowed_schemes' => array('http', 'https'),
'strict' => true
),
'validation' => $this->validationType,
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
$r[] = array(
- 'element' => 'phone',
- 'message' => 'ERROR: Invalid Phone Format (xxx) xxx - xxxx!',
- 'type' => 'phone',
- 'format' => null,
+ 'element' => 'phone',
+ 'message' => 'ERROR: Invalid Phone Format (xxx) xxx - xxxx!',
+ 'type' => 'phone',
+ 'format' => null,
'validation' => $this->validationType,
- 'reset' => true,
- 'force' => false
+ 'reset' => true,
+ 'force' => false
);
if ($this->useCaptcha) {
$r[] = array(
- 'element' => 'captcha_rmv',
- 'message' => 'ERROR: What you entered didn\'t match!',
- 'type' => 'CAPTCHA',
- 'format' => $this->captchaQuestion,
+ 'element' => 'captcha_rmv',
+ 'message' => 'ERROR: What you entered didn\'t match!',
+ 'type' => 'CAPTCHA',
+ 'format' => $this->captchaQuestion,
'validation' => $this->validationType,
- 'reset' => true,
- 'force' => false
+ 'reset' => true,
+ 'force' => false
);
}
if (is_uploaded_file($_FILES['img_file_rmv']['tmp_name'])) {
$r[] = array(
- 'element' => 'img_file_rmv',
- 'message' => 'ERROR: Incorrect File Type (.gif, .png, .jpg) only!',
- 'type' => 'mimetype',
- 'format' => $mimeTypes,
+ 'element' => 'img_file_rmv',
+ 'message' => 'ERROR: Incorrect File Type (.gif, .png, .jpg) only!',
+ 'type' => 'mimetype',
+ 'format' => $mimeTypes,
'validation' => $this->validationType,
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
}
$r[] = array(
- 'element' => 'img_file_rmv',
- 'message' => 'ERROR: Error uploading image!',
- 'type' => 'Image',
- 'format' => array(
+ 'element' => 'img_file_rmv',
+ 'message' => 'ERROR: Error uploading image!',
+ 'type' => 'Image',
+ 'format' => array(
'form' => $this,
'fieldName' => 'img_file_rmv',
'imageField' => 'img',
'injectImage' => array('tgtElement' => 'current_img_rmv')
),
'validation' => 'server',
- 'reset' => false,
- 'force' => false
- );
- /*
- $r[] = array(
- 'element' => 'file_rmv',
- 'message' => 'ERROR: Error uploading file!',
- 'type' => 'Image',
- 'format' => array(
- 'form' => $this,
- 'fieldName' => 'file_rmv',
- 'imageField' => 'file',
- 'is' => new Toolkit_FileServer_FileAdapter(),
- 'deleteExistingImage' => false,
- 'injectImage' => array('tgtElement' => 'current_file_rmv')
- ),
- 'validation' => 'server',
- 'reset' => false,
- 'force' => false
+ 'reset' => false,
+ 'force' => false
);
- */
$this->setupRules($r);
}
$file = $filename = '';
}
$d = array(
- 'id' => $event->getId(),
- 'starting' => $event->getStarting(),
- 'ending' => $event->getEnding(),
- 'description' => $event->getDescription(),
- 'category' => $event->getCategory()->getId(),
- 'btime' => $event->getStarthour(),
- 'etime' => $event->getEndhour(),
- 'header' => $event->getHeader(),
- 'website' => $event->getWebsite(),
- 'facebook' => $event->getFacebook(),
- 'twitter' => $event->getTwitter(),
- 'allday' => $event->getAllday(),
- 'hide_address' => $event->getHideAddress(),
- 'recurr' => $event->getRecurr(),
- 'daysow' => $event->getDaysow(),
- 'dayom' => $event->getDayom(),
- 'weekom' => $event->getWeekom(),
- 'place' => $event->getPlace(),
- 'address' => $event->getAddress(),
- 'city' => $event->getCity(),
- 'state' => $event->getState(),
- 'zip' => $event->getZip(),
- 'lat' => $event->getLat(),
- 'lon' => $event->getLon(),
- 'cost' => $event->getCost(),
- 'contact_name' => $event->getContactName(),
+ 'id' => $event->getId(),
+ 'starting' => $event->getStarting(),
+ 'ending' => $event->getEnding(),
+ 'description' => $event->getDescription(),
+ 'category' => $event->getCategory()->getId(),
+ 'btime' => $event->getStarthour(),
+ 'etime' => $event->getEndhour(),
+ 'header' => $event->getHeader(),
+ 'website' => $event->getWebsite(),
+ 'facebook' => $event->getFacebook(),
+ 'twitter' => $event->getTwitter(),
+ 'allday' => $event->getAllday(),
+ 'hide_address' => $event->getHideAddress(),
+ 'recurr' => $event->getRecurr(),
+ 'daysow' => $event->getDaysow(),
+ 'dayom' => $event->getDayom(),
+ 'weekom' => $event->getWeekom(),
+ 'place' => $event->getPlace(),
+ 'address' => $event->getAddress(),
+ 'city' => $event->getCity(),
+ 'state' => $event->getState(),
+ 'zip' => $event->getZip(),
+ 'lat' => $event->getLat(),
+ 'lon' => $event->getLon(),
+ 'cost' => $event->getCost(),
+ 'contact_name' => $event->getContactName(),
'contact_email' => $event->getContactEmail(),
'contact_phone' => $event->getContactPhone(),
'intro' => $event->getIntro(),
return;
}
- $topics = $this->getTopicFields();
+ $topics = $this->getTopicFields();
$template = new HTML_Template_Flexy($this->flexyOptions);
$page = new stdClass();
// }}}
+ public function isRecurField($name)
+ {
+ if (in_array($name, array('dayom', 'weekom', 'daysow'))) {
+ return true;
+ } else {
+ return false;
+ }
+ }
+
// {{{ hasEndDate()
/**
*/
protected function setupRenderers()
{
- parent::setupRenderers();
- $renderer =& $this->defaultRenderer();
- $required = '<!-- BEGIN required --><span class="req">*</span>
- <!-- END required -->';
- $error = '<!-- BEGIN error --><div class="req">{error}</div>
- <!-- END error -->';
- $recurTmpl = '<tr class="recur-event">
- <td class="labelcell">'.$required.'<label>{label}</label></td>
- <td class="fieldcell">'.$error.'{element}</td></tr>';
- $renderer->setElementTemplate($recurTmpl, 'dayom');
- $renderer->setElementTemplate($recurTmpl, 'weekom');
- $renderer->setElementTemplate($recurTmpl, 'daysow');
- $renderer->setElementTemplate(
- '<tr><td colspan="2">'.$required.'{label}'
- .$error.'{element}</td></tr>',
- 'description'
- );
- $renderer->setElementTemplate(
- '<tr align="center"><td colspan="2">'
- .$required.'{label}'.$error.'{element}</td></tr>', 'submit_rmv'
+ $formConfig = new Zend_Config_Ini(
+ BASE . 'Toolkit/Events/application.ini',
+ strtolower($_ENV['GLM_HOST_ID'])
);
+
+ $renderer = new HTML_QuickForm_Renderer_Object(true);
+ $this->accept($renderer);
+ $this->template = new HTML_Template_Flexy($this->flexyOptions);
+
+ $this->view = $this;
+ $this->view->form = $renderer->toObject();
+ $this->template->compile($this->formTemplate);
}
// }}}
$GLOBALS['topScripts'][] = JQUERY_UI_CDN_JS;
$GLOBALS['topScripts'][] = CKEDITOR_JS.'';
- $this->setupRenderers();
+ //$this->setupRenderers();
if ($this->validate()) {
$this->cleanForm();
= MEDIA_BASE_URL . 'Toolkit/Maps/geoCoder.js';
$GLOBALS['bottomScripts'][]
= MEDIA_BASE_URL . 'Toolkit/Events/libjs/edit-event.js';
- $output .= parent::toHtml();
+ $this->setupRenderers();
+ $output .= $this->template->bufferedOutputObject($this->view);
} else {
$GLOBALS['topScripts'][]
= 'http://maps.googleapis.com/maps/api/js?sensor=true';
= MEDIA_BASE_URL . 'Toolkit/Maps/geoCoder.js';
$GLOBALS['bottomScripts'][]
= MEDIA_BASE_URL . 'Toolkit/Events/libjs/edit-event.js';
- $output = parent::toHtml();
+ $this->setupRenderers();
+ $output .= $this->template->bufferedOutputObject($this->view);
}
return $output;
}