MyBB.de Forum
PN bei gemeldetem Beitrag - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: MyBB 1.8.x (https://www.mybb.de/forum/forum-87.html)
+--- Forum: Allgemeiner Support (https://www.mybb.de/forum/forum-88.html)
+--- Thema: PN bei gemeldetem Beitrag (/thread-32653.html)



PN bei gemeldetem Beitrag - lumpi - 19.09.2015

Moin,

soweit bin ich schon:

PHP-Code:
//pn, wenn beitrag gemeldet - start  
 $query $db->simple_select("posts","pid,uid""pid = ".$post['pid']."");
 $result $db->fetch_array($query);

   require_once MYBB_ROOT."inc/datahandlers/pm.php";
   $pmhandler = new PMDataHandler();
     
   $pm 
= array(
       "subject" => "Ein Beitrag von dir wurde gemeldet",
       "message" => "Dieser Beitrag wurde gemeldet: "  ."\n" .$lang->sprintf($lang->email_reportpost$mybb->user['username'], $mybb->settings['bbname'], $post['subject'], $mybb->settings['bburl'], str_replace('&''&'get_post_link($post['pid'], $thread['tid'])."#pid".$post['pid']), $thread['subject'], $mybb->input['reason']),
       "icon" => 0,
       "fromid" => $mybb->user['uid'],
       "toid" => !!!Hier soll eine GruppenID eingefügt werden an die die PN dann gehtalso an alle in GruppeX!!!
 );

 $pmhandler->admin_override true;
 $pmhandler->set_data($pm);
           
 if
(!$pmhandler->validate_pm())
   return false;
 else
 
{
   $pmhandler->insert_pm();
      
//pn, wenn beitrag gemeldet - ende 

Das ganze in report.php vor "$plugins->run_hooks("report_do_report_end");" eingefügt

Bei "toid" komme ich nicht weiter. Kann wer helfen?

Grüße


RE: PN bei gemeldetem Beitrag - doylecc - 20.09.2015

Nur mit der GruppenId für die Empfänger wird das nicht funktionieren. Dafür brauchst du ein Array mit allen UserId's der Gruppenmitglieder.
Das könntest du z.B. so erstellen:

PHP-Code:
$query_to $db->simple_select("users""uid");
$toid = array();

while (
$to_uids $db->fetch_array($query_to)) {
    if (is_member(GruppenId der Empfängergruppe$user $to_uids['uid'])) {
        $toid[] = $to_uids['uid'];
    }


Dann kannst du für den Datahandler einsetzen:

PHP-Code:
"toid" => $toid 



RE: PN bei gemeldetem Beitrag - lumpi - 20.09.2015

PHP-Code:
//pn, wenn beitrag gemeldet - start
$query_to $db->simple_select("users""uid");
$toid = array();

while (
$to_uids $db->fetch_array($query_to)) {
   if (is_member(GruppenId der Empfängergruppe$user $to_uids['uid'])) {
       $toid[] = $to_uids['uid'];
   }


$query $db->simple_select("posts","pid,uid""pid = ".$post['pid']."");
$result $db->fetch_array($query);

  require_once MYBB_ROOT."inc/datahandlers/pm.php";
  $pmhandler = new PMDataHandler();
    
  $pm 
= array(
      "subject" => "Ein Beitrag von dir wurde gemeldet",
      "message" => "Dieser Beitrag wurde gemeldet: "  ."\n" .$lang->sprintf($lang->email_reportpost$mybb->user['username'], $mybb->settings['bbname'], $post['subject'], $mybb->settings['bburl'], str_replace('&''&'get_post_link($post['pid'], $thread['tid'])."#pid".$post['pid']), $thread['subject'], $mybb->input['reason']),
      "icon" => 0,
      "fromid" => $mybb->user['uid'],
      "toid" => $toid 


);

$pmhandler->admin_override true;
$pmhandler->set_data($pm);
          
if(!$pmhandler->validate_pm())
  return false;
else
{
  $pmhandler->insert_pm();
     
//pn, wenn beitrag gemeldet - ende 



Meinst du so?


RE: PN bei gemeldetem Beitrag - doylecc - 20.09.2015

Ja, und dann halt in der Funktion is_member() die entsprechende GruppenId verwenden, also 4 für Admins oder 6 für Moderatoren etc.


RE: PN bei gemeldetem Beitrag - lumpi - 20.09.2015

PHP-Code:
if (is_member(4$user $to_uids['uid'])) { 

So? Dann probiere ich das mal Smile


RE: PN bei gemeldetem Beitrag - MrBrechreiz - 20.09.2015

(19.09.2015, 22:29)lumpi schrieb: Moin,

soweit bin ich schon:

PHP-Code:
//pn, wenn beitrag gemeldet - start  
 $query $db->simple_select("posts","pid,uid""pid = ".$post['pid']."");
 $result $db->fetch_array($query);

   require_once MYBB_ROOT."inc/datahandlers/pm.php";
   $pmhandler = new PMDataHandler();
     
   $pm 
= array(
       "subject" => "Ein Beitrag von dir wurde gemeldet",
       "message" => "Dieser Beitrag wurde gemeldet: "  ."\n" .$lang->sprintf($lang->email_reportpost$mybb->user['username'], $mybb->settings['bbname'], $post['subject'], $mybb->settings['bburl'], str_replace('&''&'get_post_link($post['pid'], $thread['tid'])."#pid".$post['pid']), $thread['subject'], $mybb->input['reason']),
       "icon" => 0,
       "fromid" => $mybb->user['uid'],
       "toid" => !!!Hier soll eine GruppenID eingefügt werden an die die PN dann gehtalso an alle in GruppeX!!!
 );

 $pmhandler->admin_override true;
 $pmhandler->set_data($pm);
           
 if
(!$pmhandler->validate_pm())
   return false;
 else
 
{
   $pmhandler->insert_pm();
      
//pn, wenn beitrag gemeldet - ende 

Das ganze in report.php vor "$plugins->run_hooks("report_do_report_end");" eingefügt

Bei "toid" komme ich nicht weiter. Kann wer helfen?

Grüße


Dumm ist nur, dass nicht Du selbst den Code erstellt hast, sondern nur kopiert wurde Sad


RE: PN bei gemeldetem Beitrag - lumpi - 20.09.2015

Warum sollte ich das auch nochmal machen, wenn es doch schon gemacht wurde?


RE: PN bei gemeldetem Beitrag - MrBrechreiz - 20.09.2015

Weil Du "soweit bin ich schon:" geschrieben hattest und es somit als deine Arbeit ausgibst. Ist aber Wurscht.

Funktioniert es denn mit waldo´s Angaben ?