Хранилища Subversion ant

Редакция

Редакция 42 | Редакция 62 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

Редакция Автор № строки Строка
41 alex-w 1
<?php
2
 
3
class Core {
59 alex-w 4
 
5
	function getRepList($distro,$version,$dblink) {
6
		$query =& $dblink->query("SELECT * FROM settings");
7
		$settings = array();
8
		while ($query->fetchInto($setting, DB_FETCHMODE_ASSOC)) {
9
			$settings[stripslashes($setting["opt"])] = stripslashes($setting["optvalue"]);
10
		};
11
		$query =& $dblink->query("SELECT * FROM version v JOIN distribution d ON d.dist_id=v.dist_id JOIN dtype p ON d.disttype=p.type_id WHERE v.dist_id='$distro' AND v.version_id='$version'");
12
		$query->fetchInto($infodist, DB_FETCHMODE_ASSOC);
13
		$query =& $dblink->query("SELECT * FROM repository r JOIN ver2rep v ON r.rep_id=v.rep_id JOIN version v2 ON v.ver_id=v2.version_id JOIN scheme s ON s.scheme_id=r.scheme_id WHERE v.ver_id='$version' ORDER BY r.rtype_id, r.scheme_id ASC");
14
		while ($query->fetchInto($resinfo, DB_FETCHMODE_ASSOC)) {
15
	    		$repscheme = stripslashes($resinfo["scheme"]);
16
 
17
	    		$querysect =& $dblink->query("SELECT * FROM section s JOIN sect2rep r ON s.sect_id=r.sect_id WHERE
18
r.rep_id='$resinfo[rep_id]'");
19
	    		$sections = "";
20
            		while ($querysect->fetchInto($section,DB_FETCHMODE_ASSOC)) {
21
                    		$sections .= stripslashes($section["sectname"])." ";
22
            		}
23
 
24
	    		$repscheme = str_replace("{TYPE}",stripslashes($infodist["type"]),$repscheme);
25
	    		$repscheme = str_replace("{PROTO}",$settings["proto"],$repscheme);
26
	    		$repscheme = str_replace("{URL}",$settings["url"],$repscheme);
27
            		$repscheme = str_replace("{REP}",stripslashes($resinfo["repname"]),$repscheme);
28
	    		$repscheme = str_replace("{DIST}",stripslashes($infodist["vcodename"]),$repscheme);
29
	    		$repscheme = str_replace("{SECT}",$sections,$repscheme);
30
 
31
	    		$result .= "# ".stripslashes($resinfo["repdescribe"])."\n".$repscheme."\n\n";
32
        	}
33
		return $result;
34
	}
35
 
41 alex-w 36
	function getDistribution($message) {
42 alex-w 37
		$answer = "unknown";
41 alex-w 38
		if (preg_match("/debian/i",$message)) {
42 alex-w 39
			$answer = "debian";
41 alex-w 40
		}
41
		if (preg_match("/ubuntu/i",$message)) {
42 alex-w 42
			$answer = "ubuntu";
41 alex-w 43
		}
44
		if (preg_match("/infralinux/i",$message)) {
42 alex-w 45
			$answer = "infra";
41 alex-w 46
		}
47
		return $answer;
48
	}
49
 
50
	function getLinuxOS($message) {
51
		if (preg_match("/linux/i",$message)) {
52
			return true;
53
		} else {
54
			return false;
55
		}
56
	}
42 alex-w 57
	function getDistVersion($message,$distro){
58
		$answer = "unknown";
59
		if ($distro == "debian") {
60
			if (preg_match("/sarge/i",$message)) $answer = "sarge";
61
			if (preg_match("/etch/i",$message)) $answer = "etch";
62
			if (preg_match("/lenny/i",$message)) $answer = "lenny";
63
		}
64
		if ($distro == "ubuntu" || $distro == "infra") {
65
			if (preg_match("/hardy/i",$message)) $answer = "hardy";
66
			if (preg_match("/intrepid/i",$message)) $answer = "intrepid";
67
		}
68
		return $answer;
69
	}
41 alex-w 70
}
71
 
72
?>