3 # Système de gestion des adhésions de Nos oignons
 
   4 # Copyright © 2013-2014 Nos oignons <contact@nos-oignons.net>
 
   6 # This program is free software: you can redistribute it and/or modify
 
   7 # it under the terms of the GNU Affero General Public License as
 
   8 # published by the Free Software Foundation, either version 3 of the
 
   9 # License, or (at your option) any later version.
 
  11 # This program is distributed in the hope that it will be useful,
 
  12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
 
  13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 
  14 # GNU Affero General Public License for more details.
 
  16 # You should have received a copy of the GNU Affero General Public License
 
  17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
  23   class Reminder < Struct.new(:days, :subject, :template)
 
  31           '[Nos oignons] Renouvellement de votre cotisation',
 
  32           <<-END_OF_ERB.gsub(/^            /, ''))
 
  33             Salut <%= member.name %>,
 
  35             La date anniversaire de votre adhésion à Nos oignons est dans <%= days %> jours.
 
  36             Il est donc temps de renouveler votre cotisation si vous souhaitez rester
 
  37             membre de l'association. Si vous avez besoin de plus d'informations sur
 
  38             comment faire, écrivez au conseil d'administration. Répondre à cet email
 
  39             devrait faire l'affaire.
 
  41             <% unless member.address.nil? -%>
 
  42             Au passage, est-ce que vous pourriez vérifier que l'adresse postale est
 
  43             toujours bonne ? Voici celle que nous avons retenu :
 
  45             <%= member.address.gsub(/^/, '    ') %>
 
  47             Si ce n'est plus le cas, c'est chouette de le signaler.
 
  50             Au plaisir de continuer l'aventure de Nos oignons avec vous,
 
  52             Le robot du conseil d'administration
 
  54                                   GNU AGPLv3 © Nos oignons <contact@nos-oignons.net>
 
  55                                    git clone https://nos-oignons.net/gestion-adh.git
 
  59           '[Nos oignons] Renouvellement de votre cotisation (rappel)',
 
  60           <<-END_OF_ERB.gsub(/^            /, ''))
 
  61             Salut <%= member.name %>,
 
  63             La date anniversaire de votre adhésion à Nos oignons est dans
 
  64             <%= days %> jours. Si vous ne renouvellez pas votre cotisation d'ici là,
 
  65             vous perdrez la qualité de membre de Nos oignons.
 
  67             Pour plus d'informations sur comment faire pour renouveler sa cotisation,
 
  68             c'est possible d'écrire au conseil d'administration. Répondre à ce mail
 
  73             Le robot du conseil d'administration
 
  75                                   GNU AGPLv3 © Nos oignons <contact@nos-oignons.net>
 
  76                                    git clone https://nos-oignons.net/gestion-adh.git
 
  80           '[Nos oignons] Renouvellement de votre cotisation (dernier rappel)',
 
  81           <<-END_OF_ERB.gsub(/^            /, ''))
 
  82             Salut <%= member.name %>,
 
  84             Dans <%= days %> jours, c'est la date anniversaire de votre adhésion à
 
  85             Nos oignons. Vu que vous n'avez pas renouvellé votre cotisation, cela signifie
 
  86             que vous allez bientôt quitter l'association…
 
  88             Mais il n'est pas encore trop tard pour le faire !
 
  90             Des questions ? Mieux vaut les poser au conseil d'administration. En répondant à
 
  91             cet email par exemple.
 
  93             Et sinon… bonne route ! :)
 
  97             Le robot du conseil d'administration
 
  99                                   GNU AGPLv3 © Nos oignons <contact@nos-oignons.net>
 
 100                                    git clone https://nos-oignons.net/gestion-adh.git
 
 107       locals = { :member => member, :days => days }
 
 108       body = ERB.new(template, nil, '-').result(OpenStruct.new(locals).instance_eval { binding })
 
 109       mail = Mail.new :charset => 'utf-8',
 
 110                       :from => NosOignons::BOARD_EMAIL,