Beiträge: 7.014
Themen: 4.707
Registriert seit: 06.12.2006
13.09.2014, 03:40
(Dieser Beitrag wurde zuletzt bearbeitet: 12.11.2024, 11:25 von MyBB.de Bot .)
Eine neue Erweiterung wurde veröffentlicht:
Spoiler MyCode
Zitat: This is a new and improved version of my Spoiler MyCode available on the old mods site. This has been updated to work with MyBB 1.8.x and contains a fresh new look to go along with the new look of MyBB.
To install; upload the single file to /inc/plugins and activate it in your AdminCP.
Then, for each of the themes you have installed, you need to add in some new CSS. This CSS is based off of the MyBB Default theme for 1.8
Code:
.spoiler_wrap {
margin: 4px 0;
}
.spoiler_header {
background: #0f0f0f url(images/tcat.png) repeat-x;
color: #fff;
border-top: 1px solid #444;
border-bottom: 1px solid #000;
padding: 0;
font-size: 12px;
}
.spoiler_body {
background: FFF;
padding: 4px;
border: 1px solid #CCC;
border-top: 0;
color: #000;
}
.spoiler_header .expandspoiler {
float: right;
cursor: pointer;
margin-top: 2px;
margin-right: 3px;
}
.spoiler_header a:link, .spoiler_header a:visited {
display: block;
padding: 6px;
text-decoration: none;
color: #FFF;
}
Beiträge: 184
Themen: 17
Registriert seit: 22.03.2016
MyBB-Version: 1.8.7
Hallo,
bevor ich das ausprobiere - weiß jemand, wie man damit in den Texteditoren einen Spoiler-Eintrag markiert bzw schreibt - gibts da einen zusätzlichen Editor-Menü-Eintrag durch die Installation?
Und: Kann diesen Spoiler dann jeder - auch nicht angemeldete Gäste - anklicken und sehen? Das würde ich nämlich nicht wollen, also man sollte schon registriert/angemeldet im Forum sein - oder gibts da ein anderes Plug-In?
Danke Euch!
Beiträge: 184
Themen: 17
Registriert seit: 22.03.2016
MyBB-Version: 1.8.7
Hab grade das hier gefunden:
https://community.mybb.com/mods.php?action=view&pid=614
Das hätte so einen Editor-Menü-Button, das css wird wohl auch gleich installiert, beides schon mal ganz gut...
Aber mit Benutzerberechtigungen ist das wohl auch nicht...
Beiträge: 714
Themen: 58
Registriert seit: 20.10.2016
MyBB-Version: 1.8.xx
24.05.2019, 10:47
(Dieser Beitrag wurde zuletzt bearbeitet: 24.05.2019, 10:56 von lenox .)
Moin zusammen,
ich versuche gerade den Text Spoiler zu "Mehr anzeigen" und "Weniger anzeigen" abzuändern. Wie man auf den Screenshots sieht wird der Text auch angezeigt, bis ich den geöffneten Spoiler wieder schließe, dann steht da plötzlich wieder "Spoiler" und nicht "Mehr anzeigen".
Hab ich da etwas übersehen das nach dem schließen des Spoilers wieder der Text Spoiler ausgegeben wird? Hier der Code der php, änderung habe ich in Zeile 34 vorgenommen.
PHP-Code:
<?php /** * Spoiler MyCode * Copyright 2014 Sephiroth, All Rights Reserved * * Website: http://www.sephiroth.ws * License: http://www.mybb.com/about/license * */ // Disallow direct access to this file for security reasons if(! defined ( "IN_MYBB" )) { die( "Direct initialization of this file is not allowed.<br /><br />Please make sure IN_MYBB is defined." ); } $plugins -> add_hook ( "parse_message" , "spoiler_run" ); function spoiler_info () { return array( "name" => "Spoiler MyCode" , "description" => "Hides text specified in the [spoiler] tag." , "website" => "http://www.sephiroth.ws" , "author" => "Sephiroth" , "authorsite" => "http://www.sephiroth.ws" , "version" => "1.8" , "guid" => "" , "compatibility" => "18*" ); } function spoiler_run ( $message ) { $pattern = array( "#\[spoiler=(?:"|\"|')?([a-zA-Z0-9!:\#\.\? \',\-\(\)]*?)[\"']?(?:"|\"|')?\](.*?)\[\/spoiler\](\r\n?|\n?)#si" , "#\[spoiler\](.*?)\[\/spoiler\](\r\n?|\n?)#si" ,); $replace = array( "<div class=\"spoiler_wrap\"><div class=\"spoiler_header\"><a href=\"javascript:void(0);\" onclick=\"javascript:if(parentNode.parentNode.getElementsByTagName('div')[1].style.display=='block'){parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.innerHTML='<img title="[+]" alt="[+]" src="/images/collapse_collapsed.png" class="expandspoiler" />$1';}else {parentNode.parentNode.getElementsByTagName('div')[1].style.display='block';this.innerHTML='<img title="[-]" alt="[-]" src="/images/collapse.png" class="expandspoiler" />$1';}\"><img title=\"[+]\" alt=\"[+]\" src=\"/images/collapse_collapsed.png\" class=\"expandspoiler\" />$1</a></div><div class=\"spoiler_body\" style=\"display: none;\">$2</div></div>" , "<div class=\"spoiler_wrap\"><div class=\"spoiler_header\"><a href=\"javascript:void(0);\" onclick=\"javascript:if(parentNode.parentNode.getElementsByTagName('div')[1].style.display=='block'){parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.innerHTML='<img title="[+]" alt="[+]" src="/images/collapse_collapsed.png" class="expandspoiler" />Spoiler';}else {parentNode.parentNode.getElementsByTagName('div')[1].style.display='block';this.innerHTML='<img title="[-]" alt="[-]" src="/images/collapse.png" class="expandspoiler" />Spoiler';}\"><img title=\"[+]\" alt=\"[+]\" src=\"/images/collapse_collapsed.png\" class=\"expandspoiler\" />Spoiler</a></div><div class=\"spoiler_body\" style=\"display: none;\">$1</div></div>" ); while( preg_match ( $pattern [ 0 ], $message ) or preg_match ( $pattern [ 1 ], $message )) { $message = preg_replace ( $pattern , $replace , $message ); } $find = array( "#<div class=\"spoiler_body\">(\r\n?|\n?)#" , "#(\r\n?|\n?)</div>#" ); $replace = array( "<div class=\"spoiler_body\">" , "</div>" ); $message = preg_replace ( $find , $replace , $message ); return $message ; } ?>
zu
PHP-Code:
$replace = array( "<div class=\"spoiler_wrap\"><div class=\"spoiler_header\"><a href=\"javascript:void(0);\" onclick=\"javascript:if(parentNode.parentNode.getElementsByTagName('div')[1].style.display=='block'){parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.innerHTML='<img title="[+]" alt="[+]" src="/images/collapse_collapsed.png" class="expandspoiler" />$1';}else {parentNode.parentNode.getElementsByTagName('div')[1].style.display='block';this.innerHTML='<img title="[-]" alt="[-]" src="/images/collapse.png" class="expandspoiler" />$1';}\"><img title=\"[+]\" alt=\"[+]\" src=\"/images/collapse_collapsed.png\" class=\"expandspoiler\" />$1</a></div><div class=\"spoiler_body\" style=\"display: none;\">$2</div></div>" , "<div class=\"spoiler_wrap\"><div class=\"spoiler_header\"><a href=\"javascript:void(0);\" onclick=\"javascript:if(parentNode.parentNode.getElementsByTagName('div')[1].style.display=='block'){parentNode.parentNode.getElementsByTagName('div')[1].style.display='none';this.innerHTML='<img title="[+]" alt="[+]" src="/images/collapse_collapsed.png" class="expandspoiler" />Spoiler';}else {parentNode.parentNode.getElementsByTagName('div')[1].style.display='block';this.innerHTML='<img title="[-]" alt="[-]" src="/images/collapse.png" class="expandspoiler" />Weniger anzeigen ';}\"><img title=\"[+]\" alt=\"[+]\" src=\"/images/collapse_collapsed.png\" class=\"expandspoiler\" />Mehr anzeigen</a></div><div class=\"spoiler_body\" style=\"display: none;\">$1</div></div>" );
Hat jemand eine Idee warum das Problem auftritt?
Edit: Hat sich erledigt Fehler gefunden
Angehängte Dateien
Thumbnail(s)