/** * view method * * @access public * @return void * @author ida */ public function view() { $this->prefectures = \Config::get('master.prefectures'); $this->mail_magazine_types = \Model_Mail_Magazine::getMailMagazinTypes(); $this->reservation_fleamarket_list = $this->getReservationFleamarket(); $this->waiting_fleamarket_list = $this->getWaitingFleamarket(); }
/** * 表示に必要なデータを取得し設定する * * @access private * @param array $input_data 入力データ * @return array * @author ida */ private function setupData($data) { $replace_data = array(); $replace_data['user'] = $this->user; $mail_magazine_type = $data['mail_magazine_type']; switch ($mail_magazine_type) { case \Model_Mail_Magazine::MAIL_MAGAZINE_TYPE_ALL: break; case \Model_Mail_Magazine::MAIL_MAGAZINE_TYPE_REQUEST: $this->set('prefectures', \Config::get('master.prefectures'), false); break; case \Model_Mail_Magazine::MAIL_MAGAZINE_TYPE_RESEVED_ENTRY: $fleamarket_id = $data['reserved_fleamarket_id']; $fleamarket = \Model_Fleamarket::find($fleamarket_id); $replace_data['fleamarket'] = $fleamarket; $this->set('fleamarket', $fleamarket, false); break; case \Model_Mail_Magazine::MAIL_MAGAZINE_TYPE_WAITING_ENTRY: $fleamarket_id = $data['waiting_fleamarket_id']; $fleamarket = \Model_Fleamarket::find($fleamarket_id); $replace_data['fleamarket'] = $fleamarket; $this->set('fleamarket', $fleamarket, false); break; } $users = \Model_Mail_Magazine_User::findListByMailMagazineId($this->mail_magazine_id, null, null); $this->set('users', $users, false); $body = $data['body']; $pattern = \Model_Mail_Magazine::getPatternParameter($mail_magazine_type); list($pattern, $replacement) = \Model_Mail_Magazine::createReplaceParameter($body, $pattern, $replace_data); $body = \Model_Mail_Magazine::replaceByParam($body, $pattern, $replacement); $this->set('body', $body, false); $this->set('input_data', $data, false); }
/** * view method * * @access public * @return void * @author ida */ public function view() { $this->prefectures = \Config::get('master.prefectures'); $this->mail_magazine_types = \Model_Mail_Magazine::getMailMagazinTypes(); }
/** * view method * * @access public * @return void * @author ida */ public function view() { $this->mail_magazine = \Model_Mail_Magazine::find($this->mail_magazine_id); $this->send_status = \Model_Mail_Magazine_User::getSendStatuses(); }
/** * 入力値をセッションから取得する * * @access private * @param bool $is_delete 削除 * @return array * @author ida */ private function getInputData($is_delete = false) { $input_data = \Session::get('mail_magazine.input_data', null, true); if ($is_delete) { \Session::delete('mail_magazine.input_data'); } if (!$input_data) { $fieldset = \Model_Mail_Magazine::createFieldset(); $input_data = $fieldset->repopulate()->input(); } return $input_data; }
/** * view method * * @access public * @return void * @author ida */ public function view() { $this->mail_magazine_types = \Model_Mail_Magazine::getMailMagazinTypes(); $this->send_statuses = \Model_Mail_Magazine::getSendStatuses(); }
/** * メール送信処理 * * @access public * @param array $mail_magazine_user 送信先ユーザ情報 * @param array $mail_magazine メルマガ情報 * @param array $replace_data 本文リプレイス情報 * @return bool/string * @author ida */ private function send($mail_magazine_user, $mail_magazine, $replace_data) { if (empty($mail_magazine_user->email)) { throw new \Exception('email is not registered'); } if ($mail_magazine_user->email === '*****@*****.**') { throw new \Exception('email is anonymous@'); } $mail_magazine_type = $mail_magazine['mail_magazine_type']; $from_name = $mail_magazine['from_name']; $from_email = $mail_magazine['from_email']; $to = $mail_magazine_user->email; $subject = \Model_Mail_Magazine::convertEncoding($mail_magazine['subject']); $body = $mail_magazine['body']; $replace_data['user'] = $mail_magazine_user; $pattern = \Model_Mail_Magazine::getPatternParameter($mail_magazine_type); list($pattern, $replacement) = \Model_Mail_Magazine::createReplaceParameter($body, $pattern, $replace_data); $body = \Model_Mail_Magazine::replaceByParam($body, $pattern, $replacement); $result = \Model_Mail_Magazine::sendMail($from_name, $from_email, $to, $subject, $body); if (true === $result) { $result = \Model_Mail_Magazine_User::SEND_STATUS_NORMAL_END; } elseif (false === $send_result) { $result = \Model_Mail_Magazine_User::SEND_STATUS_UNSENT; } return $result; }