diff options
author | dakkar <dakkar@luxion> | 2005-11-12 11:13:29 +0000 |
---|---|---|
committer | dakkar <dakkar@luxion> | 2005-11-12 11:13:29 +0000 |
commit | c65c190af209f6dc04a755a41f88cf836c2249df (patch) | |
tree | 439241b4f50d86a6290f79cffb58879c0bbeea80 /lib | |
parent | work-around per tipi icone mal dichiarati: se non dichiarata come un'immagine... (diff) | |
download | Bookmarks-c65c190af209f6dc04a755a41f88cf836c2249df.tar.gz Bookmarks-c65c190af209f6dc04a755a41f88cf836c2249df.tar.bz2 Bookmarks-c65c190af209f6dc04a755a41f88cf836c2249df.zip |
corretta la modifica e cancellazione di link, aggiunti un po' di filtri nei template per evitare casini con le entities
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Bookmarks/C/Main.pm | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/lib/Bookmarks/C/Main.pm b/lib/Bookmarks/C/Main.pm index be50a73..d64f2fd 100644 --- a/lib/Bookmarks/C/Main.pm +++ b/lib/Bookmarks/C/Main.pm @@ -88,18 +88,25 @@ sub add : Global { my ( $self, $c ) = @_; my %pre_link=(); - for my $field (qw(url title descr)) { + for my $field (qw(pk url title descr)) { $pre_link{$field}=$c->req->param($field); } my @tags=split /[ +]/,($c->req->param('tag')||''); - my ($dblink)=Bookmarks::M::DB::Links->search({url=>$pre_link{url}}); + + my $dblink; + if ($pre_link{pk}) { + $dblink=Bookmarks::M::DB::Links->retrieve($pre_link{pk}); + } + else { + ($dblink)=Bookmarks::M::DB::Links->search({url=>$pre_link{url}}); + } # GET: prepare the form from the URL params if ($c->req->method eq 'GET') { $c->stash->{link}=\%pre_link; $c->stash->{tags}=\@tags; if (defined $dblink) { - for my $field (qw(url title descr)) { + for my $field (qw(pk url title descr)) { $c->stash->{link}{$field}||=$dblink->$field(); } my @dbtags=map { $_->name() } $dblink->tags(); @@ -126,7 +133,9 @@ sub add : Global { $dblink->access_count(0); } - $dblink->set(%pre_link); + for my $field (qw(url title descr)) { + $dblink->$field($pre_link{$field}); + } my ($icon,$type)=Bookmarks::Utils::get_site_icon($pre_link{url}); $dblink->set_icon($icon); $dblink->icon_type($type); |