| | |
| | | $this->conf = $conf; |
| | | } |
| | | |
| | | //TODO uh ? |
| | | //: TODO Implement the translation function and langauge files for the installer. |
| | | public function lng($text) |
| | | { |
| | | return $text; |
| | |
| | | return $answer; |
| | | } |
| | | |
| | | /* |
| | | // TODO: this function is not used atmo I think - pedro |
| | | function request_language(){ |
| | | |
| | | swriteln(lng('Enter your language')); |
| | | swriteln(lng('de, en')); |
| | | |
| | | /* |
| | | do { |
| | | $lang = sread(2); |
| | | } while (!$this->check_break($lang) or $this-> |
| | | */ |
| | | |
| | | } |
| | | */ |
| | | |
| | | /** Create the database for ISPConfig */ |
| | | public function configure_database() |
| | |
| | | wf("$install_dir/server/lib/$configfile", $content); |
| | | |
| | | |
| | | //* Enable the server modules and plugins. |
| | | // TODO: Implement a selector which modules and plugins shall be enabled. |
| | | $dir = $install_dir.'/server/mods-available/'; |
| | | if (is_dir($dir)) { |
| | | if ($dh = opendir($dir)) { |
| | | while (($file = readdir($dh)) !== false) { |
| | | if($file != '.' && $file != '..') { |
| | | if(!is_link($install_dir.'/server/mods-enabled/'.$file)) symlink($install_dir.'/server/mods-available/'.$file, $install_dir.'/server/mods-enabled/'.$file); |
| | | } |
| | | } |
| | | closedir($dh); |
| | | } |
| | | } |
| | | |
| | | $dir = $install_dir.'/server/plugins-available/'; |
| | | if (is_dir($dir)) { |
| | | if ($dh = opendir($dir)) { |
| | | while (($file = readdir($dh)) !== false) { |
| | | if($file != '.' && $file != '..') { |
| | | if(!is_link($install_dir.'/server/plugins-enabled/'.$file)) symlink($install_dir.'/server/plugins-available/'.$file, $install_dir.'/server/plugins-enabled/'.$file); |
| | | } |
| | | } |
| | | closedir($dh); |
| | | } |
| | | } |
| | | |
| | | //* Chmod the files |
| | | $command = "chmod -R 750 $install_dir"; |
| | | caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | |
| | | //* chown the files to the ispconfig user and group |
| | | $command = "chown -R ispconfig:ispconfig $install_dir"; |
| | | caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | | |
| | | //* Make the global language file directory group writable |
| | | exec("chmod -R 770 $install_dir/interface/lib/lang"); |
| | | |
| | | //* Make all interface language file directories group writable |
| | | $handle = @opendir($install_dir.'/interface/web'); |
| | | while ($file = @readdir ($handle)) { |
| | | if ($file != '.' && $file != '..') { |
| | | if(@is_dir($install_dir.'/interface/web'.'/'.$file.'/lib/lang')) { |
| | | $handle2 = opendir($install_dir.'/interface/web'.'/'.$file.'/lib/lang'); |
| | | chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang',0770); |
| | | while ($lang_file = @readdir ($handle2)) { |
| | | if ($lang_file != '.' && $lang_file != '..') { |
| | | chmod($install_dir.'/interface/web'.'/'.$file.'/lib/lang/'.$lang_file,0770); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //* make sure that the server config file (not the interface one) is only readable by the root user |
| | | exec("chmod 600 $install_dir/server/lib/$configfile"); |
| | |
| | | caselog($command.' &> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command"); |
| | | |
| | | //* Copy the ISPConfig vhost for the controlpanel |
| | | //TODO These are missing! should they be "vhost_dist_*_dir" ? |
| | | // TODO: These are missing! should they be "vhost_dist_*_dir" ? |
| | | $vhost_conf_dir = $this->conf['apache']['vhost_conf_dir']; |
| | | $vhost_conf_enabled_dir = $this->conf['apache']['vhost_conf_enabled_dir']; |
| | | copy('tpl/apache_ispconfig.vhost.master', "$vhost_conf_dir/ispconfig.vhost"); |
| | |
| | | if(!is_link("$vhost_conf_enabled_dir/ispconfig.vhost")) { |
| | | exec("ln -s $vhost_conf_dir/ispconfig.vhost $vhost_conf_enabled_dir/ispconfig.vhost"); |
| | | } |
| | | |
| | | // Make the Clamav log files readable by ISPConfig |
| | | exec('chmod +r /var/log/clamav/clamav.log'); |
| | | exec('chmod +r /var/log/clamav/freshclam.log'); |
| | | } |
| | | |
| | | public function install_crontab() |