﻿ticket	summary	type	release	owner	__group__	created	modified	_description	_reporter
13935	page layout is scrambled when adding or deleting a bookmark	defect		Cinc-th	closed	2021-01-12T18:50:15+01:00	2021-04-13T03:02:13+02:00	On Trac 1.4.2, when I click the add/delete bookmark icon, the page layout changes such that all the wiki content is moved to the right.  Also, the menu bar is duplicated.	teridon@…
13326	AttributeError with bookmark in browser realm	defect	1.0	Jun Omae	closed	2017-11-07T02:36:08+01:00	2017-11-07T08:56:33+01:00	"{{{#!logtalk
2017-11-07 01:56:45,297 Trac[main] ERROR: Internal Server Error:
Traceback (most recent call last):
  File ""/usr/lib/python2.7/site-packages/trac/web/main.py"", line 497, in _dispatch_request
    dispatcher.dispatch(req)
  File ""/usr/lib/python2.7/site-packages/trac/web/main.py"", line 214, in dispatch
    resp = chosen_handler.process_request(req)
  File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 168, in process_request
    for url, name, username in self.get_bookmarks(req)]
  File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 260, in _format_name
    name = get_resource_summary(self.env, resource)
  File ""/usr/lib/python2.7/site-packages/trac/resource.py"", line 347, in get_resource_summary
    return get_resource_description(env, resource, 'summary')
  File ""/usr/lib/python2.7/site-packages/trac/resource.py"", line 333, in get_resource_description
    return manager.get_resource_description(resource, format, **kwargs)
  File ""/usr/lib/python2.7/site-packages/trac/versioncontrol/api.py"", line 387, in get_resource_description
    node = repos.get_node(resource.id, resource.version)
AttributeError: 'NoneType' object has no attribute 'get_node'
}}}

I tried to figure out what's going on by myself :
* [source:/bookmarkplugin/trunk/tracbookmark/__init__.py@16357:255-260#L208]
* [trac:browser/tags/trac-1.0.1/trac/resource.py]

I don't understand why the second pass through `get_resource_description` with `'summary'` arg doesn't work.

Also I looked at BreadCrumbsNavPlugin because this plugin has more or less the same things to do. But it doesn't have a specific section to handle `browser` realm and avoids issue with a global test on resource [source:/breadcrumbsnavplugin/trunk/breadcrumbsnav/breadcrumbs.py@16589:185-186#L159]. \\
Ultimately `browser` entries are ignored."	ntmlod
12689	Wrong position of shortcut menu of bookmarks	defect		komar	closed	2016-03-02T19:21:40+01:00	2017-02-12T11:18:38+01:00	"If many elements in context menu, shortcut menu of bookmarks has wrong position.
Firefox.
[[Image(https://core.org.ua/tmp/komar-shot-2016-03-02-191238.png,100%)]]
"	komar@…
9212	Closed tickets should display with strike-through	enhancement	0.11	Ryan J Ollos	closed	2011-09-28T09:07:08+02:00	2013-06-13T14:47:14+02:00	"As in normal wiki markup, it would be nice if the TracLinks to tickets that are displayed through the BookmarkPlugin would display with strike-through font when the ticket is closed.

I may be able to provide a patch for this soon. See #3610 for a related discussion."	Ryan J Ollos
9785	"""Invalid attachment' displayed on every page after bookmarking attachments page"	defect	0.12	Ryan J Ollos	closed	2012-02-10T22:29:37+01:00	2013-05-09T05:21:45+02:00	"After uploading an attachment named to ticket 1253, I see ""Invalid attachment"" displayed when trying to navigate to any realm. The following was captured when navigating to the `/report` page:

[[Image(InvalidAttachment.png)]]

The attachment name is ''hardware mode error.png''. The ticket summary is ''BLS Program Execution Hardware Fault''. Disabling the BookmarkPlugin eliminates the error.

Here is the traceback from the log file.
{{{
2012-02-10 15:12:40,675 Trac[main] WARNING: HTTPNotFound: 404 Invalid Attachment (Attachment 'ticket:: 1253' does not exist.)
2012-02-10 15:12:41,984 Trac[main] ERROR: Exception caught while post-processing request:
Traceback (most recent call last):
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/web/main.py"", line 276, in dispatch
    self._post_process_request(req)
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/web/main.py"", line 365, in _post_process_request
    f.post_process_request(req, *(None,)*extra_arg_count)
  File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 173, in post_process_request
    self.render_bookmarker(req)
  File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 291, in render_bookmarker
    params = self.__format_name(req, url)
  File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 238, in __format_name
    name = get_resource_description(self.env, resource, 'summary')
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/resource.py"", line 333, in get_resource_description
    return manager.get_resource_description(resource, format, **kwargs)
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/attachment.py"", line 610, in get_resource_description
    return Attachment(self.env, resource).description
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/attachment.py"", line 126, in __init__
    self._fetch(self.resource.id, db)
  File ""/usr/local/python26_trac12/lib/python2.6/site-packages/Trac-0.12.3-py2.6.egg/trac/attachment.py"", line 155, in _fetch
    _('Invalid Attachment'))
ResourceNotFound: Attachment 'ticket:: 1253' does not exist.
}}}"	Ryan J Ollos
10421	Do we really need to implement permissions in this plugin?	enhancement	0.12	Ryan J Ollos	closed	2012-10-03T17:42:15+02:00	2013-04-22T19:02:56+02:00	"I've been thinking lately about whether the permissions for this plugin offer any value. The plugin should be disabled for `anonymous` users, but for other users, what is the value of being able to grant the feature to some users, and not other users? 

What use cases do people have for making use of the permissions? Would it be a problem to just drop the permissions from the plugin? The bookmarks feature seems to be pretty benign; I can't see the harm in providing it to everyone. Can anyone think of security holes that would be opened by dropping the permission? Dropping the permission would certainly simplify installation.

The `BOOKMARK_MODIFY` is not currently used, and I can't see how it could be useful even as features are added. Is there a use case for allowing users to view bookmarks, but not add them? The only use-case I think of is to provide users with a set of read-only bookmarks, but can anyone actually envision using a feature like that in practice?

An alternative to permissions would be to have a user preference, so that users not wanting the feature could disable it.

What brought this to mind again, and caused me to raise a ticket, was the thought of suggesting to include the feature in the Bloodhound project, and simplifying the installation in order to make that a more realistic possibility."	Ryan J Ollos
9556	[Patch] Resource name not displayed after clicking the bookmark icon	defect	0.11	Ryan J Ollos	closed	2011-11-24T23:34:17+01:00	2012-08-04T11:03:32+02:00	"After clicking on the add / remove bookmark icon and then hovering over the drop-down bookmark list, the following is shown:

[[Image(AfterSelectingBookmarkIcon.png)]]

After a page refresh, the following is shown:

[[Image(AfterRefresh.png)]]"	Ryan J Ollos
9789	Merge 0.11 and 0.12 branches into a trunk mainline	task	0.11	Ryan J Ollos	closed	2012-02-11T04:48:27+01:00	2012-07-26T02:44:13+02:00	I posted my request to contribute to this project over in #9556. If you'll allow me to contribute, I'd like to start with the following change. I did a diff of the 0.11 and 0.12 branches and found that they contain the exact same content. In order to minimize difficulty in applying patches and maintaining the code-line, I propose creating a single `trunk` line, and developing against Trac 0.11 and 0.13dev. 	Ryan J Ollos
9795	Don't show bookmark menu and icon when on the bookmark page	enhancement	0.12	Ryan J Ollos	closed	2012-02-13T11:29:27+01:00	2012-08-04T12:12:27+02:00	I can't see any utility to showing the bookmark menu and allowing a bookmark to be set when on the bookmark page. Let me know if I'm overlooking a use case for this.	Ryan J Ollos
11043	Don't show bookmark icon on edit and delete pages	enhancement		Ryan J Ollos	closed	2013-05-01T08:47:56+02:00	2013-05-23T18:31:57+02:00	If `action=delete` or `action=edit` are in the URL, don't show the bookmark icon on the page.	Ryan J Ollos
11115	Cannot operate on closed cursor	defect		Ryan J Ollos	closed	2013-05-23T17:18:31+02:00	2014-02-21T22:54:37+01:00	"While testing with Trac 0.11, I've seen the following in the logs:

{{{
11:17:19 AM Trac[main] ERROR: Cannot operate on a closed cursor.
Traceback (most recent call last):
  File ""/home/user/Workspace/th11043/trac-0.11/trac/web/main.py"", line 233, in dispatch
    self._post_process_request(req)
  File ""/home/user/Workspace/th11043/trac-0.11/trac/web/main.py"", line 301, in _post_process_request
    f.post_process_request(req, *(None,)*extra_arg_count)
  File ""/home/user/Workspace/trachacks.git/bookmarkplugin/trunk/tracbookmark/__init__.py"", line 183, in post_process_request
    self.render_bookmarker(req)
  File ""/home/user/Workspace/trachacks.git/bookmarkplugin/trunk/tracbookmark/__init__.py"", line 335, in render_bookmarker
    menu = self._get_bookmarks_menu(req)
  File ""/home/user/Workspace/trachacks.git/bookmarkplugin/trunk/tracbookmark/__init__.py"", line 342, in _get_bookmarks_menu
    for url, name, username in self.get_bookmarks(req):
  File ""/home/user/Workspace/th11043/trac-0.11/trac/db/util.py"", line 40, in __iter__
    row = self.cursor.fetchone()
ProgrammingError: Cannot operate on a closed cursor.
}}}

The error occurs when loading any page, such as ''!WikiStart''. I think we shouldn't be returning a `cursor` from `get_bookmarks`."	Ryan J Ollos
13060	BookmarkPlugin using old Trac database API	defect	1.2	Ryan J Ollos	closed	2017-02-02T20:39:28+01:00	2017-03-07T01:34:13+01:00	"As of rev 16217, on Trac 1.2, this plugin causes a Trac internal error on every page, which I think means it's using the old Trac database API

{{{
AttributeError: 'Environment' object has no attribute 'get_db_cnx'
}}}

{{{
Most recent call last:
File ""build/bdist.linux-x86_64/egg/trac/web/main.py"", line 613, in _dispatch_request
File ""build/bdist.linux-x86_64/egg/trac/web/main.py"", line 263, in dispatch
File ""build/bdist.linux-x86_64/egg/trac/web/main.py"", line 444, in _post_process_request
File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 183, in post_process_request
File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 319, in render_bookmarker
File ""build/bdist.linux-x86_64/egg/tracbookmark/__init__.py"", line 72, in get_bookmark
}}}
"	s32rybeafa@…
13120	BookmarkPlugin incorrectly redirects location	defect	1.2	Ryan J Ollos	closed	2017-03-20T17:50:25+01:00	2017-03-21T13:05:18+01:00	"When I click the ""star"" icon to bookmark a page, the browser gets redirected to an incorrect link.  e.g. if I'm on page


{{{
http://server/trac/wiki/CamelCase
}}}

and I click the star, I get sent to

{{{
http://server/wiki/CamelCase
}}}

Which is of course a 404 error.  The URL for the star is 

{{{
http://server/trac/bookmark/add/CamelCase
}}}

The bookmark does get successfully added; the only problem is the redirect.  Perhaps the plugin only fails when the trac root is not / (mine is /trac)? 

I'm using BookmarkPlugin rev 16293 with Trac 1.2."	s32rybeafa@…
13670	Add classifiers to setup.py	task		Ryan J Ollos	closed	2019-11-22T20:54:09+01:00	2019-12-09T14:08:05+01:00	The line `classifiers = ['Framework :: Trac']` is missing from setup.py.	figaro
14223	Bad Jinja2 template	defect		Ryan J Ollos	closed	2023-05-12T15:45:26+02:00	2023-07-07T08:27:41+02:00	"In Jinja2 template added in [18181] missed braces in source:bookmarkplugin/trunk/tracbookmark/templates/bookmark_list_jinja.html#L22
must be
{{{
        <li><a class=""${bookmark.class_}"" href=""${bookmark.href}"">
}}}
"	Alexey
10227	Bookmark plugin should protect add and delete operations	defect	0.12	Ryan J Ollos	new	2012-08-04T14:37:54+02:00	2020-05-01T06:51:13+02:00	"The bookmark icon is simple link, not a form. The delete link in bookmark page is also.
Therefore, a attacker can force to add and delete the users' bookmarks."	Jun Omae
8501	Removing duplicate bookmarks	defect	0.12	yosiyuki	closed	2011-02-14T15:48:39+01:00	2011-02-17T02:48:35+01:00	When the same item is added, more than once... Removing it ( ONLY ONE SELECTED ) from the list, removes also all other clones of this bookmark entry.	Krzysztof Antczak
10218	Bookmarks for anonymous users are shared	defect	0.12	yosiyuki	closed	2012-08-02T14:15:41+02:00	2012-08-04T14:00:58+02:00	"Only `username` column in the `bookmarks` table identifies a user. Therefore, a anonymous user can remove bookmarks for other anonymous users.

My proposals:
 1. Refuse the access to bookmarks by anonymous user
 2. Add `sid` and `authenticated` columns (are similar to `session` table)

{{{
sqlite> select * from bookmarks;
resource    name        username
----------  ----------  ----------
/                       anonymous
/timeline               anonymous
/roadmap                anonymous
/milestone              anonymous
/wiki/Came              anonymous
/wiki/Came              anonymous
/timeline?              anonymous
/ticket/6               anonymous
/bookmark               anonymous
/ticket/1               foobar
/ticket/2               foobar
/wiki                   foobar
}}}"	Jun Omae
8628	[Patch] bookmark.url not being expanded correctly on sub sites	defect	0.12	yosiyuki	closed	2011-03-21T20:40:34+01:00	2012-02-13T09:32:25+01:00	" - I have a site at /trac/atol
 - have the most recent bookmarks plugin
 - we are seeing this:

{{{

    <ul class=""bookmarks"">
        <li class=""report"">
            <a href=""/report/8"">{8}</a>
                Active Tickets, Mine first (<a href=""/trac/atol/bookmark/delete_in_page/report/8"">delete</a>)
        </li>
    </ul>
}}}

for code that looks like this in the list.html template:
{{{
 <ul class=""bookmarks"">
      <py:for each=""bookmark in bookmarks"">
        <li class=""${bookmark.realm}"">
            <a href=""${bookmark.url}"">${bookmark.linkname}</a>
                ${bookmark.name} (<a href=""${bookmark.delete}"">delete</a>)
        </li>
      </py:for>
    </ul>
}}}

appears that the bookmark.url is not being expanded correctly.  
"	branson
9749	Background of contextual navigation entry is not the same as the page	defect	0.11	yosiyuki	closed	2012-02-01T23:15:54+01:00	2012-08-04T11:03:32+02:00	"I've started using the QuietPlugin, and see the following when the quiet mode is turned on:

[[Image(BackgroundNotCorrect.png)]]

I imagine similar issue might be seen when a user has a theme installed. Maybe there are just some css tweaks to make for this?"	Ryan J Ollos
7776	Fix link for Bookmarks	defect	0.12	yosiyuki	closed	2010-10-05T16:40:49+02:00	2010-10-06T13:12:14+02:00	"He I just found a small error, for the ""Bookmarks"" link. [[BR]]
If you are using an environment with for example "".../trac/{!ProjectName}/wiki"" the ""Bookmarks"" link is set to "".../bookmark"" but i should [[BR]]
"".../trac/{!ProjectName}/bookmarks""
Following lines fixed that for me
Line 218:
{{{
#!python
anc = tag.a(""Bookmarks"", href=req.href.bookmark('/bookmark'))
}}}

Anyway, another cool plugin

thx :-)

Mario"	Mario
8000	Show ticket summary, report name, etc ... on 'Your Bookmarks' page.	enhancement	0.11	yosiyuki	closed	2010-11-08T19:55:53+01:00	2011-09-03T23:14:19+02:00	"This is a very useful plugin. One thing that would make it slightly more user friendly would be to improve on the '''Your Bookmarks''' page. Rather than showing a list of resources such as:

= Your Bookmarks =
    * [/ticket/712] (delete)
    * [/report/1?sort=ticket&asc=1&USER=ryano&page=3] (delete)
    * [/ticket/609] (delete)
    * [/ticket/448] (delete)

make it more descriptive by including the resource summary and formatting the link as a !TracLink:

= Your Bookmarks =
    * #712 Implement !SequenceController to aggregate data and functions (delete)
    * {1} Active Tickets (delete)
    * #609 Cleanup display window definition (delete)
    * #448 Improve scheme by which !FlowControlEvent objects are associated with !SequenceEvent objects (delete)

I'd also suggest renaming ''delete'' to ''remove'', so that it is more obvious that the resource is not being deleted."	Ryan J Ollos
8001	Improve information display in Bookmarks drop-down menu	enhancement	0.11	yosiyuki	closed	2010-11-08T20:00:20+01:00	2011-02-17T02:35:05+01:00	"Similar to #8000, it would be nice to improve the display of the Bookmarks drop-down menu. Rather than a relative path, the !TracLink could be shown. On hover over, the resource description (ticket summary, report description, ... ) could be shown in a callout, such as you see when hovering over a !TracLink on a wiki page.

[[Image(Bookmarks.png)]]

----

[[Image(HoverOver.png)]]"	Ryan J Ollos
8353	Bookmarks dropdown does not display when multiple projects served via tracd	defect	0.12	yosiyuki	closed	2011-01-03T05:46:11+01:00	2012-02-12T23:27:28+01:00	"With multiple trac instances served by one tracd, the bookmarks menu dropdown does not appear. (It does work fine if I start instances individually.) Here is the start syntax... (Yes, this particular install is on Windows XP... but each instance works correctly when started separately and have been in use for a bit, so I suspect it's not a basic install problem.)
{{{
tracd --port 8080 --auth=sandbox,""c:\documents and settings\joel\docs\trac\digest.txt"",trac ""c:\documents and settings\joel\docs\trac\sandbox"" --auth=crf,""c:\documents and settings\joel\docs\trac\crf-digest.txt"",trac ""c:\documents and settings\joel\docs\trac\crf"" --auth=joel,""c:\documents and settings\joel\docs\trac\digest.txt"",trac ""c:\documents and settings\joel\docs\trac\joel""
}}}
{{{
Environment:
Trac 0.12
Python 2.6.6
Windows XP with current fixes
TracBookmark-0.1-py2.6
}}}}
Great plugin - thanks for building it!"	Joel Foner
8382	request for bookmark name	enhancement	0.11	yosiyuki	closed	2011-01-09T22:40:54+01:00	2011-11-24T23:24:07+01:00	"This is an awesome plugin. I installed it at work and many people in the department love it. Thank you for sharing. One of the suggestions is to have a bookmark name since sometime URL is too long and run off the pull-down menu. Perhaps it looks like this:

`MyWeeklyReport: /query?status-accepted&status=new&status=reopened&order=priority`

Cheers,
Wendy"	wendy
9557	Wider drop down text area	enhancement	0.11	yosiyuki	closed	2011-11-24T23:54:16+01:00	2012-08-04T11:03:32+02:00	"The drop-down list has a fixed width. I'm not sure if this is possible, but it would be very nice if the width of the drop-down list expanded to fit the width of the longest entry in the box, provided this could be done without expanding the width of the '''Bookmark''' entry on the contextual navigation. In fact, the '''Bookmark''' entry could be made a bit narrower since there is some unused space, as shown in this screen capture:

[[Image(Bookmarks.png)]]"	Ryan J Ollos
9788	base_path is not prefixed to links on the /bookmark page	defect	0.12	yosiyuki	closed	2012-02-11T00:15:53+01:00	2012-02-11T05:40:52+01:00	"If you have a `base_path`, e.g. your URLs are `localhost/project/ticket` rather than `localhost/ticket`. the `base_path` is not properly prefixed to links on the `bookmark` page.

To reproduce:
 - Add a bookmark (`timeline` in this example)
 - Navigate to the bookmark page. Click on the resource link (`timeline` in this example`)

'''Environment not found''' will be displayed.

[[Image(BookmarkPage.png)]]

The function `__format_name` prepares the request data, so I've made the fix in that function in the simplest possible way:

{{{
#!patch
### Eclipse Workspace Patch 1.0
#P bookmarkplugin
Index: 0.12/tracbookmark/__init__.py
===================================================================
--- 0.12/tracbookmark/__init__.py	(revision 11267)
+++ 0.12/tracbookmark/__init__.py	(working copy)
@@ -247,7 +247,7 @@
 
         return {
                 'realm': realm,
-                'url': url,
+                'url': req.href(url),
                 'linkname': linkname,
                 'name': name,
                 'delete': req.href.bookmark('delete_in_page', url)}
}}}

However, I'm reminded on work I did on #7399 for the MenusPlugin. This fix won't work in the case that queries are bookmarked. When I bookmark I query, the result is:

[[Image(NoHandler.png)]]

So I'll look into working up a better patch tonight. It will be pretty much the same as what was done for #7399."	Ryan J Ollos
10205	License clarification	task	0.11	yosiyuki	closed	2012-07-29T23:54:35+02:00	2013-05-23T18:31:07+02:00	`setup.py` says the license is ''BSD'', which is great. If the author approves, I'd like to change this to ''3-Clause BSD'', same as the Trac core, and drop a `COPYING` file in the repository that contains the license clause.	Ryan J Ollos
10226	Uses wrongly `re.match` for `[bookmark] paths` settings	defect	0.12	yosiyuki	closed	2012-08-04T12:55:49+02:00	2013-04-26T22:18:09+02:00	"It seems `[bookmark] paths` supports shell wildcards, not regular expression.
{{{
#!py
    bookmarkable_paths = ListOption('bookmark', 'paths', '/*',
        doc='List of URL paths to allow bookmarking on. Globs are supported.')
}}}

But the plugin uses `re.match` for each value with no changes.
{{{
#!py
    def post_process_request(self, req, template, data, content_type):
        # Show bookmarks context menu except when on the bookmark page
        if 'BOOKMARK_VIEW' in req.perm and not self.match_request(req):
            for path in self.bookmarkable_paths:
                if re.match(path, req.path_info):
                    self.render_bookmarker(req)
                    break
        return template, data, content_type
}}}

I think it should fix to be able to use shell wildcards."	Jun Omae
8952	Plugin not working due to table schema constraints	defect	0.12	yosiyuki	new	2011-07-06T10:46:02+02:00	2020-05-01T06:51:13+02:00	"Hi all,

I downloaded '''bookmarkplugin-!r10380.zip''', created the egg file and uploaded it to my Trac 0.12 instance (using postgresql 8.3, python 2.5 on linux debian lenny).

I then run ""trac-admin ''trac-env-path'' update"" as suggested by the plugin's post install message and added to my trac user the bookmark related privileges.

When I tried to add a bookmark, the ""*"" link was apparently inactive (when pressed it did nothing), so '''I wasn't able to add a bookmark'''.

After some investigation (i.e. open the ""*"" link target into a new page and see Postgresql complaining about the ""name"" column being not null but a null value is supplied) I finally found out that the table ""bookmarks"" has a pk made of 3 columns:

{{{
trac=# \d bookmarks
  Table ""public.bookmarks""
  Column  | Type | Modifiers 
----------+------+-----------
 resource | text | not null
 name     | text | not null
 username | text | not null
Indexes:
    ""bookmarks_pk"" PRIMARY KEY, btree (resource, name, username)
}}}

but the plugin's code on insert is as follows: 

{{{
#!python
    def set_bookmark(self, req, resource):
        """"""Bookmark a resource.""""""
#        resource = self.normalise_resource(resource)
        if self.get_bookmark(req, resource):
            return

        db = self.env.get_db_cnx()
        cursor = db.cursor()
        cursor.execute('INSERT INTO bookmarks (resource, username) '
                       'VALUES (%s, %s)',
                       (resource, get_reporter_id(req)))
        db.commit()
}}}

If I run the following SQL script, the plugin starts working as expected: 

{{{
#!sql
alter TABLE bookmarks drop constraint bookmarks_pk;
alter TABLE bookmarks add primary key (resource,username);
alter table bookmarks ALTER name DROP not null;
}}}

The plugin code doesn't seem to be up to date with the table design, or the table design seems too strongly constrained.

Cheers,
  Marco
"	mrctrevisan
11626	Allow resources to be bookmarked from the timeline	enhancement		yosiyuki	new	2014-03-16T22:42:41+01:00	2020-05-01T06:51:13+02:00	"The feature was discussed in trac:#11256. However, rather than setting a single bookmark in the timeline to limit the history (as requested in trac:#11256), it might be more useful to just allow items to be bookmarked on the timeline.

If it proves to be useful to limit the history, we can probably handle that in this plugin as well."	Ryan J Ollos
