aboutsummaryrefslogtreecommitdiff
path: root/pages/server_analysis.php
blob: 7e4218b83d5c1c666c08abef69613677b50147a1 (plain)
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
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
<?php

/********************************************************************
 *
 *   Tidypics System Analysis Script
 *
 *   Helps admins configure their server
 *
 ********************************************************************/   

include_once dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php";

global $CONFIG;

admin_gatekeeper();

set_context('admin');

$title = 'TidyPics Server Analysis'; 


function tp_readable_size($bytes) {
	if (strpos($bytes, 'M')) {
		return $bytes . 'B';
	}

	$size = $bytes / 1024;
	if ($size < 1024) {
		$size = number_format($size, 2);
		$size .= ' KB';
	} else {
		$size = $size / 1024;
		if ($size < 1024) {
			$size = number_format($size, 2);
			$size .= ' MB';
		} else {
			$size = $size / 1024;
			$size = number_format($size, 2);
			$size .= ' GB';
		}
	}
	return $size;
}

$disablefunc = explode(',', ini_get('disable_functions'));
$exec_avail = "Disabled";
if (is_callable('exec') && !in_array('exec',$disablefunc)) {
	$exec_avail = "Enabled";
}

ob_start();

echo elgg_view_title($title);
?>
<div class="contentWrapper">
	<table width="100%">
		<tr>
			<td>PHP version</td>
			<td><?php echo phpversion(); ?></td>
			<td></td>
		</tr>
		<tr>
			<td>GD</td>
			<td><?php echo (extension_loaded('gd')) ? 'Enabled' : 'Disabled'; ?></td>
			<td>Elgg requires the GD extension to be loaded</td>
		</tr>
		<tr>
			<td>IMagick PHP extension</td>
			<td><?php echo (extension_loaded('imagick')) ? 'Enabled' : 'Disabled'; ?></td>
			<td></td>
		</tr>
		<tr>
			<td>exec()</td>
			<td><?php echo $exec_avail; ?></td>
			<td>Required for ImageMagick command line</td>
		</tr>
		<tr>
			<td>Memory Available to PHP</td>
			<td><?php echo tp_readable_size(ini_get('memory_limit')); ?></td>
			<td>Change memory_limit to increase</td>
		</tr>
		<tr>
			<td>Memory Used to Load This Page</td>
			<td><?php if (function_exists('memory_get_peak_usage')) echo tp_readable_size(memory_get_peak_usage()); ?></td>
			<td>This is approximately the minimum per page</td>
		</tr>
		<tr>
			<td>Max File Upload Size</td>
			<td><?php echo tp_readable_size(ini_get('upload_max_filesize')); ?></td>
			<td>Max size of an uploaded image</td>
		</tr>
		<tr>
			<td>Max Post Size</td>
			<td><?php echo tp_readable_size(ini_get('post_max_size')); ?></td>
			<td>Max post size = sum of images + html form</td>
		</tr>
		<tr>
			<td>Max Input Time</td>
			<td><?php echo ini_get('max_input_time'); ?> s</td>
			<td>Time script waits for upload to finish</td>
		</tr>
		<tr>
			<td>Max Execution Time</td>
			<td><?php echo ini_get('max_execution_time'); ?> s</td>
			<td>Max time a script will run</td>
		</tr>
		<tr>
			<td>GD imagejpeg</td>
			<td><?php echo (is_callable('imagejpeg')) ? 'Enabled' : 'Disabled'; ?></td>
			<td></td>
		</tr>
		<tr>
			<td>GD imagepng</td>
			<td><?php echo (is_callable('imagepng')) ? 'Enabled' : 'Disabled'; ?></td>
			<td></td>
		</tr>
		<tr>
			<td>GD imagegif</td>
			<td><?php echo (is_callable('imagegif')) ? 'Enabled' : 'Disabled'; ?></td>
			<td></td>
		</tr>
		<tr>
			<td>EXIF</td>
			<td><?php echo (is_callable('exif_read_data')) ? 'Enabled' : 'Disabled'; ?></td>
			<td></td>
		</tr>
		<tr>
			<td>Cookie only sessions</td>
			<td><?php echo (ini_get('session.use_only_cookies')) ? 'Enabled' : 'Disabled'; ?></td>
			<td>Cookie only sessions may affect the Flash uploader</td>
		</tr>
	</table>
	<div style="margin-top:20px;">
		<a href="<?php echo $CONFIG->url . "mod/tidypics/docs/configure_server.txt"; ?>">Server configuration doc</a>
	</div>
</div>
<?php

$content = ob_get_clean();

$body = elgg_view_layout('two_column_left_sidebar', '', $content);

echo page_draw($title, $body);