instead of not displaying the cover-photo at all after first page load, load the page with the cover slided up. change pointer to n-resize if cover is not slid.

This commit is contained in:
Mario Vavti 2018-09-05 12:17:32 +02:00
parent 1b7781a159
commit a821682c8c
3 changed files with 29 additions and 8 deletions

View File

@ -21,9 +21,9 @@ class Cover_photo {
return ''; return '';
// only show cover photos once per login session // only show cover photos once per login session
$hide_cover = false;
if(array_key_exists('channels_visited',$_SESSION) && is_array($_SESSION['channels_visited']) && in_array($channel_id,$_SESSION['channels_visited'])) { if(array_key_exists('channels_visited',$_SESSION) && is_array($_SESSION['channels_visited']) && in_array($channel_id,$_SESSION['channels_visited'])) {
return EMPTY_STR; $hide_cover = true;
} }
if(! array_key_exists('channels_visited',$_SESSION)) { if(! array_key_exists('channels_visited',$_SESSION)) {
$_SESSION['channels_visited'] = []; $_SESSION['channels_visited'] = [];
@ -53,6 +53,7 @@ class Cover_photo {
$subtitle = str_replace('@','@',$channel['xchan_addr']); $subtitle = str_replace('@','@',$channel['xchan_addr']);
$c = get_cover_photo($channel_id,'html'); $c = get_cover_photo($channel_id,'html');
$c = str_replace('src=', 'data-src=', $c);
if($c) { if($c) {
$photo_html = (($style) ? str_replace('alt=',' style="' . $style . '" alt=',$c) : $c); $photo_html = (($style) ? str_replace('alt=',' style="' . $style . '" alt=',$c) : $c);
@ -62,6 +63,7 @@ class Cover_photo {
'$title' => $title, '$title' => $title,
'$subtitle' => $subtitle, '$subtitle' => $subtitle,
'$hovertitle' => t('Click to show more'), '$hovertitle' => t('Click to show more'),
'$hide_cover' => $hide_cover
)); ));
} }
return $o; return $o;

View File

@ -142,7 +142,6 @@ li:hover .group-edit-icon {
position: relative; position: relative;
width: 100%; width: 100%;
height: auto; height: auto;
cursor: pointer;
} }
#cover-photo-caption { #cover-photo-caption {

View File

@ -2,16 +2,27 @@
var aside_padding_top; var aside_padding_top;
var section_padding_top; var section_padding_top;
var coverSlid = false; var coverSlid = false;
var hide_cover = Boolean({{$hide_cover}});
$(document).ready(function() { $(document).ready(function() {
if(! $('#cover-photo').length)
return;
aside_padding_top = parseInt($('aside').css('padding-top')); aside_padding_top = parseInt($('aside').css('padding-top'));
section_padding_top = parseInt($('section').css('padding-top')); section_padding_top = parseInt($('section').css('padding-top'));
$(document).on('click mouseup keyup', slideUpCover); $(document).on('click mouseup keyup', slideUpCover);
if($('#cover-photo').length && $(window).width() > 755) { if($(window).width() > 755) {
datasrc2src('#cover-photo > img');
if(hide_cover) {
hideCover();
coverSlid = true;
}
if($(window).scrollTop() < $('#cover-photo').height()) { if($(window).scrollTop() < $('#cover-photo').height()) {
$('body').css('cursor', 'n-resize');
$('.navbar').removeClass('fixed-top'); $('.navbar').removeClass('fixed-top');
$('main').css('margin-top', - $('nav').outerHeight(true) + 'px'); $('main').css('margin-top', - $('nav').outerHeight(true) + 'px');
$('main').css('opacity', 0); $('main').css('opacity', 0);
@ -24,32 +35,34 @@
}); });
$(window).scroll(function () { $(window).scroll(function () {
if($('#cover-photo').length && $(window).width() > 755 && $(window).scrollTop() >= $('#cover-photo').height()) { if($(window).width() > 755 && $(window).scrollTop() >= $('#cover-photo').height()) {
$('body').css('cursor', '');
$('.navbar').addClass('fixed-top'); $('.navbar').addClass('fixed-top');
$('main').css('margin-top', ''); $('main').css('margin-top', '');
$('main').css('opacity', 1); $('main').css('opacity', 1);
coverSlid = true; coverSlid = true;
} }
else if ($('#cover-photo').length && $(window).width() > 755 && $(window).scrollTop() < $('#cover-photo').height()){ else if ($(window).width() > 755 && $(window).scrollTop() < $('#cover-photo').height()){
if(coverSlid) { if(coverSlid) {
$(window).scrollTop(Math.ceil($('#cover-photo').height())); $(window).scrollTop(Math.ceil($('#cover-photo').height()));
setTimeout(function(){ coverSlid = false; }, 1000); setTimeout(function(){ coverSlid = false; }, 1000);
} }
else { else {
if($(window).scrollTop() < $('#cover-photo').height()) { if($(window).scrollTop() < $('#cover-photo').height()) {
$('body').css('cursor', 'n-resize');
$('.navbar').removeClass('fixed-top'); $('.navbar').removeClass('fixed-top');
$('main').css('margin-top', - $('nav').outerHeight(true) + 'px'); $('main').css('margin-top', - $('nav').outerHeight(true) + 'px');
$('main').css('opacity', 0); $('main').css('opacity', 0);
} }
} }
} }
if($('#cover-photo').length && $('main').css('opacity') < 1) { if($('main').css('opacity') < 1) {
$('main').css('opacity', ($(window).scrollTop()/$('#cover-photo').height()).toFixed(1)); $('main').css('opacity', ($(window).scrollTop()/$('#cover-photo').height()).toFixed(1));
} }
}); });
$(window).resize(function () { $(window).resize(function () {
if($('#cover-photo').length && $(window).width() < 755) { if($(window).width() < 755) {
$('#cover-photo').remove(); $('#cover-photo').remove();
$('.navbar').addClass('fixed-top'); $('.navbar').addClass('fixed-top');
$('main').css('opacity', 1); $('main').css('opacity', 1);
@ -65,6 +78,13 @@
$('html, body').animate({scrollTop: Math.ceil($('#cover-photo').height()) + 'px' }, 'fast'); $('html, body').animate({scrollTop: Math.ceil($('#cover-photo').height()) + 'px' }, 'fast');
return; return;
} }
function hideCover() {
if(coverSlid) {
return;
}
window.scrollTo(0, Math.ceil($('#cover-photo').height()));
}
</script> </script>
<div id="cover-photo" title="{{$hovertitle}}"> <div id="cover-photo" title="{{$hovertitle}}">