1 | <?php
|
---|
2 | // Set XPressME memory limit
|
---|
3 | function xpress_set_memory_limmit(){
|
---|
4 | global $xoops_config;
|
---|
5 | global $xoopsDB;
|
---|
6 |
|
---|
7 | $module_id = '';
|
---|
8 | $memory = '';
|
---|
9 |
|
---|
10 | if (!is_object($xoops_config)){
|
---|
11 | require_once dirname(dirname( __FILE__ )).'/class/config_from_xoops.class.php' ;
|
---|
12 | $xoops_config = new ConfigFromXoops;
|
---|
13 | }
|
---|
14 |
|
---|
15 | $has_xoops_db = (!empty($xoopsDB));
|
---|
16 | if (!$has_xoops_db) {
|
---|
17 | $cn = mysql_connect($xoops_config->xoops_db_host, $xoops_config->xoops_db_user, $xoops_config->xoops_db_pass);
|
---|
18 | if ($cn){
|
---|
19 | $db_selected = mysql_select_db($xoops_config->xoops_db_name, $cn);
|
---|
20 | }
|
---|
21 | }
|
---|
22 |
|
---|
23 | // get module ID
|
---|
24 | $module_table = $xoops_config->xoops_db_prefix . '_modules';
|
---|
25 | $module_sql = "SELECT mid FROM $module_table WHERE `dirname` = '$xoops_config->module_name'";
|
---|
26 | if ($has_xoops_db) {
|
---|
27 | if ($result = $xoopsDB->query($module_sql, 0, 0)){
|
---|
28 | $row = $xoopsDB->fetchArray($result);
|
---|
29 | $module_id = $row['mid'];
|
---|
30 | }
|
---|
31 | } else {
|
---|
32 | if ($db_selected){
|
---|
33 | if($result = mysql_query($module_sql)){
|
---|
34 | $row = mysql_fetch_assoc($result);
|
---|
35 | $module_id = $row['mid'];
|
---|
36 | }
|
---|
37 | }
|
---|
38 | }
|
---|
39 | if (!empty($module_id)){
|
---|
40 | // get memory_limit
|
---|
41 | $config_table = $xoops_config->xoops_db_prefix . '_config';
|
---|
42 | $config_sql = "SELECT conf_value FROM $config_table WHERE `conf_modid` = $module_id AND `conf_name` = 'memory_limit'";
|
---|
43 | if ($has_xoops_db) {
|
---|
44 | if ($result = $xoopsDB->query($config_sql, 0, 0)){
|
---|
45 | $row = $xoopsDB->fetchArray($result);
|
---|
46 | $memory = $row['conf_value'];
|
---|
47 | }
|
---|
48 | } else {
|
---|
49 | if ($db_selected){
|
---|
50 | if($result = mysql_query($config_sql)){
|
---|
51 | $row = mysql_fetch_assoc($result);
|
---|
52 | $memory = $row['conf_value'];
|
---|
53 | }
|
---|
54 | }
|
---|
55 | }
|
---|
56 | }
|
---|
57 | if (!$has_xoops_db) {
|
---|
58 | mysql_close($cn);
|
---|
59 | }
|
---|
60 |
|
---|
61 | if (empty($memory)) return;
|
---|
62 | if ( !defined('WP_MEMORY_LIMIT') )
|
---|
63 | define('WP_MEMORY_LIMIT', $memory . 'M');
|
---|
64 | if ( function_exists('memory_get_usage') && ( (int) @ini_get('memory_limit') < abs(intval(WP_MEMORY_LIMIT)) ) )
|
---|
65 | @ini_set('memory_limit', WP_MEMORY_LIMIT);
|
---|
66 | }
|
---|
67 | ?> |
---|