Add rating

This commit is contained in:
2026-05-06 21:27:34 +02:00
parent 9e8b404f91
commit 67c5c98fb4
4 changed files with 18 additions and 10 deletions

View File

@@ -15,7 +15,7 @@ header('Content-Type: text/csv; charset=utf-8');
header('Content-Disposition: attachment; filename="go-form-' . sanitize_title($form_name) . '-export.csv"');
$output = fopen('php://output', 'w');
fputcsv($output, ['ID', 'First Name', 'Last Name', 'Country', 'Club', 'Rank', 'Email', 'EGD Number', 'Comment', 'Date Added']);
fputcsv($output, ['ID', 'First Name', 'Last Name', 'Country', 'Club', 'Rank', 'Rating', 'Email', 'EGD Number', 'Comment', 'Date Added']);
foreach ($entries as $e) {
global $ranks;
@@ -26,6 +26,7 @@ foreach ($entries as $e) {
$e->country,
$e->club,
$ranks[$e->rank] ?? '',
$e->rating,
$e->email,
$e->egd_number,
$e->comment,

View File

@@ -33,8 +33,9 @@ function go_form_activate()
country varchar(100) DEFAULT NULL,
club varchar(100) DEFAULT NULL,
rank tinyint(2) DEFAULT 0,
rating smallint(5) DEFAULT 0,
email varchar(255) DEFAULT NULL,
egd_number varchar(50) DEFAULT NULL,
egd_number varchar(20) DEFAULT NULL,
comment text DEFAULT NULL,
created_at datetime DEFAULT CURRENT_TIMESTAMP NOT NULL,
PRIMARY KEY (id),
@@ -55,8 +56,8 @@ function go_form_uninstall()
$wpdb->query("DROP TABLE IF EXISTS {$wpdb->prefix}go_form_entries");
$wpdb->query("DROP TABLE IF EXISTS {$wpdb->prefix}go_form_forms");
}
register_uninstall_hook(__FILE__, 'go_form_uninstall');
//register_uninstall_hook(__FILE__, 'go_form_uninstall');
register_deactivation_hook(__FILE__, 'go_form_uninstall');
// ========== Helpers ==========
$ranks = [
0 => '30k', 1 => '29k', 2 => '28k', 3 => '27k', 4 => '26k',
@@ -117,13 +118,20 @@ function go_form_handle_submission()
$form_id = 1; // Fallback to default form
}
$rating = intval($_POST['rating']);
$rank = intval($_POST['rank']);
if($rating < -900) {
$rating = ($rank * 100) - 900;
}
$data = [
'form_id' => $form_id,
'first_name' => sanitize_text_field($_POST['first_name']),
'last_name' => sanitize_text_field($_POST['last_name']),
'country' => sanitize_text_field($_POST['country'] ?? ''),
'club' => sanitize_text_field($_POST['club'] ?? ''),
'rank' => intval($_POST['rank']),
'rank' => $rank,
'rating' => $rating,
'email' => sanitize_email($_POST['email'] ?? ''),
'egd_number' => sanitize_text_field($_POST['egd_number'] ?? ''),
'comment' => sanitize_textarea_field($_POST['comment'] ?? '')
@@ -133,10 +141,6 @@ function go_form_handle_submission()
wp_redirect($_SERVER['HTTP_REFERER']);
exit;
}
if ($data['rank'] < 0 || $data['rank'] > 47) {
wp_redirect($_SERVER['HTTP_REFERER']);
exit;
}
$wpdb->insert("{$wpdb->prefix}go_form_entries", $data);
wp_redirect($_SERVER['HTTP_REFERER']);

View File

@@ -61,7 +61,7 @@
<?php echo wp_nonce_field('go_form_action', 'go_form_nonce', true, false); ?>
<input type="hidden" name="action" value="go_form_handle_submission">
<input type="hidden" name="form_id" value="<?php echo esc_attr($form_id); ?>">
<input type="hidden" name="rating" id="rating" value="-1000">
<div class="go-form-grid">
<div>
@@ -184,6 +184,7 @@
document.getElementById('club').value = player.Club || '';
document.getElementById('rank').value = player.Grade_n || 0;
document.getElementById('egd_number').value = player.Pin_Player || '';
document.getElementById('rating').value = player.Gor || 0;
closePopup();
}

View File

@@ -8,6 +8,7 @@
<th>Rank</th>
<th>EGD Number</th>
<?php if ($show_admin): ?>
<th>Rating</th>
<th>Email</th>
<th>Date Added</th>
<th>Action</th>
@@ -29,6 +30,7 @@
<?php if ($show_admin): ?>
<td> <?= esc_html($e->rating) ?> </td>
<td> <?= esc_html($e->email) ?> </td>
<td> <?= esc_html($e->created_at) ?> </td>
<td>