1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/noalyss_ynh.git synced 2024-09-03 19:46:20 +02:00
noalyss_ynh/sources/html/ajax.php

71 lines
2.3 KiB
PHP
Raw Normal View History

2015-09-27 00:35:53 +02:00
<?php
/**
* This file is part of NOALYSS under GPL
*
*/
/**
* @brief this file is used for the ajax from the extension, it will the ajax.php file from the plugin directory
* all the variable are in $_REQUEST
* The code (of the plugin) is required
* Required variable in $_REQUEST
* - gDossier
* - plugin_code
*/
if ( ! defined ('ALLOWED') ) define ('ALLOWED',1);
require_once '../include/constant.php';
require_once NOALYSS_INCLUDE.'/class_database.php';
require_once NOALYSS_INCLUDE.'/class_user.php';
require_once NOALYSS_INCLUDE.'/class_extension.php';
if ( !isset ($_REQUEST['gDossier'])) exit();
require_once NOALYSS_INCLUDE.'/class_own.php';
mb_internal_encoding("UTF-8");
global $g_user,$cn,$g_parameter;
$cn=new Database(dossier::id());
$g_parameter=new Own($cn);
$g_user=new User($cn);
$g_user->check(true);
set_language();
/* if a code has been asked */
if (isset($_REQUEST['plugin_code']) )
{
if ( LOGINPUT)
{
$file_loginput=fopen($_ENV['TMP'].'/scenario-'.$_SERVER['REQUEST_TIME'].'.php','a+');
fwrite ($file_loginput,"<?php \n");
fwrite ($file_loginput,'//@description:'.$_REQUEST['plugin_code']."\n");
fwrite($file_loginput, '$_GET='.var_export($_GET,true));
fwrite($file_loginput,";\n");
fwrite($file_loginput, '$_POST='.var_export($_POST,true));
fwrite($file_loginput,";\n");
fwrite($file_loginput, '$_POST[\'gDossier\']=$gDossierLogInput;');
fwrite($file_loginput,"\n");
fwrite($file_loginput, '$_GET[\'gDossier\']=$gDossierLogInput;');
fwrite($file_loginput,"\n");
fwrite($file_loginput,' $_REQUEST=array_merge($_GET,$_POST);');
fwrite($file_loginput,"\n");
fwrite($file_loginput,"include '".basename(__FILE__)."';\n");
fclose($file_loginput);
}
$ext=new Extension($cn);
if ( $ext->search($_REQUEST['plugin_code']) != -1)
{
/* security */
if ( !isset ($_SESSION['g_user']) || $ext->can_request($_SESSION['g_user']) == 0 )
{
exit();
}
/* call the ajax script */
require_once(NOALYSS_PLUGIN.DIRECTORY_SEPARATOR.dirname(trim($ext->getp('me_file'))).DIRECTORY_SEPARATOR.'ajax.php');
}
else
{
alert(j(_("Cette extension n'existe pas ")));
exit();
}
}
?>