* @package 	TestLink
 * @copyright 	2005,2011 TestLink community 
 * @link 		http://www.teamst.org/index.php 
 *
**/
require_once "../../config.inc.php";
require_once "common.php";
require_once "csv.inc.php";
require_once "xml.inc.php";
testlinkInitPage($db);
$templateCfg = templateConfiguration();
$args = init_args($db);
checkRights($db, $_SESSION['currentUser'], $args);
switch ($args->doAction) {
    case "do_export":
        $op = do_export($db, $smarty, $args);
        break;
}
$keyword = new tlKeyword();
$gui = new stdClass();
$gui->tproject_id = $args->tproject_id;
$gui->exportTypes = $keyword->getSupportedSerializationInterfaces();
$gui->action_descr = lang_get('export_keywords');
$gui->main_descr = lang_get('testproject') . TITLE_SEP . $args->tproject_name;
$gui->export_filename = is_null($args->export_filename) ? $args->tproject_name . '-keywords.xml' : $args->export_filename;
$smarty = new TLSmarty();
$smarty->assign('gui', $gui);
$smarty->display($templateCfg->template_dir . $templateCfg->default_template);
function init_args(&$dbHandler)
{
    $_REQUEST = strings_stripSlashes($_REQUEST);
Exemple #2
0
$page = $_REQUEST['p'] + 0;
if ($_REQUEST['refresh'] && $DB['db'] && !$SQLq) {
    $SQLq = "show tables";
}
if (db_connect('nodie')) {
    $time_start = microtime_float();
    if ($_REQUEST['phpinfo']) {
        ob_start();
        phpinfo();
        $sqldr = ob_get_clean();
    } else {
        if ($DB['db']) {
            if ($_REQUEST['shex']) {
                print_export();
            } elseif ($_REQUEST['doex']) {
                do_export();
            } elseif ($_REQUEST['shim']) {
                print_import();
            } elseif ($_REQUEST['doim']) {
                do_import();
            } elseif ($_REQUEST['dosht']) {
                do_sht();
            } elseif (!$_REQUEST['refresh'] || preg_match('/^select|show|explain/', $SQLq)) {
                do_sql($SQLq);
            }
            #perform non-selet SQL only if not refresh (to avoid dangerous delete/drop)
        } else {
            $err_msg = "Select DB first";
        }
    }
    $time_all = ceil((microtime_float() - $time_start) * 10000) / 10000;
$use_separator = varset($separator_char[intval($_POST['ban_separator'])], $separator_char[1]);
$use_quote = varset($quote_char[intval($_POST['ban_quote'])], $quote_char[2]);
$type_list = '';
if (is_array($_POST['ban_types'])) {
    $validBanTypes = banlistManager::getValidReasonList();
    $spacer = '';
    foreach ($_POST['ban_types'] as $b) {
        $b = trim($b);
        if (is_numeric($b) && in_array($b, $validBanTypes)) {
            $type_list .= $spacer . $b;
            $spacer = ',';
        }
    }
}
$filename = 'banlist_' . strftime("%Y%m%d_%H%M%S") . '.csv';
if ($error_string = do_export($filename, $type_list, $format_array, $use_separator, $use_quote)) {
    // Need to report an error here
    echo "Error report: {$error_string}<br />";
}
banlist_adminlog('06', 'File: ' . $filename . '<br />' . $error_string);
function do_export($filename, $type_list = '', $format_array, $sep = ',', $quot = '"')
{
    $sql = e107::getDb();
    $export_text = '';
    $qry = "SELECT * FROM `#banlist` ";
    if ($type_list != '') {
        $qry .= " WHERE`banlist_bantype` IN ({$type_list})";
    }
    if (!$sql->db_Select_gen($qry)) {
        return 'No data: ' . $qry;
    }
if($argv[1]=="--export"){
	ini_set('html_errors',0);ini_set('display_errors', 1);ini_set('error_reporting', E_ALL);ini_set('error_prepend_string','');ini_set('error_append_string','');
	$GLOBALS["VERBOSE"]=true;
	do_export();exit;
}
	
$usersmenus=new usersMenus();
if(!$usersmenus->AsDansGuardianAdministrator){
	$tpl=new templates();
	$alert=$tpl->_ENGINE_parse_body('{ERROR_NO_PRIVS}');
	echo "alert('$alert')";
	die();	
}

if(isset($_GET["export-rules"])){popup();exit;}
if(isset($_GET["do-export"])){do_export();exit;}


js();

function js(){
	$page=CurrentPageName();
	$tpl=new templates();
	$ACLNAME=null;
	$title_text="{export_rules}";
	if(is_numeric($_GET["single-id"])){
		if($_GET["single-id"]>0){
			$q=new mysql_squid_builder();
			$ligne=mysql_fetch_array($q->QUERY_SQL("SELECT aclname FROM webfilters_sqacls WHERE ID='{$_GET["single-id"]}'"));
			$ACLNAME=" :".utf8_encode($ligne["aclname"]);
			$title_text="{export_rule}";
Exemple #5
0
function process_tinyadm()
{
    global $db;
    @session_start();
    remove_magic_quotes();
    if (!isset($_SESSION['user'])) {
        $_SESSION['user'] = '';
    }
    if (!isset($_SESSION['password'])) {
        $_SESSION['password'] = '';
    }
    if (!isset($_SESSION['database'])) {
        $_SESSION['database'] = '';
    }
    if (!isset($_SESSION['table'])) {
        $_SESSION['table'] = '';
    }
    if (!isset($_SESSION['last_sql'])) {
        $_SESSION['last_sql'] = '';
    }
    if (!isset($_SESSION['sql_history'])) {
        $_SESSION['sql_history'] = array();
    }
    $act = get_var('act');
    if ($act == 'login') {
        setcookie('tinymy_user', get_var('user'), time() + 5184000);
        // 2 months
        $_SESSION['user'] = addslashes(get_var('user'));
        $_SESSION['password'] = addslashes(get_var('password'));
    }
    $db = new sqldb($_SESSION['user'], $_SESSION['password'], $_SESSION['database']);
    if (!$db->is_connected()) {
        return draw_login_form();
    }
    if ($act == 'login') {
        // switch to default databas
        if (get_cookie('tinymy_database')) {
            $_SESSION['database'] = get_cookie('tinymy_database');
        }
    }
    switch ($act) {
        case 'sel_db':
            $_SESSION['database'] = get_var('d');
            $_SESSION['table'] = '';
            setcookie('tinymy_database', get_var('d'), time() + 5184000);
            // 2 months
            redirect_self();
            exit;
        case 'use_history':
            $idx = (int) get_var('idx');
            if (isset($_SESSION['sql_history'][$idx])) {
                $_SESSION['database'] = $_SESSION['sql_history'][$idx]['db'];
                $_SESSION['last_sql'] = $_SESSION['sql_history'][$idx]['sql'];
            }
            redirect_self();
            exit;
        case 'sel_table':
            $_SESSION['table'] = get_var('table');
            break;
        case 'do_export':
            ob_end_clean();
            // we need to pass through the following output from export immediately, without caching
            do_export();
            break;
        case 'logout':
            session_unset();
            session_destroy();
            redirect_self();
            exit;
        case 'exec_sql':
            history_add(get_var('sql'));
    }
    ob_start();
    // menu needs to be created after the possible sql has executed
    echo '<div id="content">';
    if ($act != 'export' && $act != 'do_export') {
        draw_sqlarea();
    }
    switch ($act) {
        case 'history':
            draw_history();
            break;
        case 'export':
            draw_export();
            break;
        case 'sel_db':
            break;
        case 'sel_table':
        case 'show_structure':
            h('<p style="margin-bottom: 8px;"><a href="?act=show_contents">Show contents of %s</a></p>', $_SESSION['table']);
            exec_sql_internal(sprintf('desc `%s`', mysqli_escape_string($db->conn_id, $_SESSION['table'])));
            exec_sql_singlerow(sprintf('show create table `%s`', mysqli_escape_string($db->conn_id, $_SESSION['table'])));
            break;
        case 'show_contents':
            h('<p style="margin-bottom: 8px;"><a href="?act=show_structure">Show structure of %s</a></p>', $_SESSION['table']);
            $res = mysqli_query($db->conn_id, sprintf("select count(*) from `%s`", mysqli_escape_string($db->conn_id, $_SESSION['table'])));
            if (!$res) {
                $db->error();
                //
            } else {
                list($reccount) = mysqli_fetch_row($res);
                pager($reccount);
                exec_sql_internal(sprintf('select * from `%s` %s', mysqli_escape_string($db->conn_id, $_SESSION['table']), pager_limits()));
            }
        case 'exec_sql':
            exec_sql();
            // in case the query changed the database, switch to it
            $cur_database = $db->get_current_database();
            if ($cur_database != $_SESSION['database']) {
                $_SESSION['database'] = $cur_database;
                setcookie('tinymy_database', $cur_database, time() + 5184000);
                // 2 months
            }
            break;
    }
    echo '</div>';
    // content
    $content = ob_get_contents();
    ob_end_clean();
    // menu needs to be created after all the sql has executed
    draw_db_menu();
    echo $content;
}
Exemple #6
0
 //get initial values
 $SQLq=trim($_REQUEST['q']);
 $page=$_REQUEST['p']+0;
 if ($_REQUEST['refresh'] && $DB['db'] && preg_match('/^show/',$SQLq) ) $SQLq=$SHOW_T;

 if (db_connect('nodie')){
    $time_start=microtime_float();

    if ($_REQUEST['phpinfo']){
       ob_start();phpinfo();$sqldr='<div style="font-size:130%">'.ob_get_clean().'</div>';
    }else{
     if ($DB['db']){
      if ($_REQUEST['shex']){
       print_export();
      }elseif ($_REQUEST['doex']){
       check_xss();do_export();
      }elseif ($_REQUEST['shim']){
       print_import();
      }elseif ($_REQUEST['doim']){
       check_xss();do_import();
      }elseif ($_REQUEST['dosht']){
       check_xss();do_sht();
      }elseif (!$_REQUEST['refresh'] || preg_match('/^select|show|explain|desc/i',$SQLq) ){
       if ($SQLq)check_xss();
       do_sql($SQLq);#perform non-select SQL only if not refresh (to avoid dangerous delete/drop)
      }
     }else{
        if ( $_REQUEST['refresh'] ){
           check_xss();do_sql($SHOW_D);
        }elseif ($_REQUEST['crdb']){
          check_xss();do_sql('CREATE DATABASE `'.$_REQUEST['new_db'].'`');do_sql($SHOW_D);