comments + images

This commit is contained in:
2015-12-27 13:08:01 +01:00
parent 4fdbfd57bb
commit 0702e5afeb
9 changed files with 631 additions and 50 deletions

View File

@@ -2,12 +2,24 @@
<div id="map">
<div class="loader fa fa-map"></div>
</div>
<div id="feed">
<div id="poster">
<input id="post" name="post" type="text" />
<input id="name" name="name" type="text" />
<input id="submit" name="submit" type="button" value="+" />
</div>
<div id="posts"></div>
</div>
</div>
<script type="text/javascript">
oSpot.pageInit = function(asHash)
{
self.get('messages', function(oMessages){
//Build Feed
updateFeed();
//setInterval(updateFeed, 60 * 1000); //refresh every minute
//Building messages
aoMessages = [];
$.each(oMessages, function(iKey, oMsg)
@@ -50,17 +62,6 @@ oSpot.pageInit = function(asHash)
{
values:aoMessages,
options:{draggable:false},
/*events:{click:function(marker, event, context)
{
var asHash = self.getHash();
var sDestHash = asHash.items[0] || '';
var sSafeDest = self.tmp(['safedest', sDestHash]);
if(context.id!=sSafeDest)
{
self.setHash('honeymoon', [self.tmp(['hash', context.id])]);
}
else self.zoomIn(marker, event, context);
}}*/
events:
{
mouseover: function(marker, event, context)
@@ -83,5 +84,65 @@ oSpot.pageInit = function(asHash)
});
self.tmp('map', $Map.gmap3("get"));
});
//Post
$('#name').defaultVal('Nom...');
$('#post').defaultVal('Ton message...');
$('#submit').click(function(){
if($('#poster').checkForm())
{
self.get(
'add_post',
function()
{
$('#name').val('');
$('#post').val('');
updateFeed();
},
{name:$('#name').val(), content:$('#post').val()}
);
}
});
};
function updateFeed()
{
self.get('feed', function(asData){
var $Posts = $('#posts').empty();
$.each(asData, function(iKey, asPost){
var $Post = $('<div>', {'class':'post '+asPost.type});
var sRelTime = asPost.relative_time;
var sAbsTime = asPost.formatted_time;
var $Body = {};
switch(asPost.type)
{
case 'message':
$Body = $('<span>').addIcon('fa-compass', true).append(asPost.latitude+' | '+asPost.longitude);
sClass = 'compass';
break;
case 'picture':
var $Image = $('<img>', {'src':asPost.path/*, 'style':'transform:rotate('+asPost.rotate+'deg);'*/});
$Body = $('<a>', {href:asPost.path, 'data-lightbox':'image-'+asPost.id, 'data-title':asPost.formatted_time}).append($Image);
sClass = 'image';
break;
case 'post':
$Body = $('<div>')
.append($('<p>', {'class':'message'}).text(asPost.post))
.append($('<p>', {'class':'signature'}).text('-- '+asPost.name));
sClass = 'comment';
break;
}
$Post
.append($('<div>', {'class':'header'})
.append($('<span>', {'class':'index'}).addIcon('fa-'+sClass))
.append($('<span>', {'class':'time', 'title':sAbsTime}).text(sRelTime)))
.append($('<div>', {'class':'body'}).append($Body))
.appendTo($Posts);
if(asPost.id) $Post.find('.index').append(' '+asPost.id);
//if(asPost.type=='picture' && asPost.rotate!='0') $Body.height($Image.height());
});
});
}
</script>