getFile () .':'. $e->getLine () .': '. $e->getMessage ()); myGlobalErrorHandler (); } set_error_handler ('myErrorHandler', E_ALL); set_exception_handler ('myExceptionHandler'); Rest\Service::init (); try { Web::init (); if (!Web::login ()) throw new Rest\Exception ('Auth', 'sessionExpired', s('SessionExpired')); // Checking the client version if (isset ($_COOKIE['hedera_version'])) { $clientVersion = (float) $_COOKIE['hedera_version']; if ($clientVersion < Web::getVersion ()) { Web::sysInit (); $row = Web::$sysConn->getRow ( 'SELECT critical, changelog FROM version LIMIT 1'); if (!$row || $row['critical']) throw new Rest\Exception ('Version', 'criticalVersion', $row['changelog']); else Rest\Service::addWarning ('Version', 'newVersion', $row['changelog']); } } // Getting the action $action = NULL; if (isset ($_REQUEST['action'])) $action = $_REQUEST['action']; if ($action && Vn\Hedera\checkToken ($action)) { $actionFile = 'rest/'. $action .'.php'; if (file_exists ($actionFile)) { Locale::addPath ('rest/'. $action); require_once ($actionFile); $module = new RestMod (Web::$conn); Rest\Service::setData ($module->run ()); } else throw new Rest\Exception ('Rest', 'invalidAction', s('InvalidAction')); } } catch (Rest\Exception $e) { Rest\Service::setError ($e->getDomain (), $e->getCode (), $e->getMessage ()); } myExitHandler (); ?>