MyBB.de Forum
Plugin nur für bestimmte benutzergruppen - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html)
+--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html)
+--- Thema: Plugin nur für bestimmte benutzergruppen (/thread-10035.html)

Seiten: Seiten: 1 2 3


RE: Plugin nur für bestimmte benutzergruppen - Mak - 27.07.2008

Was dein Codeproblem angeht:
PHP-Code:
<?php
// Myvideo Video Plugin

$plugins->add_hook("parse_message""myvideo");

function 
myvideo_info()
{
    return array(
        
"name"            => "MyVideo BBCode",
        
"description"    => "Bindet Videos von MyVideo ein",
        
"website"        => "http://www.profi-webmaster.com",
        
"author"        => "Flo",
        
"authorsite"    => "http://www.profi-webmaster.com",
        
"version"        => "1.0",
    );
}

function 
myvideo_activate()
{
}

function 
myvideo_deactivate()
{
}

function 
myvideo($message) {
// Feststellen, dass Benutzer angemeldet ist
if($mybb->user['uid'] != '4') {   
// Code umwandeln
    
return preg_replace('#\[myvideo\](.*?)\[/myvideo\]#i'"<table border=\"1\" bordercolor = \"blue\" cellspacing=\"0\" cellpadding=\"0\"  >
<tr>
<td class=\"thead\" align=\"center\"><strong><a href = \"$1\" title = \"Dieses Video bei MyVideo ansehen\" target = \"_new\">MyVideo</a></stong></td>
</tr>
<tr>
<td>
<object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"470\" height=\"406\"><param name=\"movie\" value=\"http://www.myvideo.de/movie/$1\"></param><embed src=\"http://www.myvideo.de/movie/$1\" width=\"470\" height=\"406\" type=\"application/x-shockwave-flash\"></embed></object>
</td>
</tr>
</table>"
$message);
}
}
?>



RE: Plugin nur für bestimmte benutzergruppen - wWs - 27.07.2008

hmm ok das Video ist wieder zu sehen aber auch für nicht reg. User.

Ich hätte gerne das es jetzt z.B nur für Admins im Forum gezeigt wird.
Für alle anderen als Link.

Ich dachte eig. das der Code...

// Feststellen, dass Benutzer angemeldet ist
if($mybb->user['uid'] != '4') {
// Code umwandeln

Dafür ist?
4 Steht ja in dem Fall für die Benutzergruppe Admin


RE: Plugin nur für bestimmte benutzergruppen - Michael - 27.07.2008

Wie schon gesagt, ist $mybb->user['uid'] die Benutzer-ID. Wenn du die Benutzergruppen-ID abfragen willst, nimm $mybb->user['usergroup'].


RE: Plugin nur für bestimmte benutzergruppen - wWs - 27.07.2008

Sag mal bin ich blöd es will bei mir einfach nicht klick machen

admin ist doch
// Feststellen, dass Benutzer angemeldet ist
if($mybb->user['usergroup_4']) {
// Code umwandeln


RE: Plugin nur für bestimmte benutzergruppen - Jockl - 27.07.2008

Probier es mal mit dieser Varíante Wink
Code:
if($mybb->user['usergroup'] != '4'){
....
}



RE: Plugin nur für bestimmte benutzergruppen - wWs - 27.07.2008

Und trotzdem können unregestrierte User das sehen Sad


RE: Plugin nur für bestimmte benutzergruppen - Jockl - 27.07.2008

Und unregistrierte User gehören auch der usergroup 4 an? Evtl. musst Du einfach nochmal die ID prüfen und ggf. ersetzen.


RE: Plugin nur für bestimmte benutzergruppen - wWs - 27.07.2008

PHP-Code:
<td>Unregistered Not Logged In<br /></td>
<
td align="center">0<td align="right" nowrap="nowrap">
<
select name="usergroup_1" onchange="usergroup_hop(1);"

Die haben die uid 1?


RE: Plugin nur für bestimmte benutzergruppen - Jockl - 27.07.2008

Ich weiß nicht, wo diese Code-Zeilen her sind, aber wenn ich auf der Suche nach einer Gruppen-ID bin, gehe ich ins ACP -> Verwaltung -> Cache-Manager -> usergroups -> Inhalte ansehen.
Dort kannst Du für jede Gruppen die ID erkennen und entsprechend in solche Abfragen (auch verknüpft mit logischem UND und ODER) einsetzen.


RE: Plugin nur für bestimmte benutzergruppen - Michael - 27.07.2008

Irgendwie wird hier jetzt alles durcheinandergewürfelt. So wie ich das verstanden habe, sollen Gäste die Videos nicht zu sehen bekommen. Dann versuchs mal damit:
PHP-Code:
function myvideo($message) {
    global 
$mybb;
    
// Feststellen, dass Benutzer angemeldet ist
    
if($mybb->user['uid'] != '0') {
    
// Code umwandeln
        
return preg_replace('#\[myvideo\](.*?)\[/myvideo\]#i'"<table border=\"1\" bordercolor = \"blue\" cellspacing=\"0\" cellpadding=\"0\"  >
    <tr>
    <td class=\"thead\" align=\"center\"><strong><a href = \"$1\" title = \"Dieses Video bei MyVideo ansehen\" target = \"_new\">MyVideo</a></stong></td>
    </tr>
    <tr>
    <td>
    <object classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" width=\"470\" height=\"406\"><param name=\"movie\" value=\"http://www.myvideo.de/movie/$1\"></param><embed src=\"http://www.myvideo.de/movie/$1\" width=\"470\" height=\"406\" type=\"application/x-shockwave-flash\"></embed></object>
    </td>
    </tr>
    </table>"
$message);
    } else {
        return 
preg_replace('#\[myvideo\](.*?)\[/myvideo\]#i'""$message);
    }