diff options
Diffstat (limited to 'lib/Bookmarks/M/DB/Tags.pm')
-rw-r--r-- | lib/Bookmarks/M/DB/Tags.pm | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/Bookmarks/M/DB/Tags.pm b/lib/Bookmarks/M/DB/Tags.pm index b01695a..3686a7d 100644 --- a/lib/Bookmarks/M/DB/Tags.pm +++ b/lib/Bookmarks/M/DB/Tags.pm @@ -1,9 +1,10 @@ package Bookmarks::M::DB::Tags; - +use Bookmarks::M::DB::LinksTags; 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 FROM tags, links_tags lt1, links_tags lt2 @@ -38,14 +39,17 @@ sub get_all_tags_by_popularity { return $_[0]->search_popularity(); } +sub links_sorter($$) { + return + ($_[1]->access_count || 0) + <=> + ($_[0]->access_count || 0) +} + sub ordered_links { my ($self)=@_; my @links=$self->links(); - return sort { - ($b->access_count || 0) - <=> - ($a->access_count || 0) - } @links; + return sort links_sorter @links; } =head1 NAME |