Beispiel #1
0
 /**
  * [PUBIC] フォームを表示する
  *
  * @param mixed mail_content_id
  * @return void
  * @access public
  */
 public function index($id = null)
 {
     if (!$this->MailContent->isPublish($this->dbDatas['mailContent']['MailContent']['status'], $this->dbDatas['mailContent']['MailContent']['publish_begin'], $this->dbDatas['mailContent']['MailContent']['publish_end'])) {
         $this->render($this->dbDatas['mailContent']['MailContent']['form_template'] . DS . 'unpublish');
         return;
     }
     if (!$this->dbDatas['mailContent']['MailContent']['status']) {
         $this->notFound();
     }
     $this->Session->write('Mail.valid', true);
     // 初期値を取得
     if (!isset($this->request->data['Message'])) {
         if (!empty($this->request->params['named'])) {
             foreach ($this->request->params['named'] as $key => $value) {
                 $this->request->params['named'][$key] = base64UrlsafeDecode($value);
             }
         }
         $this->request->data = $this->Message->getDefaultValue($this->request->params['named']);
     } else {
         $this->request->data['Message'] = $this->Message->sanitizeData($this->request->data['Message']);
     }
     $this->set('freezed', false);
     if ($this->dbDatas['mailFields']) {
         $this->set('mailFields', $this->dbDatas['mailFields']);
     }
     $user = $this->BcAuth->user();
     if (!empty($user) && !Configure::read('BcRequest.agent')) {
         $this->set('editLink', array('admin' => true, 'plugin' => 'mail', 'controller' => 'mail_contents', 'action' => 'edit', $this->dbDatas['mailContent']['MailContent']['id']));
     }
     $this->set('mailContent', $this->dbDatas['mailContent']);
     $this->render($this->dbDatas['mailContent']['MailContent']['form_template'] . DS . 'index');
 }
 /**
  * [PUBIC] フォームを表示する
  *
  * @return void
  */
 public function index($id = null)
 {
     if (!$this->MailContent->isAccepting($this->dbDatas['mailContent']['MailContent']['publish_begin'], $this->dbDatas['mailContent']['MailContent']['publish_end'])) {
         $this->render($this->dbDatas['mailContent']['MailContent']['form_template'] . DS . 'unpublish');
         return;
     }
     if ($this->BcContents->preview == 'default' && $this->request->data && empty($this->request->params['requested'])) {
         $this->dbDatas['mailContent']['MailContent'] = $this->request->data['MailContent'];
     }
     $this->Session->write('Mail.valid', true);
     // 初期値を取得
     if (!isset($this->request->data['MailMessage'])) {
         if (!empty($this->request->params['named'])) {
             foreach ($this->request->params['named'] as $key => $value) {
                 $this->request->params['named'][$key] = base64UrlsafeDecode($value);
             }
         }
         $this->request->data = $this->MailMessage->getDefaultValue($this->request->params['named']);
     } else {
         $this->request->data['MailMessage'] = $this->MailMessage->sanitizeData($this->request->data['MailMessage']);
     }
     $this->set('freezed', false);
     if ($this->dbDatas['mailFields']) {
         $this->set('mailFields', $this->dbDatas['mailFields']);
     }
     $user = BcUtil::loginUser('admin');
     if (!empty($user)) {
         $this->set('editLink', array('admin' => true, 'plugin' => 'mail', 'controller' => 'mail_contents', 'action' => 'edit', $this->dbDatas['mailContent']['MailContent']['id']));
     }
     $this->set('mailContent', $this->dbDatas['mailContent']);
     $this->render($this->dbDatas['mailContent']['MailContent']['form_template'] . DS . 'index');
 }
Beispiel #3
-1
 /**
  * パーセントエンコーディングされないURLセーフなbase64エンコード
  */
 public function testBase64UrlsafeEncodeDecode()
 {
     // encode
     $text = 'ふぁsdlfdfがgふぁsdlpfs';
     // base64エンコードすると + と = が含まれる文字列
     $enc = base64UrlsafeEncode($text);
     $result = urlencode($enc);
     // %が含まれてないかチェック
     $this->assertRegExp('/^(?!.*%)/', $result, 'パーセントエンコーディングされています');
     // decode
     $dec = base64UrlsafeDecode($enc);
     $this->assertEquals($dec, $text, '正しくデコードできません');
 }