Noosfero/noosfero

View on GitHub
app/views/profile_editor/_person_form.html.erb

Summary

Maintainability
Test Coverage
<% @person ||= @profile %>
<% editing_profile ||= false %>

<%= optional_field(@person, 'nickname') do %>
  <%= f.text_field(:nickname, :size => 30, :rel => _('Nickname')) %>
  <div>
    <small><%= _('A short name by which you like to be known. Will be used in friends listings, community member listings etc.') %></small>
  </div>
<% end %>

<%= optional_field(@person, 'description', f.text_area(:description, :rows => 5, :rel => _('Description'))) %>
<%= optional_field(@person, 'preferred_domain', select_preferred_domain(:profile_data)) %>
<%= optional_field(@person, 'contact_information', f.text_field(:contact_information, :rel => _('Contact information'))) %>
<%= optional_field(@person, 'contact_phone', labelled_form_field(_('Home phone'), text_field(:profile_data, :contact_phone, :rel => _('Contact phone'),
                                                                                                                            :placeholder => _('With area code, only numbers')))) %>
<%= optional_field(@person, 'cell_phone', f.text_field(:cell_phone, :rel => _('Cell phone'), :placeholder => _('With area code, only numbers'))) %>
<%= optional_field(@person, 'comercial_phone', f.text_field(:comercial_phone, :rel => _('Comercial phone'), :placeholder => _('With area code, only numbers'))) %>
<%= optional_field(@person, 'jabber_id', f.text_field(:jabber_id, :rel => _('Jabber'))) %>
<%= optional_field(@person, 'personal_website', f.text_field(:personal_website, :rel => _('Personal website'))) %>
<%= optional_field(@person, 'sex', f.radio_group(:profile_data, :sex, [ ['male',_('Male')], ['female',_('Female')], ['other',_('Other')] ])) %>
<%= optional_field(@person, 'birth_date', labelled_form_field(_('Birth date'), date_field('profile_data[birth_date]', @profile_data. birth_date, {:change_month => true, :change_year => true, :year_range => '-100:-5'}, {:id => 'profile_data_birth_date'}))) %>
<%= optional_field(@person, 'nationality', labelled_form_field(_('Nationality'), select_nationality('profile_data', 'nationality', {:class => 'select-nationality'}) )) %>
<%= optional_field(@person, 'image', labelled_form_field(_('Image'), file_field(:file, :image, :rel => _('Image')))) %>

<%= render partial: 'shared/location_form', locals: { f: f, profile: @person } unless editing_profile %>

<% @plugins.dispatch(:extra_optional_fields).each do |field| %>
  <%= optional_field(@person, field[:name], labelled_form_field(field[:label], text_field(field[:object_name], field[:method], :rel => field[:label], :value => field[:value]))) %>
<% end %>

<%= optional_field(@person, 'schooling') do %>
  <div class="formfieldline">
    <label class='formlabel' for='profile_data_schooling'><%= _('Schooling') %></label>
    <div class="formfield type-select">
      <%= select_schooling('profile_data', 'schooling', {:class => 'select-schooling'}) %>
      <%= select_schooling_status('profile_data', 'schooling_status', {:class => 'select-schooling'}) %>
    </div>
  </div>
<% end %>

<%= javascript_include_tag('city_state_validation') %>
<script type='text/javascript'>
  function toggle_text_field(id, span_id) {
    if ($(id).value == "Others") {
      $(span_id).show(); return false;
    } else {
      $(span_id).hide(); return false;
    }
  }
</script>

<%= optional_field(@person, 'formation', select_area(_('Education'), 'profile_data', 'formation', {:class => 'type-select-full-line'})) %>

<span id='profile_data_custom_formation_span' <%= "style='display:none'" if ! ['Others', nil].include?(@person.formation) %> >
  <%= optional_field(@person, 'custom_formation', f.text_field(:custom_formation, :rel => _('Custom formation'))) %>
</span>
<%= observe_field 'profile_data_formation', :function =>'toggle_text_field("profile_data_formation", "profile_data_custom_formation_span")' %>

<%= optional_field(@person, 'area_of_study', select_area(_('Area of study'), 'profile_data', 'area_of_study', {:class => 'type-select-full-line'})) %>

<span id='profile_data_custom_area_of_study_span' <%= "style='display:none'" if ! ['Others', nil].include?(@person.area_of_study) %> >
  <%= optional_field(@person, 'custom_area_of_study', f.text_field(:custom_area_of_study, :rel => _('Custom area of study'))) %>
</span>
<%= observe_field 'profile_data_area_of_study', :function =>'toggle_text_field("profile_data_area_of_study", "profile_data_custom_area_of_study_span")' %>

<%= optional_field(@person, 'professional_activity', f.text_field(:professional_activity, :rel => _('Professional activity'))) %>
<%= optional_field(@person, 'organization', f.text_field(:organization, :rel => _('Organization'))) %>
<%= optional_field(@person, 'organization_website', f.text_field(:organization_website, :rel => _('Organization website'))) %>