Example #1
0
 public static function date_select($field_id, $field_setup)
 {
     $field_setup['attr']['class'] = 'singleline_selectfield ' . $field_setup['attr']['class'];
     if (Read::array_search('date', $field_setup['rules'])) {
         Form::rules($field_id, array('date'));
     }
     if (Form::is_submitted()) {
         $field_setup['value'] = Form::get_value($field_id);
     }
     // get busy: value for all 3 fields is passed as one unique string
     list($year, $month, $day) = Format::string_explode($field_setup['value'], '-');
     // day widget
     $widget_day = Form::select($field_id . '[day]', array('options' => Format::array_format(range(1, 31), array('keyval' => TRUE, 'label' => !empty($field_setup['labels']['day']) ? $field_setup['labels']['day'] : 'Day')), 'value' => $day, 'attr' => array('class' => $field_setup['attr']['class'], 'css' => $field_setup['attr']['css'], 'onchange' => $field_setup['attr']['onchange'], 'disabled' => $field_setup['attr']['disabled'])));
     // month widget
     $widget_month = Form::select($field_id . '[month]', array('options' => Format::array_format(range(1, 12), array('keyval' => TRUE, 'label' => !empty($field_setup['labels']['month']) ? $field_setup['labels']['month'] : 'Month')), 'value' => $month, 'attr' => array('class' => $field_setup['attr']['class'], 'css' => $field_setup['attr']['css'], 'onchange' => $field_setup['attr']['onchange'], 'disabled' => $field_setup['attr']['disabled'])));
     // year widget
     $widget_year = Form::select($field_id . '[year]', array('options' => Format::array_format(range(!empty($field_setup['options']['years']['from']) ? $field_setup['options']['years']['from'] : date(Y) - 10, !empty($field_setup['options']['years']['to']) ? $field_setup['options']['years']['to'] : date(Y)), array('keyval' => TRUE, 'label' => !empty($field_setup['labels']['year']) ? $field_setup['labels']['year'] : 'Year')), 'value' => $year, 'attr' => array('class' => $field_setup['attr']['class'], 'css' => $field_setup['attr']['css'], 'onchange' => $field_setup['attr']['onchange'], 'disabled' => $field_setup['attr']['disabled'])));
     if (empty($field_setup['format'])) {
         // set template format
         $field_setup['format'] = '%d %m %y';
     }
     // construct complete widget
     $widget = $field_setup['format'];
     $widget = str_replace('%d', $widget_day, $widget);
     $widget = str_replace('%m', $widget_month, $widget);
     $widget = str_replace('%y', $widget_year, $widget);
     return $widget;
 }