Change the position of Captcha during registration

  • Posts: 86
  • Thank you received: 2
10 years 6 months ago #154971

Hello:

I implemented Captacha for the registration process because sometimes the confirmation emails did not reach the client. Especially Yahoo emais had problems.

1.) How to stop sending the confirmation email after implementing ReCaptcha?

2.) How to change the position of hte Captcha? I want it to have in just on top on the "registration" button.
What do I need to change within the registration.php file in order to achieve this?

Thank you!

</tr>
<?php if($this->config->get('show_email_confirmation_field',0)){ ?>
  <tr class="hikashop_registration_email_confirm_line">
    <td class="key" style="text-align:right">
      <label id="email_confirm_msg" for="register_email_confirm">
        <?php echo JText::_( 'Confirmar&nbsp;email:&nbsp;*' ); ?>
      </label>
    </td>
    <td>
      <input type="text" id="register_email_confirm" name="data[register][email_confirm]" value="<?php echo $this->escape($this->mainUser->get( 'email' ));?>" class="inputbox required validate-email" maxlength="100" onchange="if(this.value!=document.getElementById('register_email').value){alert('<?php echo JText::_('THE_CONFIRMATION_EMAIL_DIFFERS_FROM_THE_EMAIL_YOUR_ENTERED',true); ?>'); this.value = '';}" />
    </td>
  </tr>

<?php /*============================================================================================================================*/ ?>

<?php
}
if(!$this->simplified_registration || $this->simplified_registration == 3){ ?>
<tr class="hikashop_registration_password_line">
  <td class="key" style="text-align:right">
    <label id="pwmsg" for="password">
      <?php echo JText::_( 'HIKA_PASSWORD' ); ?><?php echo JText::_( ':&nbsp;*' ); ?>
    </label>
  </td>
  <td>
    <input class="inputbox required validate-password" type="password" id="register_password" name="data[register][password]" value="" />
  </td>
</tr>
<tr class="hikashop_registration_password2_line">
  <td class="key"  style="text-align:right">
    <label id="pw2msg" for="register_password2">
      <?php echo JText::_( 'HIKA_VERIFY_PASSWORD' ); ?><?php echo JText::_( ':&nbsp;*' ); ?>
    </label>
  </td>
  <td>
    <input class="inputbox required validate-passverify" type="password" id="register_password2" name="data[register][password2]" value="" />
  </td>
</tr>
<?php }?>
  <?php
    $this->setLayout('custom_fields');
    $this->type = 'user';
    echo $this->loadTemplate();

    if($this->config->get('affiliate_registration',0)){ ?>
<tr class="hikashop_registration_affiliate_line">
  <td colspan="2">
    <input class="hikashop_affiliate_checkbox" id="hikashop_affiliate_checkbox" type="checkbox" name="hikashop_affiliate_checkbox" value="1" <?php echo $this->affiliate_checked; ?> />
    <label for="hikashop_affiliate_checkbox">
    <?php $affiliate_terms = $this->config->get('affiliate_terms',0);
      $label = JText::_('BECOME_A_PARTNER');
      if(!empty($affiliate_terms)){?>
        <span class="hikashop_affiliate_terms_span_link" id="hikashop_affiliate_terms_span_link">
          <a class="hikashop_affiliate_terms_link" id="hikashop_affiliate_terms_link" target="_blank" href="<?php echo JRoute::_('index.php?option=com_content&view=article&id='.$affiliate_terms); ?>"><?php echo $label; ?></a>
        </span><?php
      }else{
        echo $label;
      } ?>
    </label>
  </td>
</tr>
  <?php }
?>

<?php /*============================================================================================================================*/ ?>

<tr class="hikashop_registration_address_info_line">
  <td colspan="2" height="40">
    <?php echo JText::_( 'ADDRESS_INFORMATION' ); ?>
  </td>
</tr>
<?php
    $this->type = 'address';
    echo $this->loadTemplate();
  ?>
<tr class="hikashop_registration_required_info_line">
  <td colspan="2" height="40">
    <?php echo JText::_( 'HIKA_REGISTER_REQUIRED' ); ?>
  </td>
</tr>
</table>
<input type="hidden" name="data[register][id]" value="<?php echo (int)$this->mainUser->get( 'id' );?>" />
<input type="hidden" name="data[register][gid]" value="<?php echo (int)$this->mainUser->get( 'gid' );?>" />
<?php
$additional_check='';
if(empty($this->form_name)){
  $this->form_name = 'hikashop_checkout_form';
  if(JRequest::getVar('hikashop_check_order')) $additional_check='&& hikashopCheckChangeForm(\'order\',\''.$this->form_name.'\')';
}
echo $this->cartClass->displayButton(JText::_('HIKA_REGISTER'),'register',$this->params,'','if(hikashopCheckChangeForm(\'register\',\''.$this->form_name.'\') && hikashopCheckChangeForm(\'user\',\''.$this->form_name.'\') && hikashopCheckChangeForm(\'address\',\''.$this->form_name.'\')'.$additional_check.'){ var button = document.getElementById(\'login_view_action\'); if(button) button.value=\'register\'; document.'.$this->form_name.'.submit();} return false;');

Last edit: 10 years 6 months ago by scharfet.

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
10 years 6 months ago #154983

Hi,

0. If some of your customers don't get the confirmation email, it's probably an issue with the emails configuration of your server. I would recommend to use www.mail-tester.com/ in order to understand what you should improve so that your emails get accepted by any email server.

1. If you want to deactivate the confirmation email, simply turn off the user account activation option of the options screen of the Joomla user manager.

2. No need to change the code of the registration view to change the position of the captcha. You need to edit the plugin code instead:
www.hikashop.com/forum/4-how-to/32012-re...tion-form.html#32037

Please Log in or Create an account to join the conversation.

  • Posts: 86
  • Thank you received: 2
10 years 6 months ago #155144

Hi Nicolas.

thank you for your kind feedback.

would recommend to use www.mail-tester.com/ in order to understand what you should improve so that your emails get accepted by any email server.


I analyzed it with www.mail-tester.com/web-bYdEff
I got the result: 8/10
-1 because the email was not signed with DKIM -

Is is possible to fix this?

Best

Please Log in or Create an account to join the conversation.

  • Posts: 82863
  • Thank you received: 13372
  • MODERATOR
10 years 6 months ago #155154

Hi,

If you have your own server then it should be yes. In that case, you need to configure your mail server to support DKIM and the procedure depends on the email server you're using.
If you don't have your own server, then you should see that with your hosting company.

Please Log in or Create an account to join the conversation.

  • Posts: 121
  • Thank you received: 7
10 years 5 months ago #157633

Hi,

I strongly recommend using Mandrill (free for 10,000 emails or less per month) for transactional emails. They use Mailchimp's backend. It's very reliable - you can track each message etc. And it has DKIM etc. etc. all the good stuff that let's your emails get through to customer's as they should.

Please Log in or Create an account to join the conversation.

  • Posts: 20
  • Thank you received: 2
  • Hikashop Business
10 years 5 months ago #161499

Hello, we solved this on our website by makeing changes in the file:

"plugins\system\recaptcha\recaptcha.php"

We have it placed in after our custom field "address_vat", and that made this:

/** $components = array('view' => array('checkout','user'),'viewvar' => 'ctrl', 'lengthafter' => 500 , 'tdclass' => 'key', 'email' => 'data\[register\]\[email_confirm\]','password' => 'data\[register\]\[password2\]');**/
$components = array('view' => array('checkout','user'),'viewvar' => 'ctrl', 'lengthafter' => 500 , 'tdclass' => 'key', 'email' => 'data\[address\]\[address_vat\]','password' => 'data\[address\]\[address_vat\]');

The following user(s) said Thank You: nicolas

Please Log in or Create an account to join the conversation.

Time to create page: 0.084 seconds
Powered by Kunena Forum