Browse Source

Allow discussions links to be copied to the clipboard

Display recent public contact posts in the drawer
pull/1028/head
Timothée Jaussoin 4 years ago
parent
commit
543194ac56
  1. 2
      CHANGELOG.md
  2. 7
      app/widgets/Chat/_chat_embed.tpl
  3. 15
      app/widgets/ContactActions/ContactActions.php
  4. 12
      app/widgets/ContactActions/_contactactions_drawer.tpl
  5. 2
      app/widgets/Preview/_preview.tpl
  6. 2
      app/widgets/Preview/_preview_gallery.tpl
  7. 1
      public/theme/css/grid.css

2
CHANGELOG.md

@ -38,6 +38,8 @@ v0.19.1 (trunk)
* Add support for AESGCM encrypted files (receive only)
* New chatrooms header design
* New design for the chatbox
* Allow discussions links to be copied to the clipboard
* Display recent public contact posts in the drawer
v0.19
---------------------------

7
app/widgets/Chat/_chat_embed.tpl

@ -25,12 +25,15 @@
{/if}
{if="$withlink"}
<span class="control icon gray" onclick="MovimUtils.openInNew('{$embed->url}')">
<span class="control icon gray active" onclick="Preview.copyToClipboard('{$embed->url}')">
<i class="material-icons">content_copy</i>
</span>
<span class="control icon gray active" onclick="MovimUtils.openInNew('{$embed->url}')">
<i class="material-icons">open_in_new</i>
</span>
{/if}
<div {if="$withlink"}onclick="MovimUtils.openInNew('{$embed->url}')"{/if}>
<div>
<p class="line">{$embed->title}</p>
<p class="line">{$embed->description}</p>
{if="$withlink"}

15
app/widgets/ContactActions/ContactActions.php

@ -9,6 +9,7 @@ use Moxl\Xec\Action\Presence\Subscribe;
use Respect\Validation\Validator;
include_once WIDGETS_PATH.'Chat/Chat.php';
include_once WIDGETS_PATH . 'Post/Post.php';
class ContactActions extends Base
{
@ -76,6 +77,13 @@ class ContactActions extends Base
$tpl->assign('jid', $jid);
$tpl->assign('clienttype', getClientTypes());
$tpl->assign('hasfingerprints', $hasFingerprints);
$tpl->assign('posts', \App\Post::where('server', $jid)
->restrictToMicroblog()
->where('open', true)
->orderBy('published', 'desc')
->take(4)
->get()
);
Drawer::fill($tpl->draw('_contactactions_drawer'));
$this->rpc('Tabs.create');
@ -123,7 +131,12 @@ class ContactActions extends Base
public function prepareEmbedUrl(EmbedLight $embed)
{
return (new Chat)->prepareEmbed($embed, true);
return (new \Chat)->prepareEmbed($embed, true);
}
public function prepareTicket(\App\Post $post)
{
return (new \Post)->prepareTicket($post);
}
/**

12
app/widgets/ContactActions/_contactactions_drawer.tpl

@ -126,6 +126,16 @@
</li>
</ul>
{if="$posts->count() > 0"}
<ul class="list card flex active middle">
{loop="$posts"}
{autoescape="off"}
{$c->prepareTicket($value)}
{/autoescape}
{/loop}
</ul>
{/if}
<ul class="tabs" id="navtabs"></ul>
{if="$pictures->count() > 0"}
@ -143,7 +153,7 @@
{if="$links->count() > 0"}
<div class="tabelem" title="{$c->__('general.links')}" id="room_links">
<ul class="active list thick">
<ul class="list thick">
{loop="$links"}
{autoescape="off"}
{$resolved = $value->resolvedUrl->cache}

2
app/widgets/Preview/_preview.tpl

@ -18,7 +18,7 @@
<span class="prevnext next"></span>
<div class="buttons">
<a class="button flat color transparent" href="{$url}" target="_blank" download title="{$c->__('button.save')}">
<i class="material-icons">get_app</i> {$c->__('button.save')}
<i class="material-icons">content_copy</i> {$c->__('button.save')}
</a>
<a class="button flat color transparent" href="#" onclick="Preview.copyToClipboard('{$url}')" title="{$c->__('button.copy_link')}">
<i class="material-icons">link</i> {$c->__('button.copy_link')}

2
app/widgets/Preview/_preview_gallery.tpl

@ -34,7 +34,7 @@
<span class="counter">{$imagenumber+1} / {$embed->images|count}</span>
<div class="buttons">
<a class="button flat color transparent" href="{$embed->images[$imagenumber]['url']}" target="_blank" download title="{$c->__('button.save')}">
<i class="material-icons">get_app</i> {$c->__('button.save')}
<i class="material-icons">content_copy</i> {$c->__('button.save')}
</a>
<a class="button flat color transparent" href="#" onclick="Preview.copyToClipboard('{$embed->images[$imagenumber]['url']}')" title="{$c->__('button.copy_link')}">
<i class="material-icons">link</i> {$c->__('button.copy_link')}

1
public/theme/css/grid.css

@ -27,6 +27,7 @@ ul.grid.active > li:hover {
ul.grid.active > li i {
font-size: 4rem;
color: white;
text-shadow: 0 0 2rem rgba(0, 0, 0, 0.5);
}
ul.grid.active > li span {

Loading…
Cancel
Save