updated to add country membership
This commit is contained in:
@@ -164,7 +164,7 @@ RewriteRule ^autosave$ src/processors/blog/autosave.php [L]
|
|||||||
|
|
||||||
</IfModule>
|
</IfModule>
|
||||||
|
|
||||||
php_flag display_errors Off
|
php_flag display_errors On
|
||||||
# php_value error_reporting -1
|
# php_value error_reporting -1
|
||||||
RedirectMatch 403 ^/\.well-known
|
RedirectMatch 403 ^/\.well-known
|
||||||
Options -Indexes
|
Options -Indexes
|
||||||
|
|||||||
32
index.php
32
index.php
@@ -27,16 +27,32 @@ if ($showRenewModal) {
|
|||||||
} else {
|
} else {
|
||||||
$showRenewModal = false;
|
$showRenewModal = false;
|
||||||
}
|
}
|
||||||
$user_id = $_SESSION['user_id'];
|
|
||||||
$stmt = $conn->prepare("SELECT payment_status FROM membership_fees WHERE user_id = ? LIMIT 1");
|
|
||||||
$stmt->bind_param("i", $user_id);
|
|
||||||
$stmt->execute();
|
|
||||||
$stmt->bind_result($payment_status);
|
|
||||||
$stmt->fetch();
|
|
||||||
$stmt->close();
|
|
||||||
|
|
||||||
if ($payment_status === 'PENDING RENEWAL') {
|
$user_id = $_SESSION['user_id'];
|
||||||
|
|
||||||
|
// Ensure we have a DB connection
|
||||||
|
if (!isset($conn) || $conn === null) {
|
||||||
$showRenewModal = false;
|
$showRenewModal = false;
|
||||||
|
} else {
|
||||||
|
$stmt = $conn->prepare("SELECT payment_status FROM membership_fees WHERE user_id = ? LIMIT 1");
|
||||||
|
$stmt->bind_param("i", $user_id);
|
||||||
|
$stmt->execute();
|
||||||
|
// store_result so we can check num_rows
|
||||||
|
$stmt->store_result();
|
||||||
|
|
||||||
|
// If there's no membership_fees record for this user, don't show the renew modal
|
||||||
|
if ($stmt->num_rows === 0) {
|
||||||
|
$showRenewModal = false;
|
||||||
|
} else {
|
||||||
|
$stmt->bind_result($payment_status);
|
||||||
|
$stmt->fetch();
|
||||||
|
|
||||||
|
if ($payment_status === 'PENDING RENEWAL') {
|
||||||
|
$showRenewModal = false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$stmt->close();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ checkUserSession();
|
|||||||
// Assuming you have the user ID stored in the session
|
// Assuming you have the user ID stored in the session
|
||||||
if (isset($_SESSION['user_id'])) {
|
if (isset($_SESSION['user_id'])) {
|
||||||
$user_id = $_SESSION['user_id'];
|
$user_id = $_SESSION['user_id'];
|
||||||
}else{
|
} else {
|
||||||
header('Location: login.php');
|
header('Location: login.php');
|
||||||
exit(); // Stop further script execution
|
exit(); // Stop further script execution
|
||||||
}
|
}
|
||||||
@@ -25,7 +25,7 @@ $user = $result->fetch_assoc();
|
|||||||
$pageTitle = 'Membership Application';
|
$pageTitle = 'Membership Application';
|
||||||
$breadcrumbs = [['Home' => 'index.php'], ['Membership' => 'membership.php']];
|
$breadcrumbs = [['Home' => 'index.php'], ['Membership' => 'membership.php']];
|
||||||
require_once($rootPath . '/components/banner.php');
|
require_once($rootPath . '/components/banner.php');
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -39,6 +39,31 @@ $user = $result->fetch_assoc();
|
|||||||
<div class="section-title">
|
<div class="section-title">
|
||||||
<div id="responseMessage"></div> <!-- Message display area -->
|
<div id="responseMessage"></div> <!-- Message display area -->
|
||||||
</div>
|
</div>
|
||||||
|
<!-- Membership Type -->
|
||||||
|
<h3>Membership Type</h3>
|
||||||
|
<div class="row mt-35">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group mb-3">
|
||||||
|
<div class="form-check">
|
||||||
|
<input type="checkbox" id="country_membership" name="country_membership" value="1">
|
||||||
|
<label style="margin-left:20px;" for="country_membership">Country Membership - if you reside more than 150km from BASE4 and qualify for country membership.</label>
|
||||||
|
</div>
|
||||||
|
<div class="mt-2">
|
||||||
|
<div class="form-check form-check-inline">
|
||||||
|
<input type="radio" name="membership_type" id="membership_full" value="full" checked>
|
||||||
|
<label style="margin-left:20px;" for="membership_full">Full Membership</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-check form-check-inline">
|
||||||
|
<input type="radio" name="membership_type" id="membership_single" value="single">
|
||||||
|
<label style="margin-left:20px;" for="membership_single">Single Membership</label>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<!-- Personal Details Section -->
|
<!-- Personal Details Section -->
|
||||||
<h3>Main Member</h3>
|
<h3>Main Member</h3>
|
||||||
<div class="row mt-35">
|
<div class="row mt-35">
|
||||||
@@ -88,193 +113,199 @@ $user = $result->fetch_assoc();
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Spouse / Partner Details Section -->
|
<!-- Spouse / Partner Details Section -->
|
||||||
<h3>Spouse / Life Partner / Other Details</h3>
|
<div id="spouseSection">
|
||||||
<div class="row mt-35">
|
<h3>Spouse / Life Partner / Other Details</h3>
|
||||||
<div class="col-md-6">
|
<div class="row mt-35">
|
||||||
<div class="form-group">
|
<div class="col-md-6">
|
||||||
<label for="spouse_first_name">First Name</label>
|
<div class="form-group">
|
||||||
<input type="text" id="spouse_first_name" name="spouse_first_name" class="form-control" placeholder="Jane">
|
<label for="spouse_first_name">First Name</label>
|
||||||
|
<input type="text" id="spouse_first_name" name="spouse_first_name" class="form-control" placeholder="Jane">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="col-md-6">
|
||||||
<div class="col-md-6">
|
<div class="form-group">
|
||||||
<div class="form-group">
|
<label for="spouse_last_name">Surname</label>
|
||||||
<label for="spouse_last_name">Surname</label>
|
<input type="text" id="spouse_last_name" name="spouse_last_name" class="form-control" placeholder="Smith">
|
||||||
<input type="text" id="spouse_last_name" name="spouse_last_name" class="form-control" placeholder="Smith">
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="spouse_id_number">ID Number / Passport Number</label>
|
||||||
|
<input type="text" id="spouse_id_number" name="spouse_id_number" class="form-control" placeholder="1234567890">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="spouse_dob">Date of Birth</label>
|
||||||
|
<input type="date" id="spouse_dob" name="spouse_dob" class="form-control">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="spouse_occupation">Occupation</label>
|
||||||
|
<input type="text" id="spouse_occupation" name="spouse_occupation" class="form-control" placeholder="Occupation">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="spouse_phone_numbers">Cell Phone</label>
|
||||||
|
<input type="text" id="spouse_tel_cell" name="spouse_tel_cell" class="form-control" placeholder="Cell Phone">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-4">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="spouse_email">Email Address</label>
|
||||||
|
<input type="email" id="spouse_email" name="spouse_email" class="form-control" placeholder="Enter email">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-md-6">
|
</div> <!-- end spouse row -->
|
||||||
<div class="form-group">
|
<!-- </div> end spouseSection -->
|
||||||
<label for="spouse_id_number">ID Number / Passport Number</label>
|
|
||||||
<input type="text" id="spouse_id_number" name="spouse_id_number" class="form-control" placeholder="1234567890">
|
<!-- Children Section -->
|
||||||
</div>
|
<div id="childrenSection">
|
||||||
</div>
|
<h3>Children's Names</h3>
|
||||||
<div class="col-md-6">
|
<div class="row mt-35">
|
||||||
<div class="form-group">
|
<div class="col-md-6">
|
||||||
<label for="spouse_dob">Date of Birth</label>
|
<div class="form-group">
|
||||||
<input type="date" id="spouse_dob" name="spouse_dob" class="form-control">
|
<label for="child_name1">Child 1 Name</label>
|
||||||
</div>
|
<input type="text" id="child_name1" name="child_name1" class="form-control" placeholder="Child 1 Name">
|
||||||
</div>
|
|
||||||
<div class="col-md-4">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="spouse_occupation">Occupation</label>
|
|
||||||
<input type="text" id="spouse_occupation" name="spouse_occupation" class="form-control" placeholder="Occupation">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="spouse_phone_numbers">Cell Phone</label>
|
|
||||||
<input type="text" id="spouse_tel_cell" name="spouse_tel_cell" class="form-control" placeholder="Cell Phone">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-4">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="spouse_email">Email Address</label>
|
|
||||||
<input type="email" id="spouse_email" name="spouse_email" class="form-control" placeholder="Enter email">
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
<!-- Children Section -->
|
<div class="form-group">
|
||||||
<h3>Children's Names</h3>
|
<label for="child_dob1">Child 1 DOB</label>
|
||||||
<div class="row mt-35">
|
<input type="date" id="child_dob1" name="child_dob1" class="form-control">
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_name1">Child 1 Name</label>
|
|
||||||
<input type="text" id="child_name1" name="child_name1" class="form-control" placeholder="Child 1 Name">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_dob1">Child 1 DOB</label>
|
|
||||||
<input type="date" id="child_dob1" name="child_dob1" class="form-control">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_name2">Child 2 Name</label>
|
|
||||||
<input type="text" id="child_name2" name="child_name2" class="form-control" placeholder="Child 2 Name">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_dob2">Child 2 DOB</label>
|
|
||||||
<input type="date" id="child_dob2" name="child_dob2" class="form-control">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_name3">Child 3 Name</label>
|
|
||||||
<input type="text" id="child_name3" name="child_name3" class="form-control" placeholder="Child 3 Name">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="child_dob3">Child 3 DOB</label>
|
|
||||||
<input type="date" id="child_dob3" name="child_dob3" class="form-control">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<!-- Repeat for other children if needed -->
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Address Section -->
|
|
||||||
<h3>Address</h3>
|
|
||||||
<div class="row mt-35">
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="physical_address">Physical Address</label>
|
|
||||||
<textarea id="physical_address" name="physical_address" class="form-control" placeholder="Enter physical address"></textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-6">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="postal_address">Postal Address</label>
|
|
||||||
<textarea id="postal_address" name="postal_address" class="form-control" placeholder="Enter postal address"></textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
<!-- Interests Section -->
|
<div class="form-group">
|
||||||
<h3>Interests and Hobbies</h3>
|
<label for="child_name2">Child 2 Name</label>
|
||||||
<div class="row mt-35">
|
<input type="text" id="child_name2" name="child_name2" class="form-control" placeholder="Child 2 Name">
|
||||||
<div class="col-md-12">
|
|
||||||
<div class="form-group">
|
|
||||||
<textarea id="interests_hobbies" name="interests_hobbies" class="form-control" placeholder="Enter interests and hobbies"></textarea>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
<!-- Vehicle Section -->
|
<div class="form-group">
|
||||||
<h3>Primary Vehicle</h3>
|
<label for="child_dob2">Child 2 DOB</label>
|
||||||
<div class="row mt-35">
|
<input type="date" id="child_dob2" name="child_dob2" class="form-control">
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="vehicle_make">Make</label>
|
|
||||||
<input type="text" id="vehicle_make" name="vehicle_make" class="form-control" placeholder="Vehicle Make">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="vehicle_model">Model</label>
|
|
||||||
<input type="text" id="vehicle_model" name="vehicle_model" class="form-control" placeholder="Vehicle Model">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="vehicle_year">Year</label>
|
|
||||||
<input type="text" id="vehicle_year" name="vehicle_year" class="form-control" placeholder="Vehicle Year">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="vehicle_registration">Registration</label>
|
|
||||||
<input type="text" id="vehicle_registration" name="vehicle_registration" class="form-control" placeholder="Vehicle Registration">
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<h3>Secondary Vehicle</h3>
|
<div class="col-md-6">
|
||||||
<div class="row mt-35">
|
<div class="form-group">
|
||||||
<div class="col-md-3">
|
<label for="child_name3">Child 3 Name</label>
|
||||||
<div class="form-group">
|
<input type="text" id="child_name3" name="child_name3" class="form-control" placeholder="Child 3 Name">
|
||||||
<label for="secondary_vehicle_make">Make</label>
|
|
||||||
<input type="text" id="secondary_vehicle_make" name="secondary_vehicle_make" class="form-control" placeholder="Vehicle Make">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="secondary_vehicle_model">Model</label>
|
|
||||||
<input type="text" id="secondary_vehicle_model" name="secondary_vehicle_model" class="form-control" placeholder="Vehicle Model">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="secondary_vehicle_year">Year</label>
|
|
||||||
<input type="text" id="secondary_vehicle_year" name="secondary_vehicle_year" class="form-control" placeholder="Vehicle Year">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="col-md-3">
|
|
||||||
<div class="form-group">
|
|
||||||
<label for="secondary_vehicle_registration">Registration</label>
|
|
||||||
<input type="text" id="secondary_vehicle_registration" name="secondary_vehicle_registration" class="form-control" placeholder="Vehicle Registration">
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="child_dob3">Child 3 DOB</label>
|
||||||
|
<input type="date" id="child_dob3" name="child_dob3" class="form-control">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Repeat for other children if needed -->
|
||||||
|
</div>
|
||||||
|
</div> <!-- end childrenSection -->
|
||||||
|
|
||||||
</div>
|
<!-- Address Section -->
|
||||||
|
<h3>Address</h3>
|
||||||
<!-- Submit Section -->
|
<div class="row mt-35">
|
||||||
<div class="col-md-12">
|
<div class="col-md-6">
|
||||||
<div class="form-group mb-0">
|
<div class="form-group">
|
||||||
<button type="submit" class="theme-btn style-two" style="width:100%;">Next</button>
|
<label for="physical_address">Physical Address</label>
|
||||||
<div id="msgSubmit" class="hidden"></div>
|
<textarea id="physical_address" name="physical_address" class="form-control" placeholder="Enter physical address"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-6">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="postal_address">Postal Address</label>
|
||||||
|
<textarea id="postal_address" name="postal_address" class="form-control" placeholder="Enter postal address"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Interests Section -->
|
||||||
|
<h3>Interests and Hobbies</h3>
|
||||||
|
<div class="row mt-35">
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group">
|
||||||
|
<textarea id="interests_hobbies" name="interests_hobbies" class="form-control" placeholder="Enter interests and hobbies"></textarea>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<!-- Vehicle Section -->
|
||||||
|
<h3>Primary Vehicle</h3>
|
||||||
|
<div class="row mt-35">
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="vehicle_make">Make</label>
|
||||||
|
<input type="text" id="vehicle_make" name="vehicle_make" class="form-control" placeholder="Vehicle Make">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="vehicle_model">Model</label>
|
||||||
|
<input type="text" id="vehicle_model" name="vehicle_model" class="form-control" placeholder="Vehicle Model">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="vehicle_year">Year</label>
|
||||||
|
<input type="text" id="vehicle_year" name="vehicle_year" class="form-control" placeholder="Vehicle Year">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="vehicle_registration">Registration</label>
|
||||||
|
<input type="text" id="vehicle_registration" name="vehicle_registration" class="form-control" placeholder="Vehicle Registration">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<h3>Secondary Vehicle</h3>
|
||||||
|
<div class="row mt-35">
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="secondary_vehicle_make">Make</label>
|
||||||
|
<input type="text" id="secondary_vehicle_make" name="secondary_vehicle_make" class="form-control" placeholder="Vehicle Make">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="secondary_vehicle_model">Model</label>
|
||||||
|
<input type="text" id="secondary_vehicle_model" name="secondary_vehicle_model" class="form-control" placeholder="Vehicle Model">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="secondary_vehicle_year">Year</label>
|
||||||
|
<input type="text" id="secondary_vehicle_year" name="secondary_vehicle_year" class="form-control" placeholder="Vehicle Year">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="col-md-3">
|
||||||
|
<div class="form-group">
|
||||||
|
<label for="secondary_vehicle_registration">Registration</label>
|
||||||
|
<input type="text" id="secondary_vehicle_registration" name="secondary_vehicle_registration" class="form-control" placeholder="Vehicle Registration">
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Submit Section -->
|
||||||
|
<div class="col-md-12">
|
||||||
|
<div class="form-group mb-0">
|
||||||
|
<button type="submit" class="theme-btn style-two" style="width:100%;">Next</button>
|
||||||
|
<div id="msgSubmit" class="hidden"></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</form>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</section>
|
</section>
|
||||||
<!-- Contact Form Area end -->
|
<!-- Contact Form Area end -->
|
||||||
|
|
||||||
@@ -282,3 +313,43 @@ $user = $result->fetch_assoc();
|
|||||||
|
|
||||||
|
|
||||||
<?php include_once(dirname(dirname(dirname(__DIR__))) . '/components/insta_footer.php'); ?>
|
<?php include_once(dirname(dirname(dirname(__DIR__))) . '/components/insta_footer.php'); ?>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
// Toggle spouse and children sections when 'Single Membership' is selected
|
||||||
|
(function() {
|
||||||
|
function setSectionState(isSingle) {
|
||||||
|
var spouse = document.getElementById('spouseSection');
|
||||||
|
var children = document.getElementById('childrenSection');
|
||||||
|
[spouse, children].forEach(function(sec) {
|
||||||
|
if (!sec) return;
|
||||||
|
var inputs = sec.querySelectorAll('input, select, textarea, button');
|
||||||
|
if (isSingle) {
|
||||||
|
sec.style.display = 'none';
|
||||||
|
inputs.forEach(function(i) {
|
||||||
|
i.disabled = true;
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
sec.style.display = '';
|
||||||
|
inputs.forEach(function(i) {
|
||||||
|
i.disabled = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
document.addEventListener('DOMContentLoaded', function() {
|
||||||
|
var full = document.getElementById('membership_full');
|
||||||
|
var single = document.getElementById('membership_single');
|
||||||
|
|
||||||
|
// initialize state
|
||||||
|
setSectionState(single && single.checked);
|
||||||
|
|
||||||
|
if (full) full.addEventListener('change', function() {
|
||||||
|
if (this.checked) setSectionState(false);
|
||||||
|
});
|
||||||
|
if (single) single.addEventListener('change', function() {
|
||||||
|
if (this.checked) setSectionState(true);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
})();
|
||||||
|
</script>
|
||||||
@@ -189,7 +189,7 @@ if (empty($application['id_number'])) {
|
|||||||
<td><?php echo htmlspecialchars($membership['payment_amount']); ?></td>
|
<td><?php echo htmlspecialchars($membership['payment_amount']); ?></td>
|
||||||
<td><?php echo htmlspecialchars($membership['payment_id']); ?></td>
|
<td><?php echo htmlspecialchars($membership['payment_id']); ?></td>
|
||||||
<?php if ($membership['payment_status'] == "AWAITING PAYMENT" || $membership['payment_status'] == "PENDING RENEWAL") { ?>
|
<?php if ($membership['payment_status'] == "AWAITING PAYMENT" || $membership['payment_status'] == "PENDING RENEWAL") { ?>
|
||||||
<td><a href='<?= $payment_link; ?>' class='theme-btn style-two style-three' style='padding: 0px 14px;'><span data-hover='PAY NOW'>PENDING RENEWAL</span></a></td>
|
<td><a href='<?= $payment_link; ?>' class='theme-btn style-two style-three' style='padding: 0px 14px;'><span data-hover='<?= $membership['payment_status'] ?>'><?= $membership['payment_status'] ?></span></a></td>
|
||||||
<?php } else { ?>
|
<?php } else { ?>
|
||||||
<td><?php echo htmlspecialchars($membership['payment_status']); ?></td>
|
<td><?php echo htmlspecialchars($membership['payment_status']); ?></td>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|||||||
@@ -141,6 +141,17 @@ include_once($rootPath . '/header.php');
|
|||||||
margin: 50px;
|
margin: 50px;
|
||||||
padding: 20px;
|
padding: 20px;
|
||||||
border-radius: 20px;
|
border-radius: 20px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 768px) {
|
||||||
|
#map {
|
||||||
|
margin: 0 !important;
|
||||||
|
padding: 0 !important;
|
||||||
|
width: 100% !important;
|
||||||
|
height: 500px !important;
|
||||||
|
border-radius: 0 !important;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.obstacle-popup h4 {
|
.obstacle-popup h4 {
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ require_once($rootPath . "/src/config/env.php");
|
|||||||
require_once($rootPath . "/src/config/session.php");
|
require_once($rootPath . "/src/config/session.php");
|
||||||
require_once($rootPath . "/src/config/connection.php");
|
require_once($rootPath . "/src/config/connection.php");
|
||||||
require_once($rootPath . "/src/config/functions.php");
|
require_once($rootPath . "/src/config/functions.php");
|
||||||
|
require_once($rootPath . "/src/helpers/notification_helper.php");
|
||||||
|
|
||||||
$user_id = isset($_SESSION['user_id']) ? $_SESSION['user_id'] : null;
|
$user_id = isset($_SESSION['user_id']) ? $_SESSION['user_id'] : null;
|
||||||
$payment_id = generatePaymentRef('SUBS', null, $user_id);
|
$payment_id = generatePaymentRef('SUBS', null, $user_id);
|
||||||
@@ -89,7 +90,17 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
|
|
||||||
$email = validateEmail($_POST['email'] ?? '');
|
$email = validateEmail($_POST['email'] ?? '');
|
||||||
if ($email === false) {
|
if ($email === false) {
|
||||||
die('Invalid email format.');
|
die('Invalid email format.');
|
||||||
|
}
|
||||||
|
|
||||||
|
//MEMBERSHIP TYPE
|
||||||
|
$country_membership = isset($_POST['country_membership']) ? 1 : 0;
|
||||||
|
$membership_type = in_array($_POST['membership_type'] ?? '', ['full', 'single']) ? $_POST['membership_type'] : 'full';
|
||||||
|
|
||||||
|
if ($country_membership) {
|
||||||
|
$membership_type = 'country';
|
||||||
|
}else{
|
||||||
|
$membership_type = $membership_type;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Spouse or Partner details (optional)
|
// Spouse or Partner details (optional)
|
||||||
@@ -136,8 +147,8 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
spouse_first_name, spouse_last_name, spouse_id_number, spouse_dob, spouse_occupation, spouse_tel_cell, spouse_email,
|
spouse_first_name, spouse_last_name, spouse_id_number, spouse_dob, spouse_occupation, spouse_tel_cell, spouse_email,
|
||||||
child_name1, child_dob1, child_name2, child_dob2, child_name3, child_dob3,
|
child_name1, child_dob1, child_name2, child_dob2, child_name3, child_dob3,
|
||||||
physical_address, postal_address, interests_hobbies, vehicle_make, vehicle_model, vehicle_year, vehicle_registration,
|
physical_address, postal_address, interests_hobbies, vehicle_make, vehicle_model, vehicle_year, vehicle_registration,
|
||||||
secondary_vehicle_make, secondary_vehicle_model, secondary_vehicle_year, secondary_vehicle_registration
|
secondary_vehicle_make, secondary_vehicle_model, secondary_vehicle_year, secondary_vehicle_registration, membership_type
|
||||||
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
|
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
|
||||||
|
|
||||||
// Check if preparation was successful
|
// Check if preparation was successful
|
||||||
if (!$stmt) {
|
if (!$stmt) {
|
||||||
@@ -145,7 +156,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$stmt->bind_param(
|
$stmt->bind_param(
|
||||||
"isssssssssssssssssssssssssssssss",
|
"issssssssssssssssssssssssssssssss",
|
||||||
$user_id,
|
$user_id,
|
||||||
$first_name,
|
$first_name,
|
||||||
$last_name,
|
$last_name,
|
||||||
@@ -177,7 +188,8 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
$secondary_vehicle_make,
|
$secondary_vehicle_make,
|
||||||
$secondary_vehicle_model,
|
$secondary_vehicle_model,
|
||||||
$secondary_vehicle_year,
|
$secondary_vehicle_year,
|
||||||
$secondary_vehicle_registration
|
$secondary_vehicle_registration,
|
||||||
|
$membership_type
|
||||||
);
|
);
|
||||||
|
|
||||||
if ($stmt->execute()) {
|
if ($stmt->execute()) {
|
||||||
@@ -187,10 +199,22 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
$year = (int)$today->format('Y');
|
$year = (int)$today->format('Y');
|
||||||
$payment_date = $today->format('Y-m-d');
|
$payment_date = $today->format('Y-m-d');
|
||||||
$membership_start_date = $payment_date;
|
$membership_start_date = $payment_date;
|
||||||
|
if ($membership_type === 'country') {
|
||||||
|
$payment_amount = getPriceByDescription('country_membership');
|
||||||
|
$prorata_amount = calculateProrata(getPriceByDescription('country_prorata'));
|
||||||
|
} elseif ($membership_type === 'single') {
|
||||||
|
$payment_amount = getPriceByDescription('single');
|
||||||
|
$prorata_amount = calculateProrata(getPriceByDescription('single_prorata'));
|
||||||
|
} else {
|
||||||
|
$payment_amount = getPriceByDescription('membership_fees');
|
||||||
|
$prorata_amount = calculateProrata(getPriceByDescription('pro_rata'));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if ($month == 12 || $month == 1 || $month == 2) {
|
if ($month == 12 || $month == 1 || $month == 2) {
|
||||||
// December, January, February: charge full fee, valid till end of next Feb
|
// December, January, February: charge full fee, valid till end of next Feb
|
||||||
$payment_amount = getPriceByDescription('membership_fees');
|
$payment_amount = $payment_amount;
|
||||||
// If Dec, Jan, Feb, set end to next year's Feb
|
// If Dec, Jan, Feb, set end to next year's Feb
|
||||||
$end_year = ($month == 12) ? $year + 2 : $year + 1;
|
$end_year = ($month == 12) ? $year + 2 : $year + 1;
|
||||||
$membership_end_date = (new DateTime("$end_year-02-01"))
|
$membership_end_date = (new DateTime("$end_year-02-01"))
|
||||||
@@ -198,7 +222,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
|||||||
->format('Y-m-d');
|
->format('Y-m-d');
|
||||||
} else {
|
} else {
|
||||||
// Prorata for Mar-Nov
|
// Prorata for Mar-Nov
|
||||||
$payment_amount = calculateProrata(getPriceByDescription('pro_rata'));
|
$payment_amount = $prorata_amount;
|
||||||
// End of next Feb if after Feb, else this Feb
|
// End of next Feb if after Feb, else this Feb
|
||||||
if ($month > 2) {
|
if ($month > 2) {
|
||||||
$end_year = $year + 1;
|
$end_year = $year + 1;
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.7 KiB After Width: | Height: | Size: 5.0 KiB |
Reference in New Issue
Block a user