コード例 #1
0
 function ExecuteEvent($eventName, $arParams = array())
 {
     if (COption::GetOptionString("main", "controller_member", "N") != "Y") {
         return null;
     } else {
         $oRequest = new CControllerClientRequestTo("execute_event", array("event_name" => $eventName, "parameters" => $arParams));
         $oResponse = $oRequest->SendWithCheck();
         if ($oResponse == false) {
             error_log("CControllerClient::ExecuteEvent: unknown error");
         } elseif (!$oResponse->OK()) {
             error_log("CControllerClient::ExecuteEvent: " . $oResponse->text);
         }
         return $oResponse->arParameters['result'];
     }
 }
コード例 #2
0
ファイル: main_controller.php プロジェクト: ASDAFF/open_bx
		case "run_immediate":
			$command = $oRequest->arParameters["command"];
			if(CControllerClient::RunCommand($command, $oRequest, $oResponse) === false)
				$oResponse->status = "450 Execution error";
			else
				$oResponse->status = "200 OK";
			break;

		case 'sendfile':
			set_time_limit(1200);
			$arVars = Array(
					'command_id' => $oRequest->arParameters['command_id'],
					'sendfile' => 'Y',
					);
			$oClientRequest = new CControllerClientRequestTo('query', $arVars);
			$oClientRequest->session_id = $oRequest->session_id;
			$oClientResponse = $oClientRequest->Send();

			if(is_object($oClientResponse) && $oClientResponse->Check())
			{
				if($oClientResponse->OK())
				{
					if (CControllerTools::UnpackFileArchive($oClientResponse->arParameters['file'], $oClientResponse->arParameters['path_to']))
					{
						$oResponse->status = "200 OK";
						$command = $oClientResponse->arParameters['command'];
						if (strlen($command) > 0 && CControllerClient::RunCommand($command, $oResponse, $oClientResponse) === false)
						{
							$oResponse->status = "450 Execution error";
						}