I am trying to make a group selection dropdown on the Magento customer registration page work. I have done all of the following:
Inserted the following code into template/persistent/customer/form/register.phtml:
<label for="group_id" style='margin-top:15px;'><?php echo $this->__('Which group do you belong to? (select "Pet Owner" if you are uncertain)') ?><span class="required">*</span></label>
<div style='clear:both'><p style='color:red;'>Note: DVM/DACVO and Institution accounts require administrative approval.</p></div>
<div class="input-box" style='margin-bottom:10px;'>
<select style='border:1px solid gray;' name="group_id" id="group_id" title="<?php echo $this->__('Group') ?>" class="validate-group required-entry input-text" />
<?php $groups = Mage::helper('customer')->getGroups()->toOptionArray(); ?>
<?php foreach($groups as $group){ ?>
<?php if ($group['label']=="Pet Owner" || $group['label']=="DVM / DACVO" || $group['label']=="Institution"){?>
<option value="<?php print $group['value'] ?>"><?php print $group['label'] ?></option>
<?php } ?>
<?php } ?>
</select>
</div>
Then the following in /app/code/local/Mage/Customer/controllers/AccountController.php in the createPostAction():
$customer->setGroupId($this->getRequest()->getPost(‘group_id’));
Finally the following in /app/code/local/Mage/Customer/etc/config.xml where group id was added:
<fieldsets>
<customer_account>
<prefix>
<create>1</create>
<update>1</update>
<name>1</name>
</prefix>
<firstname>
<create>1</create>
<update>1</update>
<name>1</name>
</firstname>
<middlename>
<create>1</create>
<update>1</update>
<name>1</name>
</middlename>
<lastname>
<create>1</create>
<update>1</update>
<name>1</name>
</lastname>
<suffix>
<create>1</create>
<update>1</update>
<name>1</name>
</suffix>
<email>
<create>1</create>
<update>1</update>
</email>
<password>
<create>1</create>
</password>
<confirmation>
<create>1</create>
</confirmation>
<dob>
<create>1</create>
<update>1</update>
</dob>
<group_id><create>1</create><update>1</update></group_id>
<taxvat>
<create>1</create>
<update>1</update>
</taxvat>
<gender>
<create>1</create>
<update>1</update>
</gender>
</customer_account>
I have tested it several times and every customer is still being added as the default customer group. Can you see what I am doing wrong?