# -*- encoding : utf-8 -*- class Admin::NewslettersController < ApplicationController before_filter :auth_admin layout "admin" def index @newsletters = Newsletter.order('created_at DESC') if request.xhr? render :layout => false end end def new @newsletter = Newsletter.new() end def create @newsletter = Newsletter.new(params.require(:newsletter).permit!) puts params[:newsletter][:subject] if @newsletter.save flash[:notice] = "La newsletter à bien été créé." @newsletters = Newsletter.order('created_at DESC') respond_to do |format| format.js format.html{ redirect_to admin_newsletters_path} end else respond_to do |format| format.js { render :action => :new} end end end def edit @newsletter = Newsletter.find(params[:id]) end def update @newsletter = Newsletter.find(params[:id]) if @newsletter.update_attributes(params.require(:newsletter).permit!) flash[:notice] = "La newsletter à bien été modifié." respond_to do |format| format.html { redirect_to(admin_newsletters_path()) } format.js end else respond_to do |format| format.html { render :action => :edit} format.js { render :action => :edit} end end end def destroy @newsletter = Newsletter.find(params[:id]) @newsletter.destroy flash[:notice] = "La newsletter à bien été supprimé." end def send_test @newsletter = Newsletter.find(params[:id]) @email = params[:email].to_s General.send_newsletter(@email,@newsletter).deliver redirect_to(admin_newsletters_path, :notice => "La newsletter a bien été envoyée à l'email de test") end def select_recipients @newsletter = Newsletter.find(params[:id]) @studients = Registrant.where(:enabled => true).all respond_to do |format| format.html format.js end end def send_newsletter @newsletter = Newsletter.find(params[:id]) @i = 0 if params[:confirmed_ids] @registrants = Registrant.find( params[:confirmed_ids]) @registrants.each do |registrant| General.send_newsletter(registrant,@newsletter).deliver @i +=1 end end @newsletter.sended = true @newsletter.send_at = Time.now @newsletter.save redirect_to(admin_newsletters_path, :notice => "La newsletter a la séléction d'emails ("+@i.to_s+" envois.)") end end