<% comandoImpostaNumeroDiTessera = 'impostaNumeroDiTessera' %> <% comandoForzaNumeroDiTessera = 'forzaNumeroDiTessera' %> <% comandoDaEseguire = comandoImpostaNumeroDiTessera %>

Imposta numeri di tessera:

<% case params[:eseguiComando] %> <% when comandoImpostaNumeroDiTessera %> <% memberships = Membership.search(@filter_params).ordered_by_nucleo_and_dh_name %> <% check_result = Membership.get_memberships_data_inconsistency(memberships) %> <% if check_result[:inconsistency] %>

<%= icon('exclamation-triangle', size: '2x') %>Ci sono dati inconsistenti nei soci di <%= link_to @fp_labelOrganization, organization_path(@fp_valueOrganization) %>, (<%= Membership.get_message_for_memberships_data_inconsistency(check_result) %>); non è possibile procedere con la riassegnazione dei numeri di tessera!

<%= iconbutton_back %> <%= form_tag(set_card_number_memberships_path, method: :get) do %> <%= iconbutton_submit(icon('tag'), 'btn-danger', 'Assegna i numeri di tessera ignorando le inconsistenze rilevate', 'eseguiComando', comandoForzaNumeroDiTessera) %> <% end %> <% else %> <% organization_id = params[:filterorganization_id] %> <% tessera_iniziale = params[:numero_iniziale_tessera].is_valid_id? ? params[:numero_iniziale_tessera].to_i : 1 %> <% reference_year = Date.today.year %> <% updated_count = Membership.imposta_numero_tessera(organization_id, reference_year, tessera_iniziale) %> <% if organization_id.blank? %>

Tessera assegnata per <%= updated_count %> soci

<% else %> <% organization = Organization.find(organization_id) %>

Tessera assegnata per <%= updated_count %> soci di <%= organization.descrizione %>

<% end %>
<%= iconbutton_to(memberships_path, icon('eye'), 'btn-default', 'Visualizza soci', @filter_params.merge(filterorganization_id: organization_id) ) %>
<% end %> <% when comandoForzaNumeroDiTessera %> <% organization_id = params[:filterorganization_id] %> <% tessera_iniziale = params[:numero_iniziale_tessera].is_valid_id? ? params[:numero_iniziale_tessera].to_i : 1 %> <% reference_year = Date.today.year %> <% updated_count = Membership.imposta_numero_tessera(organization_id, reference_year, tessera_iniziale) %> <% if organization_id.blank? %>

Tessera assegnata per <%= updated_count %> soci di tutte le <%= Organization.label %>

<% else %> <% organization = Organization.find(organization_id) %>

Tessera assegnata per <%= updated_count %> soci di <%= organization.descrizione %>

<% end %>
<%= iconbutton_to(memberships_path, icon('eye'), 'btn-default', 'Visualizza soci', @filter_params.merge(filterorganization_id: organization_id) ) %>
<% else %> <%= form_tag(set_card_number_memberships_path, method: :get) do %> <%= edit_table_open %> <%= edit_table_row( 'Numero iniziale di tessera', number_field_tag(:numero_iniziale_tessera, 1, style: 'text-align: right;', class: 'lead') ) %> <%= edit_table_row( link_to('Associazione', organizations_path) , (select_tag "filterorganization_id", options_from_collection_for_select( Organization.all.ordered_by_name, 'id', 'format_for_formselect', if @filter_params[:filterorganization_id].is_valid_id? then @filter_params[:filterorganization_id].to_i else nil end), prompt: '', :style => "width:400px; ", :class=>'lead') ) %> <%= edit_table_row( '', iconbutton_submit(icon('tag'), 'btn-success', 'Imposta numero di tessera', 'eseguiComando', comandoImpostaNumeroDiTessera) ) %> <%= edit_table_close %> <% end %> Per assegnare i numeri di tessera, si prendono tutte le persone che si sono registrate nel <%= Date.today.year %> (anche se durante l'anno hanno chiesto il recesso, affinché l'ordine delle tessere non cambi se viene fatto nuovamente durante l'anno), e il numero di tessera corrisponde alla posizione nell'elenco dei soci ordinato con i seguenti criteri, in ordine di priorità:

  1. data delibera iscrizione
    così chi si iscrive successivamente, viene messo in coda
  2. ruolo associativo
    il Presidente è il primo, i 'Junior' sono ultimi, l'ordine esatto si può vedere <%= iconlink_to(membership_types_path, icon('external-link-alt'), 'qui') %>
  3. nome di animale
    se c'è, se è un cittadino damanhuriano
  4. cognome
    chi non ha nome damanhuriano, viene ordinato sul cognome anagrafico
<% end %>