Godwin
11 years ago
30 changed files with 600 additions and 357 deletions
@ -0,0 +1,394 @@ |
|||||
|
|
||||
|
module BikeBikeFormHelper |
||||
|
include ActionView::Helpers::FormTagHelper |
||||
|
|
||||
|
TEMPLATE_DIR = 'layouts/fields' |
||||
|
|
||||
|
def check_box_tag(name, value = "1", checked = false, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, checked, options), value) |
||||
|
end |
||||
|
|
||||
|
def color_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def date_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def datetime_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def datetime_local_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def email_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def file_field_tag(name, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, options)) |
||||
|
end |
||||
|
|
||||
|
def hidden_field_tag(name, value = nil, options = {}) |
||||
|
super(name, value, options) |
||||
|
end |
||||
|
|
||||
|
def month_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def number_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def password_field_tag(name = "password", value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def phone_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def radio_button_tag(name, value, checked = false, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, checked, options), value) |
||||
|
end |
||||
|
|
||||
|
def range_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def search_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def select_tag(name, option_tags = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, option_tags, options)) |
||||
|
end |
||||
|
|
||||
|
def telephone_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def text_area_tag(name, content = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, content, options), content) |
||||
|
end |
||||
|
|
||||
|
def text_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def time_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def url_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def week_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def country_select_tag(name, value, options={}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def subregion_select_tag(name, value, parent_region_or_code, options = {}, html_options = {}) |
||||
|
render_field(name, options = get_options(name, options), super(name, value, parent_region_or_code, options), value) |
||||
|
end |
||||
|
|
||||
|
#def button_tag |
||||
|
#def field_set_tag |
||||
|
#def form_tag |
||||
|
#def image_submit_tag |
||||
|
#def label_tag |
||||
|
#def submit_tag |
||||
|
#def utf8_enforcer_tag |
||||
|
|
||||
|
# FormHelper methods |
||||
|
|
||||
|
def check_box(object_name, method, options = {}, checked_value = "1", unchecked_value = "0") |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options, checked_value, unchecked_value)) |
||||
|
end |
||||
|
|
||||
|
def color_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def date_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def datetime_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def datetime_local_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def email_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def file_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options)) |
||||
|
end |
||||
|
|
||||
|
def hidden_field(object_name, method, options = {}) |
||||
|
super(object_name, method, options) |
||||
|
end |
||||
|
|
||||
|
def month_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def number_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def password_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def phone_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def radio_button(object_name, method, tag_value, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, tag_value, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def range_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def search_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def telephone_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def text_area(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def text_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def time_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def url_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def week_field(object_name, method, options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object_name, method, options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
#def fields_for |
||||
|
def form_for(*args, &block) |
||||
|
@record = args.first |
||||
|
|
||||
|
template = 'errors_' + @record.class.name.underscore |
||||
|
template = 'errors_default' unless lookup_context.exists?(template, [TEMPLATE_DIR], true) |
||||
|
|
||||
|
( render (TEMPLATE_DIR + '/' + template) ) + super(args, &block) |
||||
|
end |
||||
|
#def label |
||||
|
|
||||
|
|
||||
|
def collection_check_boxes(object, method, collection, value_method, text_method, options = {}, html_options = {}, &block) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, collection, value_method, text_method, options, html_options, &block), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def collection_radio_buttons(object, method, collection, value_method, text_method, options = {}, html_options = {}, &block) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, collection, value_method, text_method, options, html_options, &block), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, collection, value_method, text_method, options, html_options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def grouped_collection_select(object, method, collection, group_method, group_label_method, option_key_method, option_value_method, options = {}, html_options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, collection, group_method, group_label_method, option_key_method, option_value_method, options, html_options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def select(object, method, choices = nil, options = {}, html_options = {}, &block) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, choices, options, html_options, &block), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def time_zone_select(object, method, priority_zones = nil, options = {}, html_options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, priority_zones, options, html_options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def country_select(object, method, priorities_or_options = {}, options_or_html_options = {}, html_options = {}) |
||||
|
if priorities_or_options.is_a? Array |
||||
|
options = options_or_html_options = get_options(method, priorities_or_options) |
||||
|
else |
||||
|
options = priorities_or_options = get_options(method, priorities_or_options) |
||||
|
end |
||||
|
render_field(method, options, super(object, method, priorities_or_options, options_or_html_options, html_options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
def subregion_select(object, method, parent_region_or_code, options = {}, html_options = {}) |
||||
|
render_field(method, options = get_options(method, options), super(object, method, parent_region_or_code, options, html_options), get_value(method, options)) |
||||
|
end |
||||
|
|
||||
|
# Custom fields |
||||
|
|
||||
|
def image_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), BikeBikeFormHelper.image_field_tag(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def organization_select_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), BikeBikeFormHelper.organization_select_field_tag(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
def user_select_field_tag(name, value = nil, options = {}) |
||||
|
render_field(name, options = get_options(name, options), BikeBikeFormHelper.user_select_field_tag(name, value, options), value) |
||||
|
end |
||||
|
|
||||
|
#def grouped_options_for_select |
||||
|
#def option_groups_from_collection_for_select |
||||
|
#def options_for_select |
||||
|
#def options_from_collection_for_select |
||||
|
#def time_zone_options_for_select |
||||
|
|
||||
|
def form_actions(actions = []) |
||||
|
BikeBikeFormHelper.form_actions(actions) |
||||
|
end |
||||
|
|
||||
|
class << self |
||||
|
|
||||
|
def form_actions(actions = []) |
||||
|
render(:actions, {:actions => actions.is_a?(Array) ? actions : [actions]}) |
||||
|
end |
||||
|
|
||||
|
def image_field_tag(name, value, options, form = nil) |
||||
|
render(:field_image_field, {:name => name, :value => value, :options => options, :form => form}) |
||||
|
end |
||||
|
|
||||
|
def organization_select_field_tag(name, value, options, form = nil) |
||||
|
render(:field_organization_select_field, {:name => name, :value => value, :options => options, :form => form}) |
||||
|
end |
||||
|
|
||||
|
def user_select_field_tag(name, value, options, form = nil) |
||||
|
render(:field_user_select_field, {:name => name, :value => value, :options => options, :form => form}) |
||||
|
end |
||||
|
|
||||
|
def get_options(name, options, type) |
||||
|
if options[:placeholder] === false |
||||
|
options.delete(:placeholder) |
||||
|
elsif (['email_field', 'number_field', 'phone_field', 'search_field', 'telephone_field', 'text_area', 'text_field', 'url_field'].include? type) |
||||
|
options[:placeholder] ||= I18n.translate('form.placeholder.Enter_your_' + name.to_s) |
||||
|
end |
||||
|
return options |
||||
|
end |
||||
|
|
||||
|
def render_field(type, name, options, html, value = nil) |
||||
|
if (options.has_key?(:no_wrapper) && options[:no_wrapper]) || options['type'] == 'hidden' |
||||
|
return html |
||||
|
end |
||||
|
|
||||
|
params = Hash.new |
||||
|
params[:name] = name.to_sym |
||||
|
params[:options] = options |
||||
|
params[:html] = html |
||||
|
params[:type] = type |
||||
|
params[:value] = value |
||||
|
|
||||
|
template = template_exists?(type) ? type : 'default' |
||||
|
params[:label_template] = options[:label] === false ? nil : get_label_template(type) |
||||
|
params[:label_position] = options[:label] === false ? :none : label_position(type) |
||||
|
|
||||
|
render(template, params) |
||||
|
end |
||||
|
|
||||
|
def get_label_template(type) |
||||
|
if /select(_field)?$/.match(type.to_s) |
||||
|
return nil |
||||
|
end |
||||
|
template_exists?('label_' + type) ? type : 'default' |
||||
|
end |
||||
|
|
||||
|
def label_position(type) |
||||
|
# one of: :before, :after, :inside, or :none |
||||
|
case type |
||||
|
when 'image_field' |
||||
|
return :inside |
||||
|
when 'organization_select_field' |
||||
|
return :none |
||||
|
end |
||||
|
return :before |
||||
|
end |
||||
|
|
||||
|
private |
||||
|
def render (template, params) |
||||
|
view = ActionView::Base.new(ActionController::Base.view_paths, params) |
||||
|
view.extend ApplicationHelper |
||||
|
view.render (TEMPLATE_DIR + '/' + template.to_s) |
||||
|
end |
||||
|
|
||||
|
def template_exists? (template) |
||||
|
view = ActionView::Base.new(ActionController::Base.view_paths, {}) |
||||
|
view.extend ApplicationHelper |
||||
|
view.lookup_context.exists?(template, [TEMPLATE_DIR], true) |
||||
|
end |
||||
|
end |
||||
|
|
||||
|
private |
||||
|
def get_type() |
||||
|
caller[1][/`.*'/][1..-2].gsub(/^(.*?)(_tag)?$/, '\1') |
||||
|
end |
||||
|
|
||||
|
def get_value(method, options) |
||||
|
options && options[:object] ? options[:object][method] : nil |
||||
|
end |
||||
|
|
||||
|
def get_options(name, options) |
||||
|
options[:_controller] = params[:controller] |
||||
|
BikeBikeFormHelper.get_options(name, options, get_type()) |
||||
|
end |
||||
|
|
||||
|
def render_field(name, options, html, value = nil) |
||||
|
BikeBikeFormHelper.render_field(get_type(), name, options, html, value) |
||||
|
end |
||||
|
|
||||
|
class BikeBikeFormBuilder < ActionView::Helpers::FormBuilder |
||||
|
ActionView::Base.default_form_builder = BikeBikeFormHelper::BikeBikeFormBuilder |
||||
|
|
||||
|
def image_field(method, value, options = {}) |
||||
|
custom_field(method, value, options, 'image_field') |
||||
|
end |
||||
|
|
||||
|
def organization_select_field(method, value, options = {}) |
||||
|
custom_field(method, value, options, 'organization_select_field') |
||||
|
end |
||||
|
|
||||
|
def user_select_field(method, value, options = {}) |
||||
|
custom_field(method, value, options, 'user_select_field') |
||||
|
end |
||||
|
|
||||
|
def actions(actions = []) |
||||
|
BikeBikeFormHelper.form_actions(actions) |
||||
|
end |
||||
|
|
||||
|
private |
||||
|
def custom_field(method, value, options, type) |
||||
|
options[:_controller] = params[:controller] |
||||
|
options[:_record] = object |
||||
|
options = BikeBikeFormHelper.get_options(method, options, type) |
||||
|
html = BikeBikeFormHelper.send(type + '_tag', method, value, options, self) |
||||
|
BikeBikeFormHelper.render_field(type, method, options, html, value) |
||||
|
end |
||||
|
end |
||||
|
end |
@ -1,19 +1,5 @@ |
|||||
= form_for @conference_registration do |f| |
= form_for @conference_registration do |f| |
||||
- if @conference_registration.errors.any? |
= f.number_field :conference_id |
||||
#error_explanation |
= f.number_field :user_id |
||||
%h2= "#{pluralize(@conference_registration.errors.count, "error")} prohibited this conference_registration from being saved:" |
= f.text_field :is_attending |
||||
%ul |
= f.actions :Save |
||||
- @conference_registration.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
|
|
||||
.field |
|
||||
= f.label :conference_id |
|
||||
= f.number_field :conference_id |
|
||||
.field |
|
||||
= f.label :user_id |
|
||||
= f.number_field :user_id |
|
||||
.field |
|
||||
= f.label :is_attending |
|
||||
= f.text_field :is_attending |
|
||||
.actions |
|
||||
= f.submit 'Save' |
|
||||
|
@ -1,19 +1,8 @@ |
|||||
= form_for @conference_registraton_form_field do |f| |
= form_for @conference_registraton_form_field do |f| |
||||
- if @conference_registraton_form_field.errors.any? |
= f.label :conference_id |
||||
#error_explanation |
= f.number_field :conference_id |
||||
%h2= "#{pluralize(@conference_registraton_form_field.errors.count, "error")} prohibited this conference_registraton_form_field from being saved:" |
= f.label :registration_form_field_id |
||||
%ul |
= f.number_field :registration_form_field_id |
||||
- @conference_registraton_form_field.errors.full_messages.each do |msg| |
= f.label :order |
||||
%li= msg |
= f.number_field :order |
||||
|
= f.actions :Save |
||||
.field |
|
||||
= f.label :conference_id |
|
||||
= f.number_field :conference_id |
|
||||
.field |
|
||||
= f.label :registration_form_field_id |
|
||||
= f.number_field :registration_form_field_id |
|
||||
.field |
|
||||
= f.label :order |
|
||||
= f.number_field :order |
|
||||
.actions |
|
||||
= f.submit 'Save' |
|
||||
|
@ -1,27 +1,24 @@ |
|||||
= form_for @conference do |f| |
= form_for @conference do |f| |
||||
.columns |
.columns |
||||
- if @conference.errors.any? |
= f.text_field :title |
||||
#error_explanation |
= f.text_field :slug |
||||
%h2= "#{pluralize(@conference.errors.count, "error")} prohibited this conference from being saved:" |
|
||||
%ul |
|
||||
- @conference.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
= field f, :title, :text_field |
|
||||
= field f, :slug, :text_field |
|
||||
.columns.medium-4 |
.columns.medium-4 |
||||
= field f, :poster, :image_field, @conference.poster_url |
= f.image_field :poster, @conference.poster_url |
||||
= field f, :cover, :image_field, @conference.cover_url |
= f.image_field :cover, @conference.cover_url |
||||
|
- # @parse_data['photos'].each do |img| |
||||
|
- # - if img['width'] > 980 |
||||
|
- # %img{src: img['photo_file_url']} |
||||
.columns.medium-8 |
.columns.medium-8 |
||||
= field f, :conference_type_id, :collection_select, ConferenceType.all, attrs: [:id, :title] |
= f.collection_select :conference_type_id, ConferenceType.all, :id, :title |
||||
.row |
.row |
||||
.columns.small-6 |
.columns.small-6 |
||||
= field f, :start_date, :date_field |
= f.date_field :start_date |
||||
.columns.small-6 |
.columns.small-6 |
||||
= field f, :end_date, :date_field |
= f.date_field :end_date |
||||
= field f, :workshop_schedule_published, :check_box |
= f.check_box :workshop_schedule_published |
||||
= field f, :meals_provided, :check_box |
= f.check_box :meals_provided |
||||
= field f, :meal_info, :text_area |
= f.text_area :meal_info |
||||
= field f, :travel_info, :text_area |
= f.text_area :travel_info |
||||
.columns |
.columns |
||||
= field f, :info, :text_area |
= f.text_area :info |
||||
= actions :save |
= f.actions :save |
||||
|
@ -1,7 +1,7 @@ |
|||||
.columns.medium-8 |
.columns.medium-8 |
||||
= field f, :registration_open, :check_box, help: true |
= f.check_box :registration_open, help: true |
||||
= field f, :preregistration_info, :text_area, help: true |
= f.text_area :preregistration_info, help: true |
||||
= field f, :registration_info, :text_area, help: true |
= f.text_area :registration_info, help: true |
||||
= field f, :postregistration_info, :text_area, help: true |
= f.text_area :postregistration_info, help: true |
||||
.columns |
.columns |
||||
= actions :save |
= f.actions :save |
||||
|
@ -1,8 +1,8 @@ |
|||||
.columns.medium-8 |
.columns.medium-8 |
||||
= field :is_attending, :select_tag, ConferenceRegistration::AttendingOptions, label: 'Are you attending?', value: @conference_registration.try(:is_attending) |
= select_tag :is_attending, ConferenceRegistration::AttendingOptions, label: 'Are you attending?', value: @conference_registration.try(:is_attending) |
||||
%ol |
%ol |
||||
- @conference.registration_form_fields.each do |ff| |
- @conference.registration_form_fields.each do |ff| |
||||
%li |
%li |
||||
- response = @conference_registration ? ConferenceRegistrationResponse.find_by(conference_registration_id: @conference_registration.id, registration_form_field_id: ff.id) : nil |
- response = @conference_registration ? ConferenceRegistrationResponse.find_by(conference_registration_id: @conference_registration.id, registration_form_field_id: ff.id) : nil |
||||
= form_field ff, response |
= form_field ff, response |
||||
= actions :register |
= form_actions :register |
||||
|
@ -0,0 +1,8 @@ |
|||||
|
.actions |
||||
|
- @actions.each do |action| |
||||
|
- if action.to_sym == :facebook_sign_in |
||||
|
%a.facebook-sign-in.button{href: '/oauth/facebook'} |
||||
|
= _ action.to_s |
||||
|
- else |
||||
|
%button{id: action.to_s, name: action.to_s, type: 'submit'} |
||||
|
= _ action.to_s |
@ -0,0 +1,10 @@ |
|||||
|
- namekey = @name.to_s.gsub('_', '-') |
||||
|
- typekey = @type.gsub('_', '-').gsub(/^(.*?)(\-field)?$/, '\1-field') |
||||
|
%div{class: ['field', typekey, 'field-' + namekey, @value ? nil : 'new']} |
||||
|
- if @options[:help] |
||||
|
%p.help=_(("form.#{@options[:_controller]}.#{namekey}.help"), :w, 20) |
||||
|
- @label = @label_template ? (render ('layouts/fields/label_' + @label_template)) : nil |
||||
|
= @label_position == :before && @label ? @label : '' |
||||
|
- if @label_position != :inside |
||||
|
%div=@html |
||||
|
= @label_position == :after && @label ? '' : @label |
@ -0,0 +1,9 @@ |
|||||
|
- # we should render errors here |
||||
|
- if @record.errors.any? |
||||
|
.form-errors |
||||
|
%ul |
||||
|
- @record.errors.full_messages.each do |msg| |
||||
|
- # not sure how this works, we may have to pull |
||||
|
- # some sort of error id out of this and construct |
||||
|
- # an I18n translation key |
||||
|
%li=msg |
@ -0,0 +1,7 @@ |
|||||
|
= image_tag (@value || 'http://placehold.it/300x300&text=Click%20to%20upload%20an%20Image') |
||||
|
- if @form |
||||
|
-# = @form.hidden_field (@name.to_s + '_cache') |
||||
|
= @form.file_field @name, {:no_wrapper => true} |
||||
|
- else |
||||
|
= file_field_tag @name, {:no_wrapper => true} |
||||
|
= hidden_field_tag (@name.to_s + '_cache') |
@ -0,0 +1,11 @@ |
|||||
|
= @form.hidden_field(:id, { class: 'id' }) |
||||
|
= @form.check_box(:_destroy, {:no_wrapper => true}) |
||||
|
= @form.label(:_destroy, '×') |
||||
|
= @form.hidden_field(:organization_id, { class: 'organzation-id'} ) |
||||
|
- if @value && @value.id |
||||
|
= form_html = image_tag(@value.avatar.url :thumb) |
||||
|
.organizationname=@value.name |
||||
|
- else |
||||
|
%a.select-organization{href: '#'} |
||||
|
= image_tag('http://placehold.it/120x120&text=%252B') |
||||
|
.organizationname |
@ -0,0 +1,14 @@ |
|||||
|
= @form.hidden_field(:id, { class: 'id' }) |
||||
|
= @form.check_box(:_destroy, {:no_wrapper => true}) |
||||
|
= @form.label(:_destroy, '×') |
||||
|
= @form.hidden_field(:user_id, { class: 'user-id'} ) |
||||
|
- if @value && @value.id |
||||
|
= image_tag(@value.avatar.url :thumb) |
||||
|
.username=@value.username |
||||
|
- if @options[:relationship] |
||||
|
= @form.select(:relationship, options_for_select(UserOrganizationRelationship::AllRelationships, @options[:relationship]), {:no_wrapper => true}, {class: 'small'}) |
||||
|
- else |
||||
|
- if @options[:relationship] |
||||
|
%a.select-user{href: '#'}=image_tag('http://placehold.it/120x120&text=%252B') |
||||
|
.username |
||||
|
= @form.select(:relationship, options_for_select(UserOrganizationRelationship::AllRelationships, UserOrganizationRelationship::DefaultRelationship), {:no_wrapper => true}, {class: 'small'}) |
@ -0,0 +1,8 @@ |
|||||
|
- label = @options[:label] || _('form.label.' + @name.to_s) |
||||
|
= label_tag @name do |
||||
|
- if @label_position == :inside |
||||
|
%div=@html |
||||
|
%span |
||||
|
%span=label |
||||
|
- else |
||||
|
%span=label |
@ -1,41 +1,20 @@ |
|||||
= form_for @organization do |f| |
= form_for @organization do |f| |
||||
.columns |
.columns |
||||
- if @organization.errors.any? |
= f.text_field :name |
||||
#error_explanation |
= f.text_field :slug |
||||
%h2= "#{pluralize(@organization.errors.count, "error")} prohibited this organization from being saved:" |
|
||||
%ul |
|
||||
- @organization.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
= field f, :name, :text_field |
|
||||
= field f, :slug, :text_field |
|
||||
|
|
||||
.columns.medium-4.small-text-centered |
.columns.medium-4.small-text-centered |
||||
-#%h2=_'organization.create.intro-title', :t |
= f.image_field :avatar, @organization.avatar_url |
||||
-#%p=_'organization.create.intro', :p |
|
||||
=# field f, :avatar, :image_field |
|
||||
= field f, :avatar, :image_field, @organization.avatar_url |
|
||||
-#= field f, :year_founded, :number_field |
|
||||
=# f.label :avatar do |
|
||||
=# %div |
|
||||
=# = image_tag(@organization.avatar_url || '' |
|
||||
=# = f.hidden_field :avatar_cache |
|
||||
.columns.medium-8 |
.columns.medium-8 |
||||
= field f, :email_address, :email_field |
= f.email_field :email_address |
||||
= f.fields_for :locations do |b| |
= f.fields_for :locations do |b| |
||||
= field_set_tag 'Location' do |
= field_set_tag 'Location' do |
||||
= field b, :country, :country_select, {help: 'Select a Country'} |
= b.country_select :country, {help: 'Select a Country'} |
||||
- cc = @organization.locations && @organization.locations[b.index].country ? @organization.locations[b.index].country : 'US' |
- cc = @organization.locations && @organization.locations[b.index].country ? @organization.locations[b.index].country : 'US' |
||||
= field b, :territory, :subregion_select, cc, html: {class: @organization.locations[b.index].country ? 'can' : 'cant', data: {:country => cc}} |
= b.subregion_select :territory, cc, html: {class: @organization.locations[b.index].country ? 'can' : 'cant', data: {:country => cc}} |
||||
= field b, :city, :text_field |
= b.text_field :city |
||||
= field b, :street, :text_field |
= b.text_field :street |
||||
= field b, :postal_code, :text_field |
= b.text_field :postal_code |
||||
-#= field f, :logo, :text_field |
|
||||
-#= field f, :avatar, :text_field |
|
||||
-#= field f, :requires_approval, :check_box |
|
||||
-#= field f, :secret_question, :text_field |
|
||||
-#= field f, :secret_answer, :text_field |
|
||||
-#= field f, :location_id, :number_field |
|
||||
-#= field f, :user_organization_replationship_id, :number_field |
|
||||
.columns |
.columns |
||||
= field f, :info, :text_area |
= f.text_area :info |
||||
= actions :save |
= f.actions :save |
||||
|
@ -1,15 +1,14 @@ |
|||||
= form_for @registration_form_field do |f| |
= form_for @registration_form_field do |f| |
||||
- if @registration_form_field.errors.any? |
|
||||
#error_explanation |
|
||||
%h2= "#{pluralize(@registration_form_field.errors.count, "error")} prohibited this registration_form_field from being saved:" |
|
||||
%ul |
|
||||
- @registration_form_field.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
- if @conference |
- if @conference |
||||
= field :conference_id, :hidden_field_tag, value: @conference.id |
= f.hidden_field :conference_id, value: @conference.id |
||||
= field f, :field_type, :select, RegistrationFormField::Types.keys |
= f.select :field_type, RegistrationFormField::Types.keys |
||||
- RegistrationFormField::Fields.each do |key, value| |
- RegistrationFormField::Fields.each do |key, value| |
||||
- classes = RegistrationFormField::TypesForField(key.to_sym).collect{|v| 'field-type-' + v.to_s} |
- options = {:html => { :classes => RegistrationFormField::TypesForField(key.to_sym).collect{|v| 'field-type-' + v.to_s} } } |
||||
- classes << 'registration-form-field-field' |
- options[:html][:classes] << 'registration-form-field-field' |
||||
= eval('field f, :' + key.to_s + ', :' + value[:control] + (value[:options] ? ', ' + (value[:options].map.with_index{|v, i| 'value[:options][' + i.to_s + ']'}.join(', ') || 'nil') : '') + ", classes: classes") |
-# eval('field f, :' + key.to_s + ', :' + value[:control] + (value[:options] ? ', ' + (value[:options].map.with_index{|v, i| 'value[:options][' + i.to_s + ']'}.join(', ') || 'nil') : '') + ", classes: classes") |
||||
= actions :save |
- if value[:options] |
||||
|
- fields = options_for_select(value[:options].first.map { |v| [_("form_field.#{v}"), v]}) |
||||
|
= f.send(value[:control], key.to_s, fields, options) |
||||
|
- else |
||||
|
= f.send(value[:control], key.to_s, options) |
||||
|
= f.actions :save |
||||
|
@ -1,4 +1,4 @@ |
|||||
= form_tag user_sessions_path, :method => :post do |
= form_tag user_sessions_path, :method => :post do |
||||
= field :email, :email_field |
= email_field_tag :email |
||||
= field :password, :password_field_tag |
= password_field_tag :password |
||||
= actions [:Sign_In, :facebook_sign_in] |
= form_actions [:Sign_In, :facebook_sign_in] |
||||
|
@ -1,19 +1,12 @@ |
|||||
= form_for @user, :html => (@user.id ? {:multipart => true} : {}) do |f| |
= form_for @user, :html => (@user.id ? {:multipart => true} : {}) do |f| |
||||
%div{:class => (@user.id ? 'columns medium-6' : '')} |
%div{:class => (@user.id ? 'columns medium-6' : '')} |
||||
- if @user.errors.any? |
= f.text_field :username |
||||
#error_explanation |
= f.email_field :email |
||||
%h2= "#{pluralize(@user.errors.count, "error")} prohibited this user from being saved:" |
|
||||
%ul |
|
||||
- @user.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
|
|
||||
= field f, :username, :text_field |
|
||||
= field f, :email, :text_field |
|
||||
- if !@user.id |
- if !@user.id |
||||
= field f, :password, :password_field |
= f.password_field, :password |
||||
= field f, :password_confirmation, :password_field |
= f.password_field, :password_confirmation |
||||
= actions :register |
= f.actions :register |
||||
- if @user.id |
- if @user.id |
||||
.columns.medium-6 |
.columns.medium-6 |
||||
= field f, :avatar, :image_field, @user.avatar_url |
= f.image_field :avatar, @user.avatar_url |
||||
= actions :save |
= f.actions :save |
||||
|
@ -1,23 +1,13 @@ |
|||||
= form_for @workshop, url: conference_workshops_path(@conference, @workshop) do |f| |
= form_for @workshop, url: conference_workshops_path(@conference, @workshop) do |f| |
||||
.columns |
.columns |
||||
- if @workshop.errors.any? |
= f.text_field :title |
||||
#error_explanation |
= f.text_field :slug |
||||
%h2= "#{pluralize(@workshop.errors.count, "error")} prohibited this workshop from being saved:" |
|
||||
%ul |
|
||||
- @workshop.errors.full_messages.each do |msg| |
|
||||
%li= msg |
|
||||
= field f, :title, :text_field |
|
||||
= field f, :slug, :text_field |
|
||||
.columns.medium-4 |
.columns.medium-4 |
||||
%h2=_'workshop.form.help.title', :t |
%h2=_'workshop.form.help.title', :t |
||||
=_'workshop.form.help', :p |
=_'workshop.form.help', :p |
||||
.columns.medium-8 |
.columns.medium-8 |
||||
= field f, :info, :text_area |
= f.text_area :info |
||||
= field f, :workshop_stream_id, :number_field |
= f.number_field :workshop_stream_id |
||||
= field f, :workshop_presentation_style, :number_field |
= f.number_field :workshop_presentation_style |
||||
=# field f, :min_facilitators, :number_field |
|
||||
=# field f, :location_id, :number_field |
|
||||
=# field f, :start_time, :datetime_select |
|
||||
=# field f, :end_time, :datetime_select |
|
||||
.columns |
.columns |
||||
= actions :save |
= f.actions :save |
||||
|
Loading…
Reference in new issue