');
$gr->addStatic()->setContent(___('if customer uses more than') . ' ');
$gr->addInteger('max_ip_count', array('size' => 4));
$gr->addStatic()->setContent(' ' . ___('IP within') . ' ');
$gr->addInteger('max_ip_period', array('size' => 5));
$gr->addStatic()->setContent(' ' . ___('minutes %sdeny access for user%s and do the following', '
', ''));
$gr->addStatic()->setContent('
');
$ms = $gr->addMagicSelect('max_ip_actions')
->loadOptions(array (
'disable-user' => ___('Disable Customer Account'),
'email-admin' => ___('Email Admin Regarding Account Sharing'),
'email-user' => ___('Email User Regarding Account Sharing'),
));
$ms->setJsOptions('{onChange:function(val){
jQuery("#max_ip_actions_admin").toggle(val.hasOwnProperty("email-admin"));
jQuery("#max_ip_actions_user").toggle(val.hasOwnProperty("email-user"));
}}');
$gr->addStatic()->setContent('
');
$gr->addStatic()->setContent('
');
$gr->addElement('email_link', 'max_ip_actions_admin')
->setLabel(___('Email Admin Regarding Account Sharing'));
$gr->addStatic()->setContent('
'.___('Admin notification').'
');
$gr->addElement('email_link', 'max_ip_actions_user')
->setLabel(___('Email User Regarding Account Sharing'));
$gr->addStatic()->setContent('
'.___('User notification').'
');
$gr->addSelect('max_ip_octets')->loadOptions(array(
0 => ___('Count all IP as different'),
1 => ___('Use first %d IP address octets to determine different IP (%s)', 3, '123.32.22.xx'),
2 => ___('Use first %d IP address octets to determine different IP (%s)', 2, '123.32.xx.xx'),
3 => ___('Use first %d IP address octets to determine different IP (%s)', 1, '123.xx.xx.xx'),
));
$gr->addStatic()->setContent('
');
$gr = $this->addGroup(null, null, array('help-id' => '#Bruteforce_Protection'))
->setLabel(___('Bruteforce Protection'));
$gr->addStatic()->setContent('');
$this->setDefault('bruteforce_count', '5');
$gr->addStatic()->setContent(___('if user enters wrong password') . ' ');
$gr->addInteger('bruteforce_count', array('size' => 4));
$gr->addStatic()->setContent(' ' . ___('times within') . ' ');
$this->setDefault('bruteforce_delay', '120');
$gr->addInteger('bruteforce_delay', array('size'=>5));
$gr->addStatic()->setContent(' ' . ___('seconds, he will be forced to wait until next try'));
$gr->addStatic()->setContent('
');
$this->addElement('email_checkbox', 'bruteforce_notify')
->setLabel(___("Bruteforce Notification\n".
"notify admin when bruteforce attack is detected"));
if (Am_Recaptcha::isConfigured()) {
$this->addAdvCheckbox('recaptcha')
->setLabel(___("Enable ReCaptcha\n".
"on login and restore password forms"));
} else {
$label = Am_Html::escape(___('Configure ReCaptcha to Enable this Option'));
$url = $this->getDi()->url('admin-setup/recaptcha');
$this->addHtml()
->setLabel(___("Enable ReCaptcha\n".
"on login and restore password forms"))
->setHtml(<<