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 | |
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
-rw-r--r-- | lib/Bookmarks/C/Main.pm | 17 | ||||
-rw-r--r-- | root/add_form | 9 | ||||
-rw-r--r-- | root/links | 50 | ||||
-rw-r--r-- | root/links_list | 41 | ||||
-rw-r--r-- | root/results | 42 | ||||
-rw-r--r-- | root/search | 2 | ||||
-rw-r--r-- | root/tags | 2 |
7 files changed, 67 insertions, 96 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); diff --git a/root/add_form b/root/add_form index d6a32d6..3c235ba 100644 --- a/root/add_form +++ b/root/add_form @@ -10,17 +10,17 @@ <p> <label for="url">Link:</label> - <input id="url" name="url" type="text" size="30" value="[% link.url %]" /> + <input autocomplete="off" id="url" name="url" type="text" size="30" value="[% link.url | html %]" /> </p> <p> <label for="title">Title:</label> - <input id="title" name="title" type="text" size="30" value="[% link.title %]" /> + <input autocomplete="off" id="title" name="title" type="text" size="30" value="[% link.title | html %]" /> </p> <p> <label for="tag_field">Tags:</label> - <input autocomplete="off" id="tag_field" name="tag" type="text" size="30" value="[% tags.join(' ') %]" /> + <input autocomplete="off" id="tag_field" name="tag" type="text" size="30" value="[% tags.join(' ') | html %]" /> </p> <div id="tag_field_auto_complete" class="auto_complete"></div> <script type="text/javascript">new Ajax.Autocompleter('tag_field', 'tag_field_auto_complete', '[% href.tag_autocomplete() %]', { tokens: ' ' })</script> @@ -28,7 +28,7 @@ <p> <label for="descr">Description:</label> <textarea id="descr" name="descr" cols="30" rows="4"> - [%- link.descr -%] + [%- link.descr | html -%] </textarea> </p> @@ -37,6 +37,7 @@ <input type="submit" name="delete" value="Delete" /> [%- END %] <input type="hidden" name="close" value="[% close %]" /> + <input type="hidden" name="pk" value="[% link.pk %]" /> </form> </body> </html>
\ No newline at end of file @@ -19,11 +19,11 @@ [% FOR tag IN tagset.tags %] <li> <span class="tag name"> - <a href="[% href.to_tag(tag) %]" target="_self">[% tag.name %]</a> + <a href="[% href.to_tag(tag) | html %]" target="_self">[% tag.name | html %]</a> </span> [% IF tagset.size() > 1 %] <span class="tag remove"> - <a href="[% href.remove_tag(tagset,tag) %]" target="_self">-</a> + <a href="[% href.remove_tag(tagset,tag) | html %]" target="_self">-</a> </span> [% END %] </li> @@ -38,10 +38,10 @@ [% FOR rtag IN related %] <li> <span class="tag name"> - <a href="[% href.to_tag(rtag) %]" target="_self">[% rtag.name %]</a> + <a href="[% href.to_tag(rtag) | html %]" target="_self">[% rtag.name | html %]</a> </span> <span class="tag add"> - <a href="[% href.add_tag(tagset,rtag) %]" target="_self">+</a> + <a href="[% href.add_tag(tagset,rtag) | html %]" target="_self">+</a> </span> </li> [% END %] @@ -49,46 +49,6 @@ </div> </div> [% INCLUDE search local=1 %] - <div id="links"> - <h2>Links:</h2> - <div> - <ol> - [% FOR link IN links %] - <li> - <div class="link head"> - <span class="link icon"> - <img src="[% href.link_icon(link) %]" width="18" height="18" /> - </span> - <span class="link title"> - <a href="[% href.link(link) %]" title="[% link.url %]">[% link.title %]</a> - </span> - <span class="link appear" id="link_toggle_[% link.pk %]" onclick="toggle_details('[% link.pk %]')">V</span> - </div> - <div class="link details" style="display: none;" id="link_details_[% link.pk %]"> - <div> - <span class="link edit"> - <a href="[% href.edit_link(link) %]" target="_self">edit</a> - </span> - <ul> - [% FOR rtag IN link.tags %] - <li> - <span class="tag name"> - <a href="[% href.to_tag(rtag) %]" target="_self">[% rtag.name %]</a> - </span> - </li> - [% END %] - </ul> - [%- IF link.descr %] - <div class="link descr"> - [%- link.descr -%] - </div> - [% END -%] - </div> - </div> - </li> - [% END %] - </ol> - </div> - </div> + [% INCLUDE links_list %] </body> </html> diff --git a/root/links_list b/root/links_list new file mode 100644 index 0000000..feba3e7 --- /dev/null +++ b/root/links_list @@ -0,0 +1,41 @@ + <div id="links" [% IF class; 'class="' _ class _ '"'; END %]> + <h2>Links:</h2> + <div> + <ol> + [% FOR link IN links %] + <li> + <div class="link head"> + <span class="link icon"> + <img src="[% href.link_icon(link) | html %]" width="18" height="18" /> + </span> + <span class="link title"> + <a href="[% href.link(link) | html %]" title="[% link.url | html %]">[% link.title | html %]</a> + </span> + <span class="link appear" id="link_toggle_[% link.pk %]" onclick="toggle_details('[% link.pk %]')">V</span> + </div> + <div class="link details" style="display: none;" id="link_details_[% link.pk %]"> + <div> + <span class="link edit"> + <a href="[% href.edit_link(link) | html %]" target="_self">edit</a> + </span> + <ul> + [% FOR rtag IN link.tags %] + <li> + <span class="tag name"> + <a href="[% href.to_tag(rtag) | html %]" target="_self">[% rtag.name | html %]</a> + </span> + </li> + [% END %] + </ul> + [%- IF link.descr %] + <div class="link descr"> + [%- link.descr | html -%] + </div> + [% END -%] + </div> + </div> + </li> + [% END %] + </ol> + </div> + </div> diff --git a/root/results b/root/results index e3cc6d2..e8fdc7d 100644 --- a/root/results +++ b/root/results @@ -9,46 +9,6 @@ </head> <body> [% INCLUDE search %] - <div id="links" class="results"> - <h2>Links:</h2> - <div> - <ol> - [% FOR link IN links %] - <li> - <div class="link head"> - <span class="link icon"> - <img src="[% href.link_icon(link) %]" width="18" height="18" /> - </span> - <span class="link title"> - <a href="[% href.link(link) %]" title="[% link.url %]">[% link.title %]</a> - </span> - <span class="link appear" id="link_toggle_[% link.pk %]" onclick="toggle_details('[% link.pk %]')">V</span> - </div> - <div class="link details" style="display: none;" id="link_details_[% link.pk %]"> - <div> - <span class="link edit"> - <a href="[% href.edit_link(link) %]" target="_self">edit</a> - </span> - <ul> - [% FOR rtag IN link.tags %] - <li> - <span class="tag name"> - <a href="[% href.to_tag(rtag) %]" target="_self">[% rtag.name %]</a> - </span> - </li> - [% END %] - </ul> - [%- IF link.descr %] - <div class="link descr"> - [%- link.descr -%] - </div> - [% END -%] - </div> - </div> - </li> - [% END %] - </ol> - </div> - </div> + [% INCLUDE links_list class="results" %] </body> </html> diff --git a/root/search b/root/search index 198bc35..c40b78f 100644 --- a/root/search +++ b/root/search @@ -2,7 +2,7 @@ <form action="[% href.search() %]" method="get"> <p> <label for="term">Search:</label> - <input type="text" id="term" name="q" size="30" /> + <input autocomplete="off" type="text" id="term" name="q" size="30" /> <input type="hidden" name="tags" value="[% IF local; FOR tag IN tagset.tags; tag.pk _ ' '; END; END %]" /> <input type="submit" name="go" value=">" /> </p> @@ -10,7 +10,7 @@ [% FOR tag IN tags %] <li> <span class="tag name"> - <a href="[% href.to_tag(tag) %]" target="_self">[% tag.name %]</a> + <a href="[% href.to_tag(tag) | html %]" target="_self">[% tag.name | html %]</a> </span> <span class="tag count">[% tag.how_many() %]</span> </li> |