/** * @param FORM_RENDERER $renderer * @access private */ protected function _draw_controls($renderer) { /** @var UPLOADED_FILE_SET $file_set */ $file_set = $this->value_for('upload_file'); /** @var ALBUM $folder */ $folder = $this->_folder; $upload_allowed = $folder->uploads_allowed(); $upload_found = isset($file_set) && $file_set->is_valid(); $is_uploading = $this->value_for('use_upload'); $this->set_enabled('file_name', !$is_uploading); $this->set_enabled('overwrite', $is_uploading); $this->set_enabled('upload_file', $is_uploading); if (!$upload_allowed || $upload_found) { $renderer->draw_hidden('use_upload'); } if ($upload_found) { $renderer->draw_hidden('overwrite'); } $renderer->start(); $renderer->draw_text_line_row('title'); if (!$this->object_exists()) { $renderer->start_block('Day'); $props = $renderer->make_list_properties(); $props->on_click_script = 'on_date_changed (this)'; if (isset($this->_exif_date)) { $caption = 'Use <span class="field">' . $this->_exif_date->format() . '</span> (snapshot date)'; } else { $caption = 'Use date stored by a digital camera'; } $props->add_item($caption, 1); $props->add_item('Use the date below', 0); $renderer->start_row(); echo $renderer->radio_group_as_html('read_exif', $props); $renderer->finish_row(); $renderer->draw_date_row('day'); $renderer->draw_error_row('read_exif'); $renderer->draw_error_row('day'); $renderer->finish_block(); } else { $renderer->draw_date_row('day'); } $renderer->draw_text_box_row('description', 'short-medium'); if ($upload_allowed) { if (!$upload_found) { $options = new FORM_TEXT_CONTROL_OPTIONS(); $renderer->start_block('Picture'); if ($this->object_exists()) { /** @var PICTURE $pic */ $pic = $this->_object; echo '<img class="pullquote right align-right" src="' . $pic->full_thumbnail_name() . '" alt="Picture">'; } $props = $renderer->make_list_properties(); $props->on_click_script = 'file_option_changed (this)'; $props->add_item($this->app->resolve_icon_as_html('{icons}buttons/upload', Sixteen_px, 'Upload') . ' Upload the picture below', 1); $renderer->start_row(); echo $renderer->radio_group_as_html('use_upload', $props); $renderer->finish_row(); $renderer->start_row(); $options->on_change_script = 'upload_file_changed (this)'; echo $renderer->file_as_html('upload_file', $options); echo $renderer->check_box_as_html('overwrite'); $renderer->finish_row(); $renderer->draw_error_row('upload_file'); $props->clear_items(); $props->add_item('Show the picture from the URL below', 0); $renderer->start_row(); echo $renderer->radio_group_as_html('use_upload', $props); $renderer->finish_row(); $renderer->start_row(); $options->on_change_script = 'file_name_changed (this)'; echo $renderer->text_line_as_html('file_name', $options); $renderer->finish_row(); $renderer->draw_error_row('file_name'); $this->_draw_thumbnail_options($renderer, ''); $renderer->finish_block(); } else { $renderer->draw_file_row('upload_file'); $this->_draw_thumbnail_options($renderer, ' '); } } else { $renderer->start_row(); if ($this->object_exists()) { /** @var PICTURE $pic */ $pic = $this->_object; echo '<img class="pullquote right align-right" src="' . $pic->full_thumbnail_name() . '" alt="Picture">'; } $renderer->finish_row(); $renderer->draw_text_line_row('file_name'); $this->_draw_thumbnail_options($renderer, ' '); } $renderer->draw_check_box_row('is_visible'); $renderer->draw_submit_button_row(); $this->_draw_history_item_controls($renderer); $renderer->finish(); }
/** * Draw the controls for the form. * @param FORM_RENDERER $renderer * @access private */ protected function _draw_controls($renderer) { $renderer->default_control_height = '75px'; $renderer->start(); $props = $renderer->make_list_properties(); $props->add_item('bool1', 1); $props->add_item('bool2', 1); $props->items_per_row = 4; $renderer->draw_check_boxes_row('Options', $props); $renderer->start_row('Text', 'text-line'); $text_props = new FORM_TEXT_CONTROL_OPTIONS(); $text_props->css_class = 'small'; echo $renderer->date_as_html('date'); echo ' '; echo $renderer->text_line_as_html('name', $text_props); $renderer->finish_row(); $renderer->draw_text_box_row('description'); $renderer->start_block(''); $props = $renderer->make_list_properties(); $props->show_descriptions = true; $props->css_class = 'small'; $props->add_item('Option One', 0, 'Description for option one.'); $props->add_item('Option Two', 1, 'Description for option two.'); $renderer->draw_radio_group_row('select', $props); $field = $this->field_at('select'); $renderer->start_row('Menus', 'text-line'); echo $renderer->drop_down_as_html('select', $props); echo ' '; $field->required = true; echo $renderer->drop_down_as_html('select', $props); $renderer->finish_row(); $renderer->start_row('Lists'); $field->required = false; echo $renderer->list_box_as_html('select', $props); echo ' '; $field->required = true; echo $renderer->list_box_as_html('select', $props); $renderer->finish_row(); $renderer->finish_block(); $renderer->draw_submit_button_row(); $renderer->finish(); }
/** * @param FORM $form * @param FORM_RENDERER $renderer * @access private */ protected function _draw_date_fields($form, $renderer) { $renderer->draw_check_box_row('not_weather_type'); $props = $renderer->make_list_properties(); $props->items_per_row = 7; $i = 0; $icons = $this->app->display_options->weather_icons(); foreach ($icons as $icon) { $i += 1; $props->add_item($icon->icon_as_html(Twenty_px), $i); } $renderer->draw_check_group_row('weather_type', $props); $renderer->start_row(' '); $options = new FORM_TEXT_CONTROL_OPTIONS(); $options->css_class = 'tiny'; echo 'Warmer than ' . $renderer->text_line_as_html('warmer_than', $options); echo '° and cooler than ' . $renderer->text_line_as_html('colder_than', $options) . '°'; $renderer->finish_row(); parent::_draw_date_fields($form, $renderer); }
/** * @param FORM_RENDERER $renderer * @access private */ protected function _draw_controls($renderer) { $renderer->start(); $renderer->draw_text_line_row('title'); $renderer->draw_date_row('day'); /** @var ALBUM_APPLICATION_DISPLAY_OPTIONS $album_display_options */ $album_display_options = $this->app->display_options; /** @var PROPERTY_VALUE[] $icons */ $icons = $album_display_options->weather_icons(); if (sizeof($icons)) { $props = $renderer->make_list_properties(); $props->items_per_row = 7; $i = 0; foreach ($icons as $icon) { $i += 1; $props->add_item($icon->icon_as_html(Thirty_px), $i); } $renderer->draw_radio_group_row('weather_type', $props); } $renderer->draw_text_box_row('weather'); $options = new FORM_TEXT_CONTROL_OPTIONS(); $options->css_class = 'tiny'; $renderer->start_row('Temps', 'text-line'); echo $renderer->text_line_as_html('lo_temp', $options) . '°C to '; echo $renderer->text_line_as_html('hi_temp', $options) . '°C '; $renderer->finish_row(); $renderer->draw_error_row('lo_temp'); $renderer->draw_error_row('hi_temp'); $renderer->draw_error_row('temps'); $renderer->draw_text_box_row('description', 'tall'); $renderer->draw_check_box_row('is_visible'); $renderer->draw_submit_button_row(); $this->_draw_history_item_controls($renderer); $renderer->finish(); }
/** * Store properties from form into object. * @param FORM $form * @param FORM_RENDERER $renderer */ public function draw_fields($form, $renderer) { $props = $renderer->make_list_properties(); $props->css_class = 'small'; $props->add_item('Context or none', Search_user_context_none); $props->add_item('Context or login', Search_user_context_login); $props->add_item('Name(s) listed', Search_user_constant); $text_props = new FORM_TEXT_CONTROL_OPTIONS(); $text_props->css_class = 'medium'; $renderer->start_row('by', 'text-line'); echo $renderer->drop_down_as_html($this->search_type_name(), $props); echo ' '; echo $renderer->text_line_as_html($this->base_name, $text_props); $renderer->finish_row(); $renderer->draw_text_row(' ', 'Separate multiple names with a semi-colon.', 'notes'); $renderer->draw_error_row($this->base_name, ' '); }