Copyright (c) 2013 http://www.WanPin123_OA.com All rights reserved. Licensed ( http://www.apache.org/licenses/LICENSE-2.0 ) Author: jinzhu.yin Support: https://git.oschina.net/WanPin123_OA/WanPin123_OA -------------------------------------------------------------------------
Наследование: extends CommonModel
Пример #1
0
 public function sendmailqueueAction()
 {
     $mailModel = new MailModel();
     $queue = $mailModel->getMailQueue(100);
     if (count($queue)) {
         foreach ($queue as $item) {
             $mailModel->sendMailItem($item);
         }
     } else {
         $logger = new LoggerModel("/var/log/mp/mail-tiny4cocoa.log");
         $logger->log("empty");
     }
 }
Пример #2
0
 public static function getMsgBySubject($subjectId)
 {
     $result = [];
     $cursor = \Root\Src\Model\ConnectionModel::getConnection()->query("Select * From mail where subjectId = :subjectId", ["subjectId" => $subjectId]);
     $i = 0;
     while ($i < \sizeof($cursor) && $cursor) {
         $current = new MailModel();
         $current->hydrate($cursor[$i]);
         array_push($result, $current);
         $i += 1;
     }
     return $result;
 }
Пример #3
0
 function test_mail()
 {
     if (IS_POST) {
         require_once VENDOR_PATH . '/phpmailer/MailModel.class.php';
         $mail = new \MailModel();
         $result = $mail->test_email($_POST['config']['EMAIL_TEST_EMAIL']);
         if ($result === false) {
             $this->error($mail->message);
         } else {
             $this->success('发送成功');
         }
         exit;
     }
     $id = 6;
     $type = C('CONFIG_GROUP_LIST');
     $list[] = array("name" => "EMAIL_TEST_EMAIL", "title" => "测试邮件", "remark" => "请输入要发送的邮件地址", "type" => "1");
     $this->assign('list', $list);
     $this->assign('id', $id);
     $this->meta_title = $type[$id] . '设置';
     $this->display();
 }
Пример #4
0
 /**
  * 结算发送合体奖励邮件
  *
  * @access public
  * @param 无
  * @return JsonView 响应json
  */
 public function sendFitMail($user_id, $friend_id)
 {
     $user_name = UserCache::getByKey($user_id, "s_name");
     if (!$friend_id) {
         $userInfo = MailModel::getUserInfo($user_id);
         $user_name = $userInfo['s_name'];
     }
     $type = Constants::FIT_REWARD_TYPE;
     $coin = Constants::FIT_REWARD_NUM;
     $str = "你的好友" . $user_name . "邀你助战,你获得人生果" . $coin;
     $res = MailModel::insert(array('n_send_id' => $user_id, 'n_receive_id' => $friend_id, 's_message' => $str, 'n_item_type' => $type, 'n_item_num' => $coin, 'n_type' => 1, 't_update_time' => date("Y-m-d H:i:s"), 't_create_time' => date("Y-m-d H:i:s")));
 }
Пример #5
0
 public function saveMailAction()
 {
     //      Load cac model can thiet
     Zend_Loader::loadClass('MailModel');
     $model = new MailModel();
     $params = $this->_arrParam;
     if ($this->_request->isPost()) {
         if (!empty($params['mail'])) {
             try {
                 $result = $model->check($params['mail']);
                 if (!$result) {
                     $model->insert(array("mail" => $params['mail']));
                 }
             } catch (exception $e) {
                 $data = array("code" => 0, "content" => "Error in server");
             }
         } else {
             $data = array("code" => 0, "content" => "Invalid parameters");
         }
         echo json_encode($data);
     }
     exit;
 }
Пример #6
0
 /**
  * API:领取任务奖励
  *
  * @access public
  * @param 无
  * @return JsonView 响应json
  */
 public function exeGetTaskReward()
 {
     $requestParam = $this->getAllParameters();
     Logger::debug('requestParam:' . print_r($requestParam, true));
     $requestJsonParam = $this->getDecodedJsonRequest();
     Logger::debug('requestJsonParam:' . print_r($requestJsonParam, true));
     $user_id = $requestParam['user_id'];
     $task_id = $requestJsonParam['task_id'];
     $session_key = $requestParam['session_key'];
     $userTask = UserCache::getByKey($user_id, self::TASK_STRING);
     if (!$userTask) {
         $userTask = TaskAchieveModel::getUserInfoByCondition($user_id, self::TASK_STRING);
         UserCache::setByKey($user_id, self::TASK_STRING, $userTask);
     }
     $str = "task_id = " . $task_id . "_" . $userTask[0][$task_id];
     $file = IniFileManager::getRootDir() . "/files/csv/task.csv";
     $taskInfo = CharacterAction::readCsv($file, $str);
     //完成条件的判断
     if ($userTask[$task_id]['n_num'] < $taskInfo[0]['condition']) {
         $messageArr['error'] = "领取条件不足!";
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "task_and_achieve/get_task_reward");
     }
     //是否领取的判断
     if ($userTask[$task_id]['n_reward'] != 0) {
         $messageArr['error'] = "已领取该奖励!";
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "task_and_achieve/get_task_reward");
     }
     //更新任务状态,及金钱
     $price_type = $this->price_type;
     $type = $price_type[$taskInfo[0]['reward_type']];
     $money = UserCache::getByKey($user_id, $type);
     if (!$money) {
         $userInfo = TaskAchieveModel::getUserInfo($user_id);
         $money = $userInfo[$type];
     }
     $money = $money + $taskInfo[0]['reward_num'];
     //体力领取恢复时间更新
     if ($type == $price_type[4]) {
         $thewArr['n_thew'] = $money;
         $thewArr['n_refresh_time'] = UserCache::getBykey($user_id, 'n_refresh_time');
         if (!$thewArr['n_refresh_time']) {
             $userInfo = MailModel::getUserInfo($user_id);
             $thewArr['n_refresh_time'] = $userInfo['n_refresh_time'];
         }
         $getArr = UserAction::refreshThew($thewArr);
         if (!$getArr) {
             $res = CharacterModel::update($thewArr, array('n_id' => $user_id));
             UserCache::setByKey($user_id, 'n_thew', $thewArr['n_thew']);
             UserCache::setByKey($user_id, 'n_refresh_time', $thewArr['n_refresh_time']);
         } else {
             $res = CharacterModel::update($getArr, array('n_id' => $user_id));
             UserCache::setByKey($user_id, 'n_thew', $getArr['n_thew']);
             UserCache::setByKey($user_id, 'n_refresh_time', $getArr['n_refresh_time']);
         }
     } else {
         $res = CharacterModel::update(array($type => $money), array('n_id' => $user_id));
         UserCache::setByKey($user_id, $type, $money);
     }
     $userTask[$task_id]['n_reward'] = 1;
     $s_task_info = serialize($userTask);
     $res = TaskAchieveModel::update(array('s_task_info' => $s_task_info), array('n_id' => $user_id));
     if (!$res) {
         throw new Exception("update false");
     }
     UserCache::setByKey($user_id, self::TASK_STRING, $userTask);
     //任务成就统计
     if ($type == $price_type[1]) {
         TaskAndAchieveAction::taskStatistic($user_id, array('reward' => $taskInfo[0]['reward_num']));
     }
     if ($type == $price_type[3]) {
         //TaskAndAchieveAction::taskStatistic($user_id,array('soul'=>$taskInfo[0]['reward_num']));
         TaskAndAchieveAction::achieveStatistic($user_id, array('soul' => $taskInfo[0]['reward_num']));
     }
     //sessdion_key
     $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
     $messageArr['achieveInfo'] = self::getAchieveInfo($user_id);
     $messageArr['taskInfo'] = self::getTaskInfo($user_id);
     $view = new JsonView();
     return $this->getViewByJson($view, $messageArr, 1, "task_and_achieve/get_task_reward");
 }
Пример #7
0
 public function clearmailqueueAction()
 {
     $mail = new MailModel();
     $mail->clearMailQueue();
 }
Пример #8
0
 /**
  * API:购买商城物品
  *
  * @access public
  * @param 无
  * @return JsonView 响应json
  */
 public function exeBuyMall()
 {
     $requestParam = $this->getAllParameters();
     Logger::debug('requestParam:' . print_r($requestParam, true));
     $requestJsonParam = $this->getDecodedJsonRequest();
     Logger::debug('requestJsonParam:' . print_r($requestJsonParam, true));
     $user_id = $requestParam['user_id'];
     $mall_id = $requestJsonParam['mall_id'];
     $session_key = $requestParam['session_key'];
     $str = "mall_id = " . $mall_id;
     $file = IniFileManager::getRootDir() . "/files/csv/mall.csv";
     $itemInfo = CharacterAction::readCsv($file, $str);
     $price_type = self::$price_type;
     //余额判断
     $type1 = $price_type[$itemInfo[0]['price_type']];
     $type2 = $price_type[$itemInfo[0]['buy_type']];
     $money1 = UserCache::getByKey($user_id, $type1);
     $money2 = UserCache::getByKey($user_id, $type2);
     if (!$money1) {
         $userInfo = BuyPropModel::getUserInfo($user_id);
         $money1 = $userInfo[$type1];
     }
     if (!$money2) {
         $userInfo = BuyPropModel::getUserInfo($user_id);
         $money2 = $userInfo[$type2];
     }
     $money1 = $money1 - $itemInfo[0]['price_num'];
     $money2 = $money2 + $itemInfo[0]['buy_num'];
     if ($money1 < 0) {
         $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
         $messageArr['error'] = "人生果/钻石不足!";
         $view = new JsonView();
         return $this->getViewByJson($view, $messageArr, 0, "buy_prop/buy_mall");
     }
     //任务成就统计
     if ($type2 == $price_type[1]) {
         TaskAndAchieveAction::taskStatistic($user_id, array('reward' => $itemInfo[0]['buy_num']));
     }
     if ($type1 == $price_type[1]) {
         TaskAndAchieveAction::achieveStatistic($user_id, array('cost' => $itemInfo[0]['price_num']));
     }
     //购买体力是更新体力时间
     if ($type2 == $price_type[3]) {
         $thewArr['n_thew'] = $money2;
         $thewArr['n_refresh_time'] = UserCache::getBykey($user_id, 'n_refresh_time');
         if (!$thewArr['n_refresh_time']) {
             $userInfo = MailModel::getUserInfo($user_id);
             $thewArr['n_refresh_time'] = $userInfo['n_refresh_time'];
         }
         $getArr = UserAction::refreshThew($thewArr);
         if (!$getArr) {
             $res = CharacterModel::update($thewArr, array('n_id' => $user_id));
             UserCache::setByKey($user_id, 'n_thew', $thewArr['n_thew']);
             UserCache::setByKey($user_id, 'n_refresh_time', $thewArr['n_refresh_time']);
         } else {
             $res = CharacterModel::update($getArr, array('n_id' => $user_id));
             UserCache::setByKey($user_id, 'n_thew', $getArr['n_thew']);
             UserCache::setByKey($user_id, 'n_refresh_time', $getArr['n_refresh_time']);
         }
         $res = BuyPropModel::update(array($type1 => $money1), array('n_id' => $user_id));
         UserCache::setByKey($user_id, $type1, $money1);
     } else {
         $res = BuyPropModel::update(array($type1 => $money1, $type2 => $money2), array('n_id' => $user_id));
         UserCache::setByKey($user_id, $type1, $money1);
         UserCache::setByKey($user_id, $type2, $money2);
     }
     $messageArr['moneyInfo'] = BuyPropModel::getUserInfo($user_id);
     $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
     //任务成就界面
     $messageArr['achieveInfo'] = TaskAndAchieveAction::getAchieveInfo($user_id);
     $messageArr['taskInfo'] = TaskAndAchieveAction::getTaskInfo($user_id);
     $view = new JsonView();
     return $this->getViewByJson($view, $messageArr, 1, "buy_prop/buy_mall");
 }
Пример #9
0
 /**
  * API:确定按钮
  *
  * @access public
  * @param 无
  * @return JsonView 响应json
  */
 public function exeConfigButton()
 {
     $requestParam = $this->getAllParameters();
     Logger::debug('requestParam:' . print_r($requestParam, true));
     $requestJsonParam = $this->getDecodedJsonRequest();
     Logger::debug('requestJsonParam:' . print_r($requestJsonParam, true));
     $user_id = $requestParam['user_id'];
     $mail_id = $requestJsonParam['mail_id'];
     $session_key = $requestParam['session_key'];
     $res = FriendModel::updateFriendMail(array('n_type' => 0, 't_update_time' => date("Y-m-d H:i:s")), array('n_id' => $mail_id));
     $messageArr['friend_mail'] = MailModel::getFriendMail($user_id);
     $messageArr['system_mail'] = MailModel::getSystemMail($user_id);
     //任务成就界面
     $messageArr['achieveInfo'] = TaskAndAchieveAction::getAchieveInfo($user_id);
     $messageArr['taskInfo'] = TaskAndAchieveAction::getTaskInfo($user_id);
     $messageArr['session_key'] = CharacterModel::setSessionKey($user_id, $session_key);
     $view = new JsonView();
     return $this->getViewByJson($view, $messageArr, 1, "friend/config_button");
 }
Пример #10
0
 public function SendMethod()
 {
     $this->bAjaxMethod = true;
     $oMail = new MailModel();
     echo $oMail->contactMail();
 }
Пример #11
0
/////////////////////////////////////////////////////////////////////////////////////////
// Traitement des données et des informations diverses
$userid = $_SESSION['userid'];
$domain = "dev.fairsys.fr";
$server = "localhost";
// Instanciation de l'objet Account, Host, DNS et Mail
$account = new AccountModel($userid);
$account->init();
$host = new HostModel($userid);
$host->init();
$dns = new DnsModel($userid);
$dns->init();
$database = new DataBaseModel();
$username = $account->getUsername();
$user_domain = $username . "." . $domain;
$mail = new MailModel($user_domain);
// Appel de la méthode
// Mise en place des WHILE afin de vérifier et supprimer les sous-domaines,
// les boites mails et les entrées DNS avant la suppression definitive du compte
// HOST
$host->setUsername($username);
foreach ($host->getDatas() as $host_data) {
    $subdomain = $host_data['dns'];
    $host->deleteSubDomainVHFinal($subdomain);
}
$host->deleteUserVH();
// DNS
$dns->setUsername($username);
foreach ($dns->getDatas() as $dns_data) {
    $subdomain = $dns_data['sub_dom'];
    $type = $dns_data['type'];
Пример #12
0
 public function resetPassword($username)
 {
     $data["userid"] = $this->useridByName($username);
     if ($data["userid"] == 0) {
         return 0;
     }
     $ticketModel = new TicketModel();
     $data = $ticketModel->newTicket($data["userid"]);
     $userinfo = $this->userInfo($data["userid"]);
     $mail = $userinfo["email"];
     $mailModel = new MailModel();
     $page = "<p>你好,</p>\n    <p>您收到这封邮件的原因是,有人请求重置 {$username} 在 OurCoders(我们程序员)社区的密码。如果您确定这不是您自己的行为,请删除这封邮件。</p>\n    \n    <p>如果您可以确认是您自己的行为,请点击链接重置密码 <a href=http://ourcoders.com/user/resetpassword/?ticket={$data['ticket']}>重置密码</a></p>";
     $mailModel->generateMail($mail, "OurCoders社区 <*****@*****.**>", "OurCoders社区-重置密码邮件", $page, 1);
     return 1;
 }
Пример #13
0
 private function replyNotifyMail($username, $email, $replyuser, $content, $threadname, $threadid)
 {
     $subject = "您参与的帖子《" . $threadname . "》有了新回复";
     $mailContent = "您参与的帖子《" . $threadname . "》有了新回复<br/>";
     $mailContent .= "<p><a href=http://OurCoders.com/thread/show/{$threadid}/>http://OurCoders.com/thread/show/{$threadid}/</a></p>";
     $mailContent .= "<p> {$replyuser} 刚刚回复说:</p>";
     $mailContent .= Markdown(stripslashes($content));
     $mail = new MailModel();
     $mail->generateMail($email, "OurCoders(我们程序员)社区 <*****@*****.**>", $subject, $mailContent);
 }
Пример #14
0
$result = mysql_query("set names 'utf8'");
$totalNumRes = mysql_query("select count(*) as num from `test`");
while ($row = mysql_fetch_assoc($totalNumRes)) {
    $totalNum = $row['num'];
}
$page = intval($_POST['page']) ? intval($_POST['page']) : 0;
//这就是最后一封了
if (intval($totalNum) - intval($page) < 2) {
    $data['flag'] = 1;
}
$num = 1;
$start = 0 + $num * $page;
$sql = "select `id`,`email`,`name` from `contact` order by id asc limit {$start} , {$num}";
$result = mysql_query($sql);
//导入配置
$configArr = (include dirname(__FILE__) . '/config.php');
$mailmodel = new MailModel($configArr['email'], $configArr['password'], $configArr['name']);
while ($row = mysql_fetch_assoc($result)) {
    $email = trim($row['email']);
    $data['info'] = '<div> ' . $row['name'] . ' : ' . $email . ' </div>';
    if ($configArr['attachment']) {
        $mailmodel->send($email, $row['name'], $configArr['title'], $configArr['body'], $configArr['attachment']);
    } else {
        $mailmodel->send($email, $row['name'], $configArr['title'], $configArr['body']);
    }
    echo json_encode($data);
    //数据库里做标记
    //$sql = "INSERT INTO `mark` (`uid`) VALUES (".$row['id'].")";
    //mysql_query($sql);
}
mysql_close($con);
Пример #15
0
$firstname = htmlspecialchars($_POST['Firstname']);
$email = htmlspecialchars($_POST['Email']);
$password = htmlspecialchars($_POST['Password']);
$crypted_password = md5($password);
$target = "/";
$target_dns = "www";
$type = "CNAME";
$domain = "dev.fairsys.fr";
$user_domain = $username . "." . $domain;
$server = "localhost";
// Instanciation de l'objet NewAccount
$new_account = new NewAccountModel();
// Appel de la methode
$new_account->createUser($username, $lastname, $firstname, $email, $password, $crypted_password);
$new_account->setUsername($username);
$userid = $new_account->getUserId();
// Instanciation de l'objet Host, DNS et Mail
$database = new DataBaseModel();
$host = new HostModel($userid);
$dns = new DnsModel($userid);
$mail = new MailModel($user_domain);
// Appel de la méthode
$database->setUsername($username);
$database->createDB($password, $server);
$host->setUsername($username);
$host->createUserVH($target);
$dns->setUsername($username);
$dns->createUserDns($type, $target_dns);
$mail->createdomain($username);
// Retour à la page principale
require_once __DIR__ . "/../view/new_account_done.php";
Пример #16
0
 public function getAction()
 {
     if (empty($_SERVER['HTTP_X_REQUESTED_WITH'])) {
         error404();
     }
     $model = new MailModel();
     $hash = post('__hash');
     $dialog = getSession($hash);
     $messages = '';
     if (!$dialog['did']) {
         $response['error'] = 'There is no dialogue';
         echo json_encode($response);
         exit;
     }
     $data['countMsg' . $dialog['pos']] = '0';
     $model->update('dialog', $data, "`id` = '" . $dialog['did'] . "'");
     $lastMessageID = getSession('mail_last_message' . $dialog['did'], false);
     $mailList = $model->getMessages($dialog['did'], 'ASC', $lastMessageID);
     if ($mailList) {
         foreach ($mailList as $value) {
             //$objVal = (object)$value;
             $messages .= '<div class="chat_message">' . '<div class="chat_img"><a href="' . url($value['uid']) . '" target="_blank"><img src="' . getAvatar($value['uid'], 's') . '"></a></div>' . '<div class="chat_text">' . '<div><span class="chat_nickname">' . $value['name'] . '</span> <span class="chat_time">' . printTime($value['time']) . '</span></div>' . '<div>' . $value['message'] . '</div>' . '</div>' . '</div>';
             setSession('mail_last_message' . $dialog['did'], $value['id']);
         }
     }
     unset($chatList);
     $response['error'] = 0;
     $response['target_a']['#dialog'] = $messages;
     echo json_encode($response);
     exit;
 }