class TitlesController < ApplicationController
  layout 'simple'

  def index
    @titles = Title.order("visible_name ASC").where(visible: [1,2,3])

    # "AUTRES ACCES" section
    @icono_title = Title.find_by_name("IconosIndependants")
    @icono_users = User.where("title_id = #{@icono_title.id} and phone != '000' and status = 'active' ").order(:last_name) unless @icono_title.nil?

    @icono_test_title = Title.find_by_name("IconosIndependantsBD")
    @icono_test_users = User.where("title_id = #{@icono_test_title.id} and phone != '000' and status = 'active' ").order(:last_name) unless @icono_test_title.nil?

    @partner_title = Title.find_by_name("Partenaires")
    @partner_users = User.where("title_id = #{@partner_title.id} and phone != '000' and status = 'active' ").order(:last_name) unless @partner_title.nil?

    l_prov = []
    session[:provhd].each_index do |i|
      prov = Provider.find_by(id: i)
      l_prov << i if session[:provhd][i] == 1 && !prov.blank? && prov.provider_type_id == 1
    end
    if l_prov.count == 1
      p_id = l_prov.first
      @prov = Provider.find_by_id(p_id).name
      @autho = {}
      (Array(@titles) + Array(@icono_title) + Array(@icono_test_title) + Array(@partner_title)).each do |t|
        tpg = TitleProviderGroup.where(title_provider_group_name_id: t.title_provider_group_name_id, provider_id: p_id)
        @autho[t.id] = tpg.blank? ? 0 : Authorization.where(title_provider_group_id: tpg.first.id).count + 1
      end

    else
      @l_prov = l_prov unless l_prov.blank?
    end

    respond_to do |format|
      format.html { }
      format.csv {
        send_data Title.export_to_csv(@titles, @icono_title.visible_name, @icono_users, @icono_test_title.visible_name, @icono_test_users, @partner_title.visible_name, @partner_users, l_prov, current_user), filename: "#{I18n.t('csv_titles')}.csv", type: 'text/csv; charset=utf-8; header=present'}
    end

  end

end