parseUrl($cms, ADMINISTRATION_FOLDER); $action = getV('ac', 'default'); switch ($action) { case 'progress': if ($pID = getP("pid")) { $oProcess = new cProcess($pID, false); switch (getP('status')) { case cProcess::PROCESS_STATUS_ABORTED: $oProcess->updateProcess( false, [cProcess::KEY_PROGRESS_STATUS => cProcess::PROCESS_STATUS_ABORTED] ); break; } $vProcessData = $oProcess->getProcess(); cJSON::sendOk([ 'p' => $vProcessData[cProcess::KEY_PROGRESS], 'msg' => $vProcessData[cProcess::KEY_PROGRESS_MSG], 's' => $vProcessData[cProcess::KEY_PROGRESS_STATUS] ]); } cJSON::sendError(); break; case 'tcheck': // Set & get user object if (getV('app')) { $oUser = new pubUsersController(false, false, false, true); } else { $oUser = new sysUsersController(false, false, false, true); } if ($oUser->isLoggedIn()) { cJSON::sendOk(array( 't' => $_SESSION['time'] - time() > 0 ? $_SESSION['time'] - time() : 0 )); } cJSON::sendError(); break; case 'console': $action = getV('action'); $oConsole = new cSysConsole(); switch ($action) { case 'check_command': $oConsole->handleConsoleCommand(getV('data')); break; } cJSON::sendError(); break; // --------------------------------------------------------------------- // UPDATE SERVER FUNCTION CALLS // --------------------------------------------------------------------- case stripos($action, 'server-requests') !== false: $oUpdRequest = new cmsSvnProjectManager(); $oUpdRequest->runUpdateRequestAction(); break; // --------------------------------------------------------------------- // PROJECT UPDATE FUNCTION CALLS // --------------------------------------------------------------------- case stripos($action, 'update-requests'): $oUpdRequest = new sysUpdater(); $oUpdRequest->runUpdateRequestAction(); break; /*case 'secimg': $img = new cSecureImage(); $colors = array('ffe6e6','fbe6ff','e6e6ff','e6fffb','feffe6','fff5e6','ffdbdb','e6ffeb','dcdbff','ffffdb'); $img->image_bg_color = new Securimage_Color($colors[rand(0, 9)]); $img->text_color = new Securimage_Color('4d4d4d'); $img->image_height = 40; $img->num_lines = 2; $img->image_width = $img->image_height * M_E; $img->perturbation = .50; $img->code_length = 4; $img->show(); break; */ //------------------------------------------------------------------ // Email tracking code validation //------------------------------------------------------------------ case 'track': // Get last chunk of uri structure - it must be image name if ($url->_uri_struct['chunks']) { if ($imageName = end($url->_uri_struct['chunks'])) { if ( substr($imageName, 0, 1) == 'm' && substr($imageName, strlen($imageName) - 4) == '.png' ) { // Replace unnecessary parts $id = str_replace(array('m', '.png'), '', $imageName); // Mark letter ar read & update data if ($id && is_numeric($id)) { $mailE = new cmsMailEngineModule(); $mailE->db->_queryUpdate( cmsMailEngineController::SENT_MAIL_TABLE, array('mail_read' => 1), array('mail_oid' => $id), true ); } } } } switch (getV('img')) { case cMail::MAIL_SERVER_LORETA_LV: header('Content-Type: image/png'); echo file_get_contents(__IMG__ . "pub/mails/sys_logo4.png"); break; default: header('Content-Type: image/png'); echo base64_decode('iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAAl21bKAAAAA1BMVEUAAACnej3aAAAAAXRSTlMAQObYZgAAAApJREFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII='); break; } break; default: if (isset($GLOBALS['coverage_tests_running'])) { return; } redirectToUri('/'); break; } if (isset($GLOBALS['coverage_tests_running'])) { return; } die();