Display thumbnail on hover over links in notices when appropriate.

This commit is contained in:
Robin Millette 2009-05-25 11:13:13 -04:00
parent 5f3acc2527
commit 84edf12791
5 changed files with 38 additions and 3 deletions

View File

@ -25,6 +25,19 @@ $(document).ready(function(){
//need to link to proper url depending on site config (path name and theme, for instance) //need to link to proper url depending on site config (path name and theme, for instance)
$('a.attachment').click(function() {$().jOverlay({url:'/attachment/' + ($(this).attr('id').substring('attachment'.length + 1)) + '/ajax'}); return false; }); $('a.attachment').click(function() {$().jOverlay({url:'/attachment/' + ($(this).attr('id').substring('attachment'.length + 1)) + '/ajax'}); return false; });
$('.entry-title a.attachment').append('&nbsp;<img style="display: inline; vertical-align: middle" src="/theme/base/images/icons/clip-inline.png" alt="Attachment" />'); $('.entry-title a.attachment').append('&nbsp;<img style="display: inline; vertical-align: middle" src="/theme/base/images/icons/clip-inline.png" alt="Attachment" />');
$('a.thumbnail').hover(function() {
anchor = $(this);
$.get('/attachment/' + ($(this).attr('id').substring('attachment'.length + 1)) + '/thumbnail', null, function(data) {
anchor.append(data);
$('#thumbnail').fadeIn('def');
});
},
function() {
setTimeout(function() {
$('#thumbnail').fadeOut('slow', function() {$(this).remove();});
}, 500);
}
);
// count character on keyup // count character on keyup
function counter(event){ function counter(event){

View File

@ -171,7 +171,7 @@ class AttachmentListItem extends Widget
} }
function linkTitle() { function linkTitle() {
return 'Our page for ' . $this->title(); return $this->title();
} }
/** /**
@ -256,7 +256,7 @@ class Attachment extends AttachmentListItem
} }
function linkTitle() { function linkTitle() {
return 'Direct link to ' . $this->title(); return $this->attachment->url;
} }
function showRepresentation() { function showRepresentation() {

View File

@ -159,6 +159,10 @@ class Router
array('action' => 'attachment_ajax'), array('action' => 'attachment_ajax'),
array('attachment' => '[0-9]+')); array('attachment' => '[0-9]+'));
$m->connect('attachment/:attachment/thumbnail',
array('action' => 'attachment_thumbnail'),
array('attachment' => '[0-9]+'));
/* /*
TODO TODO
not used right now, will revisit later not used right now, will revisit later

View File

@ -503,8 +503,18 @@ function common_linkify($url) {
$file = new File; $file = new File;
$file->query($query); $file->query($query);
$file->fetch(); $file->fetch();
if (!empty($file->file_id)) { if (!empty($file->file_id)) {
$attrs['class'] = 'attachment'; $query = "select file_thumbnail.file_id as file_id from file join file_thumbnail on file.id = file_thumbnail.file_id where file.url='$longurl'";
$file2 = new File;
$file2->query($query);
$file2->fetch();
if (empty($file2->file_id)) {
$attrs['class'] = 'attachment';
} else {
$attrs['class'] = 'attachment thumbnail';
}
$attrs['id'] = "attachment-{$file->file_id}"; $attrs['id'] = "attachment-{$file->file_id}";
} }
return XMLStringer::estring('a', $attrs, $display); return XMLStringer::estring('a', $attrs, $display);

View File

@ -1205,3 +1205,11 @@ display:none;
.guide { .guide {
clear:both; clear:both;
} }
#thumbnail {
position:absolute;
z-index: 999;
display: none;
left: 100px;
}