Jump to content
InvisionCommunity.de - Der Deutsche Invision Community Support
Sign in to follow this  
Minotauro

PopUp in PHP

Recommended Posts

Um Popus zu generieren brauchst du auch weiterhin Javascript, nur die Logik, wann es aufgerufen wird, kannst du mit PHP realisieren. ;)

Soll es denn innerhalb der Forensoftware sein?

Share this post


Link to post

Schritt 1: Zusätzliches Feld in der ibf_members

ALTER TABLE `ibf_members` ADD `mod_weeklypopup` TINYINT(3)  UNSIGNED DEFAULT "0";

Schritt 2: Änderung in der functions.php

Suchen:


                             m.mod_posts, m.language, m.skin, m.new_msg, m.show_popup, m.msg_total, m.time_offset, m.posts, m.joined, m.last_post,
                 m.last_visit, m.last_activity, m.dst_in_use, m.view_prefs, m.org_perm_id, m.temp_ban, m.sub_end,
            $DB->query("SELECT moderator.mid as is_mod, moderator.allow_warn, m.id, m.name, m.mgroup, m.password, m.email, m.restrict_post, m.view_sigs, m.view_avs, m.view_pop, m.view_img, m.auto_track,
[/code]




Direkt dahinter folgendes einfügen:



[code]m.mod_weeklypopup,[/code]
Suchen:
[code]  //---------------------------------------
 // Do we have a pop up to show?
 //---------------------------------------

 if ($ibforums->member['show_popup'])
 {
   $DB->query("UPDATE ibf_members SET show_popup=0 WHERE id={$ibforums->member['id']}");

   if ( $ibforums->input['act'] != 'Msg' )
   {
   $pm_js = $skin_universal->PM_popup();
   }
 }[/code]
Darunter einfügen.
[code]  $calweek = date("W",time());
 
 if ($ibforums->member['mod_weeklypopup'] != $calweek)
 {
   $DB->query("UPDATE ibf_members SET mod_weeklypopup=$calweek WHERE id={$ibforums->member['id']}");
   
   $pm_js .= $skin_universal->mod_weekly_popup();
 }[/code]
Schritt 3: Änderungen in der skin_global.php Überhalb von
[code]}

?>[/code]
einfügen:
[code]function mod_weekly_popup() {
global $ibforums;
return <<<EOF
    <script language='Javascript' type="text/javascript">
    <!--
      window.open('http://www.ipbsupport.de','News','width=500,height=250,resizable=yes,scrollbars=yes');
    //-->
    </script>
EOF;
}[/code]

Natürlich den Link anpassen, der da aufgerufen werden soll, kannst aber den Beispiellink auch drin lassen. ;)

So, nun verschieb ich das Thema noch in den Modifikationsbreich, da es da hin gehört und bevor mir Rigo zuvor kommt. :)

Share this post


Link to post

Schritt 1: Zusätzliches Feld in der ibf_members

ALTER TABLE `ibf_members` ADD `mod_popup` INT(10)  UNSIGNED DEFAULT "0";

Schritt 2: Änderung in der functions.php

Suchen:


                             m.mod_posts, m.language, m.skin, m.new_msg, m.show_popup, m.msg_total, m.time_offset, m.posts, m.joined, m.last_post,
                 m.last_visit, m.last_activity, m.dst_in_use, m.view_prefs, m.org_perm_id, m.temp_ban, m.sub_end,
            $DB->query("SELECT moderator.mid as is_mod, moderator.allow_warn, m.id, m.name, m.mgroup, m.password, m.email, m.restrict_post, m.view_sigs, m.view_avs, m.view_pop, m.view_img, m.auto_track,
[/code]




Direkt dahinter folgendes einfügen:



[code]m.mod_popup,[/code]
Suchen:
[code]  //---------------------------------------
 // Do we have a pop up to show?
 //---------------------------------------

 if ($ibforums->member['show_popup'])
 {
   $DB->query("UPDATE ibf_members SET show_popup=0 WHERE id={$ibforums->member['id']}");

   if ( $ibforums->input['act'] != 'Msg' )
   {
   $pm_js = $skin_universal->PM_popup();
   }
 }[/code]
Darunter einfügen.
[code]  $popuptime = time();
 
 if ($ibforums->member['mod_popup'] < ($popuptime - 14400))
 {
   $DB->query("UPDATE ibf_members SET mod_popup=$popuptime WHERE id={$ibforums->member['id']}");
   
   $pm_js .= $skin_universal->mod_popup();
 }[/code]
Schritt 3: Änderungen in der skin_global.php Überhalb von
[code]}

?>[/code]
einfügen:
[code]function mod_popup() {
global $ibforums;
return <<<EOF
    <script language='Javascript' type="text/javascript">
    <!--
      window.open('http://www.ipbsupport.de','News','width=500,height=250,resizable=yes,scrollbars=yes');
    //-->
    </script>
EOF;
}[/code]

Natürlich den Link anpassen, der da aufgerufen werden soll, kannst aber den Beispiellink auch drin lassen. ;)

Bevor noch jemand fragt, um eine andere Studenzahl einzugeben, einfach x * 3600 berechnen und den errechneten Wert dort eintragen wo jetzt die 14400 steht.

Share this post


Link to post

Schritt 1: Zusätzliches Feld in der ibf_members

ähh sorry das ich so dumm frage, irgentwie bin ich scheinbar blind, ich habe nun den kompletten ordner durchgesehen aber ich finde keinen file mit der bezeichnung "ibf_members" :(

kannst du mir sagen in welchem ordner der normalerweise liegen müßte.

Share this post


Link to post

Das sollte eigentlich zum Grundwissen gehören, daher hat Stefan das auch nicht näher erläutert. Denn wenn du dir das ansiehst, solltest du schon sehen, das das ein MySQL Statement ist. Somit musst du das einfach nur via phpMyAdmin oder im AdminCP => MySQL Toolbox ausführen, das wars schon ;)

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

×