From 15475a62a36704bd486137a3765236185d572193 Mon Sep 17 00:00:00 2001 From: phl0 Date: Wed, 19 Nov 2025 12:53:41 +0100 Subject: [PATCH] Import LoTW cert serial into db --- application/config/migration.php | 2 +- application/controllers/Lotw.php | 5 +++-- application/models/Lotw_model.php | 6 ++++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/application/config/migration.php b/application/config/migration.php index 544ca8942..72c156c19 100644 --- a/application/config/migration.php +++ b/application/config/migration.php @@ -22,7 +22,7 @@ $config['migration_enabled'] = TRUE; | */ -$config['migration_version'] = 265; +$config['migration_version'] = 266; /* |-------------------------------------------------------------------------- diff --git a/application/controllers/Lotw.php b/application/controllers/Lotw.php index 226cc38d3..0cc15f85f 100644 --- a/application/controllers/Lotw.php +++ b/application/controllers/Lotw.php @@ -144,14 +144,14 @@ class Lotw extends CI_Controller { // New Certificate Store in Database // Store Certificate Data into MySQL - $this->Lotw_model->store_certificate($this->session->userdata('user_id'), $info['issued_callsign'], $info['dxcc-id'], $info['validFrom'], $info['validTo_Date'], $info['qso-first-date'], $info['qso-end-date'], $info['pem_key'], $info['general_cert']); + $this->Lotw_model->store_certificate($this->session->userdata('user_id'), $info['issued_callsign'], $info['dxcc-id'], $info['validFrom'], $info['validTo_Date'], $info['qso-first-date'], $info['qso-end-date'], $info['pem_key'], $info['general_cert'], $info['serialNumber']); // Cert success flash message $this->session->set_flashdata('success', $info['issued_callsign'] . ' ' . __("Certificate Imported.")); } else { // Certificate is in the system time to update - $this->Lotw_model->update_certificate($this->session->userdata('user_id'), $info['issued_callsign'], $info['dxcc-id'], $info['validFrom'], $info['validTo_Date'], $info['qso-first-date'], $info['qso-end-date'], $info['pem_key'], $info['general_cert']); + $this->Lotw_model->update_certificate($this->session->userdata('user_id'), $info['issued_callsign'], $info['dxcc-id'], $info['validFrom'], $info['validTo_Date'], $info['qso-first-date'], $info['qso-end-date'], $info['pem_key'], $info['general_cert'], $info['serialNumber']); // Cert success flash message $this->session->set_flashdata('success', $info['issued_callsign'] . ' ' . __("Certificate Updated.")); @@ -462,6 +462,7 @@ class Lotw extends CI_Controller { $certdata= openssl_x509_parse($results['cert'],0); // Store Variables + $data['serialNumber'] = $certdata['serialNumber']; $data['issued_callsign'] = $certdata['subject']['undefined']; $data['issued_name'] = $certdata['subject']['commonName']; $data['validFrom'] = date('Y-m-d H:i:s', $certdata['validFrom_time_t']); diff --git a/application/models/Lotw_model.php b/application/models/Lotw_model.php index 46a40f380..5d825df9a 100644 --- a/application/models/Lotw_model.php +++ b/application/models/Lotw_model.php @@ -39,8 +39,9 @@ class Lotw_model extends CI_Model { return $query->num_rows(); } - function store_certificate($user_id, $callsign, $dxcc, $date_created, $date_expires, $qso_start_date, $qso_end_date, $cert_key, $general_cert) { + function store_certificate($user_id, $callsign, $dxcc, $date_created, $date_expires, $qso_start_date, $qso_end_date, $cert_key, $general_cert, $serial) { $data = array( + 'serial' => $serial, 'user_id' => $user_id, 'callsign' => $callsign, 'cert_dxcc_id' => $dxcc, @@ -55,8 +56,9 @@ class Lotw_model extends CI_Model { $this->db->insert('lotw_certs', $data); } - function update_certificate($user_id, $callsign, $dxcc, $date_created, $date_expires, $qso_start_date, $qso_end_date, $cert_key, $general_cert) { + function update_certificate($user_id, $callsign, $dxcc, $date_created, $date_expires, $qso_start_date, $qso_end_date, $cert_key, $general_cert, $serial) { $data = array( + 'serial' => $serial, 'cert_dxcc_id' => $dxcc, 'date_created' => $date_created, 'date_expires' => $date_expires,