From: Mikael Nordfeldth Date: Fri, 6 Mar 2015 22:52:25 +0000 (+0100) Subject: Choose whether to prerender the inline reply forms X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=13039434240e7738d8c9a75d2c0e8a45c2f7d239;p=quix0rs-gnu-social.git Choose whether to prerender the inline reply forms The DefaultLayout plugin will come with options to render various parts of the page by default or not. The expected default behaviour will try to imitate the original StatusNet/GNU social looks as far as possible. --- diff --git a/plugins/DefaultLayout/DefaultLayoutPlugin.php b/plugins/DefaultLayout/DefaultLayoutPlugin.php new file mode 100644 index 0000000000..9ff21c6e50 --- /dev/null +++ b/plugins/DefaultLayout/DefaultLayoutPlugin.php @@ -0,0 +1,57 @@ +. + * + * @category Plugin + * @package GNUsocial + * @author Mikael Nordfeldth + * @copyright 2014 Free Software Foundation http://fsf.org + * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0 + * @link https://www.gnu.org/software/social/ + */ + +if (!defined('GNUSOCIAL')) { exit(1); } + +class DefaultLayoutPlugin extends Plugin +{ + public $replyforms = false; + + public function onEndShowThreadedNoticeTail(NoticeListItem $nli, Notice $notice, array $notices) { + if ($this->replyforms) { + $nli->out->elementStart('li', array('class'=>'notice-reply', 'style'=>'display: none;')); + $replyForm = new NoticeForm($nli->out, array('inreplyto' => $notice->getID())); + $replyForm->show(); + $nli->out->elementEnd('li'); + } + return true; + } + + public function onPluginVersion(&$versions) + { + $versions[] = array('name' => 'Default Layout', + 'version' => GNUSOCIAL_VERSION, + 'author' => 'Mikael Nordfeldth', + 'homepage' => 'https://www.gnu.org/software/social/', + 'rawdescription' => + // TRANS: Plugin description. + _m('Optional default layout elements.')); + return true; + } +}