Browse Source

ImageSize enum

pull/1300/head
toastal 2 years ago
parent
commit
0ab74a738e
  1. 3
      app/Conference.php
  2. 5
      app/Contact.php
  3. 2
      app/Info.php
  4. 5
      app/Roster.php
  5. 25
      app/helpers/UtilsHelper.php
  6. 2
      app/widgets/Avatar/_avatar_form.tpl
  7. 2
      app/widgets/Blog/Blog.php
  8. 4
      app/widgets/Blog/blog.tpl
  9. 2
      app/widgets/Chat/_chat_explore.tpl
  10. 2
      app/widgets/Chat/_chat_header.tpl
  11. 2
      app/widgets/Chats/_chats_item.tpl
  12. 2
      app/widgets/CommunitiesServer/_communitiesserver_ticket.tpl
  13. 4
      app/widgets/CommunityAffiliations/_communityaffiliations.tpl
  14. 2
      app/widgets/CommunityAffiliations/_communityaffiliations_config_content.tpl
  15. 2
      app/widgets/CommunityAffiliations/_communityaffiliations_public_subscriptions_list.tpl
  16. 2
      app/widgets/CommunityAffiliations/_communityaffiliations_subscriptions.tpl
  17. 2
      app/widgets/CommunityConfig/_communityconfig_avatar.tpl
  18. 2
      app/widgets/CommunityData/_communitydata_card.tpl
  19. 2
      app/widgets/CommunityHeader/_communityheader.tpl
  20. 2
      app/widgets/ContactData/_contactdata_card.tpl
  21. 4
      app/widgets/ContactHeader/_contactheader.tpl
  22. 2
      app/widgets/ContactSubscriptions/_contactsubscriptions.tpl
  23. 6
      app/widgets/Login/login.tpl
  24. 2
      app/widgets/Menu/Menu.php
  25. 6
      app/widgets/Post/_post.tpl
  26. 4
      app/widgets/Post/_post_card.tpl
  27. 4
      app/widgets/Post/_post_comments.tpl
  28. 4
      app/widgets/Post/_post_prevnext_back.tpl
  29. 2
      app/widgets/Post/_post_reply.tpl
  30. 2
      app/widgets/Post/_post_ticket.tpl
  31. 2
      app/widgets/Presence/_presence.tpl
  32. 2
      app/widgets/Publish/publish.tpl
  33. 2
      app/widgets/RoomsUtils/_rooms_avatar.tpl
  34. 6
      app/widgets/RoomsUtils/_rooms_drawer.tpl
  35. 2
      app/widgets/Search/_search_results.tpl
  36. 2
      app/widgets/Search/_search_roster.tpl
  37. 2
      app/widgets/SendTo/_sendto_article.tpl
  38. 2
      app/widgets/SendTo/_sendto_share_contacts.tpl
  39. 5
      app/widgets/Syndication/Syndication.php
  40. 2
      app/widgets/Visio/_visio_dialog.tpl
  41. 2
      app/widgets/Visio/visio.tpl
  42. 13
      src/Movim/ImageSize.php

3
app/Conference.php

@ -2,6 +2,7 @@
namespace App;
use Movim\ImageSize;
use Movim\Model;
class Conference extends Model
@ -214,7 +215,7 @@ class Conference extends Model
return $subject ? $subject->subject : null;
}
public function getPicture($size = 'm'): string
public function getPicture(ImageSize $size = ImageSize::M): string
{
return $this->contact
? $this->contact->getPicture($size)

5
app/Contact.php

@ -7,6 +7,7 @@ use Illuminate\Database\Capsule\Manager as DB;
use Respect\Validation\Validator;
use Movim\Image;
use Movim\ImageSize;
class Contact extends Model
{
@ -135,12 +136,12 @@ class Contact extends Model
unset($this->photobin);
}
public function getPicture($size = 'm'): string
public function getPicture(ImageSize $size = ImageSize::M): string
{
return getPicture($this->id, $this->truename, $size);
}
public function getBanner($size = 'xxl')
public function getBanner(ImageSize $size = ImageSize::XXL)
{
$banner = !empty($this->id) ? getPicture($this->id . '_banner', $this->truename, $size) : null;

2
app/Info.php

@ -217,7 +217,7 @@ class Info extends Model
return $identityType ? $identityType->type : null;
}
public function getPicture($size = 'm'): string
public function getPicture(\Movim\ImageSize $size = \Movim\ImageSize::M): string
{
return getPicture($this->attributes['avatarhash'], $this->node, $size);
}

5
app/Roster.php

@ -2,6 +2,7 @@
namespace App;
use Movim\ImageSize;
use Movim\Model;
class Roster extends Model
@ -90,12 +91,12 @@ class Roster extends Model
cleanupId($this->group);
}
public function getPicture($size = 'm'): string
public function getPicture(ImageSize $size = ImageSize::M): string
{
return getPicture($this->jid, $this->truename, $size);
}
public function getBanner($size = 'xxl')
public function getBanner(ImageSize $size = ImageSize::XXL)
{
$banner = !empty($this->id) ? getPicture($this->id . '_banner', $size) : null;

25
app/helpers/UtilsHelper.php

@ -5,6 +5,7 @@ use Monolog\Logger;
use Monolog\Handler\SyslogHandler;
use Monolog\Handler\StreamHandler;
use Movim\Image;
use Movim\ImageSize;
class Utils
{
@ -208,18 +209,18 @@ function formToArray(stdClass $form): array
/**
* Return the picture or fallback to the placeholder
*/
function getPicture(?string $key, string $placeholder, string $size = 'm'): string
{
$sizes = [
'xxl' => [1280, 300],
'xl' => [512, false],
'l' => [210, false],
'm' => [120, false],
's' => [50, false],
'o' => [false, false]
];
return (!empty($key) && $url = Image::getOrCreate($key, $sizes[$size][0], $sizes[$size][1]))
function getPicture(?string $key, string $placeholder, ImageSize $size = ImageSize::M): string
{
[$width, $height] = match ($size) {
ImageSize::XXL => [1280, 300],
ImageSize::XL => [512, false],
ImageSize::L => [210, false],
ImageSize::M => [120, false],
ImageSize::S => [50, false],
ImageSize::O => [false, false],
};
return (!empty($key) && $url = Image::getOrCreate($key, $width, $height))
? $url
: avatarPlaceholder($placeholder);
}

2
app/widgets/Avatar/_avatar_form.tpl

@ -1,6 +1,6 @@
<section class="scroll">
<form name="avatarform">
<img class="avatar" src="{$me->getPicture('o') ?? ''}">
<img class="avatar" src="{$me->getPicture(\Movim\ImageSize::O) ?? ''}">
<div class="placeholder">
<i class="material-symbols">image</i>
<h1>{$c->__('avatar.missing')}</h1>

2
app/widgets/Blog/Blog.php

@ -87,7 +87,7 @@ class Blog extends Base
$this->title = __('blog.title', $this->_contact->truename);
$this->description = $this->_contact->description;
$avatar = $this->_contact->getPicture('l');
$avatar = $this->_contact->getPicture(\Movim\ImageSize::L);
if ($avatar) {
$this->image = $avatar;
}

4
app/widgets/Blog/blog.tpl

@ -17,7 +17,7 @@
<i class="material-symbols">person</i>
</span>
<span class="primary icon bubble on_mobile">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
<span class="control icon active" onclick="MovimUtils.openInNew('{$c->route('feed', $contact->jid)}')">
<i class="material-symbols">rss_feed</i>
@ -63,7 +63,7 @@
<li>
{if="$item"}
<span class="primary icon bubble">
<img src="{$item->getPicture('m')}"/>
<img src="{$item->getPicture(\Movim\ImageSize::M)}"/>
</span>
{else}
<span class="primary icon gray">

2
app/widgets/Chat/_chat_explore.tpl

@ -27,7 +27,7 @@
<i class="material-symbols">comment</i>
</span>
<span class="primary icon bubble {if="$value->value"}status {$presencestxt[$value->value]}{/if}">
<img src="{$value->getPicture('m')}">
<img src="{$value->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p class="normal line">

2
app/widgets/Chat/_chat_header.tpl

@ -37,7 +37,7 @@
title="{$c->__('page.communities')} · {$related->name}"
onclick="MovimUtils.reload('{$c->route('community', [$related->server, $related->node])}')"
class="control icon bubble active small">
<img src="{$related->getPicture('m')}"/>
<img src="{$related->getPicture(\Movim\ImageSize::M)}"/>
</span>
{/if}

2
app/widgets/Chats/_chats_item.tpl

@ -17,7 +17,7 @@
"
{if="$count > 0"}data-counter="{$count}"{/if}
>
<img src="{if="$roster"}{$roster->getPicture('o')}{else}{$contact->getPicture('o')}{/if}">
<img src="{if="$roster"}{$roster->getPicture(\Movim\ImageSize::O)}{else}{$contact->getPicture(\Movim\ImageSize::O)}{/if}">
</span>
<div>

2
app/widgets/CommunitiesServer/_communitiesserver_ticket.tpl

@ -13,7 +13,7 @@
{/if}
<span class="primary icon thumb">
<img loading="lazy" src="{$community->getPicture('m')}"/>
<img loading="lazy" src="{$community->getPicture(\Movim\ImageSize::M)}"/>
</span>
<div>
<p class="line">

4
app/widgets/CommunityAffiliations/_communityaffiliations.tpl

@ -55,7 +55,7 @@
<li title="{$contact->jid}"
onclick="MovimUtils.reload('{$c->route('contact', $contact->jid)}')">
<span class="primary icon bubble">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p>{$contact->truename}</p>
@ -78,7 +78,7 @@
<li title="{$contact->jid}"
onclick="MovimUtils.reload('{$c->route('contact', $contact->jid)}')">
<span class="primary icon bubble">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p>{$contact->truename}</p>

2
app/widgets/CommunityAffiliations/_communityaffiliations_config_content.tpl

@ -5,7 +5,7 @@
{$contact = $c->getContact($value->jid)}
<li title="{$contact->jid}">
<span class="primary icon bubble">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
<form name="{$contact->jid}">
<input type="hidden" name="jid" value="{$contact->jid}"/>

2
app/widgets/CommunityAffiliations/_communityaffiliations_public_subscriptions_list.tpl

@ -12,7 +12,7 @@
</span>
{if="$value->contact"}
<span class="primary icon bubble small">
<img src="{$value->contact->getPicture('m')}">
<img src="{$value->contact->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p class="normal">{$value->contact->truename}</p>

2
app/widgets/CommunityAffiliations/_communityaffiliations_subscriptions.tpl

@ -12,7 +12,7 @@
{$contact = $c->getContact($value->jid)}
<li>
<span class="primary icon bubble">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p class="normal line">

2
app/widgets/CommunityConfig/_communityconfig_avatar.tpl

@ -1,6 +1,6 @@
<section class="scroll">
<form name="avatarcommunity">
<img class="avatar" src="{$info->getPicture('o') ?? ''}">
<img class="avatar" src="{$info->getPicture(\Movim\ImageSize::O) ?? ''}">
<div class="placeholder">
<i class="material-symbols">image</i>
<h1>{$c->__('avatar.missing')}</h1>

2
app/widgets/CommunityData/_communitydata_card.tpl

@ -2,7 +2,7 @@
<li class="block large">
<div>
<p class="center all">
<img class="avatar" src="{$info->getPicture('l')}"/>
<img class="avatar" src="{$info->getPicture(\Movim\ImageSize::L)}"/>
</p>
</div>
</li>

2
app/widgets/CommunityHeader/_communityheader.tpl

@ -17,7 +17,7 @@
{if="$info != null"}
<span class="primary icon bubble active"
onclick="MovimUtils.reload('{$c->route('community', [$server, $info->node])}')">
<img src="{$info->getPicture('l')}"/>
<img src="{$info->getPicture(\Movim\ImageSize::L)}"/>
</span>
{/if}
<div>

2
app/widgets/ContactData/_contactdata_card.tpl

@ -2,7 +2,7 @@
<li class="block large">
<div>
<p class="center all">
<img src="{if="$roster"}{$roster->getPicture('xl')}{else}{$contact->getPicture('xl')}{/if}" class="avatar">
<img src="{if="$roster"}{$roster->getPicture(\Movim\ImageSize::XL)}{else}{$contact->getPicture(\Movim\ImageSize::XL)}{/if}" class="avatar">
</p>
</div>
</li>

4
app/widgets/ContactHeader/_contactheader.tpl

@ -7,7 +7,7 @@
<header class="big top color {$contact->jid|stringToColor}"
style="
background-image:
linear-gradient(to top, rgba(23,23,23,0.9) 0, rgba(23,23,23,0.6) 5rem, rgba(23,23,23,0) 12rem), url('{$contact->getBanner('xxl')}');
linear-gradient(to top, rgba(23,23,23,0.9) 0, rgba(23,23,23,0.6) 5rem, rgba(23,23,23,0) 12rem), url('{$contact->getBanner(\Movim\ImageSize::XXL)}');
">
<ul class="list thick">
@ -44,7 +44,7 @@
<i class="material-symbols">arrow_back</i>
</span>
<span class="primary icon bubble active" onclick="ContactActions_ajaxGetDrawer('{$contact->id|echapJS}')">
<img src="{if="$roster"}{$roster->getPicture('m')}{else}{$contact->getPicture('m')}{/if}">
<img src="{if="$roster"}{$roster->getPicture(\Movim\ImageSize::M)}{else}{$contact->getPicture(\Movim\ImageSize::M)}{/if}">
</span>
<div>
<p class="line active" onclick="ContactActions_ajaxGetDrawer('{$contact->id|echapJS}')">

2
app/widgets/ContactSubscriptions/_contactsubscriptions.tpl

@ -13,7 +13,7 @@
<li title="{$value->server} - {$value->node}">
{if="$value->info"}
<span class="primary icon bubble">
<img src="{$value->info->getPicture('m')}"/>
<img src="{$value->info->getPicture(\Movim\ImageSize::M)}"/>
</span>
{else}
<span class="primary icon bubble color {$value->node|stringToColor}">

6
app/widgets/Login/login.tpl

@ -29,12 +29,12 @@
<ul class="list middle invite">
<li>
<span class="primary icon bubble">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</span>
{if="$invitation->room && $invitation->room->getPicture('m')"}
{if="$invitation->room && $invitation->room->getPicture(\Movim\ImageSize::M)"}
<span class="primary icon bubble">
<img src="{$invitation->room->getPicture('m')}">
<img src="{$invitation->room->getPicture(\Movim\ImageSize::M)}">
</span>
{/if}
<div>

2
app/widgets/Menu/Menu.php

@ -128,7 +128,7 @@ class Menu extends Base
if ($info->name) {
$title = $info->name;
}
$logo = $info->getPicture('l');
$logo = $info->getPicture(\Movim\ImageSize::L);
}
Notif::append(

6
app/widgets/Post/_post.tpl

@ -46,7 +46,7 @@
{if="$post->contact"}
<span class="icon primary bubble">
<a href="#" onclick="Post_ajaxGetContact('{$contact->jid}')">
<img src="{$contact->getPicture('m')}">
<img src="{$contact->getPicture(\Movim\ImageSize::M)}">
</a>
</span>
{else}
@ -61,7 +61,7 @@
<span class="primary icon bubble active"
onclick="MovimUtils.reload('{$c->route('community', [$post->server, $post->node])}')"
>
<img src="{$post->info->getPicture('l')}"/>
<img src="{$post->info->getPicture(\Movim\ImageSize::L)}"/>
</span>
{else}
<span class="primary icon bubble color {$post->node|stringToColor} active"
@ -155,7 +155,7 @@
<a href="{$c->route('contact', $post->contact->jid)}">
<ul class="list active middle">
<li>
<span class="primary icon bubble" style="background-image: url('{$post->contact->getPicture('m')}');">
<span class="primary icon bubble" style="background-image: url('{$post->contact->getPicture(\Movim\ImageSize::M)}');">
<i class="material-symbols">loop</i>
</span>
<span class="control icon">

4
app/widgets/Post/_post_card.tpl

@ -8,7 +8,7 @@
{elseif="$post->isMicroblog()"}
{if="$post->contact"}
<span class="primary icon bubble">
<img src="{$post->contact->getPicture('m')}"/>
<img src="{$post->contact->getPicture(\Movim\ImageSize::M)}"/>
</span>
{else}
<span class="primary icon bubble color {$post->aid|stringToColor}">
@ -18,7 +18,7 @@
{else}
{if="$post->info != null"}
<span class="primary icon bubble">
<img src="{$post->info->getPicture('l')}"/>
<img src="{$post->info->getPicture(\Movim\ImageSize::L)}"/>
</span>
{else}
<span class="primary icon bubble color {$post->node|stringToColor}">

4
app/widgets/Post/_post_comments.tpl

@ -51,10 +51,10 @@
{if="$value->contact"}
<span class="primary icon bubble small">
{if="$public"}
<img src="{$value->contact->getPicture('s')}">
<img src="{$value->contact->getPicture(\Movim\ImageSize::S)}">
{else}
<a href="{$c->route('contact', $value->contact->jid)}">
<img src="{$value->contact->getPicture('s')}">
<img src="{$value->contact->getPicture(\Movim\ImageSize::S)}">
</a>
{/if}
</span>

4
app/widgets/Post/_post_prevnext_back.tpl

@ -11,7 +11,7 @@
{if="$post->isMicroblog()"}
{if="$post->contact"}
<span class="primary icon bubble">
<img src="{$post->contact->getPicture('m')}">
<img src="{$post->contact->getPicture(\Movim\ImageSize::M)}">
</span>
<div>
<p class="normal line">
@ -33,7 +33,7 @@
{else}
{if="$info"}
<span class="primary icon bubble">
<img src="{$info->getPicture('m')}"/>
<img src="{$info->getPicture(\Movim\ImageSize::M)}"/>
</span>
<div>
<p class="line normal">

2
app/widgets/Post/_post_reply.tpl

@ -11,7 +11,7 @@
<i class="material-symbols flip-hor">reply</i>
</span>
{elseif="$reply->isMicroblog() && $reply->contact"}
<span class="primary icon bubble gray" style="background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.3) 100%), url({$reply->contact->getPicture('l')});">
<span class="primary icon bubble gray" style="background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0.3) 100%), url({$reply->contact->getPicture(\Movim\ImageSize::L)});">
<i class="material-symbols">reply</i>
</span>
{/if}

2
app/widgets/Post/_post_ticket.tpl

@ -21,7 +21,7 @@
{elseif="!$post->contact"}
<span class="control icon bubble">
{if="$post->info"}
<img src="{$post->info->getPicture('m')}">
<img src="{$post->info->getPicture(\Movim\ImageSize::M)}">
{else}
<img src="{$post->node|avatarPlaceholder}">
{/if}

2
app/widgets/Presence/_presence.tpl

@ -5,7 +5,7 @@
{if="$presence->value != null"}{$presencetxt[$presence->value]}{/if}
{if="$me->hasLocation()"} location{/if}
">
<img src="{$me->getPicture('m')}">
<img src="{$me->getPicture(\Movim\ImageSize::M)}">
</span>
<span class="control icon active"
onclick="Presence_ajaxAskLogout()"

2
app/widgets/Publish/publish.tpl

@ -15,7 +15,7 @@
{if="$icon != null"}
<span class="primary icon bubble">
<img src="{$icon->getPicture('l')}"/>
<img src="{$icon->getPicture(\Movim\ImageSize::L)}"/>
</span>
{else}
<span class="primary icon bubble color {$draft->node|stringToColor}">

2
app/widgets/RoomsUtils/_rooms_avatar.tpl

@ -1,6 +1,6 @@
<section class="scroll">
<form name="avatarroom">
<img class="avatar" src="{$room->getPicture('o') ?? ''}">
<img class="avatar" src="{$room->getPicture(\Movim\ImageSize::O) ?? ''}">
<div class="placeholder">
<i class="material-symbols">image</i>
<h1>{$c->__('avatar.missing')}</h1>

6
app/widgets/RoomsUtils/_rooms_drawer.tpl

@ -1,6 +1,6 @@
<section class="scroll">
<header class="big"
style="background-image: linear-gradient(to bottom, rgba(23,23,23,0.8) 0%, rgba(23,23,23,0.5) 100%), url('{$conference->getPicture('xxl')}');"
style="background-image: linear-gradient(to bottom, rgba(23,23,23,0.8) 0%, rgba(23,23,23,0.5) 100%), url('{$conference->getPicture(\Movim\ImageSize::XXL)}');"
>
<ul class="list thick">
<li>
@ -197,7 +197,7 @@
<li title="{$value->truename}">
{if="$value->contact"}
<span class="primary icon bubble small status {if="$presence"}{$presence->presencekey}{/if}">
<img loading="lazy" src="{$value->contact->getPicture('s')}">
<img loading="lazy" src="{$value->contact->getPicture(\Movim\ImageSize::S)}">
</span>
{else}
<span class="primary icon bubble small color {$value->jid|stringToColor} status {if="$presence"}{$presence->presencekey}{/if}">
@ -290,7 +290,7 @@
<li title="{$value->truename}">
{if="$value->contact"}
<span class="primary icon bubble small">
<img loading="lazy" src="{$value->contact->getPicture('s')}">
<img loading="lazy" src="{$value->contact->getPicture(\Movim\ImageSize::S)}">
</span>
{else}
<span class="primary icon bubble small color {$value->jid|stringToColor}">

2
app/widgets/Search/_search_results.tpl

@ -44,7 +44,7 @@
title="{$value->server} - {$value->node}"
>
<span class="primary icon bubble">
<img src="{$value->getPicture('m')}"/>
<img src="{$value->getPicture(\Movim\ImageSize::M)}"/>
</span>
<span class="control icon gray">
<i class="material-symbols">chevron_right</i>

2
app/widgets/Search/_search_roster.tpl

@ -19,7 +19,7 @@
status {$value->presence->presencekey}
{/if}"
onclick="MovimUtils.reload('{$c->route('contact', $value->jid)}'); Drawer.clear();">
<img loading="lazy" src="{$value->getPicture('m')}">
<img loading="lazy" src="{$value->getPicture(\Movim\ImageSize::M)}">
</span>
{if="$value->presences->count() > 0"}

2
app/widgets/SendTo/_sendto_article.tpl

@ -63,7 +63,7 @@
>
{if="$value->info"}
<span class="primary icon bubble">
<img src="{$value->info->getPicture('m')}"/>
<img src="{$value->info->getPicture(\Movim\ImageSize::M)}"/>
</span>
{else}
<span class="primary icon bubble color {$value->node|stringToColor}">

2
app/widgets/SendTo/_sendto_share_contacts.tpl

@ -11,7 +11,7 @@
{else}
status {$value->presence->presencekey}
{/if}">
<img src="{$value->getPicture('m')}">
<img src="{$value->getPicture(\Movim\ImageSize::M)}">
</span>
<span class="control icon active gray" onclick="SendTo_ajaxSend('{$value->jid|echapJS}', {'uri': '{$uri}'}, false, '{$openlink}')">
<i class="material-symbols">send</i>

5
app/widgets/Syndication/Syndication.php

@ -1,5 +1,6 @@
<?php
use Movim\ImageSize;
use Movim\Widget\Base;
class Syndication extends Base
@ -59,9 +60,9 @@ class Syndication extends Base
$name->appendChild($dom->createTextNode($contact->truename));
$author->appendChild($dom->createElement('uri', $this->route('blog', $from)));
if ($contact->getPicture('l')) {
if ($contact->getPicture(ImageSize::L)) {
$logo = $dom->createElement('logo');
$logo->appendChild($dom->createTextNode($contact->getPicture('l')));
$logo->appendChild($dom->createTextNode($contact->getPicture(ImageSize::L)));
$feed->appendChild($logo);
}

2
app/widgets/Visio/_visio_dialog.tpl

@ -3,7 +3,7 @@
<li>
<div>
<p class="center">
<img src="{$contact->getPicture('l')}">
<img src="{$contact->getPicture(\Movim\ImageSize::L)}">
</p>
<p class="normal center">
{if="$withvideo"}

2
app/widgets/Visio/visio.tpl

@ -68,7 +68,7 @@
<div>
<div id="remote_level">
<div class="avatar">
<img src="{$contact->getPicture('l')}">
<img src="{$contact->getPicture(\Movim\ImageSize::L)}">
</div>
</div>
<p class="normal center">{$contact->truename}</p>

13
src/Movim/ImageSize.php

@ -0,0 +1,13 @@
<?php
namespace Movim;
enum ImageSize: string
{
case XXL = 'xxl';
case XL = 'xl';
case L = 'l';
case M = 'm';
case S = 's';
case O = 'o';
};
Loading…
Cancel
Save