}
- public function modelAction($actionData = false)
+ public function modelAction( $actionData = false )
{
// Initialize Variables Here
$option = '';
$view = 'becomeMember';
$management = false;
$messages = array();
+ $errors = array();
$paymentSuccess = false;
$paymentError = false;
$payable_types = false;
$view = 'alreadyAMember';
break;
+ case 'newMembership':
+ $payable_types = $BillingSupport->getAllPayableInvoiceTypes();
+ $messages[] = '<pre>$_REQUEST: ' . print_r( $_REQUEST, true ) . '</pre>';
+ // Need to see if the email address they're using is already setup as a contact.
+ // If it is then we need to give a message about it and not let them sign up again.
+
+ $email_to_check = filter_var( $_REQUEST['email'], FILTER_VALIDATE_EMAIL );
+ $messages[] = '<pre>$email_to_check: ' . print_r( $email_to_check, true ) . '</pre>';
+ $verify_email = filter_var( $_REQUEST['email_verify'], FILTER_VALIDATE_EMAIL );
+ $messages[] = '<pre>$verify_email: ' . print_r( $verify_email, true ) . '</pre>';
+ if ( $email_to_check !== $verify_email ) {
+ // Emails don't match give error message
+ $error = true;
+ $messages[] = $errors['email'] = "<span style='color: red;'>Emails don't match!</span>";
+ }
+
+ // Process the main form
+
+ // Process any custom fields
+ break;
+
default:
$payable_types = $BillingSupport->getAllPayableInvoiceTypes();
break;
}
+ // Load DataClass for Management.
+ require_once GLM_MEMBERS_BILLING_PLUGIN_CLASS_PATH . '/data/dataManagement.php';
+ $Management = new GlmDataBillingManagement( $this->wpdb, $this->config );
+ $management = $Management->getEntry( 1 );
+
// Compile template data
$templateData = array(
'option' => $option,
'billing_settings' => $this->config['billing_settings'],
'management' => $management,
'messages' => $messages,
+ 'errors' => $errors,
'paymentSuccess' => $paymentSuccess,
'paymentError' => $paymentError,
- 'payable_types' => $payable_types,
+ 'payable_types' => $payable_types,
+ 'states' => $this->config['states']
);
// Return status, any suggested view, and any data to controller.
-
+{* This template is for MiGCSA Become a Member Form *}
<h3>Membership Renewal</h3>
<div id="billing-payment-form" class="glm-billing-form">
{/if}
<form action="{$thisUrl}" method="post">
- <input type="hidden" name="option" value="renewMembership" />
+ <input type="hidden" name="option" value="newMembership" />
<input type="hidden" id="total_renew_amount" name="total_renew_amount" value="" />
First Name
</div>
<div class="glm-billing-input">
- <input type="text" name="fname" value="" required />
+ <input
+ type="text"
+ name="fname"
+ {if isset($smarty.request.fname) && $smarty.request.fname}value="{$smarty.request.fname}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-right-half">
Last Name
</div>
<div class="glm-billing-input">
- <input type="text" name="lname" value="" required />
+ <input
+ type="text"
+ name="lname"
+ {if isset($smarty.request.lname) && $smarty.request.lname}value="{$smarty.request.lname}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-left-half">
Email
</div>
<div class="glm-billing-input">
- <input type="text" name="email" value="" required />
+ <input
+ type="text"
+ name="email"
+ {if isset($smarty.request.email) && $smarty.request.email}value="{$smarty.request.email}"{/if}
+ required />
+ {if $errors.email}{$errors.email}{/if}
</div>
</div>
<div class="glm-billing-field glm-billing-right-half">
Confirm Email
</div>
<div class="glm-billing-input">
- <input type="text" name="email" value="" required />
+ <input
+ type="text"
+ name="email_verify"
+ {if isset($smarty.request.email_verify) && $smarty.request.email_verify}value="{$smarty.request.email_verify}"{/if}
+ required />
+ </div>
+ </div>
+ {* START - Custom Fields part for MiGCSA *}
+ <div class="glm-billing-field">
+ <div class="glm-billing-label">
+ Company Position
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="cf[7]"
+ {if isset($smarty.request.cf[7]) && $smarty.request.cf[7]}value="{$smarty.request.cf[7]}"{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label">
+ Spouse
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="cf[9]"
+ {if isset($smarty.request.cf[9]) && $smarty.request.cf[9]}value="{$smarty.request.cf[9]}"{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label">
+ District
+ </div>
+ <div class="glm-billing-input">
+ <select name="cf[8]">
+ <option value="">-- Select --</option>
+ <option value="Greater Detroit"{if isset($smarty.request.cf[8]) && $smarty.request.cf[8] == 'Greater Detroit'} selected{/if}>Greater Detroit</option>
+ <option value="Mid"{if isset($smarty.request.cf[8]) && $smarty.request.cf[8] == 'Mid'} selected{/if}>Mid</option>
+ <option value="Northern"{if isset($smarty.request.cf[8]) && $smarty.request.cf[8] == 'Northern'} selected{/if}>Northern</option>
+ <option value="Western"{if isset($smarty.request.cf[8]) && $smarty.request.cf[8] == 'Western'} selected{/if}>Western</option>
+ </select>
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label">
+ Preferred Communication
+ </div>
+ <div class="glm-billing-input">
+ <select name="cf[13]">
+ <option value="">-- Select --</option>
+ <option value="Email"{if isset($smarty.request.cf[13]) && $smarty.request.cf[13] == 'Email'} selected{/if}>Email</option>
+ <option value="Post"{if isset($smarty.request.cf[13]) && $smarty.request.cf[13] == 'Post'} selected{/if}>Post</option>
+ </select>
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label">
+ Type of Operation
+ </div>
+ <div class="glm-billing-input">
+ <select name="cf[6]">
+ <option value="">-- Select --</option>
+ <option value="Private"{if isset($smarty.request.cf[6]) && $smarty.request.cf[6] == 'Private'} selected{/if}>Private</option>
+ <option value="Public"{if isset($smarty.request.cf[6]) && $smarty.request.cf[6] == 'Public'} selected{/if}>Public</option>
+ <option value="Semi-Private"{if isset($smarty.request.cf[6]) && $smarty.request.cf[6] == 'Semi-Private'} selected{/if}>Semi-Private</option>
+ <option value="Municipality"{if isset($smarty.request.cf[6]) && $smarty.request.cf[6] == 'Municipality'} selected{/if}>Municipality</option>
+ <option value="Resort"{if isset($smarty.request.cf[6]) && $smarty.request.cf[6] == 'Resort'} selected{/if}>Resort</option>
+ </select>
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label">
+ CGCS
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="checkbox"
+ name="cf[2]"
+ {if isset($smarty.request.cf[2]) && $smarty.request.cf[2]}checked{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label">
+ Will Volunteer for a Committee
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="checkbox"
+ name="cf[3]"
+ {if isset($smarty.request.cf[3]) && $smarty.request.cf[3]}checked{/if}
+ />
+ </div>
+ </div>
+ {* END - Custom Fields part for MiGCSA *}
+
+ </fieldset>
+
+ <fieldset>
+ <legend>Account/Contact Information</legend>
+
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label">
+ Phone
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="phone"
+ {if isset($smarty.request.phone) && $smarty.request.phone}value="{$smarty.request.phone}"{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label">
+ Cellphone
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="cellphone"
+ {if isset($smarty.request.cellphone) && $smarty.request.cellphone}value="{$smarty.request.cellphone}"{/if}
+ />
</div>
</div>
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label">
+ Fax
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="fax"
+ {if isset($smarty.request.fax) && $smarty.request.fax}value="{$smarty.request.fax}"{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label">
+ Email on Website
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="email_on_website"
+ {if isset($smarty.request.email_on_website) && $smarty.request.email_on_website}value="{$smarty.request.email_on_website}"{/if}
+ />
+ </div>
+ </div>
+ <div class="glm-billing-field">
+ <div class="glm-billing-label">
+ Web Address
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="website"
+ {if isset($smarty.request.website) && $smarty.request.website}value="{$smarty.request.website}"{/if}
+ />
+ </div>
+ </div>
+
+
+ <div class="glm-billing-field">
+ <div class="glm-billing-label glm-required">
+ Username
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="username"
+ {if isset($smarty.request.username) && $smarty.request.username}value="{$smarty.request.username}"{/if}
+ required />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-left-half">
+ <div class="glm-billing-label glm-required">
+ Password
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="password"
+ {if isset($smarty.request.password) && $smarty.request.password}value="{$smarty.request.password}"{/if}
+ required />
+ </div>
+ </div>
+ <div class="glm-billing-field glm-billing-right-half">
+ <div class="glm-billing-label glm-required">
+ Confirm Password
+ </div>
+ <div class="glm-billing-input">
+ <input
+ type="text"
+ name="confirm_password"
+ {if isset($smarty.request.confirm_password) && $smarty.request.confirm_password}value="{$smarty.request.confirm_password}"{/if}
+ required />
+ </div>
+ </div>
+
+ </fieldset>
+
+ <fieldset>
+ <legend>Billing Address</legend>
<div class="glm-billing-field">
<div class="glm-billing-label glm-required">
Address
</div>
<div class="glm-billing-input">
- <input type="text" name="billing_addr1" value="" required />
+ <input
+ type="text"
+ name="billing_addr1"
+ {if isset($smarty.request.billing_addr1) && $smarty.request.billing_addr1}value="{$smarty.request.billing_addr1}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-left-half">
City
</div>
<div class="glm-billing-input">
- <input type="text" name="billing_city" value="" required />
+ <input
+ type="text"
+ name="billing_city"
+ {if isset($smarty.request.billing_city) && $smarty.request.billing_city}value="{$smarty.request.billing_city}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-right-half">
<div class="glm-billing-input">
<select name="billing_state" required>
<option value=""></option>
- {foreach $account.fieldData.billing_state.list as $s}
- <option value="{$s.value}"{if $account.fieldData.billing_state.value == $s.value} selected="selected"{/if}>
- {$s.name}
+ {foreach $states as $stateAbb => $stateVal}
+ <option value="{$stateAbb}"{if $smarty.request.billing_state == $stateAbb} selected="selected"{/if}>
+ {$stateVal}
</option>
{/foreach}
</select>
Zip
</div>
<div class="glm-billing-input">
- <input type="text" name="billing_zip" value="" required />
- </div>
- </div>
- <div class="glm-billing-field">
- <div class="glm-billing-label glm-required">
- Email Address
- </div>
- <div class="glm-billing-input">
- <input type="text" name="email" value="" required />
+ <input
+ type="text"
+ name="billing_zip"
+ {if isset($smarty.request.billing_zip) && $smarty.request.billing_zip}value="{$smarty.request.billing_zip}"{/if}
+ required />
</div>
</div>
- </fieldset>
+ </fieldset>
+
<fieldset>
<legend>Payment Options</legend>
class="ccard"
type="text"
name="cc_name"
- required
- {if isset($smarty.request.cc_name) && $smarty.request.cc_name}value="{$smarty.request.cc_name}"{/if} />
+ {if isset($smarty.request.cc_name) && $smarty.request.cc_name}value="{$smarty.request.cc_name}"{/if}
+ required />
</div>
</div>
type="text"
placeholder="Numbers Only"
name="cc_numb"
- required
pattern="\d*"
- {if isset($smarty.request.cc_numb) && $smarty.request.cc_numb}value="{$smarty.request.cc_numb}"{/if} />
+ {if isset($smarty.request.cc_numb) && $smarty.request.cc_numb}value="{$smarty.request.cc_numb}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-left-half glm-billing-credit glm-billing-card">
type="text"
placeholder="MM/YY"
name="cc_exp"
- required
pattern="{literal}\d{2}/\d{2}{/literal}"
- {if isset($smarty.request.cc_exp) && $smarty.request.cc_exp}value="{$smarty.request.cc_exp}"{/if} />
+ {if isset($smarty.request.cc_exp) && $smarty.request.cc_exp}value="{$smarty.request.cc_exp}"{/if}
+ required />
</div>
</div>
<div class="glm-billing-field glm-billing-right-half glm-billing-credit glm-billing-card">
type="text"
placeholder="3 or 4 digit security code on back of card"
name="cc_cvv"
- required
pattern="{literal}\d{3,4}{/literal}"
- {if isset($smarty.request.cc_cvv) && $smarty.request.cc_cvv}value="{$smarty.request.cc_cvv}"{/if} />
+ {if isset($smarty.request.cc_cvv) && $smarty.request.cc_cvv}value="{$smarty.request.cc_cvv}"{/if}
+ required />
</div>
</div>