public function htmlFormElement($ps_property, $pa_attributes = null)
 {
     $vs_element = $vs_label = '';
     $pa_attributes['class'] = 'timecodeBg';
     if (!($vs_format = $pa_attributes['format'])) {
         $vs_format = $this->opo_config->get('form_element_display_format');
     }
     if ($va_property_info = $this->getPropertyInfo($ps_property)) {
         switch ($va_property_info['fieldType']) {
             case 'FT_TIMECODE':
                 $vs_label = $va_property_info['label'];
                 if (!isset($pa_attributes['value'])) {
                     $pa_attributes['value'] = $this->getProperty($ps_property);
                 }
                 if (!isset($pa_attributes['size'])) {
                     $pa_attributes['size'] = $va_property_info['fieldWidth'];
                 }
                 $vs_element = caHTMLMakeLabeledFormElement(caHTMLTextInput($pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $pa_attributes), $vs_label, $pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $va_property_info['description'], $vs_format, false);
                 break;
             default:
                 return 'Invalid field type for \'' . $ps_property . '\'';
                 break;
         }
     }
     return $vs_element;
 }
 /**
  * Return HTML form element for specified property 
  *
  */
 public function htmlFormElement($ps_property, $pa_attributes = null)
 {
     $vs_element = $vs_label = '';
     if (!($vs_format = $pa_attributes['format'])) {
         $vs_format = $this->opo_config->get('form_element_display_format');
     }
     if ($va_property_info = $this->getPropertyInfo($ps_property)) {
         switch ($va_property_info['fieldType']) {
             case 'FT_TEXT':
             case 'FT_NUMBER':
                 $vs_label = $va_property_info['label'];
                 if (!isset($pa_attributes['value'])) {
                     $pa_attributes['value'] = $this->getProperty($ps_property);
                 }
                 if (!isset($pa_attributes['size'])) {
                     $pa_attributes['size'] = $va_property_info['fieldWidth'];
                 }
                 switch ($va_property_info['displayType']) {
                     case 'DT_SELECT':
                         $vs_element = caHTMLMakeLabeledFormElement(caHTMLSelect($pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $va_property_info['options'], $pa_attributes, array('height' => 1)), $vs_label, $pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $va_property_info['description'], $vs_format, false);
                         break;
                     default:
                         $vs_element = caHTMLMakeLabeledFormElement(caHTMLTextInput($pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $pa_attributes), $vs_label, $pa_attributes['name'] ? $pa_attributes['name'] : $ps_property, $va_property_info['description'], $vs_format, false);
                         break;
                 }
                 break;
             case 'FT_VARS':
                 $vs_element = '';
                 // skip
                 break;
             default:
                 return 'Invalid field type for \'' . $ps_property . '\'';
                 break;
         }
     }
     return $vs_element;
 }