Interface design: merging of bookmarks with same URLs

git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@24 b3834d28-1941-0410-a4f8-b48e95affb8f
This commit is contained in:
mensonge 2008-01-23 16:58:00 +00:00
parent 47f8a6dd9e
commit c385dc6342
4 changed files with 55 additions and 8 deletions

View file

@ -21,7 +21,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
// Uncomment the following lines to execute the admin script. Don't forget to re-comment them after using.
/*
/*
require_once('header.inc.php');
$tagstatservice = & ServiceFactory :: getServiceInstance('TagStatService');
$templateservice = & ServiceFactory :: getServiceInstance('TemplateService');

View file

@ -207,7 +207,7 @@ if ($templatename == 'editbookmark.tpl') {
$tplVars['page'] = $page;
$tplVars['start'] = $start;
$tplVars['bookmarkCount'] = $start + 1;
$bookmarks =& $bookmarkservice->getBookmarks($start, $perpage, $userid, $cat, $terms, getSortOrder());
$tplVars['total'] = $bookmarks['total'];
$tplVars['bookmarks'] =& $bookmarks['bookmarks'];

View file

@ -277,24 +277,28 @@ class BookmarkService {
$query_3 .= ' AND ('. $query_3_1 .') AND B.bStatus IN (0, 1)';
}
if($hash == null) {
$query_5.= ' GROUP BY B.bHash';
}
switch($sortOrder) {
case 'date_asc':
$query_5 = ' ORDER BY B.bDatetime ASC ';
$query_5.= ' ORDER BY B.bDatetime ASC ';
break;
case 'title_desc':
$query_5 = ' ORDER BY B.bTitle DESC ';
$query_5.= ' ORDER BY B.bTitle DESC ';
break;
case 'title_asc':
$query_5 = ' ORDER BY B.bTitle ASC ';
$query_5.= ' ORDER BY B.bTitle ASC ';
break;
case 'url_desc':
$query_5 = ' ORDER BY B.bAddress DESC ';
$query_5.= ' ORDER BY B.bAddress DESC ';
break;
case 'url_asc':
$query_5 = ' ORDER BY B.bAddress ASC ';
$query_5.= ' ORDER BY B.bAddress ASC ';
break;
default:
$query_5 = ' ORDER BY B.bDatetime DESC ';
$query_5.= ' ORDER BY B.bDatetime DESC ';
}
// Handle the parts of the query that depend on any tags that are present.

43
tests/bookmarksTest.php Normal file
View file

@ -0,0 +1,43 @@
<?php
require_once 'PHPUnit/Framework.php';
/*
To launch this test, type the following line into a shell
at the root of the scuttlePlus directory :
phpunit BookmarksTest tests/bookmarksTest.php
*/
class BookmarksTest extends PHPUnit_Framework_TestCase
{
protected $us;
protected $bs;
protected $ts;
protected $tts;
protected function setUp()
{
global $dbhost, $dbuser, $dbpass, $dbname, $dbport, $dbpersist, $dbtype, $tableprefix;
require_once('./header.inc.php');
$this->us =& ServiceFactory::getServiceInstance('UserService');
$this->bs =& ServiceFactory::getServiceInstance('BookmarkService');
$this->bs->deleteAll();
$this->ts =& ServiceFactory::getServiceInstance('TagService');
$this->ts->deleteAll();
$this->tts =& ServiceFactory::getServiceInstance('Tag2TagService');
$this->tts->deleteAll();
$this->tsts =& ServiceFactory::getServiceInstance('TagStatService');
$this->tsts->deleteAll();
}
public function testUnificationOfBookmarks()
{
$bs = $this->bs;
$bs->addBookmark("http://site1.com", "title", "description", "status", array('tag1'), null, false, false, 1);
$bs->addBookmark("http://site1.com", "title2", "description2", "status", array('tag2'), null, false, false, 2);
$bookmarks =& $bs->getBookmarks(0, 1, NULL, NULL, NULL, getSortOrder(), NULL, 0, $dtend);
}
}
?>