Spade
Mini Shell
| Directory:~$ /home/lmsyaran/public_html/administrator/components/com_moojla/helpers/ |
| [Home] [System Details] [Kill Me] |
<?php
define( '_JEXEC', 1 );
define( 'JPATH_BASE',
realpath(dirname(__FILE__).'/../../../..' ));
require_once ( JPATH_BASE. '/includes/defines.php' );
require_once ( JPATH_BASE. '/includes/framework.php' );
$mainframe = JFactory::getApplication('site');
$params = JComponentHelper::getParams('com_moojla');
$joomla_token = trim($params->get('joomla_token'));
$filename = __DIR__ . "/moojlaRequestHandler.txt";
// file_put_contents($filename, "joomla_token =
".print_r($joomla_token, true)."\n", FILE_APPEND);
// file_put_contents($filename, "joomla_token form moodle =
".print_r($_POST["joomla_token"], true)."\n",
FILE_APPEND);
if(!isset($_POST["joomla_token"]) || $joomla_token !=
$_POST["joomla_token"] || $joomla_token == '')
{
echo '{"status":"nok",
"result":"invalid joomla token"}';
die();
}
if(isset($_POST["moojlaFunction"]))
{
$moojlaFunction = $_POST["moojlaFunction"];
switch($moojlaFunction)
{
case "onMoojlaUserCreated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$filename = __DIR__ . "/onMoojlaUserCreated.txt";
$postArray = json_decode($_POST["data"], true);
$data = $postArray["data"];
// file_put_contents($filename, "data = ".print_r($data,
true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("onMoojlaUserCreated",
array($data));
if($results[0]->status == "ok")
{
$object = new stdClass();
$object->id = $results[0]->id;
$object->password = $data["password"];
$result = JFactory::getDbo()->updateObject('#__users',
$object, 'id');
}
echo json_encode($results[0]); // output
break;
case "onMoojlaUserDeleted":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$id = $postArray["id"];
$results = $dispatcher->trigger("onMoojlaUserDeleted",
array($id));
echo json_encode($results[0]); // output
break;
case "onMoojlaUserUpdated":
$filename = __DIR__ . "/onMoojlaUserUpdated.txt";
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$id = $postArray["id"];
$data = $postArray["data"];
$results = $dispatcher->trigger("onMoojlaUserUpdated",
array($data, $id));
if($results[0]->status == "ok")
{
$object = new stdClass();
$object->id = $results[0]->id;
$object->password = $data["password"];
$result = JFactory::getDbo()->updateObject('#__users',
$object, 'id');
$results[0]->rawpassword = $data["password"];
}
echo json_encode($results[0]); // output
break;
case "onMoojlaUserLogin":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$username = $postArray["username"];
$password = $postArray["password"];
$from_joomla = $postArray["from_joomla"];
$results = $dispatcher->trigger("onMoojlaUserLogin",
array($username, $password, $from_joomla));
echo json_encode($results); // output
break;
case "onMoojlaUserLogout":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$username = $postArray["username"];
$from_moodle = $postArray["from_moodle"];
$results = $dispatcher->trigger("onMoojlaUserLogout",
array($username, $from_moodle));
echo json_encode($results); // output
break;
case "onMoojlaCourseCreated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$filename = __DIR__ . "/onMoojlaCourseCreated.txt";
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("onMoojlaCourseCreated",
array($postArray));
echo json_encode($results); // output
break;
case "onMoojlaCourseUpdated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$filename = __DIR__ . "/onMoojlaCourseUpdated.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$dispatcher->trigger("updateCourseGroups",
array($postArray["course_id"],
$postArray["course_shortname"]));
$results = $dispatcher->trigger("onMoojlaCourseUpdated",
array($postArray));
echo json_encode($results); // output
break;
case "onMoojlaCreateGroup":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$filename = __DIR__ . "/onMoojlaCreateGroup.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("addCourseGroups",
array($postArray["course_id"],
$postArray["course_shortname"]));
echo json_encode($results); // output
break;
case "onMoojlaCourseDeleted":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$filename = __DIR__ . "/onMoojlaCourseDeleted.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("onMoojlaCourseDeleted",
array($postArray["course_id"]));
echo json_encode($results); // output
break;
case "onMoojlaCourseContentCreated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"]);
$data = $postArray->data;
$id = $postArray->id;
$filename = __DIR__ . "/onMoojlaCourseContentCreated.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$results =
$dispatcher->trigger("onMoojlaCourseContentCreated",
array($data, $id));
echo json_encode($results); // output
break;
case "onMoojlaEnrolInstanceCreated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$data = $postArray["data"];
$filename = __DIR__ . "/coures_data.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("onEnrolmentMethodAdded",
array($data));
echo json_encode($results); // output
break;
case "onMoojlaEnrolInstanceUpdated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$data = $postArray["data"];
$filename = __DIR__ . "/onMoojlaEnrolInstanceUpdated.txt";
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$results =
$dispatcher->trigger("onEnrolmentMethodUpdated",
array($data));
echo json_encode($results); // output
break;
case "onMoojlaEnrolInstanceDeleted":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$data = $postArray["data"];
// $filename = __DIR__ . "/coures_data.txt";
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
$results =
$dispatcher->trigger("onEnrolmentMethodDeleted",
array($data));
echo json_encode($results); // output
break;
case "onMoojlaRoleAssigned":
$filename = __DIR__ . "/onMoojlaRoleAssigned.txt";
$postArray = json_decode($_POST["data"], true);
$course_id = $postArray["course_id"];
$user_id = $postArray["userid"];
$roleid = $postArray["roleid"];
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$results = $dispatcher->trigger("addGroupMember",
array($course_id, $user_id, $roleid));
// file_put_contents($filename, "results =
".print_r($results, true)."\n", FILE_APPEND);
echo json_encode($results); // output
break;
case "onMoojlaRoleUnassigned":
$filename = __DIR__ . "/onMoojlaRoleUnassigned.txt";
$postArray = json_decode($_POST["data"], true);
$course_id = $postArray["course_id"];
$user_id = $postArray["userid"];
$roleid = $postArray["roleid"];
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$results = $dispatcher->trigger("removeGroupMember",
array($course_id, $user_id, $roleid));
echo json_encode($results); // output
break;
case "onMoojlaTagAdded":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$filename = __DIR__ . "/onMoojlaTagAdded.txt";
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$data = $postArray["data"];
$course_id = $data['itemid'];
$tag_id = $data['tagid'];
$tag_name = $data['tagname'];
$is_standard = $data['isstandard'];
$results = $dispatcher->trigger("onMoojlaTagAdded",
array($course_id, $tag_id, $tag_name, $is_standard));
echo json_encode($results); // output
break;
case "onMoojlaTagRemoved":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$filename = __DIR__ . "/onMoojlaTagRemoved.txt";
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$data = $postArray["data"];
$course_id = $data['itemid'];
$tag_id = $data['tagid'];
$tag_name = $data['tagname'];
$results = $dispatcher->trigger("onMoojlaTagRemoved",
array($course_id, $tag_id, $tag_name));
echo json_encode($results); // output
break;
case "onMoojlaTagUpdated":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$filename = __DIR__ . "/onMoojlaTagUpdated.txt";
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$data = $postArray["data"];
$tag_id = $data['tagid'];
$tag_name = $data['tagname'];
$is_standard = $data['isstandard'];
$results = $dispatcher->trigger("onMoojlaTagUpdated",
array($tag_id, $tag_name, $is_standard));
echo json_encode($results); // output
break;
case "onMoojlaTagDeleted":
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$filename = __DIR__ . "/onMoojlaTagDeleted.txt";
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$data = $postArray["data"];
$tag_id = $data['tagid'];
$results = $dispatcher->trigger("onMoojlaTagDeleted",
array($tag_id));
echo json_encode($results); // output
break;
case "onMoojlaEnrolled":
$filename = __DIR__ . "/onMoojlaEnrolled.txt";
$postArray = json_decode($_POST["data"], true);
$course_id = $postArray["course_id"];
$user_id = $postArray["userid"];
$roleid = $postArray["roleid"];
$timecreated = $postArray["timecreated"];
file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$results = $dispatcher->trigger("addEnrolment",
array($course_id, $user_id, $roleid, $timecreated));
// file_put_contents($filename, "results =
".print_r($results, true)."\n", FILE_APPEND);
echo json_encode($results); // output
JPluginHelper::importPlugin("notifly");
$dispatcher = JEventDispatcher::getInstance();
$args = array('com_moojla.enrol', $postArray, true);
$dispatcher->trigger("onContentAfterSave", $args);
break;
case "onMoojlaUnenrolled":
$filename = __DIR__ . "/onMoojlaUnenrolled.txt";
$postArray = json_decode($_POST["data"], true);
$course_id = $postArray["course_id"];
$user_id = $postArray["userid"];
$roleid = $postArray["roleid"];
// file_put_contents($filename, "data = ".print_r($postArray,
true)."\n", FILE_APPEND);
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$results = $dispatcher->trigger("removeEnrolment",
array($course_id, $user_id, $roleid));
echo json_encode($results); // output
break;
case "onMoojlaCourseCategoryCreated":
$filename = __DIR__ . "/onMoojlaCourseCategoryCreated.txt";
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
$filename = __DIR__ . "/onMoojlaCourseCreated.txt";
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$results =
$dispatcher->trigger("createCourseCategoryWithParents",
array($postArray));
echo json_encode($results); // output
break;
case "onMoojlaCourseCategoryUpdated":
$filename = __DIR__ . "/onMoojlaCourseCategoryUpdated.txt";
JPluginHelper::importPlugin("moojlaevents");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"], true);
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
$results = $dispatcher->trigger("updateCourseCategory",
array($postArray));
echo json_encode($results); // output
break;
case "onMoojlaSubmitted":
$filename = __DIR__ . "/onMoojlaSubmitted.txt";
JPluginHelper::importPlugin("moojlaquiz");
$dispatcher = JEventDispatcher::getInstance();
$postArray = json_decode($_POST["data"])->data;
$quizid = $postArray->quizid;
$quiztype = $postArray->quiztype;
// file_put_contents($filename, "postArray =
".print_r($postArray, true)."\n", FILE_APPEND);
if(is_array($postArray->result) &&
!empty($postArray->result))
{
$result = $postArray->result[0];
$dispatcher->trigger("addQuizAttempt", array($quiztype,
$result, $quizid));
}
// echo json_encode($results); // output
break;
default: //onMoojlaEnrolInstanceDeleted
$filename = __DIR__ . "/switch_result.txt";
// file_put_contents($filename, "moojlaFunction =
$moojlaFunction\n", FILE_APPEND);
}
}
?>