@@ -355,13 +355,26 @@ function update($event_name, $data) {
355355
356356 $ web_folder = 'web ' ;
357357 $ log_folder = 'log ' ;
358+ $ old_web_folder = 'web ' ;
359+ $ old_log_folder = 'log ' ;
358360 if ($ data ['new ' ]['type ' ] == 'vhostsubdomain ' ) {
361+ // new one
359362 $ tmp = $ app ->db ->queryOneRecord ('SELECT `domain` FROM web_domain WHERE domain_id = ' .intval ($ data ['new ' ]['parent_domain_id ' ]));
360363 $ subdomain_host = preg_replace ('/^(.*)\. ' . preg_quote ($ tmp ['domain ' ], '/ ' ) . '$/ ' , '$1 ' , $ data ['new ' ]['domain ' ]);
361364 if ($ subdomain_host == '' ) $ subdomain_host = 'web ' .$ data ['new ' ]['domain_id ' ];
362365 $ web_folder = $ data ['new ' ]['web_folder ' ];
363366 $ log_folder .= '/ ' . $ subdomain_host ;
364367 unset($ tmp );
368+
369+ if (isset ($ data ['old ' ]['parent_domain_id ' ])) {
370+ // old one
371+ $ tmp = $ app ->db ->queryOneRecord ('SELECT `domain` FROM web_domain WHERE domain_id = ' .intval ($ data ['old ' ]['parent_domain_id ' ]));
372+ $ subdomain_host = preg_replace ('/^(.*)\. ' . preg_quote ($ tmp ['domain ' ], '/ ' ) . '$/ ' , '$1 ' , $ data ['old ' ]['domain ' ]);
373+ if ($ subdomain_host == '' ) $ subdomain_host = 'web ' .$ data ['old ' ]['domain_id ' ];
374+ $ old_web_folder = $ data ['old ' ]['web_folder ' ];
375+ $ old_log_folder .= '/ ' . $ subdomain_host ;
376+ unset($ tmp );
377+ }
365378 }
366379
367380 // Create group and user, if not exist
@@ -473,9 +486,9 @@ function update($event_name, $data) {
473486 if ($ apache_chrooted ) $ this ->_exec ('chroot ' .escapeshellcmd ($ web_config ['website_basedir ' ]).' ' .$ command );
474487
475488 //* Change the log mount
476- $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ log_folder .' none bind ' ;
489+ $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder .' none bind ' ;
477490 $ app ->system ->removeLine ('/etc/fstab ' , $ fstab_line );
478- $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ log_folder .' none bind,nobootwait ' ;
491+ $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder .' none bind,nobootwait ' ;
479492 $ app ->system ->removeLine ('/etc/fstab ' , $ fstab_line );
480493 $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['new ' ]['domain ' ].' ' .$ data ['new ' ]['document_root ' ].'/ ' .$ log_folder .' none bind,nobootwait,_netdev 0 0 ' ;
481494 $ app ->system ->replaceLine ('/etc/fstab ' , $ fstab_line , $ fstab_line , 1 , 1 );
@@ -507,14 +520,14 @@ function update($event_name, $data) {
507520 // Remove the symlink for the site, if site is renamed
508521 if ($ this ->action == 'update ' && $ data ['old ' ]['domain ' ] != '' && $ data ['new ' ]['domain ' ] != $ data ['old ' ]['domain ' ]) {
509522 if (is_dir ('/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ])) exec ('rm -rf /var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ]);
510- if (is_link ($ data ['old ' ]['document_root ' ].'/ ' .$ log_folder )) $ app ->system ->unlink ($ data ['old ' ]['document_root ' ].'/ ' .$ log_folder );
523+ if (is_link ($ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder )) $ app ->system ->unlink ($ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder );
511524
512525 //* remove old log mount
513- $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ log_folder .' none bind ' ;
526+ $ fstab_line = '/var/log/ispconfig/httpd/ ' .$ data ['old ' ]['domain ' ].' ' .$ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder .' none bind ' ;
514527 $ app ->system ->removeLine ('/etc/fstab ' , $ fstab_line );
515528
516529 //* Unmount log directory
517- exec ('umount ' .escapeshellarg ($ data ['old ' ]['document_root ' ].'/ ' .$ log_folder ));
530+ exec ('umount ' .escapeshellarg ($ data ['old ' ]['document_root ' ].'/ ' .$ old_log_folder ));
518531 }
519532
520533 //* Create the log dir if nescessary and mount it
@@ -1620,7 +1633,6 @@ function update($event_name, $data) {
16201633
16211634 //* Unset action to clean it for next processed vhost.
16221635 $ this ->action = '' ;
1623-
16241636 }
16251637
16261638 function delete ($ event_name , $ data ) {
0 commit comments