Hallo TYPO3 Freunde,
großes Problem was ich gerade habe. In meiner Extension habe ich einen EditView der die FeUsers bearbeitet. Das Problem ist setze ich die Extension saltedpasswords ein wird mein StringLenght Validator ausgehebelt.
Also die Sache ist die.
Ich überprüfe zwei Dinge:
Da ich im Editview bin soll das bestehende password nicht validiert werden bzw. die **** sollen nicht erscheinen. Das habe ich so gelösst, dass ich das Feld mit value="" vordefiniert habe. Da jetzt ja der Validator alarm schlagen würde, habe ich im Fall, dass der user sich im EditView befindet bei leeren String true zurück gibt also akzepptiert.
Im Model schreibe ich folgendes:
public function setPassword($password){
$oldPassword = $this->getPassword();
if($password != '') {
$utilityPassword = t3lib_div::makeInstance('Tx_MyExt_Utility_SaltedPassword');
$this->password = $utilityPassword->saltedPassword($password);
}else {
$this->password = $oldPassword;
}
}
heißt wenn $password leer ist soll er das nehmen was vorher drin stand.
wenn nicht, möchte der user ein neues vergeben, dass dann natürlich wieder verschlüsselt werden muss.
Der Haken bei der Geschichte ist, so wie es aussieht wird erst der Wert gesetzt
in $this->password und dann validiert. und da ich das $password ja verschlüssele und dann erst in $this->password schreibe steht natürlich ein hash drin der größer als meine 8 Zeichen ist.
ahhhhhhhhhhh
Leider stehe ich gerade voll auf dem Schlauch wie ich das umschiffen kann.
Eventuell hat ja jemand von euch ne Idee.
Danke schon mal im Voraus
Grüße typonewbe