Subversion Repositories stackman

Rev

Rev 3 | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3 Rev 6
1
#!/usr/bin/php
1
#!/usr/bin/php
2
<?php
2
<?php
3
 
3
 
4
require_once __DIR__ . '/includes/db.inc.php';
4
require_once __DIR__ . '/includes/db.inc.php';
5
require_once __DIR__ . '/includes/src.inc.php';
5
require_once __DIR__ . '/includes/src.inc.php';
6
 
6
 
-
 
7
$stam_cfg = array();
-
 
8
$stam_cfg['simulation'] = false;
-
 
9
require_once __DIR__ . '/includes/config.inc.php';
-
 
10
 
7
if ($argc <> 2) {
11
if ($argc <> 2) {
8
	echo "Syntax: $argv[0] <id>\n";
12
	echo "Syntax: $argv[0] <id>\n";
9
	#db_close();
13
	#db_close();
10
	exit(2);
14
	exit(2);
11
}
15
}
12
 
16
 
13
$id = trim($argv[1]);
17
$id = trim($argv[1]);
14
 
18
 
15
# Range support
19
# Range support
16
if (strpos($id, '-') !== false) {
20
if (strpos($id, '-') !== false) {
17
	$ary = explode('-', $id, 2);
21
	$ary = explode('-', $id, 2);
18
	$id_min = $ary[0];
22
	$id_min = $ary[0];
19
	$id_max = $ary[1];
23
	$id_max = $ary[1];
20
} else {
24
} else {
21
	$id_min = $id;
25
	$id_min = $id;
22
	$id_max = $id;
26
	$id_max = $id;
23
}
27
}
24
if (($id_min == 0) || ($id_max == 0)) {
28
if (($id_min == 0) || ($id_max == 0)) {
25
	fwrite(STDERR, "0 not a valid ID\n");
29
	fwrite(STDERR, "0 not a valid ID\n");
26
	#db_close();
30
	#db_close();
27
	exit(3);
31
	exit(3);
28
}
32
}
-
 
33
$id_min = (int)$id_min;
-
 
34
$id_max = (int)$id_max;
29
if ($id_min>$id_max) {
35
if ($id_min>$id_max) {
30
	fwrite(STDERR, "RANGE ERROR $id_min>$id_max\n");
36
	fwrite(STDERR, "RANGE ERROR $id_min>$id_max\n");
31
	#db_close();
37
	#db_close();
32
	exit(3);
38
	exit(3);
33
}
39
}
34
$id_cnt = $id_max-$id_min + 1;
40
$id_cnt = $id_max - $id_min + 1;
35
 
41
 
36
# Simulation mode
42
# Simulation mode
37
if ($stam_cfg['simulation']) {
43
if ($stam_cfg['simulation']) {
38
	fwrite(STDERR, "============ STRIKE SIMULATION: $id_min..$id_max\n");
44
	fwrite(STDERR, "============ STRIKE SIMULATION: $id_min..$id_max\n");
39
	#db_close();
45
	#db_close();
40
	exit(0);
46
	exit(0);
41
}
47
}
42
 
48
 
43
$str = db_query("SELECT id, cat, txt FROM stam_entries WHERE
49
$str = db_query("SELECT id, cat, txt FROM stam_entries WHERE
44
	id >= '".db_real_escape_string($id_min)."'
50
	id >= '".db_real_escape_string($id_min)."'
45
	AND id <= '".db_real_escape_string($id_max)."'
51
	AND id <= '".db_real_escape_string($id_max)."'
46
	");
52
	");
47
if (!$str) {
53
if (!$str) {
48
	fwrite(STDERR, db_error()."\n");
54
	fwrite(STDERR, db_error()."\n");
49
	#db_close();
55
	#db_close();
50
	exit(1);
56
	exit(1);
51
}
57
}
52
while ($row = db_fetch_array($str)) {
58
while ($row = db_fetch_array($str)) {
53
	$id  = $row['id'];
59
	$id  = $row['id'];
54
	$cat = $row['cat'];
60
	$cat = $row['cat'];
55
	$txt = $row['txt'];
61
	$txt = $row['txt'];
56
 
62
 
57
	$x = db_query("UPDATE stam_entries SET state = 'S' WHERE
63
	$x = db_query("UPDATE stam_entries SET state = 'S' WHERE
58
		id = '".db_real_escape_string($id)."'");
64
		id = '".db_real_escape_string($id)."'");
59
	if (!$x) {
65
	if (!$x) {
60
		fwrite(STDERR, db_error()."\n");
66
		fwrite(STDERR, db_error()."\n");
61
		#db_close();
67
		#db_close();
62
		exit(1);
68
		exit(1);
63
	}
69
	}
64
 
70
 
65
	$afr = db_affected_rows();
71
	$afr = db_affected_rows();
66
	if ($afr != 1) {
72
	if ($afr != 1) {
67
		fwrite(STDERR, "Error: Could not update $id <$cat> '$txt'\n");
73
		fwrite(STDERR, "Error: Could not update $id <$cat> '$txt'\n");
68
		#db_close();
74
		#db_close();
69
		exit(1);
75
		exit(1);
70
	} else {
76
	} else {
71
		#echo green("OK! Striked: $id <$cat> $txt\n");
77
		#echo green("OK! Striked: $id <$cat> $txt\n");
72
		echo green("OK! $id - <$cat> $txt\n");
78
		echo green("OK! $id - <$cat> $txt\n");
73
	}
79
	}
74
}
80
}
75
 
81
 
76
# ---
82
# ---
77
 
83
 
78
function green($txt) {
84
function green($txt) {
79
	return "\033[1;32;40m".$txt."\033[0m";
85
	return "\033[1;32;40m".$txt."\033[0m";
80
}
86
}
81
 
87