More checkout processing working.
authorChuck Scott <cscott@gaslightmedia.com>
Mon, 30 Oct 2017 20:23:42 +0000 (16:23 -0400)
committerChuck Scott <cscott@gaslightmedia.com>
Mon, 30 Oct 2017 20:23:42 +0000 (16:23 -0400)
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.

12 files changed:
classes/data/dataRegRequestEvent.php
classes/regCartSupport.php
config/plugin.ini
css/front.css
models/admin/ajax/account.php
models/front/registrations/account.php
models/front/registrations/checkout.php
models/front/registrations/checkoutProcess.php
views/admin/registrations/accountEdit.html
views/admin/registrations/eventEdit.html
views/front/registrations/account.html
views/front/registrations/checkout.html

index ababa7a..27af1cf 100644 (file)
@@ -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',
index aeedfff..1690341 100644 (file)
@@ -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 "<pre>".print_r($_SESSION,1).print_r($regRequest,1)."</pre>";
 
         // 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;
+                    }
 
                 }
             }
index 7771061..479036c 100644 (file)
@@ -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
index ee8458d..fbcc04c 100644 (file)
@@ -298,4 +298,7 @@ span.glm-error {
 .glm-reg-warning {
     color: red;
 }
+#glm-reg-widget {
+    display: inline-block;
+}
 
index 3d22c61..f5e6482 100644 (file)
 // 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.
index 8e0b304..ef46d75 100644 (file)
@@ -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'])) {
 
         }
 
-        $view = 'summary';
-
         switch ( $option ) {
 
         }
 
+        // echo "<pre>".print_r($_SESSION,1)."</pre>";
+
         // Compile template data
         $templateData = array(
 
         );
+
+        $view = 'account';
+
              // Return status, any suggested view, and any data to controller
         return array(
             'status'        => true,
index 6ea6efc..7ffbfe6 100644 (file)
@@ -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
         );
 
index 96a6c75..a56047c 100644 (file)
@@ -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 "<p>Name = ".$_REQUEST['lname'].", ".$_REQUEST['fname']."</p>";
-echo "New Account<pre>".print_r($newAccount,1)."</pre>";
-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 "<pre>".print_r($this->cart,1)."</pre>";
+                $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 "<p>Checkout Process: Working on Payment .... </p>";
+        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,
index 157d879..4d93717 100644 (file)
@@ -28,7 +28,7 @@
         <table id="glm-table-account" class="glm-admin-table glm-account-table">
 
         <tr>
-            <th {if $account.fieldRequired.date_created} class="glm-required"{/if}>Date Created</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.date_created} glm-required{/if}">Date Created:</th>
             <td {if $account.fieldFail.date_created}class="glm-form-bad-input" data-tabid="glm-date-created"{/if}>
             {$account.fieldData.date_created.timestamp|date_format:"%D"}
             <input type="hidden" name="date_created" value="{$account.fieldData.date_created.timestamp|date_format:"%D"}">
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.user_trace_info} class="glm-required"{/if}>User Trace Info</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.user_trace_info} glm-required{/if}">User Trace Info:</th>
             <td {if $account.fieldFail.user_trace_info}class="glm-form-bad-input" data-tabid="glm-user-trace-info"{/if}>
             {$account.fieldData.user_trace_info}
             {if $account.fieldFail.user_trace_info}<p>{$account.fieldFail.user_trace_info}</p>{/if}<br>
             </td>
         </tr>
+        <tr>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.email} glm-required{/if}">Email:</th>
+            <td {if $account.fieldFail.email}class="glm-form-bad-input" data-tabid="glm-email"{/if}>
+                <input type="text" name="email" value="{$account.fieldData.email}" class="glm-form-text-input-medium">
+            {if $account.fieldFail.email}<p>{$account.fieldFail.email}</p>{/if}<br>
+            </td>
+        </tr>
 
         <tr>
-            <th {if $account.fieldRequired.member_id} class="glm-required"{/if}>Member ID</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.password} glm-required{/if}">Login Password:</th>
+            <td {if $account.fieldFail.password}class="glm-form-bad-input" data-tabid="glm-password"{/if}>
+                <input type="text" name="password" value="{$account.fieldData.password}" class="glm-form-text-input-medium" placeholder="{if $option=='create'}(no spaces permitted){else}(Password does not show, only enter to change password.){/if}">
+                    <br>
+                {if $option == 'create'}
+                    <span class="glm-notice">Save this password.</span>
+                    <br>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 <b><i>only</i></b> 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. (# . - _ , $ % & !)</b>
+            {if $account.fieldFail.password}<p>{$account.fieldFail.password}</p>{/if}<br>
+            </td>
+        </tr>
+        <tr>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.member_id} glm-required{/if}">Member ID:</th>
             <td {if $account.fieldFail.member_id}class="glm-form-bad-input" data-tabid="glm-member-id"{/if}>
                 <input type="text" name="member_id" value="{$account.fieldData.member_id}" class="glm-form-text-input-short">
             {if $account.fieldFail.member_id}<p>{$account.fieldFail.member_id}</p>{/if}<br>
@@ -53,7 +78,7 @@
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.active} class="glm-required"{/if}>Active</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.active} glm-required{/if}">Active:</th>
             <td {if $account.fieldFail.active}class="glm-form-bad-input" data-tabid="glm-active"{/if}>
                 <input type="checkbox" name="active" {if $account.fieldData.active.value} checked{/if}>
             {if $account.fieldFail.active}<p>{$account.fieldFail.active}</p>{/if}<br>
@@ -63,7 +88,7 @@
         <tr><th colspan="2"><p><h3>General Information</h3></p></th></tr>
 
         <tr>
-            <th {if $account.fieldRequired.fname} class="glm-required"{/if}>First Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.fname} glm-required{/if}">First Name:</th>
             <td {if $account.fieldFail.fname}class="glm-form-bad-input" data-tabid="glm-fname"{/if}>
                 <input type="text" name="fname" value="{$account.fieldData.fname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.fname}<p>{$account.fieldFail.fname}</p>{/if}<br>
@@ -71,7 +96,7 @@
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.lname} class="glm-required"{/if}>Last Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.lname} glm-required{/if}">Last Name:</th>
             <td {if $account.fieldFail.lname}class="glm-form-bad-input" data-tabid="glm-lname"{/if}>
                 <input type="text" name="lname" value="{$account.fieldData.lname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.lname}<p>{$account.fieldFail.lname}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.org} class="glm-required"{/if}>Organization</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.org} glm-required{/if}">Organization:</th>
             <td {if $account.fieldFail.org}class="glm-form-bad-input" data-tabid="glm-org"{/if}>
                 <input type="text" name="org" value="{$account.fieldData.org}" class="glm-form-text-input-medium">
             {if $account.fieldFail.org}<p>{$account.fieldFail.org}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.title} class="glm-required"{/if}>Title</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.title} glm-required{/if}">Title:</th>
             <td {if $account.fieldFail.title}class="glm-form-bad-input" data-tabid="glm-title"{/if}>
                 <input type="text" name="title" value="{$account.fieldData.title}" class="glm-form-text-input-medium">
             {if $account.fieldFail.title}<p>{$account.fieldFail.title}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.addr1} class="glm-required"{/if}>Address 1</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.addr1} glm-required{/if}">Address 1:</th>
             <td {if $account.fieldFail.addr1}class="glm-form-bad-input" data-tabid="glm-addr1"{/if}>
                 <input type="text" name="addr1" value="{$account.fieldData.addr1}" class="glm-form-text-input-medium">
             {if $account.fieldFail.addr1}<p>{$account.fieldFail.addr1}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.addr2} class="glm-required"{/if}>Address 2</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.addr2} glm-required{/if}">Address 2:</th>
             <td {if $account.fieldFail.addr2}class="glm-form-bad-input" data-tabid="glm-addr2"{/if}>
                 <input type="text" name="addr2" value="{$account.fieldData.addr2}" class="glm-form-text-input-medium">
             {if $account.fieldFail.addr2}<p>{$account.fieldFail.addr2}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.city} class="glm-required"{/if}>City</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.city} glm-required{/if}">City:</th>
             <td {if $account.fieldFail.city}class="glm-form-bad-input" data-tabid="glm-city"{/if}>
                 <input type="text" name="city" value="{$account.fieldData.city}" class="glm-form-text-input-medium">
             {if $account.fieldFail.city}<p>{$account.fieldFail.city}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.state} class="glm-required"{/if}>State</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.state} glm-required{/if}">State:</th>
             <td {if $account.fieldFail.state}class="glm-form-bad-input" data-tabid="glm-state"{/if}>
-                <input type="text" name="state" value="{$account.fieldData.state}" class="glm-form-text-input-medium">
+                <select name="state">
+                    <option value=""></option>
+        {foreach $account.fieldData.state.list as $s}
+                    <option value="{$s.value}"{if $account.fieldData.state.value == $s.value} selected="selected"{/if}>
+                        {$s.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.state}<p>{$account.fieldFail.state}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.zip} class="glm-required"{/if}>ZIP</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.zip} glm-required{/if}">ZIP:</th>
             <td {if $account.fieldFail.zip}class="glm-form-bad-input" data-tabid="glm-zip"{/if}>
                 <input type="text" name="zip" value="{$account.fieldData.zip}" class="glm-form-text-input-medium">
             {if $account.fieldFail.zip}<p>{$account.fieldFail.zip}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.country} class="glm-required"{/if}>Country</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.country} glm-required{/if}">Country:</th>
             <td {if $account.fieldFail.country}class="glm-form-bad-input" data-tabid="glm-country"{/if}>
-                <input type="text" name="country" value="{$account.fieldData.country}" class="glm-form-text-input-medium">
+                <select name="country">
+                    <option value=""></option>
+        {foreach $account.fieldData.country.list as $c}
+                    <option value="{$c.value}"{if $account.fieldData.country.value == $c.value} selected="selected"{/if}>
+                        {$c.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.country}<p>{$account.fieldFail.country}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.phone} class="glm-required"{/if}>Phone</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.phone} glm-required{/if}">Phone:</th>
             <td {if $account.fieldFail.phone}class="glm-form-bad-input" data-tabid="glm-phone"{/if}>
                 <input type="text" name="phone" value="{$account.fieldData.phone}" class="glm-form-text-input-medium">
             {if $account.fieldFail.phone}<p>{$account.fieldFail.phone}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.fax} class="glm-required"{/if}>Fax</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.fax} glm-required{/if}">Fax:</th>
             <td {if $account.fieldFail.fax}class="glm-form-bad-input" data-tabid="glm-fax"{/if}>
                 <input type="text" name="fax" value="{$account.fieldData.fax}" class="glm-form-text-input-medium">
             {if $account.fieldFail.fax}<p>{$account.fieldFail.fax}</p>{/if}<br>
         <tr><th colspan="2"><p><h3>Billing Information</h3></p></th></tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_fname} class="glm-required"{/if}>First Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_fname} glm-required{/if}">First Name:</th>
             <td {if $account.fieldFail.bill_fname}class="glm-form-bad-input" data-tabid="glm-bill-fname"{/if}>
                 <input type="text" name="bill_fname" value="{$account.fieldData.bill_fname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_fname}<p>{$account.fieldFail.bill_fname}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_lname} class="glm-required"{/if}>Last Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_lname} glm-required{/if}">Last Name:</th>
             <td {if $account.fieldFail.bill_lname}class="glm-form-bad-input" data-tabid="glm-bill-lname"{/if}>
                 <input type="text" name="bill_lname" value="{$account.fieldData.bill_lname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_lname}<p>{$account.fieldFail.bill_lname}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_org} class="glm-required"{/if}>Organization</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_org} glm-required{/if}">Organization:</th>
             <td {if $account.fieldFail.bill_org}class="glm-form-bad-input" data-tabid="glm-bill-org"{/if}>
                 <input type="text" name="bill_org" value="{$account.fieldData.bill_org}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_org}<p>{$account.fieldFail.bill_org}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_title} class="glm-required"{/if}>Title</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_title} glm-required{/if}">Title:</th>
             <td {if $account.fieldFail.bill_title}class="glm-form-bad-input" data-tabid="glm-bill-title"{/if}>
                 <input type="text" name="bill_title" value="{$account.fieldData.bill_title}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_title}<p>{$account.fieldFail.bill_title}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_addr1} class="glm-required"{/if}>Address 1</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_addr1} glm-required{/if}">Address 1:</th>
             <td {if $account.fieldFail.bill_addr1}class="glm-form-bad-input" data-tabid="glm-bill-addr1"{/if}>
                 <input type="text" name="bill_addr1" value="{$account.fieldData.bill_addr1}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_addr1}<p>{$account.fieldFail.bill_addr1}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_addr2} class="glm-required"{/if}>Address 2</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_addr2} glm-required{/if}">Address 2:</th>
             <td {if $account.fieldFail.bill_addr2}class="glm-form-bad-input" data-tabid="glm-bill-addr2"{/if}>
                 <input type="text" name="bill_addr2" value="{$account.fieldData.bill_addr2}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_addr2}<p>{$account.fieldFail.bill_addr2}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_city} class="glm-required"{/if}>City</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_city} glm-required{/if}">City:</th>
             <td {if $account.fieldFail.bill_city}class="glm-form-bad-input" data-tabid="glm-bill-city"{/if}>
                 <input type="text" name="bill_city" value="{$account.fieldData.bill_city}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_city}<p>{$account.fieldFail.bill_city}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_state} class="glm-required"{/if}>State</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_state} glm-required{/if}">State:</th>
             <td {if $account.fieldFail.bill_state}class="glm-form-bad-input" data-tabid="glm-bill-state"{/if}>
-                <input type="text" name="bill_state" value="{$account.fieldData.bill_state}" class="glm-form-text-input-medium">
+                <select name="bill_state">
+                    <option value=""></option>
+        {foreach $account.fieldData.bill_state.list as $s}
+                    <option value="{$s.value}"{if $account.fieldData.bill_state.value == $s.value} selected="selected"{/if}>
+                        {$s.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.bill_state}<p>{$account.fieldFail.bill_state}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_zip} class="glm-required"{/if}>ZIP</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_zip} glm-required{/if}">ZIP:</th>
             <td {if $account.fieldFail.bill_zip}class="glm-form-bad-input" data-tabid="glm-bill-zip"{/if}>
                 <input type="text" name="bill_zip" value="{$account.fieldData.bill_zip}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_zip}<p>{$account.fieldFail.bill_zip}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_country} class="glm-required"{/if}>Country</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_country} glm-required{/if}">Country:</th>
             <td {if $account.fieldFail.bill_country}class="glm-form-bad-input" data-tabid="glm-bill-country"{/if}>
-                <input type="text" name="bill_country" value="{$account.fieldData.bill_country}" class="glm-form-text-input-medium">
+                <select name="bill_country">
+                    <option value=""></option>
+        {foreach $account.fieldData.bill_country.list as $c}
+                    <option value="{$c.value}"{if $account.fieldData.bill_country.value == $c.value} selected="selected"{/if}>
+                        {$c.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.bill_country}<p>{$account.fieldFail.bill_country}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_phone} class="glm-required"{/if}>Phone</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_phone} glm-required{/if}">Phone:</th>
             <td {if $account.fieldFail.bill_phone}class="glm-form-bad-input" data-tabid="glm-bill-phone"{/if}>
                 <input type="text" name="bill_phone" value="{$account.fieldData.bill_phone}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_phone}<p>{$account.fieldFail.bill_phone}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.bill_fax} class="glm-required"{/if}>Fax</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.bill_fax} glm-required{/if}">Fax:</th>
             <td {if $account.fieldFail.bill_fax}class="glm-form-bad-input" data-tabid="glm-bill-fax"{/if}>
                 <input type="text" name="bill_fax" value="{$account.fieldData.bill_fax}" class="glm-form-text-input-medium">
             {if $account.fieldFail.bill_fax}<p>{$account.fieldFail.bill_fax}</p>{/if}<br>
             </td>
         </tr>
-
-        <tr>
-            <th {if $account.fieldRequired.email} class="glm-required"{/if}>Email</th>
-            <td {if $account.fieldFail.email}class="glm-form-bad-input" data-tabid="glm-email"{/if}>
-                <input type="text" name="email" value="{$account.fieldData.email}" class="glm-form-text-input-medium">
-            {if $account.fieldFail.email}<p>{$account.fieldFail.email}</p>{/if}<br>
-            </td>
-        </tr>
-
-        <tr>
-            <th {if $account.fieldRequired.password} class="glm-required"{/if}>Login Password</th>
-            <td {if $account.fieldFail.password}class="glm-form-bad-input" data-tabid="glm-password"{/if}>
-                <input type="text" name="password" value="{$account.fieldData.password}" class="glm-form-text-input-medium" placeholder="{if $option=='create'}(no spaces permitted){else}(Password does not show, only enter to change password.){/if}">
-                {if $option == 'create'}
-                    <span class="glm-notice">Save this password.</span>
-                    <br>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}
-                    <br>NOTE: Enter a password here <b><i>only</i></b> if you need to change it.
-                {/if}
-                    <br>The password must be at least 8 characters and include at least one number, one letter, and at least one
-                    special character. (# . - _ , $ % & !)</b>
-            {if $account.fieldFail.password}<p>{$account.fieldFail.password}</p>{/if}<br>
-            </td>
-        </tr>
-
         <tr>
-            <th {if $account.fieldRequired.email_ok} class="glm-required"{/if}>Email OK?</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.email_ok} glm-required{/if}">Email OK?:</th>
             <td {if $account.fieldFail.email_ok}class="glm-form-bad-input" data-tabid="glm-email-ok"{/if}>
                 <input type="checkbox" name="email_ok" {if $account.fieldData.email_ok.value} checked{/if}>
             {if $account.fieldFail.email_ok}<p>{$account.fieldFail.email_ok}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.is_member} class="glm-required"{/if}>Is Member?</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.is_member} glm-required{/if}">Is Member?:</th>
             <td {if $account.fieldFail.is_member}class="glm-form-bad-input" data-tabid="glm-is-member"{/if}>
                 <input type="checkbox" name="is_member" {if $account.fieldData.is_member.value} checked{/if}>
             {if $account.fieldFail.is_member}<p>{$account.fieldFail.is_member}</p>{/if}<br>
         <tr><th colspan="2"><p><h3>Contact Information</h3></p></th></tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_fname} class="glm-required"{/if}>First Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_fname} glm-required{/if}">First Name:</th>
             <td {if $account.fieldFail.contact_fname}class="glm-form-bad-input" data-tabid="glm-contact-fname"{/if}>
                 <input type="text" name="contact_fname" value="{$account.fieldData.contact_fname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_fname}<p>{$account.fieldFail.contact_fname}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_lname} class="glm-required"{/if}>Last Name</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_lname} glm-required{/if}">Last Name:</th>
             <td {if $account.fieldFail.contact_lname}class="glm-form-bad-input" data-tabid="glm-contact-lname"{/if}>
                 <input type="text" name="contact_lname" value="{$account.fieldData.contact_lname}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_lname}<p>{$account.fieldFail.contact_lname}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_org} class="glm-required"{/if}>Organization</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_org} glm-required{/if}">Organization:</th>
             <td {if $account.fieldFail.contact_org}class="glm-form-bad-input" data-tabid="glm-contact-org"{/if}>
                 <input type="text" name="contact_org" value="{$account.fieldData.contact_org}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_org}<p>{$account.fieldFail.contact_org}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_title} class="glm-required"{/if}>Title</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_title} glm-required{/if}">Title:</th>
             <td {if $account.fieldFail.contact_title}class="glm-form-bad-input" data-tabid="glm-contact-title"{/if}>
                 <input type="text" name="contact_title" value="{$account.fieldData.contact_title}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_title}<p>{$account.fieldFail.contact_title}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_addr1} class="glm-required"{/if}>Address 1</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_addr1} glm-required{/if}">Address 1:</th>
             <td {if $account.fieldFail.contact_addr1}class="glm-form-bad-input" data-tabid="glm-contact-addr1"{/if}>
                 <input type="text" name="contact_addr1" value="{$account.fieldData.contact_addr1}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_addr1}<p>{$account.fieldFail.contact_addr1}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_addr2} class="glm-required"{/if}>Address 2</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_addr2} glm-required{/if}">Address 2:</th>
             <td {if $account.fieldFail.contact_addr2}class="glm-form-bad-input" data-tabid="glm-contact-addr2"{/if}>
                 <input type="text" name="contact_addr2" value="{$account.fieldData.contact_addr2}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_addr2}<p>{$account.fieldFail.contact_addr2}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_city} class="glm-required"{/if}>City</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_city} glm-required{/if}">City:</th>
             <td {if $account.fieldFail.contact_city}class="glm-form-bad-input" data-tabid="glm-contact-cite"{/if}>
                 <input type="text" name="contact_city" value="{$account.fieldData.contact_city}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_city}<p>{$account.fieldFail.contact_city}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_state} class="glm-required"{/if}>State</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_state} glm-required{/if}">State:</th>
             <td {if $account.fieldFail.contact_state}class="glm-form-bad-input" data-tabid="glm-contact-state"{/if}>
-                <input type="text" name="contact_state" value="{$account.fieldData.contact_state}" class="glm-form-text-input-medium">
+                <select name="contact_state">
+                    <option value=""></option>
+        {foreach $account.fieldData.contact_state.list as $s}
+                    <option value="{$s.value}"{if $account.fieldData.contact_state.value == $s.value} selected="selected"{/if}>
+                        {$s.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.contact_state}<p>{$account.fieldFail.contact_state}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_zip} class="glm-required"{/if}>ZIP</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_zip} glm-required{/if}">ZIP:</th>
             <td {if $account.fieldFail.contact_zip}class="glm-form-bad-input" data-tabid="glm-contact-zip"{/if}>
                 <input type="text" name="contact_zip" value="{$account.fieldData.contact_zip}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_zip}<p>{$account.fieldFail.contact_zip}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_country} class="glm-required"{/if}>Country</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_country} glm-required{/if}">Country:</th>
             <td {if $account.fieldFail.contact_country}class="glm-form-bad-input" data-tabid="glm-contact-country"{/if}>
-                <input type="text" name="contact_country" value="{$account.fieldData.contact_country}" class="glm-form-text-input-medium">
+                <select name="contact_country">
+                    <option value=""></option>
+        {foreach $account.fieldData.contact_country.list as $c}
+                    <option value="{$c.value}"{if $account.fieldData.contact_country.value == $c.value} selected="selected"{/if}>
+                        {$c.name}
+                    </option>
+        {/foreach}
+                </select>
             {if $account.fieldFail.contact_country}<p>{$account.fieldFail.contact_country}</p>{/if}<br>
             </td>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_phone} class="glm-required"{/if}>Contact Phone</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_phone} glm-required{/if}">Contact Phone:</th>
             <td {if $account.fieldFail.contact_phone}class="glm-form-bad-input" data-tabid="glm-contact-phone"{/if}>
                 <input type="text" name="contact_phone" value="{$account.fieldData.contact_phone}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_phone}<p>{$account.fieldFail.contact_phone}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_fax} class="glm-required"{/if}>Contact Fax</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_fax} glm-required{/if}">Contact Fax:</th>
             <td {if $account.fieldFail.contact_fax}class="glm-form-bad-input" data-tabid="glm-contact-fax"{/if}>
                 <input type="text" name="contact_fax" value="{$account.fieldData.contact_fax}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_fax}<p>{$account.fieldFail.contact_fax}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_email} class="glm-required"{/if}>Contact Email</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_email} glm-required{/if}">Contact Email:</th>
             <td {if $account.fieldFail.contact_email}class="glm-form-bad-input" data-tabid="glm-contact-email"{/if}>
                 <input type="text" name="contact_email" value="{$account.fieldData.contact_email}" class="glm-form-text-input-medium">
             {if $account.fieldFail.contact_email}<p>{$account.fieldFail.contact_email}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.contact_email_ok} class="glm-required"{/if}>Contact Email OK?</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.contact_email_ok} glm-required{/if}">Contact Email OK?:</th>
             <td {if $account.fieldFail.contact_email_ok}class="glm-form-bad-input" data-tabid="glm-contact-email-ok"{/if}>
                 <input type="checkbox" name="contact_email_ok" {if $account.fieldData.contact_email_ok.value} checked{/if}>
             {if $account.fieldFail.contact_email_ok}<p>{$account.fieldFail.contact_email_ok}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.guardian} class="glm-required"{/if}>Guardian</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.guardian} glm-required{/if}">Guardian:</th>
             <td {if $account.fieldFail.guardian}class="glm-form-bad-input" data-tabid="glm-guardian"{/if}>
                 <input type="text" name="guardian" value="{$account.fieldData.guardian}" class="glm-form-text-input-medium">
             {if $account.fieldFail.guardian}<p>{$account.fieldFail.guardian}</p>{/if}<br>
 
 
         <tr>
-            <th {if $account.fieldRequired.emer_contact} class="glm-required"{/if}>Emergency Contact</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.emer_contact} glm-required{/if}">Emergency Contact:</th>
             <td {if $account.fieldFail.emer_contact}class="glm-form-bad-input" data-tabid="glm-emer-contact"{/if}>
                 <input type="text" name="emer_contact" value="{$account.fieldData.emer_contact}" class="glm-form-text-input-medium">
             {if $account.fieldFail.emer_contact}<p>{$account.fieldFail.emer_contact}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.emer_phone} class="glm-required"{/if}>Emergency Phone</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.emer_phone} glm-required{/if}">Emergency Phone:</th>
             <td {if $account.fieldFail.emer_phone}class="glm-form-bad-input" data-tabid="glm-emer-phone"{/if}>
                 <input type="text" name="emer_phone" value="{$account.fieldData.emer_phone}" class="glm-form-text-input-medium">
             {if $account.fieldFail.emer_phone}<p>{$account.fieldFail.emer_phone}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.med_history} class="glm-required"{/if}>Medical History</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.med_history} glm-required{/if}">Medical History:</th>
             <td {if $account.fieldFail.med_history}class="glm-form-bad-input" data-tabid="glm-med-history"{/if}>
                 <input type="text" name="med_history" value="{$account.fieldData.med_history}" class="glm-form-text-input-medium">
             {if $account.fieldFail.med_history}<p>{$account.fieldFail.med_history}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.allergy_med} class="glm-required"{/if}>Allergy Medication</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.allergy_med} glm-required{/if}">Allergy Medication:</th>
             <td {if $account.fieldFail.allergy_med}class="glm-form-bad-input" data-tabid="glm-allergy-med"{/if}>
                 <input type="text" name="allergy_med" value="{$account.fieldData.allergy_med}" class="glm-form-text-input-medium">
             {if $account.fieldFail.allergy_med}<p>{$account.fieldFail.allergy_med}</p>{/if}<br>
         </tr>
 
         <tr>
-            <th {if $account.fieldRequired.notes} class="glm-required"{/if}>Notes</th>
+            <th class="glm-nowrap-left-align{if $account.fieldRequired.notes} glm-required{/if}">Notes:</th>
             <td {if $account.fieldFail.notes}class="glm-form-bad-input" data-tabid="glm-notes"{/if}>
             <textarea name="notes" class="glm-form-textarea">{$account.fieldData.notes}</textarea>
             {if $account.fieldFail.notes}
index 6ecd87a..9c6c62c 100644 (file)
@@ -30,8 +30,6 @@
            <input type="hidden" name="option" value="update">
            <input type="hidden" name="regEventID" value="{$regEventID}">
 
-NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
-
         <table id="glm-table-settings" class="glm-registrations-table">
     
             <tr>
@@ -41,14 +39,14 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.event_code}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Event Registration Code</th>
+                <th {if $regEvent.fieldRequired.event_code}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Event Registration Code:</th>
                 <td {if $regEvent.fieldFail.event_code}class="glm-form-bad-input" data-tabid="glm-event_code"{/if}>
                     <input type="text" name="event_code" value="{$regEvent.fieldData.event_code}" class="glm-form-text-input-medium">
                 {if $regEvent.fieldFail.event_code}<p>{$regEvent.fieldFail.event_code}</p>{/if}<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.notify_email}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Notify E-Mail Address</th>
+                <th {if $regEvent.fieldRequired.notify_email}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Notify E-Mail Address:</th>
                 <td {if $regEvent.fieldFail.notify_email}class="glm-form-bad-input" data-tabid="glm-notify_email"{/if}>
                     <input type="text" name="notify_email" value="{$regEvent.fieldData.notify_email}" class="glm-form-text-input-medium">
                     <br>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<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.admin_active}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Admin Active</th>
+                <th {if $regEvent.fieldRequired.admin_active}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Admin Active:</th>
                 <td {if $regEvent.fieldFail.admin_active}class="glm-form-bad-input" data-tabid="glm-admin_active"{/if}>
                     <input type="checkbox" name="active" {if $regEvent.fieldData.admin_active.value} checked{/if}>
                 {if $regEvent.fieldFail.admin_active}<p>{$regEvent.fieldFail.admin_active}</p>{/if}<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.time_specific}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Date/Time Specific Registrations</th>
+                <th {if $regEvent.fieldRequired.time_specific}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Date/Time Specific Registrations:</th>
                 <td {if $regEvent.fieldFail.time_specific}class="glm-form-bad-input" data-tabid="glm-time_specific"{/if}>
                     <input type="checkbox" name="time_specific" {if $regEvent.fieldData.time_specific.value} checked{/if}>
                     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<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.active}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Registrations Active</th>
+                <th {if $regEvent.fieldRequired.active}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Registrations Active:</th>
                 <td {if $regEvent.fieldFail.active}class="glm-form-bad-input" data-tabid="glm-active"{/if}>
                     <input type="checkbox" name="active" {if $regEvent.fieldData.active.value} checked{/if}>
                 {if $regEvent.fieldFail.active}<p>{$regEvent.fieldFail.active}</p>{/if}<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.attendees}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Multiple Attendees per Submission</th>
+                <th {if $regEvent.fieldRequired.attendees}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Multiple Attendees per Submission:</th>
                 <td {if $regEvent.fieldFail.attendees}class="glm-form-bad-input" data-tabid="glm-attendees"{/if}>
                     <input type="checkbox" name="active" {if $regEvent.fieldData.attendees.value} checked{/if}>
                 {if $regEvent.fieldFail.attendees}<p>{$regEvent.fieldFail.attendees}</p>{/if}<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.attendee_max}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Maximum # of Attendees</th>
+                <th {if $regEvent.fieldRequired.attendee_max}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Maximum # of Attendees:</th>
                 <td {if $regEvent.fieldFail.attendee_max}class="glm-form-bad-input" data-tabid="glm-attendee_max"{/if}>
                     Set to 0 to permit an unlimited number of attendees for this event.<br>
                     <input type="text" name="attendee_max" value="{$regEvent.fieldData.attendee_max}" class="glm-form-text-input-medium">
@@ -93,7 +91,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.attendee_max_per_reg}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Maximum # of Attendees Per Submission</th>
+                <th {if $regEvent.fieldRequired.attendee_max_per_reg}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Maximum # of Attendees Per Submission:</th>
                 <td {if $regEvent.fieldFail.attendee_max_per_reg}class="glm-form-bad-input" data-tabid="glm-attendee_max_per_reg"{/if}>
                     Set to 0 for to permit a user to register an unlimited number of attendees for this event at one time.<br>
                     <input type="text" name="attendee_max_per_reg" value="{$regEvent.fieldData.attendee_max_per_reg}" class="glm-form-text-input-medium">
@@ -101,7 +99,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.reg_hold_minutes}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Attendees Hold Time (minutes)</th>
+                <th {if $regEvent.fieldRequired.reg_hold_minutes}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Attendees Hold Time (minutes):</th>
                 <td {if $regEvent.fieldFail.reg_hold_minutes}class="glm-form-bad-input" data-tabid="glm-reg_hold_minutes"{/if}>
                     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<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.cart_hold_days}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Cart Hold (days)</th>
+                <th {if $regEvent.fieldRequired.cart_hold_days}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Cart Hold (days):</th>
                 <td {if $regEvent.fieldFail.cart_hold_days}class="glm-form-bad-input" data-tabid="glm-cart_hold_days"{/if}>
                     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<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.reg_hours_before}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>End of Registration</th>
+                <th {if $regEvent.fieldRequired.reg_hours_before}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>End of Registration:</th>
                 <td {if $regEvent.fieldFail.reg_hours_before}class="glm-form-bad-input" data-tabid="glm-reg_hours_before"{/if}>
                     This is the number of hours before an event starts after which no more registrations are permitted.<br>
                     <input type="text" name="reg_hours_before" value="{$regEvent.fieldData.reg_hours_before}" class="glm-form-text-input-veryshort"> Hours
@@ -130,7 +128,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.registration_account_options}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Account Options</th>
+                <th {if $regEvent.fieldRequired.registration_account_options}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Account Options:</th>
                 <td {if $regEvent.fieldFail.registration_account_options}class="glm-form-bad-input" data-tabid="glm-registration_account_options"{/if}>
         {foreach from=$regEvent.fieldData.registration_account_options.bitmap item=v}
                         <input type="checkbox" name="registration_account_options[{$v.value}]" value="{$v.value}"{if $v.default} checked{/if}> {$v.name}<br>
@@ -139,7 +137,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.payment_methods}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Payment Methods</th>
+                <th {if $regEvent.fieldRequired.payment_methods}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Payment Methods:</th>
                 <td {if $regEvent.fieldFail.payment_methods}class="glm-form-bad-input" data-tabid="glm-payment_methods"{/if}>
                     Checking a payment method makes it available for use by regular users at checkout.<br>
         {foreach from=$regEvent.fieldData.payment_methods.bitmap item=v}
@@ -149,7 +147,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.restricted_payment_methods}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Restricted Payment Methods</th>
+                <th {if $regEvent.fieldRequired.restricted_payment_methods}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Restricted Payment Methods:</th>
                 <td {if $regEvent.fieldFail.restricted_payment_methods}class="glm-form-bad-input" data-tabid="glm-restricted_payment_methods"{/if}>
                     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.<br>
@@ -160,7 +158,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.descr}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Description (optional)</th>
+                <th {if $regEvent.fieldRequired.descr}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Description (optional):</th>
                 <td {if $regEvent.fieldFail.descr}class="glm-form-bad-input" data-tabid="glm-descr"{/if}>
                     {php}
                         wp_editor('{$regEvent.fieldData.descr|escape:quotes}', 'glm_descr', array(
@@ -176,7 +174,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.terms}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Terms and Conditions for Registration</th>
+                <th {if $regEvent.fieldRequired.terms}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Terms and Conditions for Registration:</th>
                 <td {if $regEvent.fieldFail.terms}class="glm-form-bad-input" data-tabid="glm-terms"{/if}>
                     {php}
                         wp_editor('{$regEvent.fieldData.terms|escape:quotes}', 'glm_terms', array(
@@ -192,7 +190,7 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.reg_file}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>File</th>
+                <th {if $regEvent.fieldRequired.reg_file}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>File:</th>
                 <td {if $regEvent.fieldFail.reg_file}class="glm-form-bad-input"{/if}>
         {if $regEvent.fieldData.reg_file}
                     <span class="glm-right">Replace this file:</b> <input type="file" name="reg_file_new"></span>
@@ -204,14 +202,14 @@ NEED TO ADD TESTS FOR CHANGES IN INPUT<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.reg_file_title}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>File Title</th>
+                <th {if $regEvent.fieldRequired.reg_file_title}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>File Title:</th>
                 <td {if $regEvent.fieldFail.reg_file_title}class="glm-form-bad-input" data-tabid="glm-reg_file_title"{/if}>
                     <input type="text" name="reg_file_title" value="{$regEvent.fieldData.reg_file_title}" class="glm-form-text-input-medium">
                 {if $regEvent.fieldFail.reg_file_title}<p>{$regEvent.fieldFail.reg_file_title}</p>{/if}<br>
                 </td>
             </tr>
             <tr>
-                <th {if $regEvent.fieldRequired.notes}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Notes</th>
+                <th {if $regEvent.fieldRequired.notes}class="glm-required-nowrap-left-align"{else}class="glm-nowrap-left-align"{/if}>Notes:</th>
                 <td {if $regEvent.fieldFail.notes}class="glm-form-bad-input" data-tabid="glm-notes"{/if}>
                     <textarea name="notes" class="glm-form-textarea">{$regEvent.fieldData.notes}</textarea>
                 {if $regEvent.fieldFail.notes}
index e69de29..a4e2811 100644 (file)
@@ -0,0 +1,218 @@
+{include file='front/registrations/header.html'}
+
+
+Edit/create Account
+
+    <form href="{$regUrl}?page=account">
+        {* Hidden fields go here *}
+
+         <div id="glm-reg-account-form">
+
+            <div class="glm-reg-row">
+                <div class="glm-large-6 glm-columns">
+                    <h4>Account Information</h4>
+  {if $regAccountId == 0}
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.email} glm-reg-required{/if}">E-Mail Address:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.email} glm-reg-fail{/if}"><input type="email" name="email" value="{$regAccount.fieldData.email}"{if $regAccount.fieldRequired.email} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.password} glm-reg-required{/if}">Password:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.password} glm-reg-fail{/if}"><input type="password" name="password" value=""{if $regAccount.fieldRequired.password} required{/if}></div>
+                    </div>
+  {else}
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap">E-Mail Address:</div>
+                        <div class="glm-large-9 glm-columns">{$regAccount.fieldData.email}</div>
+                    </div>
+  {/if}                    
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.fname} glm-reg-required{/if}">First Name:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.fname} glm-reg-fail{/if}"><input type="text" name="fname" value="{$regAccount.fieldData.fname}"{if $regAccount.fieldRequired.fname} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.lname} glm-reg-required{/if}">Last Name:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.lname} glm-reg-fail{/if}"><input type="text" name="lname" value="{$regAccount.fieldData.lname}"{if $regAccount.fieldRequired.lname} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.org} glm-reg-required{/if}">Organization:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.org} glm-reg-fail{/if}"><input type="text" name="org" value="{$regAccount.fieldData.org}"{if $regAccount.fieldRequired.org} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.title} glm-reg-required{/if}">Title:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.title} glm-reg-fail{/if}"><input type="text" name="title" value="{$regAccount.fieldData.title}"{if $regAccount.fieldRequired.title} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.addr1} glm-reg-required{/if}">Address:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.addr1} glm-reg-fail{/if}"><input type="text" name="addr1" value="{$regAccount.fieldData.addr1}"{if $regAccount.fieldRequired.addr1} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.addr2} glm-reg-required{/if}">&nbsp;</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.addr1} glm-reg-fail{/if}"><input type="text" name="addr2" value="{$regAccount.fieldData.addr2}"{if $regAccount.fieldRequired.addr2} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.city} glm-reg-required{/if}">City:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.city} glm-reg-fail{/if}"><input type="text" name="city" value="{$regAccount.fieldData.city}"{if $regAccount.fieldRequired.city} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.state} glm-reg-required{/if}">State/Province:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.state} glm-reg-fail{/if}">
+                            <select name="state">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.state.list as $s}
+                                <option value="{$s.value}"{if $memberInfo.fieldData.state.value == $s.value} selected="selected"{/if}>
+                                    {$s.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.zip} glm-reg-required{/if}">Zip/Postal Code:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.zip} glm-reg-fail{/if}"><input type="text" name="zip" value="{$regAccount.fieldData.zip}"{if $regAccount.fieldRequired.zip} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.country} glm-reg-required{/if}">Country:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.country} glm-reg-fail{/if}">
+                            <select name="country">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.country.list as $c}
+                                <option value="{$c.value}"{if $memberInfo.fieldData.country.value == $c.value} selected="selected"{/if}>
+                                    {$c.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                </div>
+                <div class="glm-large-6 glm-columns" style="">
+                    <div class="glm-reg-row"><div class="glm-large-12 glm-columns"><h4>Billing Information</h4></div></div>
+                    <div class="glm-reg-row"><div class="glm-large-12 glm-columns"><input type="checkbox" name="billing_same">&nbsp;Same as Account Information</div></div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_fname} glm-reg-required{/if}">First Name:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_fname} glm-reg-fail{/if}"><input type="text" name="bill_fname" value="{$regAccount.fieldData.bill_fname}"{if $regAccount.fieldRequired.bill_fname} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_lname} glm-reg-required{/if}">Last Name:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_lname} glm-reg-fail{/if}"><input type="text" name="bill_lname" value="{$regAccount.fieldData.bill_lname}"{if $regAccount.fieldRequired.bill_lname} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_addr1} glm-reg-required{/if}">Address:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_addr1} glm-reg-fail{/if}"><input type="text" name="bill_addr1" value="{$regAccount.fieldData.bill_addr1}"{if $regAccount.fieldRequired.bill_addr1} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_addr2} glm-reg-required{/if}">&nbsp;</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_addr1} glm-reg-fail{/if}"><input type="text" name="bill_addr2" value="{$regAccount.fieldData.bill_addr2}"{if $regAccount.fieldRequired.bill_addr2} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_city} glm-reg-required{/if}">City:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_city} glm-reg-fail{/if}"><input type="text" name="bill_city" value="{$regAccount.fieldData.bill_city}"{if $regAccount.fieldRequired.bill_city} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_state} glm-reg-required{/if}">State:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_state} glm-reg-fail{/if}">
+                            <select name="bill_state">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.bill_state.list as $s}
+                                <option value="{$s.value}"{if $memberInfo.fieldData.bill_state.value == $s.value} selected="selected"{/if}>
+                                    {$s.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_zip} glm-reg-required{/if}">Zip/Postal Code:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_zip} glm-reg-fail{/if}"><input type="text" name="bill_zip" value="{$regAccount.fieldData.bill_zip}"{if $regAccount.fieldRequired.bill_zip} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_country} glm-reg-required{/if}">Country:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_country} glm-reg-fail{/if}">
+                            <select name="bill_country">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.bill_country.list as $c}
+                                <option value="{$c.value}"{if $memberInfo.fieldData.bill_country.value == $c.value} selected="selected"{/if}>
+                                    {$c.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_phone} glm-reg-required{/if}">Phone:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_phone} glm-reg-fail{/if}"><input type="text" name="bill_phone" value="{$regAccount.fieldData.bill_phone}"{if $regAccount.fieldRequired.bill_phone} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.bill_fax} glm-reg-required{/if}">FAX:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.bill_fax} glm-reg-fail{/if}"><input type="text" name="bill_fax" value="{$regAccount.fieldData.bill_fax}"{if $regAccount.fieldRequired.fax} required{/if}></div>
+                    </div>
+                </div>
+           </div>     
+           <div class="glm-reg-row">
+                <div class="glm-large-6 glm-columns">
+                    <h4>Additional Contact Information</h4>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_fname} glm-reg-required{/if}">First Name:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_fname} glm-reg-fail{/if}"><input type="text" name="contact_fname" value="{$regAccount.fieldData.contact_fname}"{if $regAccount.fieldRequired.contact_fname} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_addr1} glm-reg-required{/if}">Address:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_addr1} glm-reg-fail{/if}"><input type="text" name="contact_addr1" value="{$regAccount.fieldData.contact_addr1}"{if $regAccount.fieldRequired.contact_addr1} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_addr2} glm-reg-required{/if}">&nbsp;</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_addr2} glm-reg-fail{/if}"><input type="text" name="contact_addr2" value="{$regAccount.fieldData.contact_addr2}"{if $regAccount.fieldRequired.contact_addr2} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_city} glm-reg-required{/if}">City:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_city} glm-reg-fail{/if}"><input type="text" name="contact_city" value="{$regAccount.fieldData.contact_city}"{if $regAccount.fieldRequired.contact_city} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_state} glm-reg-required{/if}">State:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_state} glm-reg-fail{/if}">
+                            <select name="contact_state">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.contact_state.list as $s}
+                                <option value="{$s.value}"{if $memberInfo.fieldData.contact_state.value == $s.value} selected="selected"{/if}>
+                                    {$s.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_zip} glm-reg-required{/if}">Zip/Postal Code:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_zip} glm-reg-fail{/if}"><input type="text" name="contact_zip" value="{$regAccount.fieldData.contact_zip}"{if $regAccount.fieldRequired.contact_zip} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_country} glm-reg-required{/if}">Country:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_country} glm-reg-fail{/if}">
+                            <select name="contact_country">
+                                <option value=""></option>
+                    {foreach $regAccount.fieldData.contact_country.list as $c}
+                                <option value="{$c.value}"{if $memberInfo.fieldData.contact_country.value == $c.value} selected="selected"{/if}>
+                                    {$c.name}
+                                </option>
+                    {/foreach}
+                            </select>
+                        </div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_email} glm-reg-required{/if}">E-mail:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_email} glm-reg-fail{/if}"><input type="text" name="contact_email" value="{$regAccount.fieldData.contact_email}"{if $regAccount.fieldRequired.contact_email} required{/if}></div>
+                    </div>
+                    <div class="glm-reg-row">
+                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_phone} glm-reg-required{/if}">Phone:</div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_phone} glm-reg-fail{/if}"><input type="text" name="contact_phone" value="{$regAccount.fieldData.contact_phone}"{if $regAccount.fieldRequired.contact_phone} required{/if}></div>
+                    </div>
+                </div>
+                <div class="glm-large-6 glm-columns"><div class="glm-reg-row"><div class="glm-large-12 glm-columns"></div></div></div>
+            </div>
+        </div>
+        
+        <div style="white-space; nowrap; clear: all;">
+            <span class="glm-reg-warning"><input type="submit" name="Update Account Information" class="button tiny">
+        </div>
+        
+    </form>
+    
\ No newline at end of file
index 5def0b1..f3f767e 100644 (file)
@@ -1,8 +1,19 @@
 {include file='front/registrations/header.html'}
 
+{if $haveMessages}
+    <div class="glm-registrations-messages glm-reg-warning" style="clear: all;">
+        <i>Please Note:</i>
+        <ul>
+{foreach $messages as $m}
+            <li>{$m}</li>
+{/foreach}
+        </ul>
+    </div>
+{/if}
+
 {if $haveCart}
-    <form href="{$regUrl}?page=checkoutProcess">
-        {* Hidden fields go here *}
+    <form href="{$regUrl}" method="post">
+        <input type="hidden" name="page" value="checkoutProcess">
 
         <a href="#cart-summary">See summary of registration request and charges below</a>
 
                     </div>
                     <div class="glm-reg-row">
                         <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.password} glm-reg-required{/if}">Password:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.password} glm-reg-fail{/if}"><input type="password" name="password" value=""{if $regAccount.fieldRequired.password} required{/if}></div>
+                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.password} glm-reg-fail{/if}">
+                            <input type="text" name="password" value="{$regAccount.fieldData.password}"{if $regAccount.fieldRequired.password} required{/if} title="Must be at least 8 characters long and contain at least one number and one puncuation character such as one of these #.-_,$%&!">
+                            <p>A password is required to access your registrations and submissions in the future. A suggested password has been supplied.</p>
+                        </div>
                     </div>
   {else}
                     <div class="glm-reg-row">
                         <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.cc_name} glm-reg-fail{/if}"><input type="text" placeholder="3 digit number on back of card" name="cc_name" value="{$regAccount.fieldData.cc_name}"{if $regAccount.fieldRequired.cc_name} required{/if}></div>
                     </div>                    
                 </div>
-  {/if}                
                 <div class="glm-large-6 glm-columns">
-                    <h4>Additional Contact Information</h4>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_fname} glm-reg-required{/if}">First Name:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_fname} glm-reg-fail{/if}"><input type="text" name="contact_fname" value="{$regAccount.fieldData.contact_fname}"{if $regAccount.fieldRequired.contact_fname} required{/if}></div>
-                    </div>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_addr1} glm-reg-required{/if}">Address:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_addr1} glm-reg-fail{/if}"><input type="text" name="contact_addr1" value="{$regAccount.fieldData.contact_addr1}"{if $regAccount.fieldRequired.contact_addr1} required{/if}></div>
-                    </div>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_addr2} glm-reg-required{/if}">&nbsp;</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_addr2} glm-reg-fail{/if}"><input type="text" name="contact_addr2" value="{$regAccount.fieldData.contact_addr2}"{if $regAccount.fieldRequired.contact_addr2} required{/if}></div>
-                    </div>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_city} glm-reg-required{/if}">City:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_city} glm-reg-fail{/if}"><input type="text" name="contact_city" value="{$regAccount.fieldData.contact_city}"{if $regAccount.fieldRequired.contact_city} required{/if}></div>
-                    </div>
+                    <h4>Global Custom Fields Go Here</h4>
                     <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_state} glm-reg-required{/if}">State:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_state} glm-reg-fail{/if}">
-                            <select name="contact_state">
-                                <option value=""></option>
-                    {foreach $regAccount.fieldData.contact_state.list as $s}
-                                <option value="{$s.value}"{if $memberInfo.fieldData.contact_state.value == $s.value} selected="selected"{/if}>
-                                    {$s.name}
-                                </option>
-                    {/foreach}
-                            </select>
-                        </div>
-                    </div>
+                        <div class="glm-large-12 glm-columns"></div>Custom fields that are event, level, rate, or registrant specific will be collected on registration selection page.</div>
+                    </dic>
+                </div>
+  {/if}                
+            </div>
+            <div class="glm-reg-row">
+                <div class="glm-large-12 glm-columns">
                     <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_zip} glm-reg-required{/if}">Zip/Postal Code:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_zip} glm-reg-fail{/if}"><input type="text" name="contact_zip" value="{$regAccount.fieldData.contact_zip}"{if $regAccount.fieldRequired.contact_zip} required{/if}></div>
+                        <h4>Terms and Conditions (*** Added fields for events ***)</h4>
+                        You <span class="glm-reg-required">must check</span> the boxes below to confirm that you agree to the listed Terms and Conditions for each event.
                     </div>
+    {foreach $cart.events as $event}
                     <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_country} glm-reg-required{/if}">Country:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_country} glm-reg-fail{/if}">
-                            <select name="contact_country">
-                                <option value=""></option>
-                    {foreach $regAccount.fieldData.contact_country.list as $c}
-                                <option value="{$c.value}"{if $memberInfo.fieldData.contact_country.value == $c.value} selected="selected"{/if}>
-                                    {$c.name}
-                                </option>
-                    {/foreach}
-                            </select>
+                        <div class="glm-large-1">&nbsp;</div>
+                        <div class="glm-large-11 glm-columns glm-reg-nowrap">
+                            <h5>{$event.event_name}:</h5>
+                            <input type="checkbox" name="terms_{$event.id}" value="accept" required> {$event.event_terms} {$event.id}<br>
+                            *** Any added fields go here ***
+                            
                         </div>
                     </div>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_email} glm-reg-required{/if}">E-mail:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_email} glm-reg-fail{/if}"><input type="text" name="contact_email" value="{$regAccount.fieldData.contact_email}"{if $regAccount.fieldRequired.contact_email} required{/if}></div>
-                    </div>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-3 glm-columns glm-reg-nowrap{if $regAccount.fieldRequired.contact_phone} glm-reg-required{/if}">Phone:</div>
-                        <div class="glm-large-9 glm-columns{if $regAccount.fieldFail.contact_phone} glm-reg-fail{/if}"><input type="text" name="contact_phone" value="{$regAccount.fieldData.contact_phone}"{if $regAccount.fieldRequired.contact_phone} required{/if}></div>
-                    </div>
-                </div>
-            </div>
-            <div class="glm-reg-row">
-                <div class="glm-large-6 glm-columns">
-                    <h4>Global Custom Fields Go Here</h4>
-                    <div class="glm-reg-row">
-                        <div class="glm-large-12 glm-columns"></div>Custom fields that are event, level, rate, or registrant specific will be collected on registration selection page.</div>
-                    </dic>
+    {/foreach}
                 </div>
             </div>
-        </div>
-    </div>
-
+            
     {if $cart.totalCharges > 0} 
-        <div style="text-align: right;"><h2>Total Charged: ${$cart.totalCharges|number_format:2}</h2></div>
+            <div style="text-align: right;"><h2>Total Charged: ${$cart.totalCharges|number_format:2}</h2></div>
     {else}
-        <div style="text-align: right;">(There is no charge for your request.)</div>
+            <div style="text-align: right;">(There is no charge for your request.)</div>
     {/if}
 
     {if $cart.blockCheckout}
-    <div>
-        <div class="glm-reg-warning">You have not yet submitted your registration. See above for issues! <img src="{$assetUrl}/fingerUpRed.svg" style="height: 2em;"></div>
-    </div>
+            <div>
+                <div class="glm-reg-warning">You have not yet submitted your registration. See above for issues! <img src="{$assetUrl}/fingerUpRed.svg" style="height: 2em;"></div>
+            </div>
     {else}
-    <div class="glm-right" style="white-space; nowrap;">
-        <span class="glm-reg-warning">You have one more step to complete your registration!</span> <img src="{$assetUrl}/fingerRightRed.svg" style="height: 2em;"> <input type="submit" name="Submit Registration" class="button tiny">
-    </div>
+            <div class="glm-right" style="white-space; nowrap;">
+                <span class="glm-reg-warning">You have one more step to complete your registration!</span> <img src="{$assetUrl}/fingerRightRed.svg" style="height: 2em;"> <input type="submit" value="Submit Registration Request" class="button tiny">
+            </div>
     {/if}
 
-    </form>
-
-    <h4 id="cart-summary">Registration Summary</h4>
-    <table class="glm-admin-table" width="100%">
+        </form>
 
-        <thead>
-
-            <tr>
-                <th>Registering</th>
-                <th>Registrant</th>
-                <th>Date/Time</th>
-                <th>Discount</th>
-                <th>Rate</th>
-            </tr>
-
-
-        </thead>
-        <tbody>
+        <h4 id="cart-summary">Registration Summary</h4>
+        <table class="glm-admin-table" width="100%">
+    
+            <thead>
+    
+                <tr>
+                    <th>Registering</th>
+                    <th>Registrant</th>
+                    <th>Date/Time</th>
+                    <th>Discount</th>
+                    <th>Rate</th>
+                </tr>
+    
+    
+            </thead>
+            <tbody>
   {foreach $cart.events as $event}
-            <tr>
-                <th colspan="5">Event: {$event.event_name}</th>
-            </tr>
+                <tr>
+                    <th colspan="5">Event: {$event.event_name}</th>
+                </tr>
     {foreach $event.classes as $class}
-            <tr>
-                <td colspan="5">&nbsp;&nbsp;&nbsp;&nbsp;{$class.class_name}</td>
-            </tr>
+                <tr>
+                    <td colspan="5">&nbsp;&nbsp;&nbsp;&nbsp;{$class.class_name}</td>
+                </tr>
       {foreach $class.rates as $rate}
-            <tr>
-                <td colspan="4">
-                    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$rate.rate_name}
-                    - Base Rate ({$rate.registrant_credits} registrants included)
-                </td>
-                <td style="text-align: right;">{$rate.rateBaseCharge|number_format:2}</td>
-            </tr>
+                <tr>
+                    <td colspan="4">
+                        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{$rate.rate_name}
+                        - Base Rate ({$rate.registrant_credits} registrants included)
+                    </td>
+                    <td style="text-align: right;">{$rate.rateBaseCharge|number_format:2}</td>
+                </tr>
         {foreach $rate.registrants as $registrant}
-            <tr>
-                <td>&nbsp;</td>
-                <td>{$registrant.fname} {$registrant.lname}</td>
-                <td>{$registrant.event_time}</td>
-                <td style="text-align: right;">
-                    {if $registrant.registrantDiscount > 0}
-                        {$registrant.registrantDiscount|number_format:2}
-                    {else}
-                        &nbsp;
-                    {/if}
-                </td>
-                <td style="text-align: right;">
-                    {if $registrant.registrantRate > 0}
-                        {$registrant.registrantRate|number_format:2}
-                    {else}
-                        (included)
-                    {/if}
-                </td>
-            </tr>
+                <tr>
+                    <td>&nbsp;</td>
+                    <td>{$registrant.fname} {$registrant.lname}</td>
+                    <td>{$registrant.event_time}</td>
+                    <td style="text-align: right;">
+                        {if $registrant.registrantDiscount > 0}
+                            {$registrant.registrantDiscount|number_format:2}
+                        {else}
+                            &nbsp;
+                        {/if}
+                    </td>
+                    <td style="text-align: right;">
+                        {if $registrant.registrantRate > 0}
+                            {$registrant.registrantRate|number_format:2}
+                        {else}
+                            (included)
+                        {/if}
+                    </td>
+                </tr>
         {/foreach}
       {/foreach}
     {/foreach}
   {/foreach}
+            </tbody>
             <tfoot>
                 <td colspan="2">&nbsp;</td>
                 <td>Total registrants: {$cart.totalRegistrants}</td>
                 </td>
                 <td style="text-align: right;">${$cart.totalCharges|number_format:2}</td>
             </tfoot>
+{/if}
+        </table>
 
-        </tbody>
-
-    </table>
 
-{else}
-            <tr class="alternate"><td colspan="2">No cart data</td></tr>
-{/if}
+    </div>
+</div>