On 8/7/07, Romain Durritçague <[EMAIL PROTECTED]> wrote:
> Salut à tous,
>
> J'ai donc une question pour un problème qui m'énerve depuis quelques jours.
> J'ai un newsletter_controller qui contient :
>   def send_newsletter
>     news = Newsletter.find(params[:id])
>     news.update_attribute('date',Time.now)
>     @liste = get_all_emails()
>     for mail in @liste
>       email =
> Notifier.create_mail_mailing_list_all(mail,news)
>       Notifier.deliver (email)
>     end
>   end
>
> news c'est donc une newsletter que ça va chercher dans la base de données.
> mail est donc un membre de la mailinglist.
>
> J'ai donc le model Notifier qui contient l'action mail_mailing_list_all :
>
>   def mail_mailing_list_all(mail,news)
>
>     if mail[:language] == 'fr'
>       subject = news[:subjectfr]
>       subj_temp = news[:subjectfr]
>       body = replace_ids(news[:textfr],mail[:id])
>       contenu = replace_ids(news[:htmlfr],mail[:id])
>       message = replace_ids(news[:nohtmlfr],mail[:id])
>     elsif mail[:language] == 'en'
>       subject = news[:subjecten]
>       subj_temp = news[:subjecten]
>       body = replace_ids(news[:texten],mail[:id])
>       contenu = replace_ids(news[:htmlen],mail[:id])
>       message = replace_ids(news[:nohtmlen],mail[:id])
>     end
>
>
>     @recipients = mail[:mail]
>     @from = ["Newsletter UpShot
> <[EMAIL PROTECTED]>"]
>     @subject = subject
>     @sent_to = Time.now
>     @charset = "UTF-8"
>     @headers["X-Mailer"] = "Ruby ActionMailer"
>     @headers["Reply-to"] = "Newsletter UpShot
> <[EMAIL PROTECTED] >"
>     @headers["X-Priority"] = "3"
>     @headers["Content-Transfer-Encoding"] = "8bit"
>
>     if mail[:mailtype] == 'text'
>       @content_type = "text/plain"
>       @body["message"] = body
>       @body["hash"] = mail_hash(mail[:mail])
>       @body["id"] = mail[:id]
>       @body["lang"] = mail[:language]
>       @body["subj"] = replace_spaces(subj_temp)
>
>     elsif mail[:mailtype] == 'html'
>       @content_type = "multipart/alternative"
>       part :content_type => "text/plain",
>         :body =>
> render_message("mail_mailing_list_all_plain", :message =>
> message, :id => mail[:id], :lang => mail[:language], :hash =>
> mail_hash(mail[:mail]), :subj => replace_spaces(subj_temp))
>
>       part :content_type => "text/html",
>         :body =>
> render_message("mail_mailing_list_all_html", :contenu =>
> contenu, :id => mail[:id], :lang => mail[:language], :hash =>
> mail_hash(mail[:mail]))
>     end
>   end
>
>
> Cette action va donc envoyer la newsletter, français/anglais, html/text etc.
> La fonction replace_spaces va remplacer les espaces du sujet de la
> newsletter par des tirets pour créer un joli lien à mettre dans la
> newsletter qui permettra aux personnes d'accéder à la newsletter online.
>
>
> Le problème est que pour la première newsletter envoyée à la première
> personne, tout va bien, mais ensuite il me mets des tirets dans les sujets
> des newsletter à envoyer.
> Mais donc je me retrouve avec un sujet "à tirets" même dans les
> news[:subjectfr] et news[:subjecten] alors qu'ils n'ont normalement jamais
> été modifiés et qu'ils sont récupérés directement depuis la bdd et passés en
> paramètre dans la boucle du controller newsletter.
>
> Quelqu'un qui aura eut le courage de me lire jusqu'à la fin saurait
> m'expliquer ce problème ?
>

Pourquoi utilises tu des [:xx] pour atteindre tes valeurs et pas des
new.subjectfr ca serait plus lisible :)


-- 
Cyril Mougel

--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Répondre à