=cut
__DATA__
-- 8< -- textfile: layout/category_add.form -- >8 --
$form_name = 'addcat';
$form_specification =
{
title => { name => 'Title (not empty)' , minlength => 1, maxlength => 256, match => '' },
parent_id => { name => 'ID of the parent-category (number)', minlength => 1, maxlength => 256, match => '' },
private => { name => 'Private' , minlength => 0, maxlength => 1, match => '' },
};
-- 8< -- textfile: layout/category_add_show.form -- >8 --
$form_name = 'addcatshow';
$form_specification =
{
id => { name => 'ID of the parent-category (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/category_add_show.template -- >8 --
<& formvalidator form="category_add.form" / &>
-- 8< -- textfile: layout/category_delete.form -- >8 --
$form_name = 'delcat';
$form_specification =
{
id => { name => 'ID of the category (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
confirmation => { name => 'Confirmation' , minlength => 0, maxlength => 1, match => '1' },
};
-- 8< -- textfile: layout/category_delete_show.form -- >8 --
$form_name = 'delcatshow';
$form_specification =
{
id => { name => 'ID of the category (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/category_delete_show.template -- >8 --
<& formvalidator form="category_delete.form" / &>
-- 8< -- textfile: layout/category_edit.form -- >8 --
$form_name = 'editcat';
$form_specification =
{
id => { name => 'ID of the category (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
title => { name => 'Title (not empty)' , minlength => 1, maxlength => 256, match => '' },
category => { name => 'Parent-category (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
private => { name => 'Private' , minlength => 0, maxlength => 1, match => '' },
};
-- 8< -- textfile: layout/category_edit_show.form -- >8 --
$form_name = 'editcategoryshow';
$form_specification =
{
id => { name => 'ID of the category (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/category_edit_show.template -- >8 --
<& formvalidator form="category_edit.form" / &>
-- 8< -- textfile: layout/entry_add.form -- >8 --
$form_name = 'addentry';
$form_specification =
{
title => { name => 'Title (not empty)' , minlength => 1, maxlength => 256, match => '' },
url => { name => 'URL (http://*.*, ftp://*.*)', minlength => 1, maxlength => 256, match => '^([hH][tT]|[fF])[tT][pP]\:\/\/\S+\.\S+$' },
category => { name => 'ID of the category (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
private => { name => 'Private' , minlength => 0, maxlength => 1, match => '' },
};
-- 8< -- textfile: layout/entry_add_show.form -- >8 --
$form_name = 'addentryshow';
$form_specification =
{
id => { name => 'ID of the category (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/entry_add_show.template -- >8 --
<& formvalidator form="entry_add.form" / &>
-- 8< -- textfile: layout/entry_delete.form -- >8 --
$form_name = 'delentry';
$form_specification =
{
id => { name => 'ID of the bookmark (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
confirmation => { name => 'Confirmation' , minlength => 0, maxlength => 1, match => '1' },
};
-- 8< -- textfile: layout/entry_delete_show.form -- >8 --
$form_name = 'deleteentryshow';
$form_specification =
{
id => { name => 'Bookmark-ID (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/entry_delete_show.template -- >8 --
<& formvalidator form="entry_delete.form" / &>
-- 8< -- textfile: layout/entry_edit.form -- >8 --
$form_name = 'editentry';
$form_specification =
{
title => { name => 'Title (not empty)' , minlength => 1, maxlength => 256, match => '' },
url => { name => 'URL (http://*.*, ftp://*.*)', minlength => 1, maxlength => 256, match => '^([hH][tT]|[fF])[tT][pP]\:\/\/\S+\.\S+$' },
id => { name => 'ID of the bookmark (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
category => { name => 'Parent-category (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
private => { name => 'Private' , minlength => 0, maxlength => 1, match => '' },
};
-- 8< -- textfile: layout/entry_edit_show.form -- >8 --
$form_name = 'editentryshow';
$form_specification =
{
id => { name => 'ID of the bookmark (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/entry_edit_show.template -- >8 --
<& formvalidator form="entry_edit.form" / &>
Edit bookmark
-- 8< -- textfile: layout/entry_show.form -- >8 --
$form_name = 'entryshow';
$form_specification =
{
id => { name => 'ID of the bookmark (number)' , minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: layout/entry_show.template -- >8 --
-- 8< -- textfile: layout/symbol_legend.template -- >8 --
Legend:
[ edit ]
Edit an existing entry.
Only possible, when you are the creator of the entry or an administator.
[ delete ]
Delete an existing entry.
Only possible, when you are the creator of the entry or an administator.
[ add folder ]
Add a new category.
[ add entry ]
Add a new bookmark.
-- 8< -- textfile: layout/tree_category.template -- >8 --
<& if condition="<+$ id $+>0<+$ / $+> == 0 and <+$ may_write $+>0<+$ / $+>" &>
<& template src="symbol_legend.template" / &>
<& / &>
-- 8< -- textfile: layout/visit.form -- >8 --
$form_name = 'visit';
$form_specification =
{
id => { name => 'ID of the bookmark (number)', minlength => 1, maxlength => 8, match => '^\d+$' },
};
-- 8< -- textfile: messages/category_add_failed.template -- >8 --
Category not added
An internal error occurred while adding the category.
-- 8< -- textfile: messages/category_add_successful.template -- >8 --
Category added
The category has been added successfully!
-- 8< -- textfile: messages/category_delete_failed.template -- >8 --
Category not deleted
An internal error occurred while deleting the category.
-- 8< -- textfile: messages/category_delete_failed_permission_denied.template -- >8 --
Category not deleted
The category has not been deleted, because only administrators can delete categories!
-- 8< -- textfile: messages/category_delete_successful.template -- >8 --
Category deleted
The category has been deleted successfully!
-- 8< -- textfile: messages/category_edit_failed.template -- >8 --
Category not updated
An internal error occurred while updating the category.
-- 8< -- textfile: messages/category_edit_failed_permission_denied.template -- >8 --
Category not updated
The category has not been updated, because you have to be the author of this category or an administrator!
-- 8< -- textfile: messages/category_edit_successful.template -- >8 --
Category updated
The category has been updated successfully
-- 8< -- textfile: messages/entry_add_failed.template -- >8 --
Bookmark not added
An internal error occurred while adding the bookmark.
-- 8< -- textfile: messages/entry_add_successful.template -- >8 --
Bookmark added
The bookmark has been added successfully!
-- 8< -- textfile: messages/entry_delete_failed.template -- >8 --
Bookmark not deleted
An internal error occurred while deleting the bookmark.
-- 8< -- textfile: messages/entry_delete_failed_permission_denied.template -- >8 --
Bookmark not deleted
The bookmark has not been deleted, because only the author of this bookmark or an administrator can delete this bookmark!
-- 8< -- textfile: messages/entry_delete_successful.template -- >8 --
Bookmark deleted
The bookmark has been deleted successfully!
-- 8< -- textfile: messages/entry_edit_failed.template -- >8 --
Bookmark not updated
An internal error occured while updating this bookmark.
-- 8< -- textfile: messages/entry_edit_failed_permission_denied.template -- >8 --
Bookmark not updated
The bookmark has not been updated, because only the author of this bookmark can update it!
-- 8< -- textfile: messages/entry_edit_successful.template -- >8 --
Bookmark updated
The bookmark has been updated successfully!
-- 8< -- textfile: /styles/bookmarks.css -- >8 --
/* CSS definitions for the Konstrukt bookmarks plugin */
div.bookmark_category_tree2 {
background: url(/images/bookmarks/tree1bg.gif) repeat-y;
padding: 0 0 5px 26px;
}
div.bookmark_category_tree3 {
padding: 0 0 5px 26px;
}
div.bookmark_entry_tree2 {
background: url(/images/bookmarks/tree2bg.gif) no-repeat center left;
padding-left: 26px;
}
div.bookmark_entry_tree3 {
background: url(/images/bookmarks/tree3bg.gif) no-repeat center left;
padding-left: 26px;
}
div.bookmark_category_tree0 img, div.bookmark_category_tree2 img, div.bookmark_category_tree3 img {
vertical-align: middle;
width: 20px;
height: 20px;
}
div.bookmark_category_tree0 span.title, div.bookmark_category_tree1 span.title,
div.bookmark_category_tree2 span.title, div.bookmark_category_tree3 span.title {
font-size: 1.4em;
}
div.bookmark_category_tree0 span.actions, div.bookmark_category_tree1 span.actions,
div.bookmark_category_tree2 span.actions, div.bookmark_category_tree3 span.actions {
font-size: 1.2em;
}
-- 8< -- binaryfile: /images/bookmarks/tree1.gif -- >8 --
R0lGODlhFAAUAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUABQAAAIjlC+By6gNz4twUmav
0y3z9C0eN2rldVJptFbh9hptF8s1eBUAOw==
-- 8< -- binaryfile: /images/bookmarks/tree2.gif -- >8 --
R0lGODlhFAAUAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUABQAAAImlC+By6gNz4twUmav
0y3z9C3BSJZkF26p4XGt9l4xNUd1tbI5eBUAOw==
-- 8< -- binaryfile: /images/bookmarks/tree3.gif -- >8 --
R0lGODlhFAAUAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUABQAAAIelC+By6gNz4twUmav
0y3z9C3BSJZkiKbqyrbuC8cFADs=
-- 8< -- binaryfile: /images/bookmarks/tree1bg.gif -- >8 --
R0lGODlhFAAUAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUABQAAAIjlC+By6gNz4twUmav
0y3z9C0eN2rldVJptFbh9hptF8s1eBUAOw==
-- 8< -- binaryfile: /images/bookmarks/tree2bg.gif -- >8 --
R0lGODlhFAAoAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUACgAAAI9lC+By6gNz4twUmav
0y3z9C0eN2rldVJptFbh9hptF8t1EuT6ntP1jLkBRcLizxgbwpLIl1LSDD1txyqlAAA7
-- 8< -- binaryfile: /images/bookmarks/tree3bg.gif -- >8 --
R0lGODlhFAAoAJEAAP///wAAAAAAAP///yH5BAEAAAIALAAAAAAUACgAAAIzlC+By6gNz4twUmav
0y3z9C0eN2rldVJptFbh9hptF8vBjed3zff+DwwKh8Si8YhMKjUFADs=