HEX
Server: LiteSpeed
System:
User: ()
PHP: 7.4.33
Disabled: sendmail,mail,exec,shell_exec,dl,system,passthru,pclose,proc_open,proc_nice,proc_terminate,proc_get_status,proc_close,leak,apache_child_terminate,posix_kill,posix_mkfifo,posix_setpgid,posix_setsid,posix_setuid,escapeshellcmd,escapeshellarg shell-exec,fpassthru,crack_check,crack_closedict,crack_getlastmessage,crack_opendict,psockopen,php_uname,symlink,ini_restore,posix_getpwuid,posix_getegid,posix_getcwd,posix_geteuid,posix_getgroups,posix_uname,posix_setuid,eval,show_source,passthru,popen,allow_url_fopen,get_current_user,getmyuid,getmygid,entre2v2,index_changer_wp,index_changer_joomla,exec_mode_1,exec_mode_2,exec_mode_3,wsoFooter,wsoEx,wsoViewSize,wsoPerms,wsoPermsColor,ukuran,tulis,ambil,tukar,entre2v2,rapih,magicboom,goaction,scookie,showstat,index_changer
Upload Files
File: /home/muratemr/theotto.tr/api/admin/messages.php
<?php
/**
 * api/admin/messages.php
 * WhatsApp mesaj şablonları kayıt endpoint'i
 */

declare(strict_types=1);

require_once __DIR__ . '/../../includes/db.php';
require_once __DIR__ . '/../../includes/auth.php';
require_once __DIR__ . '/../../includes/csrf.php';
require_once __DIR__ . '/../../includes/functions.php';

require_permission('settings');
csrf_required();

$allowed_keys = [
    'msg_res_confirm', 'msg_res_reject', 'msg_res_cancel',
    'msg_wa_discount5', 'msg_wa_discount10', 'msg_wa_discount15',
    'msg_wa_birthday', 'msg_wa_tag',
];

$action = post_str('action');

if ($action === 'save_one') {
    $key = post_str('key');
    if (!in_array($key, $allowed_keys, true)) {
        json_response(false, 'Geçersiz anahtar.');
    }
    $value = $_POST['value'] ?? '';
    db_run(
        "INSERT INTO site_settings (`key`, `value`) VALUES (?, ?)
         ON DUPLICATE KEY UPDATE `value` = VALUES(`value`)",
        [$key, $value]
    );
    json_response(true, 'Mesaj kaydedildi.');
}

if ($action === 'save_all') {
    $pdo = get_pdo();
    $pdo->beginTransaction();
    try {
        foreach ($allowed_keys as $key) {
            if (!array_key_exists($key, $_POST)) continue;
            $value = $_POST[$key] ?? '';
            db_run(
                "INSERT INTO site_settings (`key`, `value`) VALUES (?, ?)
                 ON DUPLICATE KEY UPDATE `value` = VALUES(`value`)",
                [$key, $value]
            );
        }
        $pdo->commit();
    } catch (Throwable $e) {
        $pdo->rollBack();
        error_log('[messages save] ' . $e->getMessage());
        json_response(false, 'Mesajlar kaydedilemedi.');
    }
    json_response(true, 'Tüm mesajlar kaydedildi.');
}

json_response(false, 'Geçersiz işlem.');