/** * Clears the current session from the database, and unsets the * session cookie * * @since 1.0.1 * @return true */ public function end_session() { $db = new argent_database(); $query = "\r\n DELETE FROM \r\n `ua_sessions`\r\n WHERE \r\n `session_id` = '{$db->escape_value($this->id)}'\r\n AND\r\n `session_name` = '{$db->escape_value($this->name)}'"; $db->query($query); if (!headers_sent()) { setcookie($this->name, '', time() - 3600, $this->path, $this->domain, $this->secure); } return true; }
/** * Returns true if the specified User Right exists * * @param string $right * @return \argent_error|boolean */ public static function right_exists($right) { $error = new argent_error(); $db = new argent_database(); if (!is_string($right)) { $error->add('1050', 'Invalid data type: expecting STRING', $relationship, 'argent_meta'); } if ($error->has_errors()) { return $error; } $sql = "\r\n SELECT\r\n *\r\n FROM\r\n `ua_rights`\r\n WHERE\r\n `right` = '{$db->escape_value($right)}'\r\n "; $rights = $db->returnrow($sql); if ($rights['right'] == $right) { return $rights['object_id']; } return false; }
/** * Break a defined relationship relationship between two objects * * @param string $primary_object_id * @param string $secondary_object_id * @param string $relationship * @return array|\argent_error */ public static function unrelate($primary_object_id, $secondary_object_id, $relationship, $include_reverse = false) { $error = new argent_error(); $db = new argent_database(); $related = self::related($primary_object_id, $secondary_object_id, $relationship, $include_reverse); if (argent_error::check($related)) { return $related; } if (!$related) { return $related; } $sql = "\r\n DELETE FROM\r\n `ua_relationships`\r\n WHERE\r\n (`primary_object_id` = '{$db->escape_value($primary_object_id)}'\r\n AND\r\n `secondary_object_id` = '{$db->escape_value($secondary_object_id)}' )\r\n "; if ($include_reverse) { $sql .= "\r\n OR\r\n (`primary_object_id` = '{$db->escape_value($secondary_object_id)}'\r\n AND\r\n `secondary_object_id` = '{$db->escape_value($primary_object_id)}' )\r\n "; } $sql .= "\r\n AND\r\n `relationship` = '{$db->escape_value($relationship)}'\r\n "; $db->query($sql); return true; }