Minotauro 0 Report post Posted February 6, 2004 Kann mir jemand sagen wie ich ein PopUp erstellen kann, dass sich pro User einmal die Woche öffnet und wo ich das wie einfügen muss? :teehee: Share this post Link to post
Stefan 0 Report post Posted February 6, 2004 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
Minotauro 0 Report post Posted February 6, 2004 Ja. Ich dachte daran ein entsprechenden Code in die skin_global.php zu packen, bloss keine Ahnung wo und wie.... :huh: Share this post Link to post
Stefan 0 Report post Posted February 9, 2004 Ich werde mich dem Problem annehmen, wenn ich am Donnerstag meine letzte Klausur geschrieben habe. Vorher sieht es schlecht aus. Share this post Link to post
Minotauro 0 Report post Posted February 9, 2004 Das wär' nett, danke. Viele Erfolg bei der Klausur. B) Share this post Link to post
Stefan 0 Report post Posted April 17, 2004 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
Minotauro 0 Report post Posted April 17, 2004 Das ist doch was! Vielen Dank. Share this post Link to post
Helge 192 Report post Posted April 17, 2004 Und wie verkürze ich die Zeit des popups auf z.b. 4 Stunden? Share this post Link to post
Stefan 0 Report post Posted April 18, 2004 Die von mir beschriebene Lösung basiert auf Kalenderwochen, demnach müßte man es umschreiben bzw. anders realisieren. Share this post Link to post
Helge 192 Report post Posted April 18, 2004 (edited) Achso - schade Edit: Wäre es denn schwierig oder ist es schnell gemacht? :D Edited April 18, 2004 by Rigo Share this post Link to post
Stefan 0 Report post Posted April 18, 2004 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
[TD]SSSNAKEoo 0 Report post Posted May 4, 2004 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
Helge 192 Report post Posted May 4, 2004 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