Project

General

Profile

1 536 doc
<?php
2 1398 FrankH
/**
3
 *
4
 * @category        admin
5
 * @package         admintools
6 1520 darkviper
 * @author          WB-Project, Werner v.d. Decken
7 1711 Luisehahne
 * @copyright       2012, WebsiteBaker Org. e.V.
8 1398 FrankH
 * @link			http://www.websitebaker2.org/
9
 * @license         http://www.gnu.org/licenses/gpl.html
10 1520 darkviper
 * @platform        WebsiteBaker 2.8.2
11 1398 FrankH
 * @requirements    PHP 5.2.2 and higher
12
 * @version         $Id$
13 1457 Luisehahne
 * @filesource		$HeadURL$
14
 * @lastmodified    $Date$
15 1398 FrankH
 *
16
 */
17 1805 Luisehahne
18
$config_file = realpath('../../config.php');
19
if(file_exists($config_file) && !defined('WB_URL'))
20
{
21
	require_once($config_file);
22
}
23
24
if(!class_exists('admin', false)){
25
    include(WB_PATH.'/framework/class.admin.php');
26 1806 Luisehahne
    $admin = new admin('Admintools','admintools',false);
27 1805 Luisehahne
}
28 2098 darkviper
$oDb = WbDatabase::getInstance();
29
$oTrans = Translate::getInstance();
30
$oTrans->enableAddon('admin\\admintools');
31 1805 Luisehahne
32 536 doc
require_once(WB_PATH.'/framework/functions.php');
33
34 1810 Luisehahne
$toolDir = (isset($_POST['tool']) && (trim($_POST['tool']) != '') ? trim($_POST['tool']) : '');
35
$toolDir = (isset($_GET['tool']) && (trim($_GET['tool']) != '') ? trim($_GET['tool']) : $toolDir);
36 1806 Luisehahne
$doSave  = (isset($_POST['save_settings']) || (isset($_POST['action']) && strtolower($_POST['action']) == 'save'));
37 1805 Luisehahne
38 1520 darkviper
// test for valid tool name
39
	if(preg_match('/^[a-z][a-z_\-0-9]{2,}$/i', $toolDir)) {
40
	// Check if tool is installed
41 2098 darkviper
		$sql = 'SELECT `name` FROM `'.$oDb->TablePrefix.'addons` '.
42 1520 darkviper
		       'WHERE `type`=\'module\' AND `function`=\'tool\' '.
43
		              'AND `directory`=\''.$toolDir.'\'';
44 2098 darkviper
		if(($toolName = $oDb->getOne($sql))) {
45 1520 darkviper
		// create admin-object and print header if FTAN is NOT supported AND function 'save' is requested
46
			$admin_header = !(is_file(WB_PATH.'/modules/'.$toolDir.'/FTAN_SUPPORTED') && $doSave);
47
			$admin = new admin('admintools', 'admintools', $admin_header );
48
			if(!$doSave) {
49
			// show title if not function 'save' is requested
50
				print '<h4><a href="'.ADMIN_URL.'/admintools/index.php" '.
51 2098 darkviper
				      'title="'.$oTrans->HEADING_ADMINISTRATION_TOOLS.'">'.
52
				      $oTrans->HEADING_ADMINISTRATION_TOOLS.'</a>'.
53 1552 Luisehahne
					  '&nbsp;&raquo;&nbsp;'.$toolName.'</h4>'."\n";
54 1520 darkviper
			}
55
			// include modules tool.php
56
			require(WB_PATH.'/modules/'.$toolDir.'/tool.php');
57
			$admin->print_footer();
58 1711 Luisehahne
		} else {
59 1520 darkviper
		// no installed module found, jump to index.php of admintools
60 1711 Luisehahne
//			header('location: '.ADMIN_URL.'/admintools/index.php');
61
//			exit(0);
62
			$admin->send_header(ADMIN_URL.'/admintools/index.php');
63 1520 darkviper
		}
64
	}else {
65
	// invalid module name requested, jump to index.php of admintools
66 1711 Luisehahne
//		header('location: '.ADMIN_URL.'/admintools/index.php');
67
//		exit(0);
68
		$admin->send_header(ADMIN_URL.'/admintools/index.php');
69 1520 darkviper
	}