From 8ad4a477c15f928323da24aff4188bd7f0dca1d9 Mon Sep 17 00:00:00 2001 From: Jean-Michel Vedrine Date: Fri, 2 Feb 2018 16:53:59 +0100 Subject: Ajax dynamic formula display --- ajax.php | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 ajax.php (limited to 'ajax.php') diff --git a/ajax.php b/ajax.php new file mode 100644 index 0000000..156db22 --- /dev/null +++ b/ajax.php @@ -0,0 +1,55 @@ +. + +/** + * @package qtype_algebra + * @copyright 2018 Jean-Michel Vedrine + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +define('AJAX_SCRIPT', true); + +require_once(__DIR__ . '/../../../config.php'); +require_once(__DIR__ . '/parser.php'); + +$p = new qtype_algebra_parser; + +$vars = required_param('vars', PARAM_RAW); +$expr = required_param('expr', PARAM_RAW); +/* +if (!confirm_sesskey()) { + header('HTTP/1.1 403 Forbidden'); + die(); +} +*/ +try { + $vars = explode(',', $vars); + if (empty($expr)) { + $texexp = ''; + } else { + $exp = $p->parse($expr, $vars); + $texexp = $exp->tex(); + } +} catch (Exception $e) { + $texexp = ''; +} +if ($CFG->qtype_algebra_texdelimiters == 'old') { + $texexp = '$$' . $texexp . '$$'; +} else { + $texexp = '\\[' . $texexp . '\\]'; +} +header('Content-Type: application/json; charset: utf-8'); +echo json_encode($texexp); -- cgit v1.2.3