check()); echo "[+] login(): "; try { $login = $base->login(); echo json_encode($login, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 2. Lista műveletek // --------------------------------------------------------------------------- echo "\n=== 2. LISTA MŰVELETEK (ninjaMail::process) ===\n"; $listId = null; try { echo "[+] Lista létrehozása (list -> new): "; $createdList = $base->process('list', ['new' => true, 'name' => 'Teszt Lista 2026']); echo json_encode($createdList, JSON_UNESCAPED_UNICODE) . "\n"; $listId = $createdList->id ?? null; echo "[+] Listák lekérdezése (list -> get): "; $lists = $base->process('list', ['get' => true]); echo json_encode($lists, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 3. Feliratkozások // --------------------------------------------------------------------------- echo "\n=== 3. ninjaMailSubscription TESZTELÉSE ===\n"; $sub = new ninjaMailSubscription($host, $key); $activeListId = $listId ? (int)$listId : 1; echo "[+] list($activeListId): "; var_dump($sub->list($activeListId)); echo "[+] activated(true): "; var_dump($sub->activated(true)); echo "[+] namechange(true): "; var_dump($sub->namechange(true)); try { echo "[+] subscribe(\"$testEmail\", \"Teszt Elek\"): "; $subRes = $sub->subscribe($testEmail, 'Teszt Elek'); var_dump($subRes); echo " Válasz: " . json_encode($sub->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] unsubscribe(\"$testEmail\"): "; $unsubRes = $sub->unsubscribe($testEmail); var_dump($unsubRes); echo " Válasz: " . json_encode($sub->data, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 4. Hírlevelek // --------------------------------------------------------------------------- echo "\n=== 4. ninjaMailNewsletter TESZTELÉSE ===\n"; $nl = new ninjaMailNewsletter($host, $key); echo "[+] subject(): "; var_dump($nl->subject('Rendszertesztek 2026 - Hírlevél')); echo "[+] message(): "; $longContent = '

Kedves Feliratkozónk!

Ez egy hivatalos teszt hírlevél, amely a ninjaMail API funkcionalitását teszteli. A hírlevél tartalma megfelelően hosszú szöveget tartalmaz, hogy teljesítse a rendszer tartalmi és formai követelményeit. További információkért látogasson el weboldalunkra vagy keresse ügyfélszolgálatunkat.

Üdvözlettel,
A rendszer üzemeltetője

'; var_dump($nl->message($longContent)); $newsletterId = null; try { echo "[+] create(): "; $newsletterId = $nl->create(); var_dump($newsletterId); echo " Válasz: " . json_encode($nl->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] newsletter() getter: "; var_dump($nl->newsletter()); echo "[+] update(): "; $nl->subject('Rendszertesztek 2026 - Frissített hírlevél tárgy'); $nlUp = $nl->update(); var_dump($nlUp); echo " Válasz: " . json_encode($nl->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] get(): "; $allNl = $nl->get(); echo json_encode($allNl, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] send() (időzítve +1 évre): "; $sendNl = $nl->send(strtotime('+1 year')); var_dump($sendNl); echo " Válasz: " . json_encode($nl->data, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 5. Kampányok // --------------------------------------------------------------------------- echo "\n=== 5. ninjaMailCampaign TESZTELÉSE ===\n"; $camp = new ninjaMailCampaign($host, $key); $campaignId = null; try { echo "[+] create(\"API Teszt Kampány\"): "; $campaignId = $camp->create('API Teszt Kampány'); var_dump($campaignId); echo " Válasz: " . json_encode($camp->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] campaign() getter: "; var_dump($camp->campaign()); echo "[+] update() (lista csatolása): "; $campUp = $camp->update([(int)$activeListId]); var_dump($campUp); echo " Válasz: " . json_encode($camp->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] attach(" . ($newsletterId ?? 1) . ") (hírlevél csatolása): "; $campAtt = $camp->attach((int)($newsletterId ?? 1)); var_dump($campAtt); echo " Válasz: " . json_encode($camp->data, JSON_UNESCAPED_UNICODE) . "\n"; echo "[+] remove() (kampány törlése): "; $campRem = $camp->remove(); var_dump($campRem); echo " Válasz: " . json_encode($camp->data, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 6. Egyedi levélküldés // --------------------------------------------------------------------------- echo "\n=== 6. ninjaMailSend TESZTELÉSE ===\n"; $sender = new ninjaMailSend($host, $key); echo "[+] to(\"$sendEmail\"): "; var_dump($sender->to($sendEmail)); echo "[+] subject(): "; var_dump($sender->subject('Tranzakciós teszt e-mail')); echo "[+] message(): "; var_dump($sender->message('

Ez egy egyedi tranzakciós teszt e-mail.

')); try { echo "[+] send(): "; $sendRes = $sender->send(); var_dump($sendRes); echo " Válasz: " . json_encode($sender->data, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 7. Statisztika // --------------------------------------------------------------------------- echo "\n=== 7. ninjaMailStatistics TESZTELÉSE ===\n"; $stat = new ninjaMailStatistics($host, $key); try { $statNlId = (int)($newsletterId ?? 1); echo "[+] get($statNlId): "; $statRes = $stat->get($statNlId); echo json_encode($statRes, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } // --------------------------------------------------------------------------- // 8. Takarítás (ha hoztunk létre listát) // --------------------------------------------------------------------------- if ($listId) { echo "\n=== 8. TAKARÍTÁS (Teszt lista törlése) ===\n"; try { echo "[+] remove list $listId: "; $delList = $base->process('list', ['remove' => true, 'id' => $listId]); echo json_encode($delList, JSON_UNESCAPED_UNICODE) . "\n"; } catch (Throwable $e) { echo "Hiba: " . $e->getMessage() . "\n"; } } echo "\nTesztelés befejezve.\n";