diff options
author | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-09-11 16:51:00 +0000 |
---|---|---|
committer | mensonge <mensonge@b3834d28-1941-0410-a4f8-b48e95affb8f> | 2008-09-11 16:51:00 +0000 |
commit | 1d059dc06d24e02c858c43d70eaa70453d51cdff (patch) | |
tree | d29378c81ec8a9498a33ed7276722031c1f12981 /services | |
parent | bfdc6bd7380fda2d5d8ca78a462047069c4020bc (diff) | |
download | semanticscuttle-1d059dc06d24e02c858c43d70eaa70453d51cdff.tar.gz semanticscuttle-1d059dc06d24e02c858c43d70eaa70453d51cdff.tar.bz2 |
New Feature: add users admin page with delete function
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@146 b3834d28-1941-0410-a4f8-b48e95affb8f
Diffstat (limited to 'services')
-rw-r--r-- | services/bookmark2tagservice.php | 20 | ||||
-rw-r--r-- | services/bookmarkservice.php | 11 | ||||
-rw-r--r-- | services/tag2tagservice.php | 14 | ||||
-rw-r--r-- | services/userservice.php | 29 |
4 files changed, 68 insertions, 6 deletions
diff --git a/services/bookmark2tagservice.php b/services/bookmark2tagservice.php index 121ba8d..31ae4d2 100644 --- a/services/bookmark2tagservice.php +++ b/services/bookmark2tagservice.php @@ -179,6 +179,26 @@ class Bookmark2TagService { return true; } + /* Allow deletion in admin page */ + function deleteTagsForUser($uId) {
+ $qmask = 'DELETE FROM %s USING %s, %s WHERE %s.bId = %s.bId AND %s.uId = %d';
+ $query = sprintf($qmask,
+ $this->getTableName(),
+ $this->getTableName(),
+ $GLOBALS['tableprefix'].'bookmarks',
+ $this->getTableName(),
+ $GLOBALS['tableprefix'].'bookmarks',
+ $GLOBALS['tableprefix'].'bookmarks',
+ $uId);
+
+ if (!($dbresult =& $this->db->sql_query($query))) {
+ message_die(GENERAL_ERROR, 'Could not delete tags', '', __LINE__, __FILE__, $query, $this->db);
+ return false;
+ }
+
+ return true;
+ } + function &getTagsForBookmark($bookmarkid) { if (!is_int($bookmarkid)) { message_die(GENERAL_ERROR, 'Could not get tags (invalid bookmarkid)', '', __LINE__, __FILE__, $query); diff --git a/services/bookmarkservice.php b/services/bookmarkservice.php index 2cd42e2..150abc3 100644 --- a/services/bookmarkservice.php +++ b/services/bookmarkservice.php @@ -416,6 +416,17 @@ class BookmarkService { return true; } + function deleteBookmarksForUser($uId) {
+ $query = 'DELETE FROM '. $GLOBALS['tableprefix'] .'bookmarks WHERE uId = '. intval($uId);
+
+ if (!($dbresult = & $this->db->sql_query($query))) {
+ message_die(GENERAL_ERROR, 'Could not delete bookmarks', '', __LINE__, __FILE__, $query, $this->db);
+ return false;
+ }
+
+ return true;
+ } + function countOthers($address) { if (!$address) { return false; diff --git a/services/tag2tagservice.php b/services/tag2tagservice.php index bf4f866..f24ef79 100644 --- a/services/tag2tagservice.php +++ b/services/tag2tagservice.php @@ -234,15 +234,17 @@ class Tag2TagService { } function removeLinkedTags($tag1, $tag2, $relationType, $uId) { - if($tag1 == $tag2 || strlen($tag1) == 0 || strlen($tag2) == 0 - || ($relationType != ">" && $relationType != "=")) { + if(($tag1 != '' && $tag1 == $tag2) || + ($relationType != ">" && $relationType != "=" && $relationType != "") || + ($tag1 == '' && $tag2 == '' && $relationType == '' && $uId == '')) { return false; } $query = 'DELETE FROM '. $this->getTableName(); - $query.= ' WHERE tag1 = "'. $tag1 .'"'; - $query.= ' AND tag2 = "'. $tag2 .'"'; - $query.= ' AND relationType = "'. $relationType .'"'; - $query.= ' AND uId = "'. $uId .'"'; + $query.= ' WHERE 1=1'; + $query.= strlen($tag1)>0 ? ' AND tag1 = "'. $tag1 .'"' : ''; + $query.= strlen($tag2)>0 ? ' AND tag2 = "'. $tag2 .'"' : ''; + $query.= strlen($relationType)>0 ? ' AND relationType = "'. $relationType .'"' : ''; + $query.= strlen($uId)>0 ? ' AND uId = "'. $uId .'"' : ''; if (!($dbresult =& $this->db->sql_query($query))) { message_die(GENERAL_ERROR, 'Could not remove tag relation', '', __LINE__, __FILE__, $query, $this->db); diff --git a/services/userservice.php b/services/userservice.php index 3d2058f..f620735 100644 --- a/services/userservice.php +++ b/services/userservice.php @@ -336,6 +336,35 @@ class UserService { return true; } + function getAllUsers ( ) {
+ $query = 'SELECT * FROM '. $this->getTableName();
+
+ if (! ($dbresult =& $this->db->sql_query($query)) ) {
+ message_die(GENERAL_ERROR, 'Could not get users', '', __LINE__, __FILE__, $query, $this->db);
+ return false;
+ }
+
+ $rows = array();
+
+ while ( $row = $this->db->sql_fetchrow($dbresult) ) {
+ $rows[] = $row;
+ }
+
+ return $rows;
+ }
+
+ function deleteUser($uId) {
+ $query = 'DELETE FROM '. $this->getTableName() .' WHERE uId = '. intval($uId);
+
+ if (!($dbresult = & $this->db->sql_query($query))) {
+ message_die(GENERAL_ERROR, 'Could not delete user', '', __LINE__, __FILE__, $query, $this->db);
+ return false;
+ }
+
+ return true;
+ }
+ + function sanitisePassword($password) { return sha1(trim($password)); } |