1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/movim_ynh.git synced 2024-09-03 19:46:19 +02:00

update to movim 0.9 git2015-12-28

This commit is contained in:
Xavier ROOT 2015-12-28 13:28:17 +01:00
parent 97aebb59b2
commit 6539536f07
23 changed files with 84 additions and 373 deletions

View file

@ -10,7 +10,7 @@
- script/install : new SSO policy
- script/upgrade : removed "addaccess" parameter and added "clearaccess" (reset)
- script/upgrade : new SSO policy
- update to movim 0.9 git2015-12-24
- update to movim 0.9 git2015-12-28
1.3 2015-12-15
- Update to Movim 0.9 git2015-12-15

View file

@ -5,7 +5,7 @@ Movim is a decentralized social network, written in PHP and HTML5 and based on t
It is recommended to use a "valid" certificate to use Movim, auto-signed is sometimes problematic. You might want to take a look a StartSSL or Let's Encrypt.
Current Movim version : 0.9 git2015-12-24
Current Movim version : 0.9 git2015-12-28
Please read CHANGELOG.

View file

@ -61,7 +61,7 @@ var MovimTpl = {
MovimTpl.scrollHeaders();
},
scrollHeaders : function() {
var headers = document.querySelectorAll('main > section > div > header');
/*var headers = document.querySelectorAll('main > section > div > header');
for(var i = 0, len = headers.length; i < len; ++i ) {
var header = headers[i];
@ -74,7 +74,7 @@ var MovimTpl = {
movim_add_class(header, 'scroll');
}
}
}
}*/
},
showPanel : function() {
movim_add_class('main section > div:first-child:nth-last-child(2) ~ div', 'enabled');

View file

@ -4,7 +4,6 @@
</nav>
<main>
<?php //$this->widget('Header'); ?>
<section>
<div>
<?php $this->widget('Chats');?>

View file

@ -4,7 +4,6 @@
</nav>
<main>
<?php //$this->widget('Header'); ?>
<section>
<div style="background-color: #EEE;">
<?php $this->widget('Notifs');?>

View file

@ -4,7 +4,6 @@
</nav>
<main>
<?php //$this->widget('Header');?>
<section>
<?php $this->widget('Hello');?>
</section>

View file

@ -7,7 +7,6 @@
</nav>
<main>
<?php //$this->widget('Header');?>
<section>
<?php $this->widget('Menu');?>
<?php $this->widget('Post');?>

View file

@ -1,4 +1,4 @@
<ul class="list middle divided active spaced">
<ul class="list divided active spaced">
<li class="subheader">
<p>{$c->__('adhoc.title')}</p>
</li>
@ -10,7 +10,7 @@
<span class="control icon gray">
<i class="zmdi zmdi-chevron-right"></i>
</span>
<p class="normal">{$value->attributes()->name}</p>
<p class="normal line">{$value->attributes()->name}</p>
</li>
{/loop}
</ul>

View file

@ -33,7 +33,7 @@
</figure>
</div>
<ul>
<ul class="list">
<!--
<li class="subheader">
{$c->__('compatibility.info')}
@ -42,35 +42,39 @@
{if="$dbconnected"}
{if="$dbinfos > 0"}
<li>
<span class="icon bubble color orange"><i class="zmdi zmdi-refresh"></i></span>
<span>{$c->__('compatibility.db')}</span>
<span class="primary icon bubble color orange">
<i class="zmdi zmdi-refresh"></i>
</span>
<p class="normal line">{$c->__('compatibility.db')}</p>
</li>
{else}
<script type="text/javascript">AdminTest.databaseOK = true</script>
{/if}
{else}
<li class="condensed">
<span class="icon bubble color red"><i class="zmdi zmdi-data-usage"></i></span>
<span>Database connection error</span>
<li>
<span class="primary icon bubble color red">
<i class="zmdi zmdi-data-usage"></i>
</span>
<p>Database connection error</p>
<p>Check if database configuration exist in the <code>config/</code> folder and fill it with proper values</p>
</li>
{/if}
<li id="websocket_error">
<span class="icon bubble color red">
<span class="primary icon bubble color red">
<i class="zmdi zmdi-code-setting"></i>
</span>
<span>
<p class="normal line">
{$c->__('compatibility.websocket')}
</span>
</p>
</li>
{if="!$c->version()"}
<li class="condensed">
<span class="icon color bubble red">
<li>
<span class="primary icon color bubble red">
<i class="zmdi zmdi-sync-problem"></i>
</span>
<span>{$c->__('compatibility.php1', PHP_VERSION)}</span>
<p>{$c->__('compatibility.php1', PHP_VERSION)}</p>
<p>{$c->__('compatibility.php2')}</p>
</li>
<script type="text/javascript">AdminTest.disableMovim()</script>
@ -78,34 +82,34 @@
{if="!extension_loaded('imagick')"}
<li>
<span class="icon color bubble red">
<span class="primary icon color bubble red">
<i class="zmdi zmdi-image"></i>
</span>
<span>
<p class="normal line">
{$c->__('compatibility.imagick')}
</span>
</p>
</div>
<script type="text/javascript">AdminTest.disableMovim()</script>
{/if}
{if="!extension_loaded('gd')"}
<li>
<span class="icon color bubble red">
<span class="primary icon color bubble red">
<i class="zmdi zmdi-image"></i>
</span>
<span>
<p class="normal line">
{$c->__('compatibility.gd')}
</span>
</p>
</div>
<script type="text/javascript">AdminTest.disableMovim()</script>
{/if}
{if="!$c->testDir(DOCUMENT_ROOT)"}
<li>
<span class="icon color bubble red">
<span class="primary icon color bubble red">
<i class="zmdi zmdi-folder"></i>
</span>
<span>{$c->__('compatibility.rights')}</span>
<p class="normal line">{$c->__('compatibility.rights')}</p>
</li>
<script type="text/javascript">AdminTest.disableMovim()</script>
{/if}

View file

@ -10,12 +10,12 @@
<img src="data:image/jpeg;base64,{$photobin}">
{else}
<img src="#" class="error">
<ul class="thick">
<ul class="list thick">
<li>
<span class="icon bubble color {$me->jid|stringToColor}">
<span class="primary icon bubble color {$me->jid|stringToColor}">
<i class="zmdi zmdi-account"></i>
</span>
<p>{$c->__('avatar.missing')}</p>
<p class="normal line">{$c->__('avatar.missing')}</p>
</li>
</ul>
{/if}

View file

@ -191,9 +191,6 @@ class Chat extends WidgetBase
$html = $this->prepareChat($jid);
//$header = $this->prepareHeader($jid);
//Header::fill($header);
RPC::call('movim_fill', 'chat_widget', $html);
RPC::call('MovimTpl.showPanel');
RPC::call('Chat.focus');
@ -212,9 +209,6 @@ class Chat extends WidgetBase
$html = $this->prepareChat($room, true);
//$header = $this->prepareHeaderRoom($room);
//Header::fill($header);
RPC::call('movim_fill', 'chat_widget', $html);
RPC::call('MovimTpl.showPanel');
RPC::call('Chat.focus');
@ -403,30 +397,6 @@ class Chat extends WidgetBase
->request();
}
/**
* @brief Prepare the contact header
*
* @param string $jid
*/
function prepareHeader($jid)
{
$view = $this->tpl();
$cd = new \Modl\ContactDAO;
$cr = $cd->getRosterItem($jid);
if(isset($cr)) {
$contact = $cr;
} else {
$contact = $cd->get($jid);
}
$view->assign('contact', $contact);
$view->assign('jid', $jid);
return $view->draw('_chat_header', true);
}
/**
* @brief Prepare the contact header
*

View file

@ -54,7 +54,6 @@ var Chat = {
},
setScrollBehaviour : function() {
var discussion = document.querySelector('#chat_widget div.contained');
console.log(discussion.dataset.muc);
if(discussion.dataset.muc != true) {
discussion.onscroll = function() {
if(this.scrollTop < 1) {
@ -86,7 +85,8 @@ var Chat = {
id = message.jidfrom + '_conversation';
if(message.body.match(/^\/me/)) {
if(message.body.match(/^\/me/)
&& bubble.querySelector('div') != null) {
bubble.querySelector('div').className = 'quote';
message.body = message.body.substr(4);
}

View file

@ -38,7 +38,6 @@ class Contact extends WidgetBase
if(!$this->validateJid($jid)) return;
$html = $this->prepareContact($jid);
//$header = $this->prepareHeader($jid, $page);
Header::fill($header);
RPC::call('movim_fill', 'contact_widget', $html);
@ -123,43 +122,6 @@ class Contact extends WidgetBase
Dialog::fill($view->draw('_contact_delete', true));
}
/*
function prepareHeader($jid, $page = 0)
{
if(!$this->validateJid($jid)) return;
$cd = new \Modl\ContactDAO;
$cr = $cd->getRosterItem($jid);
$view = $this->tpl();
$view->assign('jid', echapJS($jid));
$view->assign('page', $page);
if(isset($cr)) {
$view->assign('contactr', $cr);
$view->assign('edit',
$this->call(
'ajaxEditContact',
"'".echapJS($cr->jid)."'"));
$view->assign('delete',
$this->call(
'ajaxDeleteContact',
"'".echapJS($cr->jid)."'"));
} else {
$view->assign('contactr', null);
$c = $cd->get($jid);
if(isset($c)) {
$view->assign('contact', $c);
} else {
$view->assign('contact', null);
}
}
return $view->draw('_contact_header', true);
}
*/
function prepareEmpty($page = 0, $jid = null)
{
if($jid == null) {

View file

@ -1,5 +1,5 @@
{loop="$users"}
<li class="block" style="background-image: url();" onclick="Contact_ajaxGetContact('{$value->jid}', {$page});">
<li class="block" style="background-image: url();" onclick="Contact_ajaxGetContact('{$value->jid}', {if="$page"}{$page}{else}0{/if});">
{$url = $value->getPhoto('s')}
{if="$url"}
<span class="primary icon bubble">
@ -33,10 +33,10 @@
<span class="primary icon gray">
<i class="zmdi zmdi-book"></i>
</span>
{loop="$pages"}
<p>
<a onclick="Contact_ajaxPublic('{$key}');" class="button flat {if="$key == $page"}on{/if}">{$key+1}</a>
</p>
{loop="$pages"}
<a onclick="Contact_ajaxPublic({$key});" class="button flat {if="$key == $page"}on{/if}">{$key+1}</a>
{/loop}
</p>
</li>
{/if}

View file

@ -42,7 +42,7 @@
>
{$picture = $value->getPicture()}
{if="current(explode('.', $value->origin)) == 'nsfw'"}
<span class="icon thumb color red tiny">
<span class="primary icon thumb color red tiny">
+18
</span>
{elseif="$picture != null"}

View file

@ -106,9 +106,7 @@ class Post extends WidgetBase
->request();
$html = $this->preparePost($p);
//$header = $this->prepareHeader($id);
//Header::fill($header);
RPC::call('movim_fill', 'post_widget', $html);
RPC::call('MovimTpl.scrollHeaders');
}
@ -172,23 +170,6 @@ class Post extends WidgetBase
return $view->draw('_post_empty', true);
}
/*
function prepareHeader($id)
{
$pd = new \Modl\PostnDAO;
$p = $pd->getItem($id);
$view = $this->tpl();
if(isset($p)) {
$view->assign('post', $p);
} else {
$view->assign('post', null);
}
return $view->draw('_post_header', true);
}
*/
function preparePost($p, $external = false, $public = false)
{
$view = $this->tpl();

View file

@ -1,7 +1,7 @@
<header>
<ul class="list middle">
<li>
<span class="primary icon active" onclick="Publish.headerBack('{$server}', '{$node}', false);">
<span class="primary icon active" onclick="Publish.headerBack('{$to}', '{$node}', false);">
<i class="zmdi zmdi-arrow-back"></i>
</span>

View file

@ -7,38 +7,5 @@
</ul>
</div>
<div>
<ul class="list middle active">
<li>
<span id="back" class="primary icon" onclick="Publish.headerBack('{$server}', '{$node}', false)">
<i class="zmdi zmdi-arrow-back"></i>
</span>
<span class="control icon" onclick="Publish_ajaxHelp()">
<i class="zmdi zmdi-help"></i>
</span>
<span class="control icon" onclick="Publish_ajaxPreview(movim_form_to_json('post'))">
<i class="zmdi zmdi-eye"></i>
</span>
<span class="control icon" id="button_send"
onclick="Publish.disableSend(); Publish_ajaxPublish(movim_form_to_json('post'));">
<i class="zmdi zmdi-mail-send"></i>
</span>
{if="$post != false"}
<p>{$c->__('publish.edit')}</p>
{else}
<p>{$c->__('publish.new')}</p>
{/if}
<p>
{if="$item != null && $item->node != 'urn:xmpp:microblog:0'"}
{if="$item->name"}
{$item->name}
{else}
{$item->node}
{/if}
{else}
{$c->__('page.blog')}
{/if}
</p>
</li>
</ul>
</div>

View file

@ -2,7 +2,6 @@
article {
overflow: hidden;
/*padding-bottom: 2rem;*/
}
article header {
@ -10,21 +9,7 @@ article header {
}
/* We hide the main title because it's already here ? */
/*
article section h1 {
display: none;
}
article header h1 {
font-size: 4rem;
line-height: 12rem;
}
article header h2,
li.condensed h2 {
line-height: 3.75rem;
}
*/
article section {
font-size: 2rem;
line-height: 3rem;

View file

@ -19,7 +19,7 @@
}
main > header a,
.icon a,
.icon:not(.placeholder) a,
.color input {
color: white;
}
@ -96,14 +96,7 @@ main > header ul.list li > p:nth-last-of-type(2) + p,
header.big ul.list li > p:nth-last-of-type(2) + p {
color: white;
}
/*
.button.activity,
main > section > div > header ul.tabs > li,
main > section > div > header a:not(.classic):not(.activity):not(.action) {
border-color: white;
color: white;
}
*/
/* Gray accent : orange */
.button:not(.color),

View file

@ -31,25 +31,6 @@ ul.list.active li.active:not(.subheader) {
cursor: pointer;
}
/* Divided list */
/*
ul.list.divided:not(.spaced) > li:not(:last-child),
ul.list.divided.spaced > li:not(:last-child).subheader,
ul.list.divided.spaced > li:not(:last-child):not(.subheader):after {
border-bottom-width: 1px;
border-bottom-style: solid;
}
ul.list.divided.spaced > *:not(:last-child):after {
position: absolute;
right: 0;
bottom: 0rem;
content: "";
display: block;
width: calc(100% - 9rem);
}
*/
/* Main elements */
ul.list li > .control,
@ -96,14 +77,6 @@ ul.list li > p.line {
white-space: nowrap;
}
/* Not sure */
/*ul.list li > p > span {
float: right;
font-size: 1.5rem;
color: gray;
}
*/
ul.list li > span.active {
transition: background-color 0.25s ease;
}
@ -112,41 +85,7 @@ ul.list li > span.active:hover {
cursor: pointer;
background-color: rgba(0, 0, 0, 0.1);
}
/*
ul.list li > span.active {
overflow: hidden;
margin: -1rem;
padding: 1rem;
top: 1rem;
}
ul.list li > span.active:hover {
cursor: pointer;
}
ul.list li > span.active:after {
content: "";
background: rgba(255,255,255,0.3);
display: block;
position: absolute;
border-radius: 50%;
padding-top: 240%;
padding-left: 240%;
margin-top: -120%;
margin-left: -120%;
opacity: 0;
transition: all 1s;
}
ul.list li > span.active:active:after {
padding-top: 0;
padding-left: 0;
margin-top: 0;
margin-left: 0;
opacity: 1;
transition: 0s;
}
*/
ul.list li > p > span.second {
color: gray;
}
@ -218,25 +157,49 @@ ul.list li > .control {
}
ul.list li > .control ~ .control {
right: 8rem;
right: 5rem;
}
ul.list li > .control ~ .control ~ .control {
right: 16rem;
right: 10rem;
}
/* Limit the size of the main content */
ul.list li > .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 9rem);
width: calc(100% - 5rem);
}
ul.list li > .control ~ .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 16rem);
width: calc(100% - 10rem);
}
ul.list li > .control ~ .control ~ .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 24rem);
width: calc(100% - 15rem);
}
/* Place the other controls */
header > ul.list li > .control ~ .control {
right: 7rem;
}
header > ul.list li > .control ~ .control ~ .control {
right: 14rem;
}
/* Limit the size of the main content */
header > ul.list li > .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 7rem);
}
header > ul.list li > .control ~ .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 14rem);
}
header > ul.list li > .control ~ .control ~ .control ~ *:not(.control):not(.bubble):not(.counter) {
width: calc(100% - 21rem);
}
/* Tabs */
@ -360,7 +323,7 @@ ul li div.bubble:after {
height: 0;
}
ul li div.quote {
ul li .quote {
font-style: italic;
}
@ -380,6 +343,13 @@ ul li.oppose:not(.same) div.bubble:before {
top: 1.5rem;
}
/* Icon */
.icon.tiny {
font-size: 1.8rem;
font-weight: 600;
}
/* Menu */
ul.context_menu {

View file

@ -3,23 +3,13 @@
body > nav > ul.list li > .primary {
left: 1rem;
}
/*
body > nav > ul:first-child > a:first-child > li,
body > nav > ul:first-child > a:nth-child(2) > li {
height: 8rem;
line-height: 8rem;
}
*/
body > nav > ul:nth-child(2) li p.normal,
body > nav > ul:nth-child(3) li p.normal {
height: 6rem;
line-height: 6rem;
}
/*
body > nav > ul:first-child > a:first-child > li div.control {
line-height: 8rem;
}
*/
body > nav > ul a {
color: white;
}
@ -31,26 +21,6 @@ body > nav > ul.list.active li:hover:not(.subheader),
body > nav > ul.list.active li.active:not(.subheader) {
background-color: rgba(255, 255, 255, 0.035);
}
/*
body > nav > header.big {
overflow: hidden;
height: 7rem;
min-height: 0;
padding: 0;
}
body > nav > header.big ul {
padding: 0.5rem 0;
}
body > nav > header.big ul li .icon {
left: 1rem;
}
body > nav > header.big ul li .control {
line-height: 5rem;
}
*/
ul.oppose {
position: absolute;

View file

@ -247,105 +247,19 @@ main > header {
}
main > header > div {
/*padding-left: 9rem;*/
position: relative;
width: 35%;
display: inline-block;
/*overflow: hidden;*/
box-sizing: border-box;
/*padding-right: 1rem;*/
}
/*
main > header > div > .return > * {
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
*/
/*main > header > div > ul.active:not(.context_menu) {
float: right;
margin-right: -1rem;
}
main > header > div > ul.active:not(.context_menu) li {
float: left;
height: 7rem;
min-width: 0;
line-height: 7rem;
width: 7rem;
padding: 0;
font-size: 4rem;
}
main > header > div > ul.active:not(.context_menu) li.thin {
width: 5rem;
}
main > header > div > ul.active:not(.context_menu) li span.icon {
left: 1rem;
}
main > header > div > ul.active:not(.context_menu) li.thin span.icon {
width: 3rem;
}
*/
main > header > div:first-child:nth-last-child(2) ~ div {
width: 65%;
position: absolute;
top: 0;
right: 0;
}
/*
main > header > div > span.icon {
line-height: 7rem;
left: 0;
width: 8rem;
height: 7rem;
top: 0;
margin: 0;
}
main > header > div > .return {
padding-left: 8rem;
margin-left: -9rem;
display: inline-block;
padding-right: 2rem;
max-width: calc(100% + 10rem);
height: 7rem;
box-sizing: border-box;
}
main > header > div > form.return {
display: block;
padding-right: 0;
padding-left: 9rem;
}
*/
/* Not very beautiful… */
/*
main > header > div > .return.condensed > h2 {
line-height: 3.5rem;
font-size: 2.75rem;
margin-top: 0.7rem;
margin-bottom: -0.5rem;
}
*/
/*
main > header > div > .return > h4 {
line-height: 2.5rem;
font-size: 1.75rem;
}
main > header > div > .return.r1 { max-width: calc(100% + 3rem); }
main > header > div > .return.r2 { max-width: calc(100% - 5rem); }
main > header > div > .return.r3 { max-width: calc(100% - 12rem); }
main > header > div > .return.active:hover,
main > header > div > span.active:hover {
background-color: rgba(0, 0, 0, 0.05);
cursor: pointer;
}
*/
@media screen and (max-width: 1024px) {
main > header > div,
main > header > div:first-child:nth-last-child(2) ~ div {
@ -369,7 +283,6 @@ main > header + section {
main > section > div {
overflow-y: auto;
display: block;
/*position: relative;*/
float: left;
height: 100%;
width: 100%;