private function sendEmails() { $last_email = ''; // Информация о новом комментарии page::assign('username', $this->getUserName()); page::assign('comment', $this->getText()); page::assign('comment_id', $this->id()); // Информация о странице if ($page = ormPages::get($this->getObjId())) { page::assign('page.id', $page->id); page::assign('page.url', $page->url); page::assign('page.name', $page->name); } // Отправляем письмо автору предыдущего коммента if ($this->getParentId() != 0) { $old_comment = new comment($this->getParentId()); if ($old_comment->getEmail() != $this->getEmail()) { $last_email = $old_comment->getEmail(); page::assign('old_comment', $old_comment->getText()); page::assign('name', $old_comment->getUserName()); system::sendMail('/comments/mails/new_answer.tpl', $last_email); } } // Отправляем письма всем подписавщимся на уведомления $sql = 'SELECT c_username, c_email FROM <<comments>> WHERE c_obj_id = "' . $this->getObjId() . '" and c_send_email = 1 and c_id <> "' . $this->id() . '" GROUP BY c_email;'; $list = db::q($sql, records); if (!empty($list)) { while (list($key, $val) = each($list)) { if ($val['c_email'] != $last_email && $val['c_email'] != $this->getEmail()) { page::assign('name', $val['c_username']); page::assign('index', str_replace(array('.', '@'), array('_', '__'), $val['c_email'])); system::sendMail('/comments/mails/new_comment.tpl', $val['c_email']); } } } }
private static function sendMailBlock($user) { page::assign('domain', 'http://' . domains::curDomain()->getName() . languages::pre()); page::assign('login', $user->login); page::assign('name', $user->name); system::sendMail('/users/mails/block.tpl', $user->email); }
private function sendMailDel($user) { page::assign('login', $user->login); page::assign('name', $user->name); system::sendMail('/users/mails/delete.tpl', $user->email); }
public function add_procAction() { $answer = array(); if (!reg::getKey('/users/reg')) { system::redirect('/'); } if (!user::isGuest()) { system::redirect('/users/edit'); } // Проверка капчи if (!system::validCapcha('random_image')) { $answer = array('msg' => lang::get('SITE_CAPHCA'), 'field' => 'captcha'); } // Проверка согласия с условиями оферты if (reg::getKey('/users/confirm') && !system::POST('confirm', isBool)) { $answer = array('msg' => lang::get('USERS_COMFIRM'), 'field' => 'confirm'); } // Добавляем объект if (empty($answer)) { $obj = new ormObject(); $obj->setParent(41); // Устанавливаем группу "Пользователи сайта" $obj->setClass('user'); $obj->tabuList('def_modul', 'active', 'last_visit', 'last_ip', 'groups'); $obj->loadFromPost(); $obj->active = 1; $obj->email = $obj->newVal('login'); $max_tickets = reg::getKey('/booking/max_tickets'); $obj->place_limit = $max_tickets == '' || $max_tickets == 0 ? 6 : $max_tickets; if ($obj->save()) { if (reg::getKey('/users/activation')) { // Регистрация с проверкой // Формируем временный ключ активации пользователя $key = md5(date('d.m.Y') . 'activate' . $obj->id); $obj->md5_flag = $key; $obj->active = 0; $obj->save(); // Отправляем письмо $url_pre = 'http://' . domains::curDomain()->getName() . languages::pre(); page::assign('url', $url_pre . '/users/activate/' . $key); page::assign('passw', system::POST('password')); page::assign('login', $obj->login); page::assign('name', $obj->name); system::sendMail('/users/mails/activate.tpl', $obj->email); $_SESSION['user_email'] = $obj->login; } else { // Регистрация без проверки // Отправляем письмо page::assign('passw', system::POST('password')); page::assign('login', $obj->login); page::assign('name', $obj->name); system::sendMail('/users/mails/registration.tpl', $obj->email); // Автоматическая авторизация user::authHim($obj); } // Все хорошо. Пользователь добавлен. if (system::isAjax()) { system::json(array('ok' => 1)); } else { system::redirect('/users/ok'); } } else { // Произошли ошибки if ($obj->issetErrors(32)) { $answer = array('msg' => lang::get('USERS_ISSET'), 'field' => 'login'); } else { $tmp = $obj->getErrorFields(); $answer = array('msg' => $obj->getErrorListText(' '), 'field' => $tmp['focus']); } } } if (!system::isAjax()) { system::savePostToSession(); system::saveErrorToSession('add_user', $answer); if (!empty($_POST['back_url'])) { system::redirect($_POST['back_url'], true); } else { system::redirect('/users/add'); } } else { system::json($answer); } }