. * --------------------------------------------------------------------- */ /** * @since 9.1 */ include ('../inc/includes.php'); header("Content-Type: application/json; charset=UTF-8"); Html::header_nocache(); Session::checkLoginUser(); if (!isset($_POST['kbid']) || !isset($_POST['oldid']) || !isset($_POST['diffid'])) { throw new \RuntimeException('Required argument missing!'); } $oldid = $_POST['oldid']; $diffid = $_POST['diffid']; $kbid = $_POST['kbid']; $revision = new KnowbaseItem_Revision(); $revision->getFromDB($oldid); $old = [ 'name' => $revision->fields['name'], 'answer' => Toolbox::unclean_html_cross_side_scripting_deep($revision->fields['answer']) ]; $revision = $diffid == 0 ? new KnowbaseItem() : new KnowbaseItem_Revision(); $revision->getFromDB($diffid == 0 ? $kbid : $diffid); $diff = [ 'name' => $revision->fields['name'], 'answer' => Toolbox::unclean_html_cross_side_scripting_deep($revision->fields['answer']) ]; echo json_encode([ 'old' => $old, 'diff' => $diff ]);