mirror of
https://framagit.org/hubzilla/core.git
synced 2026-06-21 00:52:33 -04:00
lazy/eager loading and minor css fixes
This commit is contained in:
@@ -218,7 +218,7 @@ function bb_replace_images($body, $images) {
|
||||
// We're depending on the property of 'foreach' (specified on the PHP website) that
|
||||
// it loops over the array starting from the first element and going sequentially
|
||||
// to the last element
|
||||
$newbody = str_replace('[$#saved_image' . $cnt . '#$]', '<img src="' . $image .'" alt="' . t('Image/photo') . '" />', $newbody);
|
||||
$newbody = str_replace('[$#saved_image' . $cnt . '#$]', '<img src="' . $image .'" alt="' . t('Image/photo') . '" loading="eager" />', $newbody);
|
||||
$cnt++;
|
||||
}
|
||||
// logger('replace_images: ' . $newbody);
|
||||
@@ -513,7 +513,7 @@ function bb_ShareAttributes($match) {
|
||||
$headline = '<div id="shared_container_' . $rnd . '" class="shared_container"> <div id="shared_header_' . $rnd . '" class="shared_header">';
|
||||
|
||||
if ($avatar != "")
|
||||
$headline .= '<a href="' . (($auth) ? zid($profile) : $profile) . '" ><img src="' . $avatar . '" alt="' . $author . '" height="32" width="32" /></a>';
|
||||
$headline .= '<a href="' . (($auth) ? zid($profile) : $profile) . '" ><img src="' . $avatar . '" alt="' . $author . '" height="32" width="32" loading="lazy" /></a>';
|
||||
|
||||
if(strpos($link,'/cards/'))
|
||||
$type = t('card');
|
||||
@@ -881,7 +881,7 @@ function bb_imgoptions($match) {
|
||||
|
||||
// now assemble the resulting img tag from these components
|
||||
|
||||
$output = '<img ' . (($match[1] === 'z') ? 'class="zrl" ' : '') . ' ';
|
||||
$output = '<img ' . (($match[1] === 'z') ? 'class="zrl" loading="eager"' : '') . ' ';
|
||||
|
||||
if ($width) {
|
||||
$style .= 'width: 100%; max-width: ' . $width . 'px; ';
|
||||
@@ -1483,19 +1483,19 @@ function bbcode($Text, $options = []) {
|
||||
// Images
|
||||
// [img]pathtoimage[/img]
|
||||
if (strpos($Text,'[/img]') !== false) {
|
||||
$Text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '<img style="max-width: 100%;" src="$1" alt="' . t('Image/photo') . '" />', $Text);
|
||||
$Text = preg_replace("/\[img\](.*?)\[\/img\]/ism", '<img style="max-width: 100%;" src="$1" alt="' . t('Image/photo') . '" loading="eager" />', $Text);
|
||||
}
|
||||
// [img=pathtoimage]image description[/img]
|
||||
if (strpos($Text,'[/img]') !== false) {
|
||||
$Text = preg_replace("/\[img=http(.*?)\](.*?)\[\/img\]/ism", '<img style="max-width: 100%;" src="http$1" alt="$2" title="$2"/>', $Text);
|
||||
$Text = preg_replace("/\[img=http(.*?)\](.*?)\[\/img\]/ism", '<img style="max-width: 100%;" src="http$1" alt="$2" title="$2" loading="eager" />', $Text);
|
||||
}
|
||||
// [zmg]pathtoimage[/zmg]
|
||||
if (strpos($Text,'[/zmg]') !== false) {
|
||||
$Text = preg_replace("/\[zmg\](.*?)\[\/zmg\]/ism", '<img class="zrl" style="max-width: 100%;" src="$1" alt="' . t('Image/photo') . '" />', $Text);
|
||||
$Text = preg_replace("/\[zmg\](.*?)\[\/zmg\]/ism", '<img class="zrl" style="max-width: 100%;" src="$1" alt="' . t('Image/photo') . '" loading="eager" />', $Text);
|
||||
}
|
||||
// [zmg=pathtoimage]image description[/zmg]
|
||||
if (strpos($Text,'[/zmg]') !== false) {
|
||||
$Text = preg_replace("/\[zmg=http(.*?)\](.*?)\[\/zmg\]/ism", '<img class="zrl" style="max-width: 100%;" src="http$1" alt="$2" title="$2"/>', $Text);
|
||||
$Text = preg_replace("/\[zmg=http(.*?)\](.*?)\[\/zmg\]/ism", '<img class="zrl" style="max-width: 100%;" src="http$1" alt="$2" title="$2" loading="eager" />', $Text);
|
||||
}
|
||||
|
||||
$Text = preg_replace_callback("/\[([zi])mg([ \=])(.*?)\](.*?)\[\/[zi]mg\]/ism",'bb_imgoptions',$Text);
|
||||
|
||||
@@ -40,7 +40,7 @@ function contact_format(item) {
|
||||
var desc = ((item.label) ? item.nick + ' ' + item.label : item.nick);
|
||||
if(typeof desc === 'undefined') desc = '';
|
||||
if(desc) desc = ' ('+desc+')';
|
||||
return "<div class='{0} dropdown-item dropdown-notification clearfix' title='{4}'><img class='menu-img-2' src='{1}'><span class='contactname'>{2}</span><span class='dropdown-sub-text'>{4}</span></div>".format(item.taggable, item.photo, item.name, desc, typeof(item.link) !== 'undefined' ? item.link : desc.replace('(','').replace(')',''));
|
||||
return "<div class='{0} dropdown-item dropdown-notification clearfix' title='{4}'><img class='menu-img-2' src='{1}' loading='lazy'><span class='font-weight-bold contactname'>{2}</span><span class='dropdown-sub-text'>{4}</span></div>".format(item.taggable, item.photo, item.name, desc, typeof(item.link) !== 'undefined' ? item.link : desc.replace('(','').replace(')',''));
|
||||
}
|
||||
else
|
||||
return "<div>" + item.text + "</div>";
|
||||
|
||||
@@ -41,8 +41,8 @@
|
||||
|
||||
<div class="list-group-item acl-list-item" rel="acl-template" style="display:none">
|
||||
<div class="acl-item-header clearfix">
|
||||
<img class="menu-img-3" data-src="{0}">
|
||||
<span class="contactname">{1}</span>
|
||||
<img class="menu-img-3" data-src="{0}" loading="lazy" />
|
||||
<span class="font-weight-bold contactname">{1}</span>
|
||||
<span class="dropdown-sub-text">{6}</span>
|
||||
</div>
|
||||
<button class="acl-button-hide btn btn-sm btn-outline-danger"><i class="fa fa-times"></i> {{$hide}}</button>
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
<div class="section-content-tools-wrapper">
|
||||
<div class="contact-photo-wrapper" >
|
||||
<a href="{{$contact.url}}" title="{{$contact.img_hover}}" >
|
||||
<img class="directory-photo-img {{if $contact.classes}}{{$contact.classes}}{{/if}}" src="{{$contact.thumb}}" alt="{{$contact.name}}" />
|
||||
<img class="directory-photo-img {{if $contact.classes}}{{$contact.classes}}{{/if}}" src="{{$contact.thumb}}" alt="{{$contact.name}}" loading="lazy" />
|
||||
</a>
|
||||
{{include "connstatus.tpl" perminfo=$contact.perminfo}}
|
||||
</div>
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
{{/if}}
|
||||
<div class="wall-item-info" id="wall-item-info-{{$item.id}}" >
|
||||
<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} h-card p-author" id="wall-item-photo-wrapper-{{$item.id}}">
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" />
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" loading="lazy" data-toggle="dropdown" />
|
||||
{{if $item.thread_author_menu}}
|
||||
<i class="fa fa-caret-down wall-item-photo-caret cursor-pointer" data-toggle="dropdown"></i>
|
||||
<div class="dropdown-menu">
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
<div class="p-2 clearfix wall-item-head{{if !$item.title && !$item.event && !$item.photo}} rounded-top{{/if}}{{if $item.is_new && !$item.event && !$item.is_comment}} wall-item-head-new{{/if}}">
|
||||
<div class="wall-item-info" id="wall-item-info-{{$item.id}}" >
|
||||
<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}} h-card p-author" id="wall-item-photo-wrapper-{{$item.id}}">
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" /></a>
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" loading="lazy" /></a>
|
||||
{{if $item.thread_author_menu}}
|
||||
<i class="fa fa-caret-down wall-item-photo-caret cursor-pointer" data-toggle="dropdown"></i>
|
||||
<div class="dropdown-menu">
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<div class="contact-photo-wrapper" id="directory-photo-wrapper-{{$entry.hash}}" >
|
||||
<div class="contact-photo" id="directory-photo-{{$entry.hash}}" >
|
||||
<a href="{{$entry.profile_link}}" class="directory-profile-link" id="directory-profile-link-{{$entry.hash}}" >
|
||||
<img class="directory-photo-img" src="{{$entry.photo}}" alt="{{$entry.alttext}}" title="{{$entry.alttext}}" />
|
||||
<img class="directory-photo-img" src="{{$entry.photo}}" alt="{{$entry.alttext}}" title="{{$entry.alttext}}" loading="lazy"/>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
</div>
|
||||
<div id="nav-notifications-template" rel="template">
|
||||
<a class="list-group-item text-decoration-none text-darkclearfix notification {6}" href="{0}" title="{13}" data-b64mid="{7}" data-notify_id="{8}" data-thread_top="{9}" data-contact_name="{2}" data-contact_addr="{3}" data-when="{5}">
|
||||
<img class="menu-img-3" data-src="{1}">
|
||||
<img class="menu-img-3" data-src="{1}" loading="lazy">
|
||||
<div class="contactname"><span class="text-dark font-weight-bold">{2}</span> <span class="text-muted">{3}</span></div>
|
||||
<span class="text-muted">{4}</span><br>
|
||||
<span class="text-muted notifications-autotime" title="{5}">{5}</span>
|
||||
@@ -152,7 +152,7 @@
|
||||
<div id="nav-notifications-forums-template" rel="template">
|
||||
<a class="list-group-item text-decoration-none clearfix notification notification-forum" href="{0}" title="{4} - {3}" data-b64mid="{7}" data-notify_id="{8}" data-thread_top="{9}" data-contact_name="{2}" data-contact_addr="{3}" data-b64mids='{12}'>
|
||||
<span class="float-right badge badge-secondary">{10}</span>
|
||||
<img class="menu-img-1" data-src="{1}">
|
||||
<img class="menu-img-1" data-src="{1}" loading="lazy">
|
||||
<span class="">{2}</span>
|
||||
<i class="fa fa-{11} text-muted"></i>
|
||||
</a>
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<div class="p-2 clearfix wall-item-head{{if !$item.title && !$item.event && !$item.photo}} rounded-top{{/if}}{{if $item.is_new && !$item.event && !$item.is_comment}} wall-item-head-new{{/if}}" >
|
||||
<div class="wall-item-info" id="wall-item-info-{{$item.id}}" >
|
||||
<div class="wall-item-photo-wrapper{{if $item.owner_url}} wwfrom{{/if}}" id="wall-item-photo-wrapper-{{$item.id}}">
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" />
|
||||
<img src="{{$item.thumb}}" class="fakelink wall-item-photo{{$item.sparkle}} u-photo p-name" id="wall-item-photo-{{$item.id}}" alt="{{$item.name}}" data-toggle="dropdown" loading="lazy" />
|
||||
{{if $item.thread_author_menu}}
|
||||
<i class="fa fa-caret-down wall-item-photo-caret cursor-pointer" data-toggle="dropdown"></i>
|
||||
<div class="dropdown-menu">
|
||||
|
||||
Reference in New Issue
Block a user