Added User

This commit is contained in:
Frank Schubert
2021-06-22 21:03:24 +02:00
parent 16d7831d23
commit b41a28f1dc
11 changed files with 314 additions and 46 deletions

View File

@@ -29,12 +29,11 @@ class UserController extends mfBaseController {
}
$this->layout()->setTemplate('User/Index');
$users=$this->getUsers();
$users = UserModel::getAll();
$this->layout()->set('users',$users);
$pc = new ProviderController();
$providers = $pc->getProvider();
$this->layout()->set("providers", $providers);
$addresses = AddressModel::getAll();
$this->layout()->set("addresses", $addresses);
}
protected function addAction($request) {
@@ -43,9 +42,8 @@ class UserController extends mfBaseController {
}
$this->layout()->setTemplate('User/Form');
$pc = new ProviderController();
$providers = $pc->getProvider();
$this->layout()->set("providers", $providers);
$addresses = AddressModel::getAll();
$this->layout()->set("addresses", $addresses);
}
protected function editAction($request) {
@@ -62,9 +60,8 @@ class UserController extends mfBaseController {
$user=new User($id);
$this->layout()->set('user',$user);
$pc = new ProviderController();
$providers = $pc->getProvider();
$this->layout()->set("providers", $providers);
$addresses = AddressModel::getAll();
$this->layout()->set("addresses", $addresses);
}
protected function profileAction($request) {
@@ -72,62 +69,61 @@ class UserController extends mfBaseController {
}
protected function saveAction($request) {
//$this->log->debug("UserController::save");
$id = $request['id'];
protected function saveAction() {
$r = $this->request;
$id = $r->id;
if(!$this->isAdmin()) {
$id = $this->me->id;
$request['username'] = $this->me->username;
unset($request['provider_id']);
unset($r->address_id);
}
if(!$id && !$request['username']) {
if(!$id && !$r->username) {
self::redirect('User');
}
$user = new User($id);
if($request['username']) {
$user->username = $request['username'];
if($r->username) {
$user->username = $r->username;
}
if($request['name']) {
$user->name = $request['name'];
if($r->name) {
$user->name = $r->name;
}
if($request['email']) {
$user->email = $request['email'];
if($r->email) {
$user->email = $r->email;
}
if($request['provider_id']) {
if($r->address_id) {
if($this->isAdmin()) {
$user->provider_id = intval($request['provider_id']);
$user->address_id = intval($r->address_id);
//var_dump($user);exit;
$provider = new Provider($user->provider_id);
if(!$provider->id) {
throw new Exception("Unbekannter Provider");
$address = new Address($user->address_id);
if(!$address->id) {
throw new Exception("Unbekannte Firma/Person");
}
}
}
if($request['password']) {
if($request['password'] === $request['password2']) {
$user->password=mfLoginController::generatePasswordHash($request['password']);
if($r->password) {
if($r->password === $r->password2) {
$user->password=mfLoginController::generatePasswordHash($r->password);
} else {
$this->layout()->setFlash("Passwörter stimmen nicht überein!", "error");
}
}
$user->edit_by = $this->me->id;
if(!$id) {
$user->create_by = $this->me->id;
}
$id = $user->save();
if($this->isAdmin()) {
if($request['admin'] == "true" || $user->id == 1) {
if($r->admin == "true" || $user->id == 1) {
$user->permissions->admin = "true";
} else {
$user->permissions->admin = "false";
}
if($request['ticketadmin'] == "true") {
$user->permissions->ticketadmin = "true";
} else {
$user->permissions->ticketadmin = "false";
}
$user->permissions->save();
}