move cover-photo to template, add the ability to define a title and subtitle (defaults to channel name and addres), move js from redbasic.js to template.
This commit is contained in:
parent
d3f2d2a2db
commit
59e04aed1b
@ -982,14 +982,18 @@ function widget_cover_photo($arr) {
|
|||||||
require_once('include/identity.php');
|
require_once('include/identity.php');
|
||||||
$o = '';
|
$o = '';
|
||||||
|
|
||||||
|
$a = get_app();
|
||||||
|
|
||||||
$channel_id = 0;
|
$channel_id = 0;
|
||||||
if(array_key_exists('channel_id', $arr) && intval($arr['channel_id']))
|
if(array_key_exists('channel_id', $arr) && intval($arr['channel_id']))
|
||||||
$channel_id = intval($arr['channel_id']);
|
$channel_id = intval($arr['channel_id']);
|
||||||
if(! $channel_id)
|
if(! $channel_id)
|
||||||
$channel_id = get_app()->profile_uid;
|
$channel_id = $a->profile_uid;
|
||||||
if(! $channel_id)
|
if(! $channel_id)
|
||||||
return '';
|
return '';
|
||||||
|
|
||||||
|
$channel = channelx_by_n($channel_id);
|
||||||
|
|
||||||
if(array_key_exists('style', $arr) && isset($arr['style']))
|
if(array_key_exists('style', $arr) && isset($arr['style']))
|
||||||
$style = $arr['style'];
|
$style = $arr['style'];
|
||||||
else
|
else
|
||||||
@ -1000,10 +1004,26 @@ function widget_cover_photo($arr) {
|
|||||||
if(strpbrk($style,'(\'"<>') !== false)
|
if(strpbrk($style,'(\'"<>') !== false)
|
||||||
$style = '';
|
$style = '';
|
||||||
|
|
||||||
|
if(array_key_exists('title', $arr) && isset($arr['title']))
|
||||||
|
$title = $arr['title'];
|
||||||
|
else
|
||||||
|
$title = $channel['channel_name'];
|
||||||
|
|
||||||
|
if(array_key_exists('subtitle', $arr) && isset($arr['subtitle']))
|
||||||
|
$subtitle = $arr['subtitle'];
|
||||||
|
else
|
||||||
|
$subtitle = $channel['xchan_addr'];
|
||||||
|
|
||||||
$c = get_cover_photo($channel_id,'html');
|
$c = get_cover_photo($channel_id,'html');
|
||||||
|
|
||||||
if($c) {
|
if($c) {
|
||||||
$o = '<div id="cover-photo">' . (($style) ? str_replace('alt=',' style="' . $style . '" alt=',$c) : $c) . '</div>';
|
$photo_html = (($style) ? str_replace('alt=',' style="' . $style . '" alt=',$c) : $c);
|
||||||
|
|
||||||
|
$o = replace_macros(get_markup_template('cover_photo_widget.tpl'),array(
|
||||||
|
'$photo_html' => $photo_html,
|
||||||
|
'$title' => $title,
|
||||||
|
'$subtitle' => $subtitle,
|
||||||
|
));
|
||||||
}
|
}
|
||||||
return $o;
|
return $o;
|
||||||
}
|
}
|
||||||
|
@ -122,3 +122,30 @@ li:hover .group-edit-icon {
|
|||||||
#event-upload-choose {
|
#event-upload-choose {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* cover photo */
|
||||||
|
|
||||||
|
#cover-photo {
|
||||||
|
position: relative;
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cover-photo-caption {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0px;
|
||||||
|
left: 0px;
|
||||||
|
width: 100%;
|
||||||
|
padding: 15px;
|
||||||
|
color: #fff;
|
||||||
|
font-weight: bold;
|
||||||
|
text-shadow: 1px 1px 3px rgba(0,0,0,.7);
|
||||||
|
}
|
||||||
|
|
||||||
|
.cover-photo-title {
|
||||||
|
font-size: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cover-photo-subtitle {
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
@ -3,16 +3,6 @@
|
|||||||
*/
|
*/
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
||||||
//Simple cover-photo implementation
|
|
||||||
if($('#cover-photo').length && $(window).width() > 767) {
|
|
||||||
$('.navbar-fixed-top').css('position', 'relative');
|
|
||||||
$('aside, section').css('padding-top', 0 + 'px');
|
|
||||||
$('main').css('opacity', 0);
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$('#cover-photo').remove();
|
|
||||||
}
|
|
||||||
|
|
||||||
// CSS3 calc() fallback (for unsupported browsers)
|
// CSS3 calc() fallback (for unsupported browsers)
|
||||||
$('body').append('<div id="css3-calc" style="width: 10px; width: calc(10px + 10px); display: none;"></div>');
|
$('body').append('<div id="css3-calc" style="width: 10px; width: calc(10px + 10px); display: none;"></div>');
|
||||||
if( $('#css3-calc').width() == 10) {
|
if( $('#css3-calc').width() == 10) {
|
||||||
@ -62,17 +52,3 @@ $(document).ready(function() {
|
|||||||
}
|
}
|
||||||
setInterval(function () {checkNotify();}, 10 * 1000);
|
setInterval(function () {checkNotify();}, 10 * 1000);
|
||||||
});
|
});
|
||||||
|
|
||||||
//Simple cover-photo implementation
|
|
||||||
$(window).scroll(function () {
|
|
||||||
if($('#cover-photo').length && $(window).width() > 767 && $(window).scrollTop() >= $('#cover-photo').height()) {
|
|
||||||
$('aside, section').css('padding-top', 71 + 'px');
|
|
||||||
$(window).scrollTop($(window).scrollTop() - $('#cover-photo').height())
|
|
||||||
$('.navbar-fixed-top').css('position', 'fixed');
|
|
||||||
$('#cover-photo').remove();
|
|
||||||
}
|
|
||||||
|
|
||||||
if($('#cover-photo').length) {
|
|
||||||
$('main').css('opacity', ($(window).scrollTop()/$('#cover-photo').height()).toFixed(1));
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
49
view/tpl/cover_photo_widget.tpl
Executable file
49
view/tpl/cover_photo_widget.tpl
Executable file
@ -0,0 +1,49 @@
|
|||||||
|
<script>
|
||||||
|
$(document).ready(function() {
|
||||||
|
if($('#cover-photo').length && $(window).width() > 755) {
|
||||||
|
$('.navbar-fixed-top').css('position', 'relative');
|
||||||
|
$('aside, section').css('padding-top', 0 + 'px');
|
||||||
|
$('main').css('opacity', 0);
|
||||||
|
$('header').hide();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$('#cover-photo').remove();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$(window).scroll(function () {
|
||||||
|
if($('#cover-photo').length && $(window).width() > 755 && $(window).scrollTop() >= $('#cover-photo').height()) {
|
||||||
|
$('header').fadeIn();
|
||||||
|
$('main').css('opacity', 1);
|
||||||
|
$('aside, section').css('padding-top', 71 + 'px');
|
||||||
|
$(window).scrollTop($(window).scrollTop() - $('#cover-photo').height())
|
||||||
|
$('.navbar-fixed-top').css('position', 'fixed');
|
||||||
|
$('#cover-photo').remove();
|
||||||
|
}
|
||||||
|
if($('#cover-photo').length) {
|
||||||
|
$('main').css('opacity', ($(window).scrollTop()/$('#cover-photo').height()).toFixed(1));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$(window).resize(function () {
|
||||||
|
if($('#cover-photo').length && $(window).width() < 755) {
|
||||||
|
$('main').css('opacity', 1);
|
||||||
|
$('aside, section').css('padding-top', 71 + 'px');
|
||||||
|
$('.navbar-fixed-top').css('position', 'fixed');
|
||||||
|
$('#cover-photo').remove();
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<div id="cover-photo">
|
||||||
|
{{$photo_html}}
|
||||||
|
<div id="cover-photo-caption">
|
||||||
|
<div class="cover-photo-title">
|
||||||
|
{{$title}}
|
||||||
|
</div>
|
||||||
|
<div class="cover-photo-subtitle">
|
||||||
|
{{$subtitle}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
Reference in New Issue
Block a user