コード例 #1
0
ファイル: DefaultController.php プロジェクト: AxelPanda/ibos
 public function actionDel()
 {
     if (Ibos::app()->request->isAjaxRequest) {
         $diaryids = EnvUtil::getRequest("diaryids");
         $uid = Ibos::app()->user->uid;
         if (empty($diaryids)) {
             $this->ajaxReturn(array("isSuccess" => false, "msg" => Ibos::lang("Select at least one")));
         }
         $pk = "";
         if (strpos($diaryids, ",")) {
             $diaryids = trim($diaryids, ",");
             $pk = explode(",", $diaryids);
         } else {
             $pk = array($diaryids);
         }
         $diarys = Diary::model()->fetchAllByPk($pk);
         foreach ($diarys as $diary) {
             if (!ICDiary::checkReadScope($uid, $diary)) {
                 $this->ajaxReturn(array("isSuccess" => false, "msg" => Ibos::lang("You do not have permission to delete the log")));
             }
         }
         $aids = Diary::model()->fetchAllAidByPks($pk);
         if ($aids) {
             AttachUtil::delAttach($aids);
         }
         $isInstallCalendar = ModuleUtil::getIsEnabled("calendar");
         if ($isInstallCalendar) {
             Calendars::model()->deleteALL("`calendarid` IN(select `cid` from {{calendar_record}} where FIND_IN_SET(`did`, '{$diaryids}')) ");
             CalendarRecord::model()->deleteAll("did IN ({$diaryids})");
         }
         Diary::model()->deleteByPk($pk);
         DiaryRecord::model()->deleteAll("diaryid IN ({$diaryids})");
         DiaryStats::model()->deleteAll("diaryid IN ({$diaryids})");
         $this->ajaxReturn(array("isSuccess" => true, "msg" => Ibos::lang("Del succeed", "message")));
     }
 }