Witam,

walczę z wysyłką wiadomości zawierającej tylko czysty tekst. Chciałbym uzyskać linię o długości 30znaków w mailu.
Oto mój kod:
  1. $mailing=MailingPeer::retrieveByPK($r->getParameter('id'));
  2.  
  3. $message=Swift_Message::newInstance();
  4. $message
  5. ->setFrom(array($mailing->getSenderAddress()=>$mailing->getSenderName()))
  6. ->setTo(sfConfig::get('app_test_mail'))
  7. ->setSubject($mailing->getSubject())
  8. ->setMaxLineLength(30)
  9. ->setBody($this->getPartial('message_body', array('mediaType'=>'mail', 'message'=>$message, 'mailing'=>$mailing) ), $mailing->getContentType());
  10.  
  11. $this->getMailer()->send($message);


Ogólnie bazując na manualu ustawiam typ wiadomości (przechowuję go w $mailing->getContentType())
- jeśli ustawię na "text/plain" to wszystko ładnie się wysyła, ale wiersze nie mają ograniczonej długości. Ciągną się do końca ekranu jak w wiadomościach text/html
- jeśli ustawię "text" to linie ładnie zawijają się po 30 znakach, ale zamiast polskich literek pojawiają się problemy -> np. słowo dokonaliśmy jest zamieniane na dokonal=
i=C5=9Bmy

Macie może pomysł jak obejść ten problem?

//EDIT

Już znalazłem odpowiedź w źródłach innych wiadomości
Należy jeszcze dodać do kodu powyżej:
  1. ->setEncoder(new Swift_Mime_ContentEncoder_PlainContentEncoder("8bit"))