From b7332908d8ed550bf727df95a344b59ab1216e7c Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Mon, 18 Aug 2008 11:04:32 -0400
Subject: [PATCH] - Fixed several bugs in the installer. - Changed mbox regex in dns manager.

---
 install/lib/installer_base.lib.php       |    4 ++--
 interface/web/dns/form/dns_soa.tform.php |    2 +-
 install/lib/install.lib.php              |   32 ++++++++++++++++++++++++++++++++
 install/dist/conf/debian40.conf.php      |    2 +-
 4 files changed, 36 insertions(+), 4 deletions(-)

diff --git a/install/dist/conf/debian40.conf.php b/install/dist/conf/debian40.conf.php
index 266947b..af36f50 100644
--- a/install/dist/conf/debian40.conf.php
+++ b/install/dist/conf/debian40.conf.php
@@ -25,7 +25,7 @@
 $conf['mysql']['admin_user'] = 'root';
 $conf['mysql']['admin_password'] = '';
 $conf['mysql']['ispconfig_user'] = 'ispconfig';
-$conf['mysql']['ispconfig_password'] = '5sDrewBhk';
+$conf['mysql']['ispconfig_password'] = md5 (uniqid (rand()));
 
 //* Apache
 $conf['apache']['user'] = 'www-data';
diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index 5c037fb..d8eb0d6 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -438,6 +438,38 @@
 	return $content;
 }
 
+function is_user($user){
+  global $mod;
+  $user_datei = '/etc/passwd';
+  $users = no_comments($user_datei);
+  $lines = explode("\n", $users);
+  if(is_array($lines)){
+    foreach($lines as $line){
+      if(trim($line) != ""){
+        list($f1, $f2, $f3, $f4, $f5, $f6, $f7) = explode(":", $line);
+        if($f1 == $user) return true;
+      }
+    }
+  }
+  return false;
+}
+
+function is_group($group){
+  global $mod;
+  $group_datei = '/etc/group';
+  $groups = no_comments($group_datei);
+  $lines = explode("\n", $groups);
+  if(is_array($lines)){
+    foreach($lines as $line){
+      if(trim($line) != ""){
+        list($f1, $f2, $f3, $f4) = explode(":", $line);
+        if($f1 == $group) return true;
+      }
+    }
+  }
+  return false;
+}
+
 
 
 ?>
\ No newline at end of file
diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index bfc8723..33be4a1 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -664,10 +664,10 @@
 		
 		//* Create a ISPConfig user and group
 		$command = 'groupadd ispconfig';
-		caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
+		if(!is_group('vacp')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
 		
 		$command = "useradd -g ispconfig -d $install_dir ispconfig";
-		caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
+		if(!is_user('vacp')) caselog($command.' &> /dev/null 2> /dev/null', __FILE__, __LINE__, "EXECUTED: $command", "Failed to execute the command $command");
 		
 		//* copy the ISPConfig interface part
 		$command = "cp -rf ../interface $install_dir";
diff --git a/interface/web/dns/form/dns_soa.tform.php b/interface/web/dns/form/dns_soa.tform.php
index e9a8f43..7a63938 100644
--- a/interface/web/dns/form/dns_soa.tform.php
+++ b/interface/web/dns/form/dns_soa.tform.php
@@ -108,7 +108,7 @@
 			'validators'	=> array ( 	0 => array (	'type'	=> 'NOTEMPTY',
 														'errmsg'=> 'mbox_error_empty'),
 										1 => array (	'type'	=> 'REGEX',
-														'regex' => '/^[\w\.\-]{0,64}\.$/',
+														'regex' => '/^[[a-zA-Z0-9\.\-]{0,64}\.$/',
 														'errmsg'=> 'mbox_error_regex'),
 									),
 			'default'	=> '',

--
Gitblit v1.9.1