Komponent kontakty Joomla 1.5.n umożliwia ukrycie kontaktowego adresu e-mail oraz udostępnienie w systemie formularza kontaktowego dla tego e-maila.
Niezabezpieczony formularz jest natomiast zagrożony bootami, które mogą wysyłać spam na skrzynkę kontaktową.
Jako zabezpieczenie przed tego rodzaju uciązliwością jest zastosowanie tzw. CAPTCHA przy formularzach. Najczęściej wymagane jest przepisanie znaków z udostępnionej ilustracji co jest wystarczającym zabezpieczeniem przed robotami, przynajmniej obecnie.
Joomla 1.5.n nie m systemowych zabezpieczeń Captha formularza kontaktowego. Istnieje konieczność zastosowania odpowiednich dodatków.
Uzupełnieniem takim są komponent (component) i dodatek (plugin) o nazwie: tinCPATCHA dostępny do pobrania pod adresem: http://extensions.joomla.org/extensions/access-a-security/site-security/captcha/4887
Komponent i dodatek pobrać i zainstalować.
Nie zapomnij opublikować zainstalowanego dodatku.
Niestety używanie jogo wymaga jeszcze zmodyfikowania kodu komponentu Kontakty w 2 plikach. I tak kolejno:
W pliku: components/com_contact/controller.php należy wyszukać odpowiednie miejsce i wkleić blok kodu tinyCAPTCHA jak poniżej:
function submit()
{
global $mainframe;
// Check for request forgeries
JRequest::checkToken() or jexit( 'Invalid Token' );
// tincaptcha-
$captchk = plgSystemTincaptcha::check(JRequest::getVar('captcha', '', 'post'));
if ($captchk !== true)
{
JError::raiseWarning(0, $captchk);
return false;
}
// -tincaptcha
Podobnie należy zrobić z plikiem:
components/com_contact/views/contact/tmpl/default_form.php,
według wzoru:
<label id="contact_textmsg" for="contact_text">
<?php echo JText::_( 'Enter your message' );?>:
</label>
<br />
<textarea cols="50" rows="10" name="text" id="contact_text" class="inputbox required"></textarea>
<!-- tincaptcha- -->
<br />
<label for="captcha">
<?php echo JText::_( 'TIN_CAPTCHA' );?>:
</label>
<br />
<input type="text" name="captcha" id="captcha" size="10" class="inputbox required" value="" />
<br />
<img name="captchaimg" src="/index.php?option=com_tincaptcha&task=captcha_display" alt="<?php echo JText::_( 'TIN_CAPTCHA' );?>" />
<a href="javascript:void(0);" onclick="document.images['captchaimg'].src='index.php?option=com_tincaptcha&task=captcha_display&t='+(new Date()).getTime();return false;"><?php echo JText::_('TIN_REFRESH');?></a>
<!-- -tincaptcha -->
Polski plik językowy dostępny jest tutaj: pl-PL.com_tincaptcha.ini
Należy go oczywiście umieścić w katalogu: lanquage/pl-PL
|