Modification of single places is now functional.
This commit is contained in:
@@ -248,6 +248,7 @@ class ClubsHelperControllerClub extends AbstractClubsHelperController
|
||||
$this->registerFcn('iban', 'editIban');
|
||||
$this->registerFcn('bic', 'editBic');
|
||||
$this->registerFcn('offers', 'editOffers');
|
||||
$this->registerFcn('place', 'editPlace');
|
||||
}
|
||||
|
||||
protected function editName($user, $post)
|
||||
@@ -358,6 +359,41 @@ class ClubsHelperControllerClub extends AbstractClubsHelperController
|
||||
throw new InvalidUserDataException('Es gab ein Problem mit der Eingabe. Bitte Seite neu laden und Daten erneut eintragen.');
|
||||
}
|
||||
}
|
||||
|
||||
protected function editPlace($user, $post)
|
||||
{
|
||||
$factory = new CommonClubsModelFactoryPlace();
|
||||
$place = $factory->loadById($this->id);
|
||||
|
||||
$name = trim($post->getString('name'));
|
||||
$address = $post->getString('address');
|
||||
$area = $post->getInt('area');
|
||||
|
||||
$validator = new ClubsHelperValidator();
|
||||
|
||||
$this->checkLen($name, 5, "Der Name des Saals muss mindestens aus 5 Zeichen bestehen.");
|
||||
|
||||
$this->checkLen($address, 10, 'Die Adresse muss mindestens 10 Zeichen lang sein.');
|
||||
$addr = '';
|
||||
if(!$validator->validateAddress($address, $addr))
|
||||
{
|
||||
throw new InvalidUserDataException('Die Adresse muss mindestens aus 2 Zeilen bestehen.');
|
||||
}
|
||||
|
||||
if($area < 0)
|
||||
throw new InvalidUserDataException('Die Fläche darf nicht negativ sein.');
|
||||
if($area == 0)
|
||||
$area = null;
|
||||
if($area > 2500)
|
||||
throw new InvalidUserDataException('Die Fläche erscheint zu groß zu sein. Wenden Sie sich bitte ggf an den Support.');
|
||||
|
||||
// TODO ACL needed
|
||||
|
||||
$place->setName($name);
|
||||
$place->setAddress($addr);
|
||||
$place->setArea($area);
|
||||
$place->save();
|
||||
}
|
||||
}
|
||||
|
||||
class ClubsControllerParts extends BaseController
|
||||
|
||||
Reference in New Issue
Block a user