Skip to content
This repository was archived by the owner on Jan 1, 2020. It is now read-only.

Commit 698f4db

Browse files
committed
use data dir for addon settings etc.
closes #283, closes #284
1 parent 39e600b commit 698f4db

18 files changed

+82
-100
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
/files/*
2+
/redaxo/include/data/*
23
/redaxo/include/generated/*
3-
/redaxo/include/addons/cronjob/logs/*

redaxo/include/addons/cronjob/classes/class.log.inc.php

+4-10
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,7 @@ class rex_cronjob_log
1616
$folder = REX_CRONJOB_LOG_FOLDER;
1717
$years = array ();
1818

19-
$hdl = opendir($folder);
20-
if($hdl)
19+
if(is_dir($folder) && $hdl = opendir($folder))
2120
{
2221
while (($file = readdir($hdl)) !== false)
2322
{
@@ -128,20 +127,15 @@ class rex_cronjob_log
128127
$newline .= ' | '. str_replace(array("\r\n", "\n"), ' | ', trim(strip_tags($message)));
129128

130129
$dir = REX_CRONJOB_LOG_FOLDER . $year;
131-
if (!is_dir($dir))
132-
{
133-
mkdir($dir);
134-
chmod($dir, $REX['DIRPERM']);
135-
}
136130

137131
$content = '';
138132
$file = $dir .'/'. $year .'-'. $month .'.log';
139133
if (file_exists($file))
140-
$content = rex_get_file_contents($file);
134+
$content = rex_file::get($file);
141135

142136
$content = $newline ."\n". $content;
143137

144-
return rex_put_file_contents($file, $content);
138+
return rex_file::put($file, $content);
145139
}
146140

147141
static /*private*/ function _getList($lines, $caption = '', $summary = '')
@@ -212,4 +206,4 @@ class rex_cronjob_log
212206
</table>';
213207
return $list;
214208
}
215-
}
209+
}

redaxo/include/addons/cronjob/classes/class.manager.inc.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ class rex_cronjob_manager
108108
$nexttime = 0;
109109
else
110110
$nexttime = max(1, $nexttime);
111-
if ($nexttime != $REX['ADDON']['nexttime']['cronjob'] && rex_put_file_contents(REX_CRONJOB_NEXTTIME_FILE, $nexttime))
111+
if ($nexttime != $REX['ADDON']['nexttime']['cronjob'] && rex_file::put(REX_CRONJOB_NEXTTIME_FILE, $nexttime))
112112
{
113113
$REX['ADDON']['nexttime']['cronjob'] = $nexttime;
114114
return true;
@@ -286,4 +286,4 @@ class rex_cronjob_manager_sql
286286
}
287287
return null;
288288
}
289-
}
289+
}

redaxo/include/addons/cronjob/config.inc.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,8 @@
6262
$EP = 'ADDONS_INCLUDED';
6363
}
6464

65-
define('REX_CRONJOB_LOG_FOLDER', $REX['INCLUDE_PATH'] .'/addons/cronjob/logs/');
66-
define('REX_CRONJOB_NEXTTIME_FILE', $REX['INCLUDE_PATH'] .'/addons/cronjob/nexttime');
65+
define('REX_CRONJOB_LOG_FOLDER', rex_path::addonData('cronjob', 'logs/'));
66+
define('REX_CRONJOB_NEXTTIME_FILE', rex_path::addonData('cronjob', 'nexttime'));
6767
define('REX_CRONJOB_TABLE', $REX['TABLE_PREFIX'] .'630_cronjobs');
6868

6969
require_once dirname(__FILE__) .'/classes/class.manager.inc.php';

redaxo/include/addons/cronjob/install.inc.php

+1-11
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,7 @@
1111

1212
$error = '';
1313

14-
$nexttime_file = $REX['INCLUDE_PATH'] .'/addons/cronjob/nexttime';
15-
16-
if(($state = rex_is_writable($nexttime_file)) !== true)
17-
$error .= $state;
18-
19-
$log_folder = $REX['INCLUDE_PATH'] .'/addons/cronjob/logs/';
20-
21-
if(($state = rex_is_writable($log_folder)) !== true)
22-
$error .= $state;
23-
2414
if ($error != '')
2515
$REX['ADDON']['installmsg']['cronjob'] = $error;
2616
else
27-
$REX['ADDON']['install']['cronjob'] = true;
17+
$REX['ADDON']['install']['cronjob'] = true;

redaxo/include/addons/cronjob/logs/.redaxo

-1
This file was deleted.

redaxo/include/addons/cronjob/nexttime

-1
This file was deleted.

redaxo/include/addons/image_manager/config.inc.php

+5-3
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,11 @@
1919
$REX['ADDON']['supportpage'][$mypage] = 'forum.redaxo.de';
2020
$REX['PERM'][] = 'image_manager[]';
2121

22-
// --- DYN
2322
$REX['ADDON']['image_manager']['jpg_quality'] = 85;
24-
// --- /DYN
23+
$settings = rex_path::addonData($mypage, 'settings.inc.php');
24+
if (file_exists($settings)) {
25+
include $settings;
26+
}
2527

2628
$REX['ADDON']['image_manager']['classpaths']['effects'] = array();
2729
$REX['ADDON']['image_manager']['classpaths']['effects'][] = dirname(__FILE__). '/classes/effects/';
@@ -63,7 +65,7 @@ function image_manager_init()
6365
'imagepath' => $imagepath,
6466
'cachepath' => $cachepath);
6567
$subject = rex_register_extension_point('IMAGE_MANAGER_INIT',$subject);
66-
68+
6769
if(isset($subject['rex_img_file'])) $rex_img_file = $subject['rex_img_file'];
6870
if(isset($subject['rex_img_type'])) $rex_img_type = $subject['rex_img_type'];
6971
if(isset($subject['imagepath'])) $imagepath = $subject['imagepath'];

redaxo/include/addons/image_manager/install.inc.php

-8
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,6 @@
1919
$error = 'GD-LIB-extension not available! See <a href="http://www.php.net/gd">http://www.php.net/gd</a>';
2020
}
2121

22-
if($error == '')
23-
{
24-
$file = $REX['INCLUDE_PATH'] .'/addons/image_manager/config.inc.php';
25-
26-
if(($state = rex_is_writable($file)) !== true)
27-
$error = $state;
28-
}
29-
3022
if($error == '')
3123
{
3224
$file = $REX['GENERATED_PATH'] .'/files';

redaxo/include/addons/image_manager/pages/settings.inc.php

+5-7
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
$jpg_quality = rex_request('jpg_quality', 'int');
1717
$old_syntax = rex_request('old_syntax', 'int');
1818

19-
$config_file = $REX['INCLUDE_PATH'].'/addons/image_manager/config.inc.php';
19+
$config_file = rex_path::addonData('image_manager', 'settings.inc.php');
2020

2121
if ($func == 'update')
2222
{
@@ -25,19 +25,17 @@
2525

2626
$REX['ADDON']['image_manager']['jpg_quality'] = $jpg_quality;
2727

28-
$content = '
28+
$content = '<?php
29+
2930
$REX[\'ADDON\'][\'image_manager\'][\'jpg_quality\'] = '.$jpg_quality.';
3031
';
3132

32-
if(rex_replace_dynamic_contents($config_file, $content) !== false)
33+
if(rex_file::put($config_file, $content) !== false)
3334
echo rex_info($I18N->msg('imanager_config_saved'));
3435
else
3536
echo rex_warning($I18N->msg('imanager_config_not_saved'));
3637
}
3738

38-
if(!is_writable($config_file))
39-
echo rex_warning($I18N->msg('imanager_config_not_writable', $config_file));
40-
4139
echo '
4240
4341
<div class="rex-addon-output">
@@ -75,4 +73,4 @@
7573
7674
7775
</div>
78-
';
76+
';

redaxo/include/addons/import_export/functions/function_folder.inc.php

+4-2
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ function createFolder($dir, $recursive = true)
3131
function readFolder($dir)
3232
{
3333
if (!is_dir($dir)) {
34-
trigger_error('Folder "' . $dir . '" is not available or not a directory');
35-
return false;
34+
rex_dir::copy(
35+
rex_path::addon('import_export', 'backup'),
36+
rex_path::addonData('import_export', 'backups')
37+
);
3638
}
3739
$hdl = opendir($dir);
3840
$folder = array();

redaxo/include/addons/import_export/functions/function_import_folder.inc.php

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
<?php
22
// Import Folder Functions
33
function getImportDir() {
4-
global $REX;
5-
6-
return $REX['INCLUDE_PATH'].'/addons/import_export/backup';
4+
return rex_path::addonData('import_export', 'backups');
75
}
86

97
// PATCH http://www.redaxo.org/de/forum/bugs-f31/sortierung-nach-datum-broken-t16162.html
@@ -28,4 +26,4 @@ function compareFiles($file_a, $file_b)
2826
}
2927

3028
return ( $time_a > $time_b) ? -1 : 1;
31-
}
29+
}
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,9 @@
11
<?php
22

3+
rex_dir::copy(
4+
__DIR__ . '/backup',
5+
rex_path::addonData('import_export', 'backups')
6+
);
7+
38
$REX['ADDON']['install']['import_export'] = 1;
4-
// ERRMSG IN CASE: $REX[ADDON][installmsg]["import_export"] = "Leider konnte nichts installiert werden da.";
9+
// ERRMSG IN CASE: $REX[ADDON][installmsg]["import_export"] = "Leider konnte nichts installiert werden da.";
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?php
2+
3+
rex_dir::copy(
4+
__DIR__ . '/backup',
5+
rex_path::addonData('import_export', 'backups')
6+
);
7+
8+
$REX['ADDON']['update']['import_export'] = 1;

redaxo/include/addons/phpmailer/classes/class.rex_mailer.inc.php

+18-15
Original file line numberDiff line numberDiff line change
@@ -18,21 +18,24 @@ function rex_mailer()
1818
{
1919
global $REX;
2020

21-
// --- DYN
22-
$this->From = '[email protected]';
23-
$this->FromName = 'Mailer';
24-
$this->ConfirmReadingTo = '';
25-
$this->AdminBcc = '';
26-
$this->Mailer = 'mail';
27-
$this->Host = 'localhost';
28-
$this->CharSet = 'utf-8';
29-
$this->WordWrap = 120;
30-
$this->Encoding = '8bit';
31-
$this->Priority = 3;
32-
$this->SMTPAuth = false;
33-
$this->Username = '';
34-
$this->Password = '';
35-
// --- /DYN
21+
$this->From = '[email protected]';
22+
$this->FromName = 'Mailer';
23+
$this->ConfirmReadingTo = '';
24+
$this->AdminBcc = '';
25+
$this->Mailer = 'mail';
26+
$this->Host = 'localhost';
27+
$this->CharSet = 'utf-8';
28+
$this->WordWrap = 120;
29+
$this->Encoding = '8bit';
30+
$this->Priority = 3;
31+
$this->SMTPAuth = false;
32+
$this->Username = '';
33+
$this->Password = '';
34+
35+
$settings = rex_path::addonData('phpmailer', 'settings.inc.php');
36+
if (file_exists($settings)) {
37+
include $settings;
38+
}
3639

3740
$this->PluginDir = $REX['INCLUDE_PATH'] . '/addons/phpmailer/classes/';
3841

redaxo/include/addons/phpmailer/install.inc.php

+1-6
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,7 @@
1212

1313
$error = '';
1414

15-
$settings_file = $REX['INCLUDE_PATH'] .'/addons/phpmailer/classes/class.rex_mailer.inc.php';
16-
17-
if(($state = rex_is_writable($settings_file)) !== true)
18-
$error = $state;
19-
2015
if ($error != '')
2116
$REX['ADDON']['installmsg']['phpmailer'] = $error;
2217
else
23-
$REX['ADDON']['install']['phpmailer'] = true;
18+
$REX['ADDON']['install']['phpmailer'] = true;

redaxo/include/addons/phpmailer/pages/settings.inc.php

+23-25
Original file line numberDiff line numberDiff line change
@@ -31,32 +31,30 @@
3131

3232
if (rex_post('btn_save', 'string') != '')
3333
{
34-
$file = $REX['INCLUDE_PATH'] .'/addons/phpmailer/classes/class.rex_mailer.inc.php';
35-
$message = rex_is_writable($file);
36-
37-
if($message === true)
34+
$file = rex_path::addonData('phpmailer', 'settings.inc.php');
35+
36+
$message = $I18N->msg('phpmailer_config_saved_error');
37+
38+
$content = '<?php
39+
40+
$this->From = ' . var_export($from, true) . ';
41+
$this->FromName = ' . var_export($fromname, true) . ';
42+
$this->ConfirmReadingTo = ' . var_export($confirmto, true) . ';
43+
$this->AdminBcc = ' . var_export($AdminBcc, true) . ';
44+
$this->Mailer = ' . var_export($mailer, true) . ';
45+
$this->Host = ' . var_export($host, true) . ';
46+
$this->CharSet = ' . var_export($charset, true) . ';
47+
$this->WordWrap = ' . var_export($wordwrap, true) . ';
48+
$this->Encoding = ' . var_export($encoding, true) . ';
49+
$this->Priority = ' . var_export($priority, true) . ';
50+
$this->SMTPAuth = ' . var_export($smtpauth, true) . ';
51+
$this->Username = ' . var_export($Username, true) . ';
52+
$this->Password = ' . var_export($Password, true) . ';
53+
';
54+
55+
if(rex_file::put($file, $content) !== false)
3856
{
39-
$message = $I18N->msg('phpmailer_config_saved_error');
40-
41-
$content = "
42-
\$this->From = '". $from ."';
43-
\$this->FromName = '". $fromname ."';
44-
\$this->ConfirmReadingTo = '". $confirmto ."';
45-
\$this->AdminBcc = '". $AdminBcc ."';
46-
\$this->Mailer = '". $mailer ."';
47-
\$this->Host = '". $host ."';
48-
\$this->CharSet = '". $charset ."';
49-
\$this->WordWrap = ". $wordwrap .";
50-
\$this->Encoding = '". $encoding ."';
51-
\$this->Priority = ". $priority .";
52-
\$this->SMTPAuth = ". $smtpauth .";
53-
\$this->Username = '". $Username ."';
54-
\$this->Password = '". $Password ."';";
55-
56-
if(rex_replace_dynamic_contents($file, $content) !== false)
57-
{
58-
$message = $I18N->msg('phpmailer_config_saved_successful');
59-
}
57+
$message = $I18N->msg('phpmailer_config_saved_successful');
6058
}
6159
}
6260

redaxo/include/pages/setup.inc.php

-1
Original file line numberDiff line numberDiff line change
@@ -324,7 +324,6 @@ function rex_setup_dropREXtables()
324324
$REX['GENERATED_PATH'].DIRECTORY_SEPARATOR.'files',
325325
$REX['MEDIAFOLDER'],
326326
$REX['MEDIAFOLDER'] .DIRECTORY_SEPARATOR.'.redaxo',
327-
getImportDir()
328327
);
329328

330329
foreach($REX['SYSTEM_ADDONS'] as $system_addon)

0 commit comments

Comments
 (0)