<?php require_once 'include/utils/Loader.php'; require_once 'include/Sphere/Entity.php'; require_once 'include/utils/NotImp.php'; sphere_import ( 'include.runtime.EntryPoint' ); class SiteUI extends Sphere_EntryPoint { function process(Sphere_Request $request) { Sphere_Session::init (); $currentUser = $this->getLogin (); $view = $request->get ( 'view' ); $action = $request->get ( 'action' ); $module = $request->get ( 'module' ); print "TEST: [" . json_encode ( $currentUser ) . ":" . json_encode ( $view ) . ":" . json_encode ( $action ) . "]<br />"; try { if (empty ( $module )) { if ($this->hasLogin ()) { print "We're Logged In Load Default Module!"; } else { $module = 'Users'; $qualifiedModuleName = 'Settings:Users'; $view = 'Login'; } $request->set('module', $module); $request->set('view', $view); } if (empty ( $action )) { $componentType = 'View'; if (empty ( $view )) $view = 'Index'; $componentName = $view; } else { $componentType = 'Action'; $componentName = $action; } $handlerClass = Sphere_Loader::getComponentClassName ( $componentType, $componentName, $qualifiedModuleName ); $handler = new $handlerClass (); if ($handler) { print "We've Got A Handler!"; $handler->validateRequest($request); if ($handler->loginRequired()) { $this->checkLogin ($request); } $this->triggerPreProcess($handler, $request); $response = $handler->process($request); $this->triggerPostProcess($handler, $request); } else { throw new AppException ( 'Handler Not Found!' ); } } catch ( Exception $e ) { if ($view) { // log for development // global $log; // $log->debug($e->getMessage().":".$e->getTraceAsString()); // $viewer = new Vtiger_Viewer(); // $viewer->assign('MESSAGE', $e->getMessage()); // $viewer->view('OperationNotPermitted.tpl', 'Vtiger'); print "EXCEPTION: View! [" . $e->getMessage () . ":" . $e->getTraceAsString () . "]<br />\n"; } else { // $response = new Vtiger_Response(); // $response->setEmitType(Vtiger_Response::$EMIT_JSON); // $response->setError($e->getMessage()); print "EXCEPTION: No View!"; } } } function getLogin() { $user = parent::getLogin (); if (! $user && isset ( $_SESSION ['authenticated_user_id'] )) { $userid = Sphere_Session::get ( 'AUTHUSERID', $_SESSION ['authenticated_user_id'] ); if ($userid && sphere_global ( 'application_unique_key' ) == $_SESSION ['app_unique_key']) { $user = CRMEntity::getInstance ( 'Users' ); $user->retrieveCurrentUserInfoFromFile ( $userid ); $this->setLogin ( $user ); } } return $user; } protected function triggerPreProcess($handler, $request) { if($request->isAjax()){ return true; } $handler->preProcess($request); } protected function triggerPostProcess($handler, $request) { if($request->isAjax()){ return true; } $handler->postProcess($request); } } ?>