プロジェクト

全般

プロフィール

737_new2.diff

Shinichi Urabe, 2010-02-26 21:38

ダウンロード (3.48 KB)

差分を表示:

lib/model/DeletedMessagePeer.php (作業コピー)
91 91
   */
92 92
  public static function deleteMessage($member_id, $message_id, $object_name)
93 93
  {
94
    $criteria = new Criteria();
94 95
    if ($object_name == 'MessageSendList') {
95
        $message = MessageSendListPeer::retrieveByPK($message_id);
96
        $criteria->add(MessageSendListPeer::MEMBER_ID, $member_id);
97
        $criteria->add(MessageSendListPeer::ID, $message_id);
98
        $message = MessageSendListPeer::doSelectOne($criteria);
96 99
        $deleted_message = DeletedMessagePeer::getDeletedMessageByMessageSendListId($member_id, $message_id);
97 100
        if (!$deleted_message) {
98 101
          $deleted_message = new DeletedMessage();
99 102
        }
100 103
        $deleted_message->setMessageSendListId($message_id);
101 104
      } else if ($object_name == 'Message') {
102
        $message = SendMessageDataPeer::retrieveByPK($message_id);
105
        $criteria->add(SendMessageDataPeer::MEMBER_ID, $member_id);
106
        $criteria->add(SendMessageDataPeer::ID, $message_id);
107
        $message = SendMessageDataPeer::doSelectOne($criteria);
103 108
        $deleted_message = DeletedMessagePeer::getDeletedMessageByMessageId($member_id, $message_id);
104 109
        if (!$deleted_message) {
105 110
          $deleted_message = new DeletedMessage();
106 111
        }
107 112
        $deleted_message->setMessageId($message_id);
108 113
      } else if ($object_name == 'DeletedMessage') {
109
        $message = DeletedMessagePeer::retrieveByPK($message_id);
114
        $criteria->add(self::MEMBER_ID, $member_id);
115
        $criteria->add(self::ID, $message_id);
116
        $message = self::doSelectOne($criteria);
110 117
        $deleted_message = null;
111 118
      }
112 119
      if (!$message) {
......
127 134
   * @param int $message_id
128 135
   * @return boolean 
129 136
   */
130
  public static function restoreMessage($message_id)
137
  public static function restoreMessage($message_id, $member_id = null)
131 138
  {
132
    $deleted_message = DeletedMessagePeer::retrieveByPK($message_id);
139
    $member_id = $member_id ? $member_id : sfContext::getInstance()->getUser()->getMemberId();
140
    $criteria = new Criteria();
141
    $criteria->add(self::MEMBER_ID, $member_id);
142
    $criteria->add(self::ID, $message_id);
143
    $deleted_message = self::doSelectOne($criteria);
133 144
    if (!$deleted_message) {
134 145
      return false;
135 146
    }
lib/action/opMessagePluginMessageActions.class.php (作業コピー)
145 145
      default :
146 146
        throw new LogicException();
147 147
    }
148
    DeletedMessagePeer::deleteMessage(sfContext::getInstance()->getUser()->getMemberId(),
149
                                      $request->getParameter('id'), 
150
                                      $objectName);
148
    $this->forward404Unless(
149
      DeletedMessagePeer::deleteMessage($this->getUser()->getMemberId(),
150
        $request->getParameter('id'),
151
        $objectName
152
      )
153
    );
151 154
    
152 155
    $this->redirect('@'.$messageType.'List');
153 156
  }
......
161 164
  {
162 165
    $request->checkCSRFProtection();
163 166

  
164
    DeletedMessagePeer::restoreMessage($request->getParameter('id'));
167
    $this->forward404Unless(DeletedMessagePeer::restoreMessage($request->getParameter('id')));
165 168
    $this->redirect('@dustList');
166 169
  }
167 170