]> git.mxchange.org Git - friendica.git/blobdiff - mod/photos.php
Issue 8605: "show less" now displays "show less"
[friendica.git] / mod / photos.php
index 65e8651b20f514a87c37fa6b4e17efae20297365..1a16f68026ffd39b50bd499bde525fe2231070fc 100644 (file)
@@ -25,6 +25,7 @@ use Friendica\Content\Nav;
 use Friendica\Content\Pager;
 use Friendica\Content\Text\BBCode;
 use Friendica\Core\ACL;
+use Friendica\Core\Addon;
 use Friendica\Core\Hook;
 use Friendica\Core\Logger;
 use Friendica\Core\Renderer;
@@ -46,7 +47,7 @@ use Friendica\Util\Crypto;
 use Friendica\Util\DateTimeFormat;
 use Friendica\Util\Images;
 use Friendica\Util\Map;
-use Friendica\Util\Security;
+use Friendica\Security\Security;
 use Friendica\Util\Strings;
 use Friendica\Util\Temporal;
 use Friendica\Util\XML;
@@ -394,7 +395,6 @@ function photos_post(App $a)
                        $arr['guid']          = System::createUUID();
                        $arr['uid']           = $page_owner_uid;
                        $arr['uri']           = $uri;
-                       $arr['parent-uri']    = $uri;
                        $arr['post-type']     = Item::PT_IMAGE;
                        $arr['wall']          = 1;
                        $arr['resource-id']   = $photo['resource-id'];
@@ -559,7 +559,6 @@ function photos_post(App $a)
                                        $arr['guid']          = System::createUUID();
                                        $arr['uid']           = $page_owner_uid;
                                        $arr['uri']           = $uri;
-                                       $arr['parent-uri']    = $uri;
                                        $arr['wall']          = 1;
                                        $arr['contact-id']    = $owner_record['id'];
                                        $arr['owner-name']    = $owner_record['name'];
@@ -790,7 +789,6 @@ function photos_post(App $a)
        $arr['guid']          = System::createUUID();
        $arr['uid']           = $page_owner_uid;
        $arr['uri']           = $uri;
-       $arr['parent-uri']    = $uri;
        $arr['type']          = 'photo';
        $arr['wall']          = 1;
        $arr['resource-id']   = $resource_id;
@@ -1038,7 +1036,6 @@ function photos_content(App $a)
                        return Renderer::replaceMacros(Renderer::getMarkupTemplate('confirm.tpl'), [
                                '$method' => 'post',
                                '$message' => DI::l10n()->t('Do you really want to delete this photo album and all its photos?'),
-                               '$extra_inputs' => [],
                                '$confirm' => DI::l10n()->t('Delete Album'),
                                '$confirm_url' => $drop_url,
                                '$confirm_name' => 'dropalbum',
@@ -1145,7 +1142,6 @@ function photos_content(App $a)
                        return Renderer::replaceMacros(Renderer::getMarkupTemplate('confirm.tpl'), [
                                '$method' => 'post',
                                '$message' => DI::l10n()->t('Do you really want to delete this photo?'),
-                               '$extra_inputs' => [],
                                '$confirm' => DI::l10n()->t('Delete Photo'),
                                '$confirm_url' => $drop_url,
                                '$confirm_name' => 'delete',
@@ -1365,19 +1361,18 @@ function photos_content(App $a)
                        $tpl = Renderer::getMarkupTemplate('photo_item.tpl');
                        $return_path = DI::args()->getCommand();
 
-                       if ($cmd === 'view' && ($can_post || Security::canWriteToUserWall($owner_uid))) {
-                               $like_tpl = Renderer::getMarkupTemplate('like_noshare.tpl');
-                               $likebuttons = Renderer::replaceMacros($like_tpl, [
-                                       '$id' => $link_item['id'],
-                                       '$likethis' => DI::l10n()->t("I like this \x28toggle\x29"),
-                                       '$dislike' => DI::pConfig()->get(local_user(), 'system', 'hide_dislike') ? '' : DI::l10n()->t("I don't like this \x28toggle\x29"),
-                                       '$wait' => DI::l10n()->t('Please wait'),
-                                       '$return_path' => DI::args()->getQueryString(),
-                               ]);
-                       }
-
                        if (!DBA::isResult($items)) {
                                if (($can_post || Security::canWriteToUserWall($owner_uid))) {
+                                       /*
+                                        * Hmmm, code depending on the presence of a particular addon?
+                                        * This should be better if done by a hook
+                                        */
+                                       $qcomment = null;
+                                       if (Addon::isEnabled('qcomment')) {
+                                               $words = DI::pConfig()->get(local_user(), 'qcomment', 'words');
+                                               $qcomment = $words ? explode("\n", $words) : [];
+                                       }
+
                                        $comments .= Renderer::replaceMacros($cmnt_tpl, [
                                                '$return_path' => '',
                                                '$jsreload' => $return_path,
@@ -1392,7 +1387,7 @@ function photos_content(App $a)
                                                '$preview' => DI::l10n()->t('Preview'),
                                                '$loading' => DI::l10n()->t('Loading...'),
                                                '$sourceapp' => DI::l10n()->t($a->sourcename),
-                                               '$ww' => '',
+                                               '$qcomment' => $qcomment,
                                                '$rand_num' => Crypto::randomDigits(12)
                                        ]);
                                }
@@ -1417,14 +1412,24 @@ function photos_content(App $a)
                                }
 
                                if (!empty($conv_responses['like'][$link_item['uri']])) {
-                                       $like = format_like($conv_responses['like'][$link_item['uri']], $conv_responses['like'][$link_item['uri'] . '-l'], 'like', $link_item['id']);
+                                       $like = format_activity($conv_responses['like'][$link_item['uri']]['links'], 'like', $link_item['id']);
                                }
 
                                if (!empty($conv_responses['dislike'][$link_item['uri']])) {
-                                       $dislike = format_like($conv_responses['dislike'][$link_item['uri']], $conv_responses['dislike'][$link_item['uri'] . '-l'], 'dislike', $link_item['id']);
+                                       $dislike = format_activity($conv_responses['dislike'][$link_item['uri']]['links'], 'dislike', $link_item['id']);
                                }
 
                                if (($can_post || Security::canWriteToUserWall($owner_uid))) {
+                                       /*
+                                        * Hmmm, code depending on the presence of a particular addon?
+                                        * This should be better if done by a hook
+                                        */
+                                       $qcomment = null;
+                                       if (Addon::isEnabled('qcomment')) {
+                                               $words = DI::pConfig()->get(local_user(), 'qcomment', 'words');
+                                               $qcomment = $words ? explode("\n", $words) : [];
+                                       }
+
                                        $comments .= Renderer::replaceMacros($cmnt_tpl,[
                                                '$return_path' => '',
                                                '$jsreload' => $return_path,
@@ -1438,7 +1443,7 @@ function photos_content(App $a)
                                                '$submit' => DI::l10n()->t('Submit'),
                                                '$preview' => DI::l10n()->t('Preview'),
                                                '$sourceapp' => DI::l10n()->t($a->sourcename),
-                                               '$ww' => '',
+                                               '$qcomment' => $qcomment,
                                                '$rand_num' => Crypto::randomDigits(12)
                                        ]);
                                }
@@ -1488,6 +1493,16 @@ function photos_content(App $a)
                                        ]);
 
                                        if (($can_post || Security::canWriteToUserWall($owner_uid))) {
+                                               /*
+                                                * Hmmm, code depending on the presence of a particular addon?
+                                                * This should be better if done by a hook
+                                                */
+                                               $qcomment = null;
+                                               if (Addon::isEnabled('qcomment')) {
+                                                       $words = DI::pConfig()->get(local_user(), 'qcomment', 'words');
+                                                       $qcomment = $words ? explode("\n", $words) : [];
+                                               }
+
                                                $comments .= Renderer::replaceMacros($cmnt_tpl, [
                                                        '$return_path' => '',
                                                        '$jsreload' => $return_path,
@@ -1501,13 +1516,35 @@ function photos_content(App $a)
                                                        '$submit' => DI::l10n()->t('Submit'),
                                                        '$preview' => DI::l10n()->t('Preview'),
                                                        '$sourceapp' => DI::l10n()->t($a->sourcename),
-                                                       '$ww' => '',
+                                                       '$qcomment' => $qcomment,
                                                        '$rand_num' => Crypto::randomDigits(12)
                                                ]);
                                        }
                                }
                        }
 
+                       $responses = [];
+                       foreach ($conv_responses as $verb => $activity) {
+                               if (isset($activity[$link_item['uri']])) {
+                                       $responses[$verb] = $activity[$link_item['uri']];
+                               }
+                       }
+
+                       if ($cmd === 'view' && ($can_post || Security::canWriteToUserWall($owner_uid))) {
+                               $like_tpl = Renderer::getMarkupTemplate('like_noshare.tpl');
+                               $likebuttons = Renderer::replaceMacros($like_tpl, [
+                                       '$id' => $link_item['id'],
+                                       '$like' => DI::l10n()->t('Like'),
+                                       '$like_title' => DI::l10n()->t('I like this (toggle)'),
+                                       '$dislike' => DI::l10n()->t('Dislike'),
+                                       '$wait' => DI::l10n()->t('Please wait'),
+                                       '$dislike_title' => DI::l10n()->t('I don\'t like this (toggle)'),
+                                       '$hide_dislike' => DI::pConfig()->get(local_user(), 'system', 'hide_dislike'),
+                                       '$responses' => $responses,
+                                       '$return_path' => DI::args()->getQueryString(),
+                               ]);
+                       }
+
                        $paginate = $pager->renderFull($total);
                }