/** * Deletes a user and all of the objects he owns * @author Clemens John <*****@*****.**> */ public function delete() { //Delete routers $routerlist = new Routerlist(false, $this->getUserId()); $routerlist->delete(); //Delete api keys $api_key_list = new ApiKeyList($this->getUserId(), 'user'); $api_key_list->delete(); //Delete user remember mes $user_remember_me_list = new UserRememberMeList($this->getUserId()); $user_remember_me_list->delete(); //delete the user from the database try { $stmt = DB::getInstance()->prepare("DELETE FROM users WHERE id=?"); $stmt->execute(array($this->getUserId())); } catch (PDOException $e) { echo $e->getMessage(); return false; } return true; }
public function delete() { if ($this->getRouterId() != 0) { //delete all interfaces $networkinterfacelist = new Networkinterfacelist(false, $this->getRouterId()); $networkinterfacelist->delete(); //delete originator statusses $originator_status_list = new OriginatorStatusList($this->getRouterId()); $originator_status_list->delete(); //delete batman advanced interfaces try { $stmt = DB::getInstance()->prepare("DELETE FROM crawl_batman_advanced_interfaces WHERE router_id=?"); $stmt->execute(array($this->getRouterId())); } catch (PDOException $e) { echo $e->getMessage(); echo $e->getTraceAsString(); } //delete router statusses $router_status_list = new RouterStatusList($this->getRouterId()); $router_status_list->delete(); //delete event notifications (we need to delete all notifications that users created for this router //thats why we need a list here) $event_notification_list = new EventNotificationList(false, "router_offline", $this->getRouterId()); $event_notification_list->delete(); //Delete api keys $api_key_list = new ApiKeyList($this->getRouterId(), 'router'); $api_key_list->delete(); //delete router try { $stmt = DB::getInstance()->prepare("DELETE FROM routers WHERE id=?"); $stmt->execute(array($this->getRouterId())); return $stmt->rowCount(); } catch (PDOException $e) { echo $e->getMessage(); echo $e->getTraceAsString(); } } return false; }