public function actionRemoveUser() { if (Yii::$app->user->isGuest) { echo json_encode(['status' => 0]); return; } $clubId = Yii::$app->request->post('clubId'); $userId = Yii::$app->request->post('userId'); $role = Club::getUserRole($clubId, Yii::$app->user->getId()); $userRole = Club::getUserRole($clubId, $userId); if ($role == 1 && $userRole > 1 || $role == 2 && $userRole > 2) { Club::removeUser($clubId, $userId); echo json_encode(['status' => 1]); } else { echo json_encode(['status' => 0]); } }
public static function deletePhoto($id) { $photo = (new Query())->select('src, date, id_author, club_id')->from('club_photo')->where('id=:id', [':id' => $id])->one(); $clubId = $photo['club_id']; $role = Club::getUserRole($clubId, Yii::$app->user->getId()); if (!($photo['id_author'] == Yii::$app->user->getId() || ($role == 1 || $role == 2))) { return 0; } Yii::$app->db->createCommand("DELETE FROM club_photo WHERE id=:id")->bindValues([':id' => $id])->execute(); $date = explode(' ', $photo['date']); $date = explode('-', $date[0]); $src = '/img/club/photos/' . $date[0] . '/' . $date[1] . '/' . $date[2] . '/'; if (file_exists($src . 'l_' . $photo['src'])) { unlink($src . 'l_' . $photo['src']); } if (file_exists($src . 'original_' . $photo['src'])) { unlink($src . 'original_' . $photo['src']); } // Видаляэмо все що пов'язано з фото Yii::$app->db->createCommand("\n DELETE\n club_photo,\n club_likes,\n comments_club\n FROM\n club_photo\n LEFT OUTER JOIN\n club_likes\n ON club_photo.id=club_likes.photo_id\n LEFT OUTER JOIN\n comments_club\n ON club_photo.id=comments_club.id_photo\n WHERE\n club_photo.id=:id\n ")->bindValues([':id' => $id])->execute(); Yii::$app->db->createCommand("UPDATE clubs SET photo_count=photo_count-1 WHERE id={$clubId}")->execute(); return 1; }