prefix . 'wheel_email_templates';
$name = isset($_POST['template_name']) ? sanitize_text_field($_POST['template_name']) : '';
$subject = isset($_POST['template_subject']) ? sanitize_text_field($_POST['template_subject']) : '';
$template_body = isset($_POST['template_body']) ? wp_kses_post($_POST['template_body']) : '';
if (!empty($name) && !empty($subject) && !empty($template_body)) {
$result = $wpdb->insert(
$table_name,
[
'name' => $name,
'subject' => $subject,
'template_body' => $template_body,
],
['%s', '%s', '%s']
);
if ($result !== false) {
echo '
' . __('Email template added successfully!', 'wheel-of-fortune') . '
';
} else {
echo '' . __('Error adding email template. Please try again.', 'wheel-of-fortune') . '
';
}
} else {
echo '' . __('Please fill in all required fields.', 'wheel-of-fortune') . '
';
}
} elseif ($_POST['action'] === 'edit_template' && check_admin_referer('wheel_email_templates_nonce')) {
global $wpdb;
$table_name = $wpdb->prefix . 'wheel_email_templates';
$template_id = isset($_POST['template_id']) ? intval($_POST['template_id']) : 0;
$name = isset($_POST['template_name']) ? sanitize_text_field($_POST['template_name']) : '';
$subject = isset($_POST['template_subject']) ? sanitize_text_field($_POST['template_subject']) : '';
$template_body = isset($_POST['template_body']) ? wp_kses_post($_POST['template_body']) : '';
if (!empty($name) && !empty($subject) && !empty($template_body) && $template_id > 0) {
$result = $wpdb->update(
$table_name,
[
'name' => $name,
'subject' => $subject,
'template_body' => $template_body,
],
['id' => $template_id],
['%s', '%s', '%s'],
['%d']
);
if ($result !== false) {
echo '' . __('Email template updated successfully!', 'wheel-of-fortune') . '
';
} else {
echo '' . __('Error updating email template. Please try again.', 'wheel-of-fortune') . '
';
}
} else {
echo '' . __('Please fill in all required fields.', 'wheel-of-fortune') . '
';
}
} elseif ($_POST['action'] === 'delete_template' && check_admin_referer('wheel_email_templates_nonce')) {
global $wpdb;
$table_name = $wpdb->prefix . 'wheel_email_templates';
$template_id = isset($_POST['template_id']) ? intval($_POST['template_id']) : 0;
if ($template_id > 0) {
$result = $wpdb->delete($table_name, ['id' => $template_id], ['%d']);
if ($result !== false) {
echo '' . __('Email template deleted successfully!', 'wheel-of-fortune') . '
';
} else {
echo '' . __('Error deleting email template. Please try again.', 'wheel-of-fortune') . '
';
}
} else {
echo '' . __('Invalid template ID.', 'wheel-of-fortune') . '
';
}
}
}
// Get all email templates
global $wpdb;
$table_name = $wpdb->prefix . 'wheel_email_templates';
$templates = $wpdb->get_results("SELECT * FROM $table_name ORDER BY name ASC", ARRAY_A);
?>