public function sendmailadmin() { $mail = new FrankizMailer('validate/mail.admin.qdj.tpl'); $mail->assign('user', $this->writer->displayName()); $mail->subject("[Frankiz] Validation d'une QDJ"); $mail->setFrom($this->writer->bestEmail(), $this->writer->displayName()); $mail->addAddress($this->_mail_from_addr(), $this->_mail_from_disp()); $mail->send(false); }
public function sendmailadmin() { if ($this->writer->bestEmail() === null) { $this->writer->select(UserSelect::base()); } $mail = new FrankizMailer('validate/mail.admin.activity.tpl'); $mail->assign('valid_origin', $this->valid_origin); $mail->assign('user', $this->writer); $mail->assign('title', $this->title); $mail->assign('targetGroup', $this->target->group()); if ($this->valid_origin) { $mail->assign('origin', $this->origin); $mail->subject("[Frankiz] Validation d'un groupe d'origine"); } else { $mail->subject("[Frankiz] Validation d'une activité"); } $mail->SetFrom($this->writer->bestEmail(), $this->writer->displayName()); $mail->AddAddress($this->_mail_from_addr(), $this->_mail_from_disp()); $mail->Send(false); }
public function sendmailadmin() { if (is_null($this->user->bestEmail())) { $this->user->select(UserSelect::base()); } $mail = new FrankizMailer('validate/mail.admin.member.tpl'); $mail->assign('user', $this->user); $mail->assign('targetGroup', $this->group); $mail->subject("[Frankiz] Demande de membre"); $mail->SetFrom($this->user->bestEmail(), $this->user->displayName()); $mail->AddAddress($this->_mail_from_addr(), $this->_mail_from_disp()); $mail->Send(false); }
public function sendmailadmin() { if (is_null($this->writer->bestEmail())) { $this->writer->select(User::SELECT_BASE); } $mail = new FrankizMailer('validate/mail.admin.licenses.tpl'); $mail->assign('user', $this->writer->displayName()); $mail->assign('software_name', $this->softwareName()); $mail->subject("[Frankiz] Validation d'une demande de licence"); $mail->SetFrom($this->writer->bestEmail(), $this->writer->displayName()); $mail->AddAddress($this->_mail_from_addr(), $this->_mail_from_disp()); $mail->Send(false); }
public function sendmailadmin() { if (is_null($this->user->bestEmail())) { $this->user->select(UserSelect::base()); } $mail = new FrankizMailer('validate/mail.admin.tol.tpl'); $mail->assign('user', $this->user->displayName()); $group = Group::from('tol'); $group->select(GroupSelect::base()); $mail->assign('targetGroup', $group); $mail->subject("[Frankiz] Validation d'une photo tol"); $mail->SetFrom($this->user->bestEmail(), $this->user->displayName()); $mail->AddAddress($this->_mail_from_addr(), $this->_mail_from_disp()); $mail->Send(false); }
$res = XDB::query('SELECT id, target, writer, writername, title, body, ishtml FROM mails WHERE processed IS NULL')->fetchAllRow(); $ids = array(); if (count($res) == 0) { exit; } foreach ($res as $r) { $ids[] = $r[0]; } XDB::execute('UPDATE mails SET processed = NOW() WHERE id IN {?}', $ids); XDB::commit(); foreach ($res as $r) { $uf = new UserFilter($r[1]); $users = $uf->get(); $users->select(UserSelect::base()); foreach ($users as $user) { $mail = new FrankizMailer(); $mail->addAddress($user->bestEmail(), $user->fullName()); $mail->SetFrom($r[2], $r[3]); $mail->subject($r[4]); $mail->body($r[5]); $mail->send($r[6]); } XDB::execute('UPDATE mails SET done = NOW() WHERE id = {?}', $r[0]); } // vim:set et sw=4 sts=4 sws=4 foldmethod=marker enc=utf-8:
public function commit() { $mail = new FrankizMailer(); $sub = $this->type_mail == 'promo' ? 'promo' : $this->formation->label(); $mail->subject('[Mail ' . $sub . '] ' . $this->subject); if ($this->origin) { global $globals; $mail->setFrom($this->origin->name() . '@' . $globals->mails->group_suffix, 'Frankiz - ' . $this->origin->label() . ''); } else { $mail->setFrom($this->writer->bestEmail(), $this->writer->fullName()); } if ($this->type_mail == 'promo' && !$this->targets) { $uf = new UserFilter(new PFC_AND(new UFC_Group($this->formation), new UFC_Group(Group::from('on_platal')))); } else { if ($this->type_mail == 'promo') { $uf = new UserFilter(new PFC_AND(new UFC_Group($this->formation), new UFC_Caste($this->targets), new UFC_Group(Group::from('on_platal')))); } else { $uf = new UserFilter(new PFC_AND(new UFC_Caste($this->targets->first()), new UFC_Group(Group::from('on_platal')))); } } if (!$this->nowiki) { $mail->body(MiniWiki::wikiToHTML($this->body, false)); } else { $mail->body(MiniWiki::wikiToText($this->body, false, 0, 80)); } $mail->ToUserFilter($uf); $mail->sendLater(!$this->nowiki); return true; }
function handler_participants($page, $id) { $act = new ActivityInstanceFilter(new PFC_AND(new AIFC_CanBeSeen(S::user()), new AIFC_Id($id))); $act = $act->get(true); if ($act === false) { throw new Exception("Invalid credentials"); } $act->select(ActivityInstanceSelect::all()); if (Env::has('mail')) { S::assert_xsrf_token(); if (Env::t('mail_body') != '' && s::user()->id() == $act->writer()->id()) { $mail = new FrankizMailer(); $mail->subject('[Mail groupé] Activité ' . $act->title() . ' du ' . $act->date() . ' à ' . $act->hour_begin()); $mail->body(Env::t('mail_body')); $mail->setFrom(S::user()->bestEmail(), S::user()->displayName()); $mail->toUserFilter(new UserFilter(new UFC_ActivityInstance($act->id()))); $mail->sendLater(false); } else { $page->assign('msg', 'Votre mail n\'est pas rempli.'); } } $page->assign('user', s::user()); $page->assign('id', $id); $page->assign('activity', $act); $page->assign('title', 'Participants à une activité'); $page->addCssLink('activity.css'); $page->changeTpl('activity/participants.tpl'); }
function manage_ping($page, $id) { if (S::logged()) { $res = XDB::query("SELECT uid, description FROM laf WHERE oid = {?}", $id)->fetchOneAssoc(); $user = new User($res['uid']); $user->select(array(User::SELECT_BASE => array())); $message = 'Un message a été envoyé à ' . $user->displayName() . ' (' . $user->bestEmail() . ') pour lui signaler que tu as retrouvé son objet.'; $page->assign('message', $message); $mail = new FrankizMailer("lostandfound/mail.tpl"); $mail->assign('object', $res); $mail->assign('user', S::user()); $mail->assign('type', 'ping'); $mail->SetFrom(S::user()->bestEmail(), S::user()->displayName()); $mail->AddAddress($user->bestEmail(), $user->displayName()); $mail->subject('[Frankiz] Objet perdu'); $mail->send(false); } else { $page->assign('not_logged', 'true'); } }
/** Sends the news items to the newsgroups via mail. */ public function sendnewsgroupmail() { global $globals; if ($this->target->group()->ns() == Group::NS_BINET) { $mail = new FrankizMailer(); $suffix = $globals->mails->newsgroup_suffix; if (!$suffix) { $suffix = 'news.eleves.polytechnique.fr'; } $mail->addAddress('br.binet.' . $this->target->group()->name() . '@' . $suffix); if ($this->origin) { $mail->setFrom($this->origin->name() . '@' . $globals->mails->group_suffix, $this->origin->label()); } else { $mail->setFrom($this->writer->bestEmail(), $this->writer->displayName()); } $mail->subject('[Frankiz] ' . $this->title); $mail->body(MiniWiki::wikiToText($this->content, false, 0, 80)); $mail->send(false); } //But what else }
public function handler_recovery($page) { global $globals; $page->addCssLink('profile.css'); $page->changeTpl('profile/recovery.tpl'); $page->assign('title', 'Nouveau mot de passe'); // Step 1 : Ask the email $page->assign('step', 'ask'); // Step 2 : Send the recovery mail if (Env::t('mail', '') != '') { // TODO: Accept forlife too list($forlife, $domain) = explode('@', Env::t('mail'), 2); $uf = new UserFilter(new UFC_Forlife($forlife, $domain)); $user = $uf->get(true); if (!$user) { $page->assign('error', 'true'); return; } $user->select(UserSelect::base()); $page->assign('email', Env::t('mail')); $mail = new FrankizMailer('profile/recovery.mail.tpl'); $hash = rand_url_id(); $user->hash($hash); $mail->assign('hash', $hash); $mail->assign('uid', $user->id()); $mail->SetFrom($globals->mails->web, 'Les Webmestres de Frankiz'); $mail->AddAddress($user->bestEmail(), $user->displayName()); $mail->subject('[Frankiz] Changement de mot de passe'); $mail->Send($user->isEmailFormatHtml()); $page->assign('step', 'mail'); } // Step 2 : Send a new password if (Env::v('hash', '') != '' && Env::v('uid', '') != '') { $user = new User(Env::v('uid')); $user->select(UserSelect::base()); if (Env::v('hash') == $user->hash()) { // TODO: log the session opening $mail = new FrankizMailer('profile/recovery_new.mail.tpl'); $new = rand_url_id(); $user->hash(''); $user->password($new); $mail->assign('new_password', $new); $mail->SetFrom($globals->mails->web, 'Les Webmestres de Frankiz'); $mail->AddAddress($user->bestEmail(), $user->displayName()); $mail->subject('[Frankiz] Nouveau mot de passe'); $mail->Send($user->isEmailFormatHtml()); $page->assign('step', 'password'); } else { $page->assign('step', 'expired'); } } }