]> git.mxchange.org Git - friendica.git/blobdiff - view/theme/duepuntozero/theme.php
Merge pull request #12440 from MrPetovan/bug/fatal-errors
[friendica.git] / view / theme / duepuntozero / theme.php
index ba3f25d3e26e002b461e8d97ac433d3ddca286e4..729c5bb0852a2314c0e77157daa16404c5686a28 100644 (file)
 <?php
-
-function duepuntozero_init(&$a) {
-
-$a->theme_info = array();
-set_template_engine($a, 'smarty3');
-
-    $colorset = get_pconfig( local_user(), 'duepuntozero','colorset');
-    if (!$colorset)
-       $colorset = get_config('duepuntozero', 'colorset');          // user setting have priority, then node settings
-    if ($colorset) {
-        if ($colorset == 'greenzero')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/greenzero.css" type="text/css" media="screen" />'."\n";
-        if ($colorset == 'purplezero')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/purplezero.css" type="text/css" media="screen" />'."\n";
-        if ($colorset == 'easterbunny')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/easterbunny.css" type="text/css" media="screen" />'."\n";
-        if ($colorset == 'darkzero')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/darkzero.css" type="text/css" media="screen" />'."\n";
-        if ($colorset == 'comix')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/comix.css" type="text/css" media="screen" />'."\n";
-        if ($colorset == 'slackr')
-            $a->page['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/slackr.css" type="text/css" media="screen" />'."\n";
-    }
-$a->page['htmlhead'] .= <<< EOT
-<script>
-function insertFormatting(comment,BBcode,id) {
-       
-               var tmpStr = $("#comment-edit-text-" + id).val();
-               if(tmpStr == comment) {
-                       tmpStr = "";
-                       $("#comment-edit-text-" + id).addClass("comment-edit-text-full");
-                       $("#comment-edit-text-" + id).removeClass("comment-edit-text-empty");
-                       openMenu("comment-edit-submit-wrapper-" + id);
-                       $("#comment-edit-text-" + id).val(tmpStr);
-               }
-
-       textarea = document.getElementById("comment-edit-text-" +id);
-       if (document.selection) {
-               textarea.focus();
-               selected = document.selection.createRange();
-               if (BBcode == "url"){
-                       selected.text = "["+BBcode+"]" + "http://" +  selected.text + "[/"+BBcode+"]";
-                       } else                  
-               selected.text = "["+BBcode+"]" + selected.text + "[/"+BBcode+"]";
-       } else if (textarea.selectionStart || textarea.selectionStart == "0") {
-               var start = textarea.selectionStart;
-               var end = textarea.selectionEnd;
-               if (BBcode == "url"){
-                       textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + "http://" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
-                       } else
-               textarea.value = textarea.value.substring(0, start) + "["+BBcode+"]" + textarea.value.substring(start, end) + "[/"+BBcode+"]" + textarea.value.substring(end, textarea.value.length);
+/**
+ * @copyright Copyright (C) 2010-2022, the Friendica project
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ *
+ */
+
+use Friendica\App;
+use Friendica\Core\Renderer;
+use Friendica\DI;
+
+/*
+ * This script can be included even when the app is in maintenance mode which requires us to avoid any config call
+ */
+
+function duepuntozero_init(App $a) {
+
+       Renderer::setActiveTemplateEngine('smarty3');
+
+       $colorset = null;
+
+       if (DI::mode()->has(App\Mode::MAINTENANCEDISABLED)) {
+               $colorset = DI::pConfig()->get(DI::userSession()->getLocalUserId(), 'duepuntozero', 'colorset');
+               if (!$colorset)
+                       $colorset = DI::config()->get('duepuntozero', 'colorset');          // user setting have priority, then node settings
        }
-       return true;
-}
 
+       if ($colorset) {
+               if ($colorset == 'greenzero')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/greenzero.css" type="text/css" media="screen" />' . "\n";
+               if ($colorset == 'purplezero')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/purplezero.css" type="text/css" media="screen" />' . "\n";
+               if ($colorset == 'easterbunny')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/easterbunny.css" type="text/css" media="screen" />' . "\n";
+               if ($colorset == 'darkzero')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/darkzero.css" type="text/css" media="screen" />' . "\n";
+               if ($colorset == 'comix')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/comix.css" type="text/css" media="screen" />' . "\n";
+               if ($colorset == 'slackr')
+                       DI::page()['htmlhead'] .= '<link rel="stylesheet" href="view/theme/duepuntozero/deriv/slackr.css" type="text/css" media="screen" />' . "\n";
+       }
+DI::page()['htmlhead'] .= <<< EOT
+<script>
 function cmtBbOpen(comment, id) {
-       if($(comment).hasClass('comment-edit-text-full')) {
+       if ($(comment).hasClass('comment-edit-text-full')) {
                $(".comment-edit-bb-" + id).show();
                return true;
        }
        return false;
 }
 function cmtBbClose(comment, id) {
-//     if($(comment).hasClass('comment-edit-text-empty')) {
-//             $(".comment-edit-bb-" + id).hide();
-//             return true;
-//     }
        return false;
 }
 $(document).ready(function() {
 
-$('html').click(function() { $("#nav-notifications-menu" ).hide(); });
+       $('html').click(function() { $("#nav-notifications-menu" ).hide(); });
 
-$('.group-edit-icon').hover(
-       function() {
-               $(this).addClass('icon'); $(this).removeClass('iconspacer');},
-       function() {
-               $(this).removeClass('icon'); $(this).addClass('iconspacer');}
+       $('.group-edit-icon').hover(
+               function() {
+                       $(this).addClass('icon'); $(this).removeClass('iconspacer');},
+               function() {
+                       $(this).removeClass('icon'); $(this).addClass('iconspacer');}
        );
 
-$('.sidebar-group-element').hover(
-       function() {
-               id = $(this).attr('id');
-               $('#edit-' + id).addClass('icon'); $('#edit-' + id).removeClass('iconspacer');},
+       $('.sidebar-group-element').hover(
+               function() {
+                       id = $(this).attr('id');
+                       $('#edit-' + id).addClass('icon'); $('#edit-' + id).removeClass('iconspacer');},
 
-       function() {
-               id = $(this).attr('id');
-               $('#edit-' + id).removeClass('icon');$('#edit-' + id).addClass('iconspacer');}
+               function() {
+                       id = $(this).attr('id');
+                       $('#edit-' + id).removeClass('icon');$('#edit-' + id).addClass('iconspacer');}
        );
 
 
-$('.savedsearchdrop').hover(
-       function() {
-               $(this).addClass('drop'); $(this).addClass('icon'); $(this).removeClass('iconspacer');},
-       function() {
-               $(this).removeClass('drop'); $(this).removeClass('icon'); $(this).addClass('iconspacer');}
+       $('.savedsearchdrop').hover(
+               function() {
+                       $(this).addClass('drop'); $(this).addClass('icon'); $(this).removeClass('iconspacer');},
+               function() {
+                       $(this).removeClass('drop'); $(this).removeClass('icon'); $(this).addClass('iconspacer');}
        );
 
-$('.savedsearchterm').hover(
-       function() {
-               id = $(this).attr('id');
-               $('#drop-' + id).addClass('icon');      $('#drop-' + id).addClass('drophide'); $('#drop-' + id).removeClass('iconspacer');},
+       $('.savedsearchterm').hover(
+               function() {
+                       id = $(this).attr('id');
+                       $('#drop-' + id).addClass('icon');      $('#drop-' + id).addClass('drophide'); $('#drop-' + id).removeClass('iconspacer');},
 
-       function() {
-               id = $(this).attr('id');
-               $('#drop-' + id).removeClass('icon');$('#drop-' + id).removeClass('drophide'); $('#drop-' + id).addClass('iconspacer');}
+               function() {
+                       id = $(this).attr('id');
+                       $('#drop-' + id).removeClass('icon');$('#drop-' + id).removeClass('drophide'); $('#drop-' + id).addClass('iconspacer');}
        );
-
 });
-
-
 </script>
 EOT;
 }
+
+/**
+ * @param int|null $uid
+ * @return null
+ * @see \Friendica\Core\Theme::getBackgroundColor()
+ * @TODO Implement this function
+ */
+function duepuntozero_get_background_color(int $uid = null)
+{
+       return null;
+}
+
+/**
+ * @param int|null $uid
+ * @return null
+ * @see \Friendica\Core\Theme::getThemeColor()
+ * @TODO Implement this function
+ */
+function duepuntozero_get_theme_color(int $uid = null)
+{
+       return null;
+}