@@ -44,25 +44,27 @@ function onLoad() {
4444 */
4545 function sites_web_vhost_subdomain_edit ($ event_name , $ page_form ) {
4646 global $ app , $ conf ;
47+
48+ if (isset ($ page_form ->dataRecord ["parent_domain_id " ]) && $ page_form ->dataRecord ["parent_domain_id " ] != $ page_form ->oldDataRecord ["parent_domain_id " ]) {
49+ // Get configuration for the web system
50+ $ app ->uses ("getconf " );
51+ $ web_config = $ app ->getconf ->get_server_config ($ app ->functions ->intval ($ page_form ->dataRecord ['server_id ' ]), 'web ' );
4752
48- // Get configuration for the web system
49- $ app ->uses ("getconf " );
50- $ web_config = $ app ->getconf ->get_server_config ($ app ->functions ->intval ($ page_form ->dataRecord ['server_id ' ]), 'web ' );
53+ $ parent_domain = $ app ->db ->queryOneRecord ("SELECT * FROM `web_domain` WHERE `domain_id` = ' " . $ app ->functions ->intval ($ page_form ->dataRecord ['parent_domain_id ' ]) . "' " );
5154
52- $ parent_domain = $ app ->db ->queryOneRecord ("SELECT * FROM `web_domain` WHERE `domain_id` = ' " . $ app ->functions ->intval ($ page_form ->dataRecord ['parent_domain_id ' ]) . "' " );
55+ // Set the values for document_root, system_user and system_group
56+ $ system_user = $ app ->db ->quote ($ parent_domain ['system_user ' ]);
57+ $ system_group = $ app ->db ->quote ($ parent_domain ['system_group ' ]);
58+ $ document_root = $ app ->db ->quote ($ parent_domain ['document_root ' ]);
59+ $ php_open_basedir = str_replace ("[website_path]/web " , $ document_root .'/ ' .$ page_form ->dataRecord ['web_folder ' ], $ web_config ["php_open_basedir " ]);
60+ $ php_open_basedir = str_replace ("[website_domain]/web " , $ page_form ->dataRecord ['domain ' ].'/ ' .$ page_form ->dataRecord ['web_folder ' ], $ php_open_basedir );
61+ $ php_open_basedir = str_replace ("[website_path] " , $ document_root , $ php_open_basedir );
62+ $ php_open_basedir = $ app ->db ->quote (str_replace ("[website_domain] " , $ page_form ->dataRecord ['domain ' ], $ php_open_basedir ));
63+ $ htaccess_allow_override = $ app ->db ->quote ($ parent_domain ['allow_override ' ]);
5364
54- // Set the values for document_root, system_user and system_group
55- $ system_user = $ app ->db ->quote ($ parent_domain ['system_user ' ]);
56- $ system_group = $ app ->db ->quote ($ parent_domain ['system_group ' ]);
57- $ document_root = $ app ->db ->quote ($ parent_domain ['document_root ' ]);
58- $ php_open_basedir = str_replace ("[website_path]/web " , $ document_root .'/ ' .$ page_form ->dataRecord ['web_folder ' ], $ web_config ["php_open_basedir " ]);
59- $ php_open_basedir = str_replace ("[website_domain]/web " , $ page_form ->dataRecord ['domain ' ].'/ ' .$ page_form ->dataRecord ['web_folder ' ], $ php_open_basedir );
60- $ php_open_basedir = str_replace ("[website_path] " , $ document_root , $ php_open_basedir );
61- $ php_open_basedir = $ app ->db ->quote (str_replace ("[website_domain] " , $ page_form ->dataRecord ['domain ' ], $ php_open_basedir ));
62- $ htaccess_allow_override = $ app ->db ->quote ($ parent_domain ['allow_override ' ]);
63-
64- $ sql = "UPDATE web_domain SET sys_groupid = " .$ app ->functions ->intval ($ parent_domain ['sys_groupid ' ]).",system_user = ' $ system_user', system_group = ' $ system_group', document_root = ' $ document_root', allow_override = ' $ htaccess_allow_override', php_open_basedir = ' $ php_open_basedir' WHERE domain_id = " .$ page_form ->id ;
65- $ app ->db ->query ($ sql );
65+ $ sql = "UPDATE web_domain SET sys_groupid = " .$ app ->functions ->intval ($ parent_domain ['sys_groupid ' ]).",system_user = ' $ system_user', system_group = ' $ system_group', document_root = ' $ document_root', allow_override = ' $ htaccess_allow_override', php_open_basedir = ' $ php_open_basedir' WHERE domain_id = " .$ page_form ->id ;
66+ $ app ->db ->query ($ sql );
67+ }
6668 }
6769
6870}
0 commit comments