MyBB.de Forum

Normale Version: Frage zum Popup ala Smilieinserter
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

bin gerade dabei ein ein Plugin für einen Tabellengenerator (MyCode) zu schreiben.
Den Code in JavaScript (jquery) habe ich soweit fertig. Alles klappt wunderbar.

Nun möchte ich diesen genauso wie das Popup-Fenster für die Smilies integrieren, komme aber einfach nicht weiter.

D.h. unter den Smilies ([get more]) soll ein zweiter Knopf erscheinen mit dem ein Popup-Fenster geöffnet wird, in dem sich der Generator befindet. Dort schustert man sich seine Tabelle zurecht und auf Knopfdruck soll diese in das Themen-/Antworterstellungsfenster eingefügt werden.

Da ich momentan ziemlich auf dem Schlauch stehe, würde ich mich über Anregungen und Tipps freuen.

P.S.: wie füge ich per sql-Befehl neue Codes in die Datenbank ein.
Dieses hier scheint nicht wirklich zu funktioniere:
Code:
$db->query("INSERT INTO `".TABLE_PREFIX."mycode`  (`title`, `description` , `regex`, `replacement`, `active`, `parseorder`) VALUES ('Table', 'Creates a table', '\[TABLE=(.*?)\](.*?)\[/TABLE\]', '<table cellspacing=\"1px\" cellpadding=\"4px\" width=\"$1%\" align=\"center\">$2<\/table>', 1, 0)");
btw: Warum benutzt du nicht $db->insert_query()?
Weil ich davon bis jetzt nicht wußte? Wink
Werde mich mal kundig machen. Wird ja erst mein 2tes Plugin, bin noch nicht ganz drin in der Materie.

Irgendwelche Tipps wie ich das Problem mit dem Popup-Fenster lösen könnte?
In einem Popup-Fenster kannst du immer mit opener. auf die Javascript-Funktionen des Hauptfensters zugreifen.
Darum geht es mir nicht unbedingt. Ich weiß nicht wo ich welche Hooks ansprechen soll und wie ich die Template am besten einbinde.
Muss ich dafür eine separate php-Datei scheiben (ala tabgen.php), oder reicht es irgendwo ein template einzubinden?
Viele Dateien bieten Hooks an um weitere actions zu definieren, eine eigene Datei (siehe FAQ) geht auch.
Alles klar, werde mich einlesen. Danke.
Eine Frage hätte ich da noch.

Ausgangssituation:
eingebundenes Template:
Code:
[<a href="#" onclick="MyBB.popupWindow('{$mybb->settings['bburl']}/inc/plugins/tablegenerator.php?action=open', 'TableGenerator', 350, 350);">click me</a>]

in inc/plugins/tablegenerator.php steht dazu folgendes...
PHP-Code:
function tablegenerator_button() {
    global 
$db$mybb$lang$templates$theme$tabgen_button$tabgen_generator;
    
    
$lang->load("tablegenerator");
    
    eval(
"\$tabgen_button .= \"".$templates->get("tg_button")."\";");
    
//########## ACTIONS ##########

    // opens popup
    
if($mybb->input['action'] == "open") {
        
        eval(
"\$tabgen_generator = \"".$templates->get("tg_generator")."\";");
        
output_page($tabgen_generator);
    }


...ganz oben habe ich in der selben Datei stehen:
PHP-Code:
if(!defined("IN_MYBB"))
    die(
"Bow ties are cool."); 

Problem:
klicke ich auf den Link erscheint wie gewünscht das Popup_Fenster mit der Medlung: "Bow ties are cool."

Frage:
Bekomme ich das irgendwie zum laufen, oder benötige ich unbedingt eine separate Datei in "/" (ala misc.php etc.)?
Nimm doch den Hook "misc_start".
Ich verstehe nicht ganz. Im Plugin greife ich ausschließlich auf: "newreply_end" zu, um den Link einzubinden.

Ich vermute, dass ich mein Plugin "inc/plugins/tablegenerator.php" irgendwie definieren muss. Wie weiß ich allerdings nicht.

Meinst du vielleicht, dass ich zusätzlich auf misc_start zugreifen sollte um von dort aus das Popup zu öffnen?
Hat geklappt. Danke für den Tipp Big Grin
Seiten: 1 2