captcha

freeCap CAPTCHA (sr_freecap)

zum Anzeigen von Captchas in eigenen Extensions

In der Extbase Extension muss das Model erweitert werden:

/**
 * @var string
 *     @TYPO3\CMS\Extbase\Annotation\Validate(validator="SJBR\SrFreecap\Validation\Validator\CaptchaValidator")
 */
protected $captchaResponse;

/**
  * Sets the captchaResponse
  *
  * @param string $captchaResponse
  * @return void
  */
 public function setCaptchaResponse($captchaResponse) {
         $this->captchaResponse = $captchaResponse;
 }

 /**
  * Getter for captchaResponse
  *
  * @return string
  */
 public function getCaptchaResponse() {
         return $this->captchaResponse;
 }

Im Template dann einfügen:

<f:render partial="Training/CaptchaElement" />

Im Training/CaptchaElement

{namespace freeCap=SJBR\SrFreecap\ViewHelpers}
<p class="small margin-top">
    {freeCap:translate(key: 'notice')} {freeCap:translate(key: 'explain')}
</p>
<f:form.textfield id="sjbr-freecap-captcha-response" property="captchaResponse" size="15" title="{freeCap:translate(key: 'notice')}{freeCap:translate(key: 'explain')}" />
<span class="small captcha">
   <freeCap:image />
   <freeCap:audio />
</span>

Anpassung der Fehlermeldung in der locallang.xlf der Extension

<trans-unit id="9221561048" resname="9221561048">
   <source>Bitte übertragen Sie den korrekten Captcha Code.</source>
</trans-unit>

Styling - ich zeiuge gerne links eine Linine an bei Fehlern

.captcha + input, #sjbr-freecap-captcha-response {
   border: solid 3px #cbcbca;
}

 

Erstellt: 09/2010| Geändert: 03/2023

Form Captcha (bw_captcha)

Zur Verwendung eines Catchas im Forms Modul ist diese Extension geeignet. Das Typoskript Template inkludieren und in der Forms Konfiguration das Element Captcha hinzufügen. Oder manuell mit:

renderables:
  -
    type: Captcha
    identifier: captcha
    label: Captcha
    properties:
    fluidAdditionalAttributes:
      required: required

Alle Infos sind hier zu finden https://github.com/maikschneider/bw_captcha

Erstellt: 09/2010| Geändert: 03/2023