-
Notifications
You must be signed in to change notification settings - Fork 1
/
flagcontroller.php
105 lines (85 loc) · 1.48 KB
/
flagcontroller.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?php
session_start();
require("dbConnection.php");
function getFlags() {
$flags = array();
$flags[0] = "oea2G8Q62l";
$flags[1] = "pdJIp9ilXL";
$flags[2] = "fbXFXjX2Ps";
$flags[3] = "DThfgcHIEU";
$flags[4] = "pihOuW0mIt";
$flags[5] = "i5WO1xspJr";
$flags[6] = "ByEj2jLuD9";
$flags[7] = "aSDsddFmas";
$flags[8] = "95DULO9xnH";
$flags['5596alpha'] = "X7V52Gl3le";
return $flags;
}
function getPoints($qid) {
switch ($qid) {
case 0:
return 20;
break;
case 1:
return 40;
break;
case 2:
return 50;
break;
case 3:
return 30;
break;
case 4:
return 100;
break;
case 5:
return 30;
break;
case 6:
return 10;
break;
case 7:
return 25;
break;
case 8:
return 25;
break;
case '5596alpha':
return 80;
break;
default:
return 0;
break;
}
}
function getBaseFlag($qid) {
return getFlags()[$qid];
}
function getFlagUser($qid,$userId) {
$flag = getBaseFlag($qid);
// echo "For ".$qid. " and ".$userId."\t".$flag."<br>";
return sha1($flag . ":" . $userId);
}
function getFlag($qid) {
if(!isLogin()) {
echo "Please Login First";
die();
return "Please Login First";
}
$userId = $_SESSION['id'];
$fflag = getFlagUser($qid,$userId);;
return $fflag;
}
function isLogin() {
if(isset($_SESSION['id']) && preg_match('/^[Aa][Nn][Ww][0-9]{4}$/',$_SESSION['id'])) {
return true;
}
return false;
}
function mustLogin() {
if(!isLogin()) {
echo "User Must Login!";
die();
}
}
?>