Bernd Wurst commited on 2022-02-17 19:41:57
              Zeige 1 geänderte Dateien mit 10 Einfügungen und 2 Löschungen.
            
| ... | ... | 
                      @@ -365,7 +365,7 @@ function make_webapp_vhost($id, $webapp)  | 
                  
| 365 | 365 | 
                        }  | 
                    
| 366 | 366 | 
                         | 
                    
| 367 | 367 | 
                         | 
                    
| 368 | 
                        -function check_hostname_collision($hostname, $domain)  | 
                    |
| 368 | 
                        +function check_hostname_collision($hostname, $domain, $id=NULL)  | 
                    |
| 369 | 369 | 
                         {
                       | 
                    
| 370 | 370 | 
                        $uid = (int) $_SESSION['userinfo']['uid'];  | 
                    
| 371 | 371 | 
                        # Neuer vhost => Prüfe Duplikat  | 
                    
| ... | ... | 
                      @@ -387,7 +387,12 @@ function check_hostname_collision($hostname, $domain)  | 
                  
| 387 | 387 | 
                        $hostnamecheck = "hostname IS NULL";  | 
                    
| 388 | 388 | 
                        unset($args[":hostname"]);  | 
                    
| 389 | 389 | 
                        }  | 
                    
| 390 | 
                        -    $result = db_query("SELECT id FROM vhosts.vhost WHERE {$hostnamecheck} AND {$domaincheck} AND user=:uid", $args);
                       | 
                    |
| 390 | 
                        + $idcheck = '';  | 
                    |
| 391 | 
                        +    if ($id) {
                       | 
                    |
| 392 | 
                        + $idcheck = ' AND id != :id';  | 
                    |
| 393 | 
                        + $args[':id'] = (int) $id;  | 
                    |
| 394 | 
                        + }  | 
                    |
| 395 | 
                        +    $result = db_query("SELECT id FROM vhosts.vhost WHERE {$hostnamecheck} AND {$domaincheck} AND user=:uid ".$idcheck, $args);
                       | 
                    |
| 391 | 396 | 
                             if ($result->rowCount() > 0) {
                       | 
                    
| 392 | 397 | 
                                 system_failure('Eine Konfiguration mit diesem Namen gibt es bereits.');
                       | 
                    
| 393 | 398 | 
                        }  | 
                    
| ... | ... | 
                      @@ -395,6 +400,7 @@ function check_hostname_collision($hostname, $domain)  | 
                  
| 395 | 400 | 
                        return ;  | 
                    
| 396 | 401 | 
                        }  | 
                    
| 397 | 402 | 
                        unset($args[":uid"]);  | 
                    
| 403 | 
                        + unset($args[":id"]);  | 
                    |
| 398 | 404 | 
                             $result = db_query("SELECT id, vhost FROM vhosts.v_alias WHERE {$hostnamecheck} AND {$domaincheck}", $args);
                       | 
                    
| 399 | 405 | 
                             if ($result->rowCount() > 0) {
                       | 
                    
| 400 | 406 | 
                        $data = $result->fetch();  | 
                    
| ... | ... | 
                      @@ -419,6 +425,8 @@ function save_vhost($vhost)  | 
                  
| 419 | 425 | 
                        }  | 
                    
| 420 | 426 | 
                             if ($id == 0) {
                       | 
                    
| 421 | 427 | 
                        check_hostname_collision($vhost['hostname'], $vhost['domain_id']);  | 
                    
| 428 | 
                        +    } else {
                       | 
                    |
| 429 | 
                        + check_hostname_collision($vhost['hostname'], $vhost['domain_id'], $id);  | 
                    |
| 422 | 430 | 
                        }  | 
                    
| 423 | 431 | 
                        $hsts = (int) $vhost['hsts'];  | 
                    
| 424 | 432 | 
                             if ($hsts < 0) {
                       | 
                    
| 425 | 433 |