From aca19c007bea30587e9ef03adb18da6445e2e3f6 Mon Sep 17 00:00:00 2001 From: Chuck Scott Date: Mon, 30 Oct 2017 16:23:42 -0400 Subject: [PATCH] More checkout processing working. Addedc Terms and Conditions to checkout page. Added suggested password to checkout page when still a guest. Sorted out some additional issues with validating registrant accounts for cart. --- classes/data/dataRegRequestEvent.php | 11 + classes/regCartSupport.php | 25 +- config/plugin.ini | 8 +- css/front.css | 3 + models/admin/ajax/account.php | 16 -- models/front/registrations/account.php | 8 +- models/front/registrations/checkout.php | 20 +- .../front/registrations/checkoutProcess.php | 124 +++++----- views/admin/registrations/accountEdit.html | 206 +++++++++------- views/admin/registrations/eventEdit.html | 40 ++-- views/front/registrations/account.html | 218 +++++++++++++++++ views/front/registrations/checkout.html | 225 ++++++++---------- 12 files changed, 580 insertions(+), 324 deletions(-) diff --git a/classes/data/dataRegRequestEvent.php b/classes/data/dataRegRequestEvent.php index ababa7a..27af1cf 100644 --- a/classes/data/dataRegRequestEvent.php +++ b/classes/data/dataRegRequestEvent.php @@ -151,6 +151,17 @@ class GlmDataRegistrationsRequestEvent extends GlmDataAbstract 'use' => 'lg' ), + // Reg Event Policy + 'event_terms' => array( + 'field' => 'reg_event', + 'as' => 'event_terms', + 'type' => 'pointer', + 'p_table' => GLM_MEMBERS_REGISTRATIONS_PLUGIN_DB_PREFIX . 'reg_event', + 'p_field' => 'terms', + 'p_static' => true, + 'use' => 'lg' + ), + // System operator's notes for this registration request 'notes' => array ( 'field' => 'notes', diff --git a/classes/regCartSupport.php b/classes/regCartSupport.php index aeedfff..1690341 100644 --- a/classes/regCartSupport.php +++ b/classes/regCartSupport.php @@ -427,6 +427,14 @@ class GlmRegCartSupport // } + // Check if registrant has an account + if (!isset($this->cart['accounts'][$registrant['account']])) { + + $this->cart['messages'][] = "Information was not stored correctly for registrant ".$registrant['fname'].' '.$registrant['fname'].". Registrant was removed."; + $removeRegistrant = true; + + } + // If this registrant is flagged for removal from cart if ($removeRegistrant) { @@ -676,11 +684,6 @@ class GlmRegCartSupport return false; } - // If there's no logged in registrations user - if (!isset($_SESSION) || !isset($_SESSION['LoginAccount']) || !is_array($_SESSION['LoginAccount'])) { - - } - // echo "
".print_r($_SESSION,1).print_r($regRequest,1)."
"; // If there's a logged in registrations user (overrides any WordPress adminstrator or contact logins @@ -1014,7 +1017,17 @@ vent record from the cart $cartSummary['regRequests'] = $RegRequest->getRegRequestListSimplified($where); if (is_array($cartSummary['regRequests']) && count($cartSummary['regRequests'])) { - $cartSummary['haveOtherRequests'] = true; + + // Get first request from list to be used if testing only cart + reset($cartSummary['regRequests']); + $c = current($cartSummary['regRequests']); + + $count = count($cartSummary['regRequests']); + + // If we have more than 1, we have one and no selected ID, or the only one we have is not the selected one. + if ($count > 1 || ($count == 1 && !$requestId) || ($requestId && count($cartSummary['regRequests']) && $c['id'] != $requestId)) { + $cartSummary['haveOtherRequests'] = true; + } } } diff --git a/config/plugin.ini b/config/plugin.ini index 7771061..479036c 100644 --- a/config/plugin.ini +++ b/config/plugin.ini @@ -22,10 +22,12 @@ show_rate_type_numb['From'] = 20 registration_account_option[1] = 'Guest Registration' registration_account_option[2] = 'Saved Registration Accounts' registration_account_option[3] = 'Member Contact Registrations' +registration_account_option[4] = 'Ask for Alternate/Emergency Contact' -registration_account_option_numb['Guest'] = 1 -registration_account_option_numb['Saved'] = 2 -registration_account_option_numb['Member'] = 3 +registration_account_option_numb['Guest'] = 1 +registration_account_option_numb['Saved'] = 2 +registration_account_option_numb['Member'] = 3 +registration_account_option_numb['AlternateContact'] = 4 ; ; Payment Method - Use as Bitmap Index or List diff --git a/css/front.css b/css/front.css index ee8458d..fbcc04c 100644 --- a/css/front.css +++ b/css/front.css @@ -298,4 +298,7 @@ span.glm-error { .glm-reg-warning { color: red; } +#glm-reg-widget { + display: inline-block; +} diff --git a/models/admin/ajax/account.php b/models/admin/ajax/account.php index 3d22c61..f5e6482 100644 --- a/models/admin/ajax/account.php +++ b/models/admin/ajax/account.php @@ -16,22 +16,6 @@ // Load Members data abstract require_once GLM_MEMBERS_REGISTRATIONS_PLUGIN_CLASS_PATH . '/data/dataAccount.php'; -/** - * Steve Note... - * - * You can get to this using the following URL. - * - * {host}/wp-admin/admin-ajax.php?action=glm_members_admin_ajax&glm_action=login - * - * You should be able to do this as POST or GET and should be able to add and read additional parameters. - * I added a "mystuff" parameter to the URL above and it does output from the code in the - * modelAction() function below. - * - * To add another model under models/admin/ajax all you need to do is create it and add it to the - * setup/validActions.php file. - * - */ - /** * This class performs the work of handling images passed to it via * an AJAX call that goes through the WorPress AJAX Handler. diff --git a/models/front/registrations/account.php b/models/front/registrations/account.php index 8e0b304..ef46d75 100644 --- a/models/front/registrations/account.php +++ b/models/front/registrations/account.php @@ -57,6 +57,7 @@ public function modelAction($actionData = false) { + echo '*** THIS MODEL AND VIEW IS NOT COMPLETE! ***'; // Get any provided option if (isset($_REQUEST['option'])) { @@ -75,16 +76,19 @@ } - $view = 'summary'; - switch ( $option ) { } + // echo "
".print_r($_SESSION,1)."
"; + // Compile template data $templateData = array( ); + + $view = 'account'; + // Return status, any suggested view, and any data to controller return array( 'status' => true, diff --git a/models/front/registrations/checkout.php b/models/front/registrations/checkout.php index 6ea6efc..7ffbfe6 100644 --- a/models/front/registrations/checkout.php +++ b/models/front/registrations/checkout.php @@ -49,9 +49,11 @@ class GlmMembersFront_registrations_checkout extends GlmRegCartSupport public function modelAction($actionData = false) { - $cartId = false; - $haveCart = false; - $option = false; + $cartId = false; + $haveCart = false; + $option = false; + $regAccountId = false; + $regAccount = false; $Account = new GlmDataRegistrationsAccount($this->wpdb, $this->config); @@ -114,7 +116,16 @@ class GlmMembersFront_registrations_checkout extends GlmRegCartSupport $regAccountId = $this->cart['request']['account']; if ($regAccountId) { $regAccount = $Account->editEntry($regAccountId); -// If no account data.... + + // Otherwise setup for a new account + } else { + + $regAccount = $Account->newEntry(); + + require_once GLM_MEMBERS_CONTACTS_PLUGIN_LIB_PATH.'/EasyPassword/EasyPassword.php'; + $EasyPassword = new EasyPassword(); + $regAccount['fieldData']['password'] = $EasyPassword->generateEasyPassword($type = 'firstlast'); + } // Accounts list not needed @@ -132,6 +143,7 @@ class GlmMembersFront_registrations_checkout extends GlmRegCartSupport 'cart' => $this->cart, 'checkoutUrl' => GLM_MEMBERS_REGISTRATIONS_SITE_BASE_URL.$this->config['settings']['canonical_reg_page'].'/', 'loggedIn' => ( isset( $_SESSION['LoginAccount'] ) ) ? $_SESSION['LoginAccount']: false, + 'regUrl' => GLM_MEMBERS_REGISTRATIONS_SITE_BASE_URL.$this->config['settings']['canonical_reg_page'].'/', 'assetUrl' => GLM_MEMBERS_REGISTRATIONS_PLUGIN_ASSETS_URL ); diff --git a/models/front/registrations/checkoutProcess.php b/models/front/registrations/checkoutProcess.php index 96a6c75..a56047c 100644 --- a/models/front/registrations/checkoutProcess.php +++ b/models/front/registrations/checkoutProcess.php @@ -86,13 +86,21 @@ class GlmMembersFront_registrations_checkoutProcess extends GlmRegCartSupport public function modelAction($actionData = false) { - $requestId = false; - $haveRequest = false; - $accountId = false; - $view = 'checkout'; - $regAccount = false; + $haveCheckout = false; + $requestId = false; + $accountId = false; + $regAccount = false; + $modelRedirect = false; + $view = 'checkout'; + $page = "checkoutProcess"; + $messages = array(); + + $Account = new GlmDataRegistrationsAccount($this->wpdb, $this->config); + + /* + * Valid cart? + */ - // Try to get the cart and see if it's valid for checkout if (isset($_SESSION['glm_reg_cart_id'])) { $requestId = ($_SESSION['glm_reg_cart_id'] - 0); @@ -101,82 +109,72 @@ class GlmMembersFront_registrations_checkoutProcess extends GlmRegCartSupport // Try to get a validated cart $this->checkRegistrationRequest($requestId); - if ($this->cart['status'] && $this->cart['validated']) { - $haveRequest = true; + if (!$this->cart['status'] || !$this->cart['validated']) { + $messages[] = 'No current cart found. Please log in to continue with an existing cart or start selecting your registrations.'; } - } } - // If this is a guest then try to create the account using the submitted data - if ($this->cart['request']['account'] == 0) { + /* + * Submission account? + */ - $Account = new GlmDataRegistrationsAccount($this->wpdb, $this->config); - $newAccount = $Account->insertEntry(); -echo "

Name = ".$_REQUEST['lname'].", ".$_REQUEST['fname']."

"; -echo "New Account
".print_r($newAccount,1)."
"; -exit; + if (count($messages) == 0) { + // If there's a logged in registrations user - Cart should already be with this account + if (isset($_SESSION) && isset($_SESSION['LoginAccount']) && + is_array($_SESSION['LoginAccount']) && + isset($_SESSION['LoginAccount']['id']) + ) { - } -// echo "
".print_r($this->cart,1)."
"; + $accountId = ($_SESSION['LoginAccount']['id'] - 0); - $Account = new GlmDataRegistrationsAccount($this->wpdb, $this->config); + // Try to update the account information + if ($accountId > 0) { + $regAccount = $Account->updateEntry($accountId); + if (!$regAccount) { + $messages[] = 'Unable to recall your account information. Please try again later.'; + } + } - // + // Otherwise this is a guest so try to create the account using the submitted data + } else { + $Account = new GlmDataRegistrationsAccount($this->wpdb, $this->config); + $regAccount = $Account->insertEntry(); + if (!$regAccount) { + $messages[] = 'Unable to create a guest account for this request. Please try again later.'; + } + } + + } /* - * Initial Checks + * Policies accepted? */ - // If there's a logged in registrations user - if (isset($_SESSION) && isset($_SESSION['LoginAccount']) && - is_array($_SESSION['LoginAccount']) && - isset($_SESSION['LoginAccount']['id']) - ) { + if (count($messages) == 0) { - $accountId = ($_SESSION['LoginAccount']['id'] - 0); + // All policies accepted + reset($this->cart['events']); + foreach ($this->cart['events'] as $event) { - // Try to get the account - if ($accountId > 0) { - $regAccount = $Account->getEntry($accountId); + if (!isset($_REQUEST['terms_'.$event['id']]) || $_REQUEST['terms_'.$event['id']] != 'accept') { + $messages[] = 'You did not accept the Terms and Conditions for the '.$event['event_name'].' event.'; + } } } - // If there wasn't an existing submission account - if (!$regAccount) { + /* + * Process Payment? + */ +echo "

Checkout Process: Working on Payment ....

"; + if (count($messages) == 0) { - // Create an account now } - // If not, then is guest checkout permitted? - - // Otheriwse back to checkout with a message - - // Do we need accounts for all registrants? - - // If so, do we have accounts for all registrants - - // If needed, create accounts - - // Is the submission valid, do we have all required information - - // All submitter data - - // All billing data - - // All policies accepted - - /* - * Store Submission - */ - - /* - * Process Payment - */ /* * Send out Notifications @@ -186,14 +184,16 @@ exit; * If all is done correctly, use model redirect to go to Step 4 - Dispaly summary */ - + $page = 'summary'; // Compile template data $templateData = array( - 'page' => 'checkoutProcess' - + 'page' => $page, + 'haveMessages' => count($messages), + 'messages' => $messages ); - // Return status, any suggested view, and any data to controller + + // Return status, any suggested view, and any data to controller return array( 'status' => true, 'modelRedirect' => false, diff --git a/views/admin/registrations/accountEdit.html b/views/admin/registrations/accountEdit.html index 157d879..4d93717 100644 --- a/views/admin/registrations/accountEdit.html +++ b/views/admin/registrations/accountEdit.html @@ -28,7 +28,7 @@ - + - + + + + + - + + + + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - - - - - - - - - - - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -{/if} + + -- 2.17.1
Date CreatedDate Created: {$account.fieldData.date_created.timestamp|date_format:"%D"} @@ -37,15 +37,40 @@
User Trace InfoUser Trace Info: {$account.fieldData.user_trace_info} {if $account.fieldFail.user_trace_info}

{$account.fieldFail.user_trace_info}

{/if}
Email: + + {if $account.fieldFail.email}

{$account.fieldFail.email}

{/if}
+
Member IDLogin Password: + +
+ {if $option == 'create'} + Save this password. +
A randomly generated password has been supplied. You may change this as desired. + There is no way to view a password once it's set. However, a user may recover a password using their + Email address at the login page. + {else} + NOTE: Enter a password here only if you need to change it. + {/if} + The password must be at least 8 characters and include at least one number, one letter, and at least one + special character. (# . - _ , $ % & !) + {if $account.fieldFail.password}

{$account.fieldFail.password}

{/if}
+
Member ID: {if $account.fieldFail.member_id}

{$account.fieldFail.member_id}

{/if}
@@ -53,7 +78,7 @@
ActiveActive: {if $account.fieldFail.active}

{$account.fieldFail.active}

{/if}
@@ -63,7 +88,7 @@

General Information

First NameFirst Name: {if $account.fieldFail.fname}

{$account.fieldFail.fname}

{/if}
@@ -71,7 +96,7 @@
Last NameLast Name: {if $account.fieldFail.lname}

{$account.fieldFail.lname}

{/if}
@@ -79,7 +104,7 @@
OrganizationOrganization: {if $account.fieldFail.org}

{$account.fieldFail.org}

{/if}
@@ -87,7 +112,7 @@
TitleTitle: {if $account.fieldFail.title}

{$account.fieldFail.title}

{/if}
@@ -95,7 +120,7 @@
Address 1Address 1: {if $account.fieldFail.addr1}

{$account.fieldFail.addr1}

{/if}
@@ -103,7 +128,7 @@
Address 2Address 2: {if $account.fieldFail.addr2}

{$account.fieldFail.addr2}

{/if}
@@ -111,7 +136,7 @@
CityCity: {if $account.fieldFail.city}

{$account.fieldFail.city}

{/if}
@@ -119,15 +144,22 @@
StateState: - + {if $account.fieldFail.state}

{$account.fieldFail.state}

{/if}
ZIPZIP: {if $account.fieldFail.zip}

{$account.fieldFail.zip}

{/if}
@@ -135,15 +167,22 @@
CountryCountry: - + {if $account.fieldFail.country}

{$account.fieldFail.country}

{/if}
PhonePhone: {if $account.fieldFail.phone}

{$account.fieldFail.phone}

{/if}
@@ -151,7 +190,7 @@
FaxFax: {if $account.fieldFail.fax}

{$account.fieldFail.fax}

{/if}
@@ -161,7 +200,7 @@

Billing Information

First NameFirst Name: {if $account.fieldFail.bill_fname}

{$account.fieldFail.bill_fname}

{/if}
@@ -169,7 +208,7 @@
Last NameLast Name: {if $account.fieldFail.bill_lname}

{$account.fieldFail.bill_lname}

{/if}
@@ -177,7 +216,7 @@
OrganizationOrganization: {if $account.fieldFail.bill_org}

{$account.fieldFail.bill_org}

{/if}
@@ -185,7 +224,7 @@
TitleTitle: {if $account.fieldFail.bill_title}

{$account.fieldFail.bill_title}

{/if}
@@ -193,7 +232,7 @@
Address 1Address 1: {if $account.fieldFail.bill_addr1}

{$account.fieldFail.bill_addr1}

{/if}
@@ -201,7 +240,7 @@
Address 2Address 2: {if $account.fieldFail.bill_addr2}

{$account.fieldFail.bill_addr2}

{/if}
@@ -209,7 +248,7 @@
CityCity: {if $account.fieldFail.bill_city}

{$account.fieldFail.bill_city}

{/if}
@@ -217,15 +256,22 @@
StateState: - + {if $account.fieldFail.bill_state}

{$account.fieldFail.bill_state}

{/if}
ZIPZIP: {if $account.fieldFail.bill_zip}

{$account.fieldFail.bill_zip}

{/if}
@@ -233,15 +279,22 @@
CountryCountry: - + {if $account.fieldFail.bill_country}

{$account.fieldFail.bill_country}

{/if}
PhonePhone: {if $account.fieldFail.bill_phone}

{$account.fieldFail.bill_phone}

{/if}
@@ -249,41 +302,14 @@
FaxFax: {if $account.fieldFail.bill_fax}

{$account.fieldFail.bill_fax}

{/if}
Email - - {if $account.fieldFail.email}

{$account.fieldFail.email}

{/if}
-
Login Password - - {if $option == 'create'} - Save this password. -
A randomly generated password has been supplied. You may change this as desired. - There is no way to view a password once it's set. However, a user may recover a password using their - Email address at the login page. - {else} -
NOTE: Enter a password here only if you need to change it. - {/if} -
The password must be at least 8 characters and include at least one number, one letter, and at least one - special character. (# . - _ , $ % & !) - {if $account.fieldFail.password}

{$account.fieldFail.password}

{/if}
-
Email OK?Email OK?: {if $account.fieldFail.email_ok}

{$account.fieldFail.email_ok}

{/if}
@@ -291,7 +317,7 @@
Is Member?Is Member?: {if $account.fieldFail.is_member}

{$account.fieldFail.is_member}

{/if}
@@ -301,7 +327,7 @@

Contact Information

First NameFirst Name: {if $account.fieldFail.contact_fname}

{$account.fieldFail.contact_fname}

{/if}
@@ -309,7 +335,7 @@
Last NameLast Name: {if $account.fieldFail.contact_lname}

{$account.fieldFail.contact_lname}

{/if}
@@ -317,7 +343,7 @@
OrganizationOrganization: {if $account.fieldFail.contact_org}

{$account.fieldFail.contact_org}

{/if}
@@ -325,7 +351,7 @@
TitleTitle: {if $account.fieldFail.contact_title}

{$account.fieldFail.contact_title}

{/if}
@@ -333,7 +359,7 @@
Address 1Address 1: {if $account.fieldFail.contact_addr1}

{$account.fieldFail.contact_addr1}

{/if}
@@ -341,7 +367,7 @@
Address 2Address 2: {if $account.fieldFail.contact_addr2}

{$account.fieldFail.contact_addr2}

{/if}
@@ -349,7 +375,7 @@
CityCity: {if $account.fieldFail.contact_city}

{$account.fieldFail.contact_city}

{/if}
@@ -357,15 +383,22 @@
StateState: - + {if $account.fieldFail.contact_state}

{$account.fieldFail.contact_state}

{/if}
ZIPZIP: {if $account.fieldFail.contact_zip}

{$account.fieldFail.contact_zip}

{/if}
@@ -373,15 +406,22 @@
CountryCountry: - + {if $account.fieldFail.contact_country}

{$account.fieldFail.contact_country}

{/if}
Contact PhoneContact Phone: {if $account.fieldFail.contact_phone}

{$account.fieldFail.contact_phone}

{/if}
@@ -389,7 +429,7 @@
Contact FaxContact Fax: {if $account.fieldFail.contact_fax}

{$account.fieldFail.contact_fax}

{/if}
@@ -397,7 +437,7 @@
Contact EmailContact Email: {if $account.fieldFail.contact_email}

{$account.fieldFail.contact_email}

{/if}
@@ -405,7 +445,7 @@
Contact Email OK?Contact Email OK?: {if $account.fieldFail.contact_email_ok}

{$account.fieldFail.contact_email_ok}

{/if}
@@ -413,7 +453,7 @@
GuardianGuardian: {if $account.fieldFail.guardian}

{$account.fieldFail.guardian}

{/if}
@@ -424,7 +464,7 @@
Emergency ContactEmergency Contact: {if $account.fieldFail.emer_contact}

{$account.fieldFail.emer_contact}

{/if}
@@ -432,7 +472,7 @@
Emergency PhoneEmergency Phone: {if $account.fieldFail.emer_phone}

{$account.fieldFail.emer_phone}

{/if}
@@ -440,7 +480,7 @@
Medical HistoryMedical History: {if $account.fieldFail.med_history}

{$account.fieldFail.med_history}

{/if}
@@ -448,7 +488,7 @@
Allergy MedicationAllergy Medication: {if $account.fieldFail.allergy_med}

{$account.fieldFail.allergy_med}

{/if}
@@ -456,7 +496,7 @@
NotesNotes: {if $account.fieldFail.notes} diff --git a/views/admin/registrations/eventEdit.html b/views/admin/registrations/eventEdit.html index 6ecd87a..9c6c62c 100644 --- a/views/admin/registrations/eventEdit.html +++ b/views/admin/registrations/eventEdit.html @@ -30,8 +30,6 @@ -NEED TO ADD TESTS FOR CHANGES IN INPUT
- @@ -41,14 +39,14 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
- + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - -
Event Registration CodeEvent Registration Code: {if $regEvent.fieldFail.event_code}

{$regEvent.fieldFail.event_code}

{/if}
Notify E-Mail AddressNotify E-Mail Address:
You may enter up to 5 E-Mail addresses separated by commas. Administrative notifications will go out to all of those addresses. @@ -56,14 +54,14 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Admin ActiveAdmin Active: {if $regEvent.fieldFail.admin_active}

{$regEvent.fieldFail.admin_active}

{/if}
Date/Time Specific RegistrationsDate/Time Specific Registrations: Check this box for events where registrations are for specific dates and times. @@ -71,21 +69,21 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Registrations ActiveRegistrations Active: {if $regEvent.fieldFail.active}

{$regEvent.fieldFail.active}

{/if}
Multiple Attendees per SubmissionMultiple Attendees per Submission: {if $regEvent.fieldFail.attendees}

{$regEvent.fieldFail.attendees}

{/if}
Maximum # of AttendeesMaximum # of Attendees: Set to 0 to permit an unlimited number of attendees for this event.
@@ -93,7 +91,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Maximum # of Attendees Per SubmissionMaximum # of Attendees Per Submission: Set to 0 for to permit a user to register an unlimited number of attendees for this event at one time.
@@ -101,7 +99,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Attendees Hold Time (minutes)Attendees Hold Time (minutes): When an attendee is added to a registration request, the system will hold that attendee "slot" for this number of minutes before releasing it for others to register. After the attendee slot is released, the slot will be requested again each @@ -112,7 +110,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Cart Hold (days)Cart Hold (days): If the user has registrations entered but has not yet checked out, their "cart" will be maintained for this number of days. After that time, the card will be deleted. If a user has established a registrations account (entered registrations or @@ -122,7 +120,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
End of RegistrationEnd of Registration: This is the number of hours before an event starts after which no more registrations are permitted.
Hours @@ -130,7 +128,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Account OptionsAccount Options: {foreach from=$regEvent.fieldData.registration_account_options.bitmap item=v} {$v.name}
@@ -139,7 +137,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Payment MethodsPayment Methods: Checking a payment method makes it available for use by regular users at checkout.
{foreach from=$regEvent.fieldData.payment_methods.bitmap item=v} @@ -149,7 +147,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Restricted Payment MethodsRestricted Payment Methods: Restricted payment methods are those only available to logged in administrative users. For example, selecting "No Charge" here will allow administrative users to check out without having to provide any payment information.
@@ -160,7 +158,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Description (optional)Description (optional): {php} wp_editor('{$regEvent.fieldData.descr|escape:quotes}', 'glm_descr', array( @@ -176,7 +174,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
Terms and Conditions for RegistrationTerms and Conditions for Registration: {php} wp_editor('{$regEvent.fieldData.terms|escape:quotes}', 'glm_terms', array( @@ -192,7 +190,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
FileFile: {if $regEvent.fieldData.reg_file} Replace this file: @@ -204,14 +202,14 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT
File TitleFile Title: {if $regEvent.fieldFail.reg_file_title}

{$regEvent.fieldFail.reg_file_title}

{/if}
NotesNotes: {if $regEvent.fieldFail.notes} diff --git a/views/front/registrations/account.html b/views/front/registrations/account.html index e69de29..a4e2811 100644 --- a/views/front/registrations/account.html +++ b/views/front/registrations/account.html @@ -0,0 +1,218 @@ +{include file='front/registrations/header.html'} + + +Edit/create Account + +
+ {* Hidden fields go here *} + +
+ +
+
+

Account Information

+ {if $regAccountId == 0} +
+
E-Mail Address:
+
+
+
+
Password:
+
+
+ {else} +
+
E-Mail Address:
+
{$regAccount.fieldData.email}
+
+ {/if} +
+
First Name:
+
+
+
+
Last Name:
+
+
+
+
Organization:
+
+
+
+
Title:
+
+
+
+
Address:
+
+
+
+
 
+
+
+
+
City:
+
+
+
+
State/Province:
+
+ +
+
+
+
Zip/Postal Code:
+
+
+
+
Country:
+
+ +
+
+
+
+

Billing Information

+
 Same as Account Information
+
+
First Name:
+
+
+
+
Last Name:
+
+
+
+
Address:
+
+
+
+
 
+
+
+
+
City:
+
+
+
+
State:
+
+ +
+
+
+
Zip/Postal Code:
+
+
+
+
Country:
+
+ +
+
+
+
Phone:
+
+
+
+
FAX:
+
+
+
+
+
+
+

Additional Contact Information

+
+
First Name:
+
+
+
+
Address:
+
+
+
+
 
+
+
+
+
City:
+
+
+
+
State:
+
+ +
+
+
+
Zip/Postal Code:
+
+
+
+
Country:
+
+ +
+
+
+
E-mail:
+
+
+
+
Phone:
+
+
+
+
+
+
+ +
+ +
+ +
+ \ No newline at end of file diff --git a/views/front/registrations/checkout.html b/views/front/registrations/checkout.html index 5def0b1..f3f767e 100644 --- a/views/front/registrations/checkout.html +++ b/views/front/registrations/checkout.html @@ -1,8 +1,19 @@ {include file='front/registrations/header.html'} +{if $haveMessages} +
+ Please Note: +
    +{foreach $messages as $m} +
  • {$m}
  • +{/foreach} +
+
+{/if} + {if $haveCart} -
- {* Hidden fields go here *} + + See summary of registration request and charges below @@ -25,7 +36,10 @@
Password:
-
+
+ +

A password is required to access your registrations and submissions in the future. A suggested password has been supplied.

+
{else}
@@ -181,150 +195,109 @@
- {/if}
-

Additional Contact Information

-
-
First Name:
-
-
-
-
Address:
-
-
-
-
 
-
-
-
-
City:
-
-
+

Global Custom Fields Go Here

-
State:
-
- -
-
+
Custom fields that are event, level, rate, or registrant specific will be collected on registration selection page.
+ + + {/if} + +
+
-
Zip/Postal Code:
-
+

Terms and Conditions (*** Added fields for events ***)

+ You must check the boxes below to confirm that you agree to the listed Terms and Conditions for each event.
+ {foreach $cart.events as $event}
-
Country:
-
- +
 
+
+
{$event.event_name}:
+ {$event.event_terms} {$event.id}
+ *** Any added fields go here *** +
-
-
E-mail:
-
-
-
-
Phone:
-
-
-
-
-
-
-

Global Custom Fields Go Here

-
-
Custom fields that are event, level, rate, or registrant specific will be collected on registration selection page.
- + {/foreach}
-
- - + {if $cart.totalCharges > 0} -

Total Charged: ${$cart.totalCharges|number_format:2}

+

Total Charged: ${$cart.totalCharges|number_format:2}

{else} -
(There is no charge for your request.)
+
(There is no charge for your request.)
{/if} {if $cart.blockCheckout} -
-
You have not yet submitted your registration. See above for issues!
-
+
+
You have not yet submitted your registration. See above for issues!
+
{else} -
- You have one more step to complete your registration! -
+
+ You have one more step to complete your registration! +
{/if} -
- -

Registration Summary

- + - - - - - - - - - - - - - +

Registration Summary

+
RegisteringRegistrantDate/TimeDiscountRate
+ + + + + + + + + + + + + + {foreach $cart.events as $event} - - - + + + {foreach $event.classes as $class} - - - + + + {foreach $class.rates as $rate} - - - - + + + + {foreach $rate.registrants as $registrant} - - - - - - - + + + + + + + {/foreach} {/foreach} {/foreach} {/foreach} + @@ -337,11 +310,9 @@ +{/if} +
RegisteringRegistrantDate/TimeDiscountRate
Event: {$event.event_name}
Event: {$event.event_name}
    {$class.class_name}
    {$class.class_name}
-         {$rate.rate_name} - - Base Rate ({$rate.registrant_credits} registrants included) - {$rate.rateBaseCharge|number_format:2}
+         {$rate.rate_name} + - Base Rate ({$rate.registrant_credits} registrants included) + {$rate.rateBaseCharge|number_format:2}
 {$registrant.fname} {$registrant.lname}{$registrant.event_time} - {if $registrant.registrantDiscount > 0} - {$registrant.registrantDiscount|number_format:2} - {else} -   - {/if} - - {if $registrant.registrantRate > 0} - {$registrant.registrantRate|number_format:2} - {else} - (included) - {/if} -
 {$registrant.fname} {$registrant.lname}{$registrant.event_time} + {if $registrant.registrantDiscount > 0} + {$registrant.registrantDiscount|number_format:2} + {else} +   + {/if} + + {if $registrant.registrantRate > 0} + {$registrant.registrantRate|number_format:2} + {else} + (included) + {/if} +
  Total registrants: {$cart.totalRegistrants} ${$cart.totalCharges|number_format:2}
-
-{else} -
No cart data