示例#1
0
 public function memberships_delete($params = null)
 {
     // aka join board
     if ($params && isset($params["__partial"])) {
         return null;
     }
     if ($params === null) {
         $this->requireRequestType("DELETE");
         $current_user = $this->requireLogin("You must be logged in to delete a membership");
         $params = $_GET;
     }
     if ($params["membershipid"]) {
         $membership = new SCMembership($params["membershipid"]);
     } else {
         if ($params["userid"] && $params["boardid"]) {
             $membership = new SCMembership($params["userid"], $params["boardid"]);
         } else {
             throw new APIException("Membership id or userid/boardid pair missing", 400);
         }
     }
     if (intval($membership->userid) != intval($current_user->userid)) {
         throw new APIException("You may only attempt to delete your own memberships", 403);
     }
     $membership->delete();
     SC::updateSessionUser();
     return true;
 }