summaryrefslogtreecommitdiffstatshomepage
path: root/src/SemanticScuttle/Service/Bookmark2Tag.php
Commit message (Collapse)AuthorAgeFilesLines
* Throw an error when changes can't be committed to the ↵sqlite-fixesGravatar Tom Willemse2024-06-111-1/+10
| | | | | | | | database I was testing and another process had the database open, so it couldn't commit changes. This wasn't apparent from the UI because it would just silently assume a commit went fine.
* Fix using SQLite as a database engineGravatar Tom Willemse2024-06-101-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The ‘sqlite_*’ functions don't exist anymore in PHP 8. They have been replaced with several ‘SQLite3*’ classes. - There are some differences between MySQL and SQLite queries that showed up while doing this work. These differences have been pushed into a QueryBuilder class so that the other database engines don't have to be modified. This is done in an ad-hoc basis for now, just to get things working. - SQLite doesn't support the ‘!’ negation operator used as ‘!ISNULL(...)’, instead I use ‘IIF(...)’. - SQLite doesn't support a ‘LEFT(...)’ function, instead I use ‘SUBSTRING(..., 0, ...)’. - The SQLite3 module doesn't provide a connection identifier, instead you use an object that represents the connection. - SQLite doesn't support the ‘ALL’ keyword (or at least doesn't support it in the same way MySQL does). Instead of ‘<> ALL <subquery>’ I use ‘NOT IN <subquery>’. - The ‘SQLite3*’ classes don't provide any way to determine how many rows have been returned without iterating through all of them, so any place that tries to figure out the rows beforehand just doesn't anymore. - All the database engine classes require a ‘QueryBuilder’ instance. The sqlite one uses a specialized one. I can't test most of these database engines, so I'm focusing on SQLite and MySQL/MariaDB for now.
* bug fixGravatar buckaroo-labs2023-12-201-1/+1
| | | Fatal error: Uncaught Error: [] operator not supported for strings in src/SemanticScuttle/Service/Bookmark2Tag.php:117
* PHP 7.3 compat, bug fixesGravatar querwurzelt2019-01-211-3/+7
|
* The hasTag was always returning false, which probably is ↵Gravatar Christian Weiske2013-03-211-1/+2
| | | | a bug. Fixed it and added a test to catch it. Thanks for Ricardo Soares de Lima for the first patch version
* fix some CS, remove unneeded include - file is included ↵Gravatar Christian Weiske2013-03-211-5/+3
| | | | in header.php
* The method attachTags was raising a Notice error, fix it ↵Gravatar Ricardo Soares de Lima2013-03-211-6/+7
| | | | and adds a test for this situation.
* Using a foreach loop avoids Notice warnings when the ↵Gravatar Ricardo Soares de Lima2013-03-211-1/+1
| | | | array doesn't have sequential indexes, ex: 0, 1, 3...
* remove php4-style object reference passingGravatar Christian Weiske2013-03-171-12/+12
|
* we can retrieve system tags nowGravatar Christian Weiske2011-08-051-4/+7
|
* Fix bug #3376618: Broken tag completion for private ↵Gravatar Christian Weiske2011-08-011-13/+16
| | | | bookmarks
* Reverted changes of date() to gdate(), added tests to ↵Gravatar Mark Pemberton2011-06-041-1/+1
| | | | confirm existence of private RSS feed, and finalized changes to the user session usage with rss.php
* Updated PrivateKey to include Tag searchesGravatar Mark Pemberton2011-05-171-1/+1
|
* do not generate invalid SQL when called with a not-so ↵Gravatar Christian Weiske2011-03-251-2/+4
| | | | valid array
* beginsWith-parameter for getPopulartags, getContactTags ↵Gravatar Christian Weiske2011-03-251-5/+20
| | | | and getAdminTags
* docblock for deleteAllGravatar Christian Weiske2011-03-241-1/+9
|
* fix privacy protection issue when fetching tags of ↵Gravatar Christian Weiske2011-03-241-1/+1
| | | | several users
* make getPopularTags a tiny bit easierGravatar Christian Weiske2011-03-241-9/+7
|
* fix docblockGravatar Christian Weiske2011-03-241-3/+3
|
* unittest for Bookmark2Tag::getContactTags, CS and docblockGravatar Christian Weiske2011-03-241-4/+27
|
* unittest for getAdminTags as well as CS and docblock ↵Gravatar Christian Weiske2011-03-231-3/+27
| | | | fixes on it
* format getPopularTags and add docblockGravatar Christian Weiske2011-03-231-19/+56
|
* Fix bug getTagsForBookmarks() that fetched all tags, see ↵Gravatar cweiske2010-07-091-6/+1
| | | | | | http://sourceforge.net/projects/semanticscuttle/forums/forum/759510/topic/3752670 for details git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@715 b3834d28-1941-0410-a4f8-b48e95affb8f
* sql optimization: fetch all tags at onceGravatar cweiske2010-02-201-0/+2
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@668 b3834d28-1941-0410-a4f8-b48e95affb8f
* add new method for better sql performance: ↵Gravatar cweiske2010-02-201-0/+48
| | | | | | Bookmark2Tag::getTagsForBookmarks() git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@667 b3834d28-1941-0410-a4f8-b48e95affb8f
* reformat and CSGravatar cweiske2010-02-201-6/+24
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@666 b3834d28-1941-0410-a4f8-b48e95affb8f
* fix several sql injection possibilitiesGravatar cweiske2010-01-161-1/+1
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@599 b3834d28-1941-0410-a4f8-b48e95affb8f
* add docblocks to service classesGravatar cweiske2009-10-261-0/+25
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@430 b3834d28-1941-0410-a4f8-b48e95affb8f
* document attachtagsGravatar cweiske2009-10-251-39/+70
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@425 b3834d28-1941-0410-a4f8-b48e95affb8f
* convert tabs to spacesGravatar cweiske2009-10-241-462/+462
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@407 b3834d28-1941-0410-a4f8-b48e95affb8f
* use dbservice in all services that need a dbGravatar cweiske2009-10-241-8/+1
| | | | git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@406 b3834d28-1941-0410-a4f8-b48e95affb8f
* rename ServiceFactory::getServiceInstance() to get() - ↵Gravatar cweiske2009-10-231-10/+10
| | | | | | much easier to write git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@396 b3834d28-1941-0410-a4f8-b48e95affb8f
* make the application work againGravatar cweiske2009-10-031-0/+489
git-svn-id: https://semanticscuttle.svn.sourceforge.net/svnroot/semanticscuttle/trunk@388 b3834d28-1941-0410-a4f8-b48e95affb8f