MyBB.de Forum
Globale Templates Berechtigung - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Globale Templates Berechtigung (/thread-34652.html)

Seiten: 1 2


Globale Templates Berechtigung - ShareColley - 22.05.2017

Hallo Leute Smile

Ich habe in meinem Forum mehrere Globale Templates, um per iframe externe Seiten (ownCloud, Ampache etc) im Forum anzuzeigen. 
Ich möchte aber, dass bestimmte Templates nur bestimmten Usern/Gruppen angezeigt wird. Alle anderen sollen eine Benachrichtigung erhalten, dass sie keinen Zugriff haben.

Wie kann ich das realisieren? Hat jemand 'ne Idee?


Danke und guten Gruß Wink


RE: Globale Templates Berechtigung - MrBrechreiz - 22.05.2017

Templates geben nur den HTML Inhalt wieder nicht den Seiten-Inhalt. Dafür ist die .php oder .html Seite zuständig in der Du die Berechtigungen setzen musst.


RE: Globale Templates Berechtigung - ShareColley - 22.05.2017

(22.05.2017, 12:33)MrBrechreiz schrieb: Dafür ist die .php Seite zuständig in der Du die Berechtigungen setzen musst.

Danke für die schnelle Antwort Smile

Hast Du 'n Tipp oder 'ne Idee, wie ich das bewerkstelligen kann? Das wäre lieb...


RE: Globale Templates Berechtigung - MrBrechreiz - 22.05.2017

Wie sieht denn dein Code für die Seite aus ?


RE: Globale Templates Berechtigung - ShareColley - 22.05.2017

(22.05.2017, 12:39)MrBrechreiz schrieb: Wie sieht denn dein Code für die Seite aus ?

Hups... ach ja... da war was  Toungue

PHP:
Code:
<?php
define("IN_MYBB", 1);
//define("NO_ONLINE", 1); // Wenn Seite nicht in Wer ist online-Liste auftauchen soll

require("global.php");

add_breadcrumb("KKNMusik");

eval("\$kknmusik = \"".$templates->get("kknmusik")."\";"); // Hier wird das erstellte Template geladen
output_page($kknmusik);
?>

Template:
Code:
<html>
<head>
<title>{$settings['bbname']} - KKNMusik</title>
{$headerinclude}
</head>
<body>
{$header}
<table border="0" cellspacing="{$theme['borderwidth']}" cellpadding="{$theme['tablespace']}" class="tborder">
<tr>
<td class="thead"><strong>KKNMusik</strong></td>
</tr>
<tr>
<td class="trow1" align="center">
<a href="./kknmusikweb.php">Zu KoKoNetMusikWeb</a>
<p><iframe height="720" width="950" src="LINK ZUR SEITE"></iframe></p>
<p><a href="LINK ZUR SEITE" target="_blank">Zur KoKoNetCloud mit Login (FTP-Zugangsdaten)</a></p>
<p><a title="KoKoNetMusik" href="LINK ZUR SEITE" target="_blank">Zur direkten Ansicht (Link)</a></p>
</td>
</tr>
</table>
{$footer}
</body>
</html>

Brauchste nochwas?

Schon mal Danke Wink


RE: Globale Templates Berechtigung - MrBrechreiz - 22.05.2017

Wenn die Seite für Gäste nicht sichtbar sein soll, kannst Du nach

PHP-Code:
require("global.php"); 

dies einfügen

PHP-Code:
if($mybb->user['uid'] == 0
{
    
error_no_permission();


Damit bekommen Gäste das Anmelde-Fenster. Oder alternativ statt

PHP-Code:
if($mybb->user['uid'] == 0
{
    
error_no_permission();


dies

PHP-Code:
if($mybb->user['uid'] == 0
{
    
error("HIER DEINEN TEXT EINTRAGEN DEN DIE GÄSTE SEHEN SOLLEN");




RE: Globale Templates Berechtigung - ShareColley - 22.05.2017

(22.05.2017, 13:02)MrBrechreiz schrieb: Wenn die Seite für Gäste nicht sichtbar sein soll, kannst Du nach

PHP-Code:
require("global.php"); 

dies einfügen

PHP-Code:
if($mybb->user['uid'] == 0
{
error_no_permission();


Damit bekommen Gäste das Anmelde-Fenster. Oder alternativ statt

PHP-Code:
if($mybb->user['uid'] == 0
{
error_no_permission();


dies

PHP-Code:
if($mybb->user['uid'] == 0
{
error("HIER DEINEN TEXT EINTRAGEN DEN DIE GÄSTE SEHEN SOLLEN");


Funzt das auch mit Gruppen (Gruppe ausschliessen)? Z.B.:
Code:
[php]
if($mybb->group['gid'] == 0)
{
error("HIER DEINEN TEXT EINTRAGEN DEN DIE GÄSTE SEHEN SOLLEN");
}
[/php]

Das wär genau, was ich suche...


RE: Globale Templates Berechtigung - MrBrechreiz - 22.05.2017

Ja das geht, aber wenn es NUR Gäste betrifft, kannst Du den og. Code verwenden, denn Gäste haben die UID 0.

Nachtrag:

Wenn es dir wirklich Wichtig ist dies über Gruppen zu Regeln, kannst Du auch dies eintragen.

PHP-Code:
if(in_array($mybb->user['usergroup'], array('1','5','7'))) 
{
    
error_no_permission();


Somit sind Gäste, die sich eben erst registriert haben aber noch nicht freigeschaltet sind und gebannte von der Seite ausgeschlossen.


RE: Globale Templates Berechtigung - ShareColley - 22.05.2017

(22.05.2017, 13:15)MrBrechreiz schrieb: Ja das geht, aber wenn es NUR Gäste betrifft, kannst Du den og. Code verwenden, denn Gäste haben die UID 0.

Ich habe insgesamt 4 Gruppen, die ausgesperrt werden müssen  Toungue Gäste gehören definitiv dazu...

Klappt das damit? Kann ich mehrere Gruppen-IDs (Komma-Trennung) angeben?
PHP-Code:
if($mybb->group['gid'] == 0
{
error("HIER DEINEN TEXT EINTRAGEN DEN DIE GÄSTE SEHEN SOLLEN");




RE: Globale Templates Berechtigung - MrBrechreiz - 22.05.2017

Habe meinen Beitrag über dir bearbeitet. Da kannst Du sehen wie es geregelt wird.