/**
  * generateTimeInputField
  *
  * @param string $menuName
  * @param string $additionalParams
  * @access public
  * @return string
  */
 function generateTimeInputField($menuName = 'default', $additionalParams = '')
 {
     /*{{{*/
     foreach ($this->menuNames as $name) {
         if ($name != $menuName) {
             $additionalParams .= $this->getSelectedValueAsMenuParam($name);
         }
     }
     // get the selected value for this menu
     $selectedValue = $this->getSelectedValue($menuName, $allowedValues);
     // render the form
     $formURL = 'index.php?id=' . t3lib_div::_GET('id') . $additionalParams;
     $formName = 'form_' . $menuName;
     $menuHTML = '';
     // use extension date2cal (if installed)
     if ($this->useDate2Cal) {
         $JSCalendar = JSCalendar::getInstance();
         $JSCalendar->setInputField($menuName);
         if (($jsCode = $JSCalendar->getMainJS()) != '') {
             $menuHTML .= $jsCode;
         }
     }
     $menuHTML .= '<div class="datebox">';
     $menuHTML .= '<form name="' . $formName . '" id="' . $formName . '" method="post" action="' . $formURL . '">';
     $menuHTML .= '<input type="submit" value="' . $GLOBALS['LANG']->getLL('button_OK') . '" style="float:right;" />';
     $menuHTML .= $GLOBALS['LANG']->getLL($menuName) . '<br />';
     if ($this->useDate2Cal) {
         $menuHTML .= $JSCalendar->render($selectedValue);
     } else {
         // render plain input field without datepicker
         $menuHTML .= '<input type="text" value="' . $selectedValue . '" jscalendar" id="' . $menuName . '_hr" name="' . $menuName . '" maxlength="16" size="12" /> dd-mm-yyyy';
     }
     $menuHTML .= '</form>';
     $menuHTML .= '</div>';
     return $menuHTML;
 }
 /**
  * Inits date2cal extension for use in the frontend
  *
  * @return  void
  * @author  Christian Buelter <*****@*****.**>
  * @since   Tue Aug 17 2010 10:13:47 GMT+0200
  */
 public function initDate2Cal()
 {
     // include jscalendar api
     include_once t3lib_extMgm::siteRelPath('date2cal') . '/src/class.jscalendar.php';
     // init jscalendar class
     $this->JSCalendar = JSCalendar::getInstance();
     // set options
     // don't show Natural Langage Parser
     $this->JSCalendar->setNLP(false);
     // Don't show time, use format from typoscript config
     $this->JSCalendar->setDateFormat(false, $this->conf['datefield_inputfieldformat']);
     // get initialisation code of the calendar
     if (($jsCode = $this->JSCalendar->getMainJS()) != '') {
         if ($this->getNumericTYPO3versionNumber() >= 6000000) {
             $GLOBALS['TSFE']->getPageRenderer()->addHeaderData($jsCode);
         } else {
             $GLOBALS['TSFE']->additionalHeaderData['date2cal'] = $jsCode;
         }
     }
     $this->useDate2Cal = true;
 }