Spade

Mini Shell

Directory:~$ /home/lmsyaran/public_html/administrator/components/com_moojla/helpers/
Upload File

[Home] [System Details] [Kill Me]
Current File:~$ /home/lmsyaran/public_html/administrator/components/com_moojla/helpers/moojlaRequestHandler.php

<?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);
		}
	}
?>