summaryrefslogtreecommitdiff
path: root/lib/Bookmarks/M/DB/Tags.pm
diff options
context:
space:
mode:
authordakkar <dakkar@luxion>2005-11-10 17:57:01 +0000
committerdakkar <dakkar@luxion>2005-11-10 17:57:01 +0000
commitdb8feb39b618eca0ab6bb0000f1d7ed3d6678a7a (patch)
tree0092ed285e1ea4992e0e2af43e3ef8fe5ea29679 /lib/Bookmarks/M/DB/Tags.pm
parentfatto stile per la lista di link, messo il JS in file (diff)
downloadBookmarks-db8feb39b618eca0ab6bb0000f1d7ed3d6678a7a.tar.gz
Bookmarks-db8feb39b618eca0ab6bb0000f1d7ed3d6678a7a.tar.bz2
Bookmarks-db8feb39b618eca0ab6bb0000f1d7ed3d6678a7a.zip
* cambiato ordinamento dei tag (ora è sempre alfabetico)
* riordinata e migliorata la form di add * stile per la form di add * corretto il caricamento delle favicon * corretta la pulitura tags
Diffstat (limited to 'lib/Bookmarks/M/DB/Tags.pm')
-rw-r--r--lib/Bookmarks/M/DB/Tags.pm20
1 files changed, 16 insertions, 4 deletions
diff --git a/lib/Bookmarks/M/DB/Tags.pm b/lib/Bookmarks/M/DB/Tags.pm
index 4ca832a..56ec4fa 100644
--- a/lib/Bookmarks/M/DB/Tags.pm
+++ b/lib/Bookmarks/M/DB/Tags.pm
@@ -4,20 +4,28 @@ use strict;
__PACKAGE__->has_many( links => ['Bookmarks::M::DB::LinksTags' => 'link'] );
-# magari ordiniamoli per popolrità
__PACKAGE__->set_sql('related_tags', <<'END_SQL');
-SELECT DISTINCT tags.pk
+SELECT DISTINCT tags.pk, tags.name
FROM tags, links_tags lt1, links_tags lt2
WHERE tags.pk = lt1.tag
AND lt1.link = lt2.link
AND lt2.tag = ?
AND lt1.tag != lt2.tag
+ORDER BY tags.name
+END_SQL
+
+__PACKAGE__->set_sql('name', <<'END_SQL');
+SELECT tags.pk, tags.name, COUNT(links_tags.link) AS how_many
+ FROM tags LEFT JOIN links_tags
+ ON tags.pk = links_tags.tag
+GROUP BY tags.pk
+ORDER BY tags.name
END_SQL
__PACKAGE__->set_sql('popularity', <<'END_SQL');
SELECT tags.pk, COUNT(links_tags.link) AS how_many
- FROM tags, links_tags
- WHERE tags.pk = links_tags.tag
+ FROM tags LEFT JOIN links_tags
+ ON tags.pk = links_tags.tag
GROUP BY tags.pk
ORDER BY how_many DESC
END_SQL
@@ -39,6 +47,10 @@ sub get_all_tags_by_popularity {
return $_[0]->search_popularity();
}
+sub get_all_tags_by_name {
+ return $_[0]->search_name();
+}
+
sub links_sorter($$) {
return
($_[1]->access_count || 0)