diff options
author | dakkar <dakkar@luxion> | 2005-10-20 11:27:13 +0000 |
---|---|---|
committer | dakkar <dakkar@luxion> | 2005-10-20 11:27:13 +0000 |
commit | 86a26a896db925d5d3ee8e0d6ed226a565214912 (patch) | |
tree | 376c14bfa44a20e7bb128e4ccee5bf54eebfdfd2 /lib/Bookmarks/Utils.pm | |
parent | relazioni, e inizio lavori (diff) | |
download | Bookmarks-86a26a896db925d5d3ee8e0d6ed226a565214912.tar.gz Bookmarks-86a26a896db925d5d3ee8e0d6ed226a565214912.tar.bz2 Bookmarks-86a26a896db925d5d3ee8e0d6ed226a565214912.zip |
comincia a far finta di andare. le icone non vengono caricate, non so perché
Diffstat (limited to 'lib/Bookmarks/Utils.pm')
-rw-r--r-- | lib/Bookmarks/Utils.pm | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lib/Bookmarks/Utils.pm b/lib/Bookmarks/Utils.pm new file mode 100644 index 0000000..fd0b68d --- /dev/null +++ b/lib/Bookmarks/Utils.pm @@ -0,0 +1,45 @@ +package Bookmarks::Utils; +use strict; +use warnings; +use LWP::Simple; +use URI::URL; + +sub check_link { + my ($url)=@_; + return 1 if $url!~/^http:/; + #my ($type,$length,$update,$expires,$server)=head($url); + #return defined $type; + return scalar head($url); +} + +sub get_site_icon { + my ($url)=@_; + + return if $url!~/^http:/; + + print "Provo nella pagina\n"; + my $page=get($url); + my ($favicon)= grep {defined $_ and $_ ne ''} + ($page =~ + m{<link + \s+ + (?: + rel="shortcut\ icon" + \s+ + href="(.*?)" + )|(?: + href="(.*?)" + \s+ + rel="shortcut\ icon" + )}smx); + if (!$favicon) { + $favicon='/favicon.ico'; + } + print "Trovato: '$favicon'"; + $favicon=URI::URL->new($favicon,$url)->abs->canonical->as_string; + print ", ovvero '$favicon'\n"; + my $icon=get($favicon); + return $icon; +} + +1; |