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
|
<?php
/**
* Basic constants/variables required for flyspray operation
*
* @notes be a real paranoid here.
* @version $Id$
*/
define('BASEDIR', dirname(dirname(__FILE__)));
// Change this line if you move flyspray.conf.php elsewhere
$conf = @parse_ini_file(Flyspray::get_config_path(), true);
// $baseurl
// htmlspecialchars because PHP_SELF is user submitted data, and can be used as an XSS vector.
if (isset($conf['general']['force_baseurl']) && $conf['general']['force_baseurl'] != '') {
$baseurl = $conf['general']['force_baseurl'];
} else {
if (!isset($webdir)) {
$webdir = dirname(htmlspecialchars($_SERVER['PHP_SELF'], ENT_QUOTES, 'utf-8'));
if (!$webdir) {
$webdir = dirname($_SERVER['SCRIPT_NAME']);
}
if(substr($webdir, -13) == '/js/callbacks'){
$webdir = dirname(dirname($webdir));
} elseif (substr($webdir, -9) == 'index.php') {
$webdir = dirname($webdir);
}
}
$baseurl = rtrim(Flyspray::absoluteURI($webdir),'/\\') . '/' ;
}
if(isset($conf['general']['syntax_plugin']) && preg_match('/^[a-z0-9_]+$/iD', $conf['general']['syntax_plugin'])) {
$path_to_plugin = sprintf('%s/plugins/%s/%s_constants.inc.php', BASEDIR, $conf['general']['syntax_plugin'], $conf['general']['syntax_plugin']);
if (is_readable($path_to_plugin)) {
include($path_to_plugin);
}
}
define('NOTIFY_TASK_OPENED', 1);
define('NOTIFY_TASK_CHANGED', 2);
define('NOTIFY_TASK_CLOSED', 3);
define('NOTIFY_TASK_REOPENED', 4);
define('NOTIFY_DEP_ADDED', 5);
define('NOTIFY_DEP_REMOVED', 6);
define('NOTIFY_COMMENT_ADDED', 7);
define('NOTIFY_ATT_ADDED', 8);
define('NOTIFY_REL_ADDED', 9);
define('NOTIFY_OWNERSHIP', 10);
define('NOTIFY_CONFIRMATION', 11);
define('NOTIFY_PM_REQUEST', 12);
define('NOTIFY_PM_DENY_REQUEST', 13);
define('NOTIFY_NEW_ASSIGNEE', 14);
define('NOTIFY_REV_DEP', 15);
define('NOTIFY_REV_DEP_REMOVED', 16);
define('NOTIFY_ADDED_ASSIGNEES', 17);
define('NOTIFY_ANON_TASK', 18);
define('NOTIFY_PW_CHANGE', 19);
define('NOTIFY_NEW_USER', 20);
define('NOTIFY_OWN_REGISTRATION',21);
define('NOTIFY_EMAIL', 1);
define('NOTIFY_JABBER', 2);
define('NOTIFY_BOTH', 3);
define('STATUS_UNCONFIRMED', 1);
define('STATUS_NEW', 2);
define('STATUS_ASSIGNED', 3);
define('GET_CONTENTS', true);
# resolution_id with special meaning and protection, always 6 (Flyspray history)
define('RESOLUTION_DUPLICATE', 6);
// Others
define('MIN_PW_LENGTH', 5);
define('LOGIN_ATTEMPTS', 5);
# 201508: webdot currently used not anymore in flyspray. Graphs can be done in future with svg or canvas elements.
define('FLYSPRAY_WEBDOT', 'http://webdot.flyspray.org/');
define('FS_DOMAIN_HASH', md5($_SERVER['SERVER_NAME'] . BASEDIR));
define('FS_CACHE_DIR', Flyspray::get_tmp_dir() . DIRECTORY_SEPARATOR . FS_DOMAIN_HASH);
is_dir(FS_CACHE_DIR) || @mkdir(FS_CACHE_DIR, 0700);
// developers or advanced users only
//define('DEBUG_SQL',true);
# 201508: Currently without usage! Was once used in file fsjabber.php (not in src anymore), but not within class.jabber2.php.
//define('JABBER_DEBUG', true);
//define('JABBER_DEBUG_FILE', BASEDIR . '/logs/jabberlog.txt');
//define('FS_MAIL_LOGFILE', BASEDIR . '/logs/maillog.txt');
|