HEX
Server: Apache
System: Linux server3230.server-vps.com 5.15.0-46-generic #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022 x86_64
User: lzgqnjwu (1002)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: //usr/local/brainycp/modules/packet_manager2.php
<?php
$method= htmlspecialchars($_GET['method']);
$packet_manager= new packet_manager2;
/*echo'<pre>';
var_dump($packet_manager->get_array_packet());  */


if($server->user["username"]=="root")
	$conf=parse_ini_file($GLOBALS['PROPERTIES_CONF']);
else
	$conf = $server->config_read($GLOBALS['USERS_PATH'] . $server->user["username"]);


$ipp =$packet_manager::$num;
$url = "/?do=packet_manager2";
$page = intval($_GET['page']);
switch ($method){

    case 'updateNewVersionRoundcube':
        session_write_close();
        $res = $packet_manager->updateNewVersionRound();
        echo $res;die();
        break;

    case 'checkNewVersionRoundcube':
        session_write_close();
        //get from js
        $curVersion = str_replace('Version ','',$_GET['curversion']);
        $availVer = $packet_manager->checkNewVersionRoundcube();
        //print_r($availVer);die();
        if (strlen($curVersion) < 1) {
            $availNew=-1;
        } else {
            $availNew = 0;
            if ($availVer['version'] != $curVersion) {
                $availNew = $availVer['version'];
            }
        }
        echo trim($availNew);die();
        break;

    case 'updateNewVersionPhpMyAdmin':
        session_write_close();
        $res = $packet_manager->updateNewVersionPhpMyAdmin();
        echo $res;die();
        break;

    case 'checkNewVersionPhpMyAdmin':
        session_write_close();
        $dbusage = new dbusage();
        $res = $dbusage->mysql_get_versions();
        $curVersion = $res['myadminVersionNum'];
        $availVer = $packet_manager->checkNewVersionPhpMyAdmin();
        if (strlen($curVersion) < 1) {
            $availNew=-1;
        } else {
            $availNew = 0;
            if ($availVer['version'] != $curVersion) {
                $availNew = $availVer['version'];
            }
        }
        echo trim($availNew);die();
        break;


	case'repare_conf':
		$tpl->clean=1;
		session_write_close();
		echo json_encode($packet_manager->repare_conf($_POST['params']));	
		//$packet_manager->repare_conf($_POST['params']);	
	break;	
	
	case'change_password':
		$tpl->clean=1;
		session_write_close();
		$dbusage=new dbusage;
		$array_params=json_decode($_POST['params'],1);
		$arr_out['code']=$dbusage->change_mysql_pass($array_params['new_password']);
		echo json_encode($arr_out);	
		//$packet_manager->repare_conf($_POST['params']);	
	break;		
	
	case'save_config':
		$tpl->clean=1;
		session_write_close();
		echo json_encode($packet_manager->save_config($_POST['params']));	
		//$packet_manager->save_config($_POST['params']);	
	break;	
	
	case'edit_services':
		$tpl->clean=1;
		session_write_close();
		$arr['param_edit']=$packet_manager->get_config($_POST['params']);
		$var=$tpl->load_tpl("edit_packet.tpl",  $arr);//Вывод переменных в массив
		$tpl->out=$var;			
	break;
	
	case 'get_pasket_list':
		$tpl->clean=1;
		session_write_close();
		if(($_GET['position']==1)&&($_GET['packet'])){
			$arr['get_packets'][$_GET['packet']]=$packet_manager->get_packets()[$_GET['packet']];		
		}
		else{
			$arr['get_packets']=$packet_manager->get_packets();			
		}

		if(strlen($_GET['param_searche'])>2){
			$decode_params_cearche=json_encode(array('search_packet'=>$_GET['param_searche']),1);
			$array_searche_packets=$packet_manager->get_searche_packets($decode_params_cearche);		
			$arr['get_packets']=$packet_manager->get_packets($array_searche_packets);			
			$arr['param_searche']=$_GET['param_searche'];			
		}
		$counter = count($arr['get_packets']);
		$first = $page * $ipp;
		$arr['get_packets']=array_slice($arr['get_packets'], $first, $ipp);		
		$arr['language']=$conf['language'];	
		$arr['paginator']=$tpl->page_generator($page, $ipp, $counter, $url);
		$var=$tpl->load_tpl("pasket_list.tpl",  $arr);//Вывод переменных в массив
		$tpl->out=$var;		
	break;
	case 'search_packet':
		$tpl->clean=1;
		$array_searche_packets=$packet_manager->get_searche_packets($_POST['params']);
		$arr['get_packets']=$packet_manager->get_packets($array_searche_packets);
		$arr['cerch_param']=1;
		$var=$tpl->load_tpl("pasket_list.tpl",  $arr);//Вывод переменных в массив
		$json['result']=$var;
		echo json_encode($json); 
		exit;
	break;	
	case 'control':
		$tpl->clean=1;
		session_write_close();
		echo json_encode($packet_manager->control($_POST['params']));
	break;
	
	
	default:
        //print_r($server->user['group_properties']);die();
		if(($server->user['group_properties']['root']=='y') || ($server->user['group_properties']['packet_manager']=='y')){
				$arr['root']=$server->user['group_properties']['root'];
				if(($_GET['position']==1)&&($_GET['packet'])){
					$arr['get_packets'][$_GET['packet']]=$packet_manager->get_packets()[$_GET['packet']];								
				}else{
					$arr['get_packets']=$packet_manager->get_packets();				
				}

				$counter = count($arr['get_packets']);
				$first = $page * $ipp;
				$arr['get_packets']=array_slice($arr['get_packets'], $first, $ipp);
				$arr['language']=$conf['language'];		
				$arr['paginator']=$tpl->page_generator($page, $ipp, $counter, $url);	
				$var=$tpl->load_tpl("main.tpl",  $arr);//Вывод переменных в массив
				$tpl->out=$var;				
		}else{
			$tpl->out = $smarty->fetch($GLOBALS["brainyusr"].$GLOBALS["template_path"]."/common/access_denied.tpl");			
		}
		
	
}