.qi_header %h1 Pétitions %span stats pour la pétition : =@petition.lang("fr").title .qi_row .qi_pannel.qi_plain.padding .header %h2 Evolution du nombre de signatures %table.table %tr %th Provenance %th Nombre de signataires %th Nombre de signataires avec adresse postale %th Nombre de signataires avec numéro de téléphone -@petition.signators.group(:provenance_id).each do |prov| %tr %td -if prov.provenance_id? =prov.provenance_id -else Non spécifié %td =@petition.signators.where(:provenance_id => prov.provenance_id).count %td =@petition.signators.where(:provenance_id => prov.provenance_id).where("(address is not null and address != '')").count %td =@petition.signators.where(:provenance_id => prov.provenance_id).where("(phone is not null and phone != '')").count -start_date = Time.parse("2016/04/20") = @petition.signators.order("created_at ASC").first.created_at -start_date = @petition.signators.order("created_at ASC").first.created_at -stop_date = Time.now.end_of_day %p Nombre de jours : =nbr_jours = (stop_date.to_date - start_date.to_date).to_i %p Echelle de temps : -if nbr_jours > 400 1 mois -step = "1month" -elsif nbr_jours > 100 2 semaine -step = "2week" -elsif nbr_jours > 90 1 semaine -step = "1week" -elsif nbr_jours > 60 2 jour -step = "2day" -elsif nbr_jours > 10 1 jour -step = "1day" -elsif nbr_jours > 0 1 heure -step = "1hour"
-labels = [] -datas_ht = [] -if step == "1hour" -date = start_date - 1.hour -elsif step == "1day" -date = start_date.yesterday.end_of_day -elsif step == "2day" -date = start_date.yesterday.end_of_day -elsif step == "1week" -date = start_date.prev_week.end_of_week -elsif step == "2week" -date = start_date.prev_week.end_of_week -elsif step == "1month" -date = start_date.prev_month.end_of_month -i = 0 -while date <= stop_date and i < 2000 -i = i + 1 -labels << l(date, :format => "%a %d %b") -ht = @petition.signators.where("created_at >= ? and created_at <= ?",start_date,date).count -datas_ht << ht -#date = date.tomorrow.end_of_day -#date = date.end_of_week.end_of_day -#date = date.end_of_month.end_of_day -#date = date.end_of_month.end_of_day -if step == "1hour" -date = date + 1.hour -elsif step == "1day" -date = date.tomorrow.end_of_day -elsif step == "2day" -date = date.tomorrow.tomorrow.end_of_day -elsif step == "1week" -date = date.next_week.end_of_week.end_of_day -elsif step == "2week" -date = date.next_week.next_week.end_of_week.end_of_day -elsif step == "1month" -date = date.next_month.end_of_month.end_of_day