From dfd031ab26ab1366d08caa1e669643a54674f82a Mon Sep 17 00:00:00 2001
From: tbrehm <t.brehm@ispconfig.org>
Date: Tue, 20 Jul 2010 05:54:40 -0400
Subject: [PATCH] Added OpenSuSE 11.3 installation instructions.

---
 install/lib/install.lib.php |   69 ++++++++++++++++++++++++++++++----
 1 files changed, 60 insertions(+), 9 deletions(-)

diff --git a/install/lib/install.lib.php b/install/lib/install.lib.php
index 889821c..a4e3880 100644
--- a/install/lib/install.lib.php
+++ b/install/lib/install.lib.php
@@ -56,6 +56,10 @@
 $FILE = realpath('../install.php');
 
 //** Get distribution identifier
+//** IMPORTANT!
+//   This is the same code as in /server/mods-available/monitor_core_module.inc.php
+//   So if you change it here, you also have to change it in
+//   /server/mods-available/monitor_core_module.inc.php!
 function get_distname() {
 	
 	$distname = '';
@@ -72,12 +76,18 @@
 			$distid = 'debian40';
 			$distbaseid = 'debian';
 			swriteln("Operating System: Debian 4.0 or compatible\n");
-		} elseif(strstr(trim(file_get_contents('/etc/debian_version')),'5.0') || trim(file_get_contents('/etc/debian_version')) == 'lenny/sid') {
+		} elseif(strstr(trim(file_get_contents('/etc/debian_version')),'5.0')) {
 			$distname = 'Debian';
-			$distver = 'Lenny/Sid';
+			$distver = 'Lenny';
 			$distid = 'debian40';
 			$distbaseid = 'debian';
-			swriteln("Operating System: Debian Lenny/Sid or compatible\n");
+			swriteln("Operating System: Debian Lenny or compatible\n");
+		} elseif(strstr(trim(file_get_contents('/etc/debian_version')),'6.0') || trim(file_get_contents('/etc/debian_version')) == 'squeeze/sid') {
+			$distname = 'Debian';
+			$distver = 'Squeeze/Sid';
+			$distid = 'debian60';
+			$distbaseid = 'debian';
+			swriteln("Operating System: Debian 6.0 (Squeeze/Sid) or compatible\n");
 		}  else {
 			$distname = 'Debian';
 			$distver = 'Unknown';
@@ -103,14 +113,14 @@
 			swriteln("Operating System: openSUSE 11.1 or compatible\n");
 		} elseif(stristr(file_get_contents('/etc/SuSE-release'),'11.2')) {
 			$distname = 'openSUSE';
-			$distver = '11.1';
-			$distid = 'opensuse110';
+			$distver = '11.2';
+			$distid = 'opensuse112';
 			$distbaseid = 'opensuse';
 			swriteln("Operating System: openSUSE 11.2 or compatible\n");
 		}  else {
 			$distname = 'openSUSE';
 			$distver = 'Unknown';
-			$distid = 'opensuse110';
+			$distid = 'opensuse112';
 			$distbaseid = 'opensuse';
 			swriteln("Operating System: openSUSE or compatible, unknown version.\n");
 		}
@@ -253,10 +263,14 @@
 
 function rf($file){
 	clearstatcache();
-	if(!$fp = fopen ($file, 'rb')){
-		ilog('WARNING: could not open file '.$file);
+	if(is_file($file)) {
+		if(!$fp = fopen ($file, 'rb')){
+			ilog('WARNING: could not open file '.$file);
+		}
+		return filesize($file) > 0 ? fread($fp, filesize($file)) : '';
+	} else {
+		return '';
 	}
-	return filesize($file) > 0 ? fread($fp, filesize($file)) : '';
 }
 
 function wf($file, $content){
@@ -626,6 +640,43 @@
 	}
 }
 
+/*
+ * Compare ISPConfig version number.
+ * return values:
+ * -1 $current version is newer then $new version (downgrade)
+ * 0 $current version = $new version
+ * 1 $current version is older then new version (update)
+
+*/
+function compare_ispconfig_version($current,$new) {
+	if( $current == $new) {
+		return 0;
+	}
+	
+	$p = explode('.',$current);
+	$tmp = '';
+	$tmp .= str_pad(intval($p[0]), 3, '0', STR_PAD_LEFT);
+	$tmp .= (isset($p[1]))?str_pad(intval($p[1]), 3, '0', STR_PAD_LEFT):'000';
+	$tmp .= (isset($p[2]))?str_pad(intval($p[2]), 3, '0', STR_PAD_LEFT):'000';
+	$tmp .= (isset($p[3]))?str_pad(intval($p[3]), 3, '0', STR_PAD_LEFT):'000';
+	$current = $tmp;
+	
+	$p = explode('.',$new);
+	$tmp = '';
+	$tmp .= str_pad(intval($p[0]), 3, '0', STR_PAD_LEFT);
+	$tmp .= (isset($p[1]))?str_pad(intval($p[1]), 3, '0', STR_PAD_LEFT):'000';
+	$tmp .= (isset($p[2]))?str_pad(intval($p[2]), 3, '0', STR_PAD_LEFT):'000';
+	$tmp .= (isset($p[3]))?str_pad(intval($p[3]), 3, '0', STR_PAD_LEFT):'000';
+	$new = $tmp;
+	
+	if($new > $current) {
+		return 1;
+	} else {
+		return -1;
+	}
+	
+}
+
 
 
 ?>

--
Gitblit v1.9.1