...
|
...
|
@@ -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) {
|