Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- /**
- *
- * @ This file is created by deZender.Net
- * @ deZender (PHP5 Decoder for ionCube Encoder)
- *
- * @ Version : 1.1.6.0
- * @ Author : DeZender
- * @ Release on : 02.06.2013
- * @ Official site : http://DeZender.Net
- *
- */
- function App( )
- {
- return $GLOBALS["APPLICATION_CONTEXT_INSTANCE"];
- }
- namespace core;
- /**
- * @property \core\Settings $SystemSettings
- * @property \modules\smarty_based_template_processor\lib\GlobalTemplateVariable $GlobalTemplateVariable
- * @property \modules\smarty_based_template_processor\lib\Service $TemplateProcessor
- * @property \lib\ObjectMother $ObjectMother
- * @property \lib\ORM\SearchEngine\SearchCriterionFactory $SearchCriterionFactory
- * @property \lib\ORM\OrmObjectFactory $OrmObjectFactory
- * @property \lib\ORM\Location\LocationManager $LocationManager
- * @property \lib\ORM\ObjectToArrayAdapterFactory $ObjectToArrayAdapterFactory
- * @property \lib\ORM\ObjectDBManager $ObjectDBManager
- * @property \core\CacheManager $CacheManager
- * @property \core\CustomSettings $CustomSettings
- * @property \core\DB $DB
- * @property \core\FileSystem $FileSystem
- * @property \core\Cookie $Cookie
- * @property \core\PageConstructor $PageConstructor
- * @property \core\MemoryCache $MemoryCache
- * @property \core\Navigator $Navigator
- * @property \core\UrlParamProvider $UrlParamProvider
- * @property \core\PageManager $PageManager
- * @property \core\Path $Path
- * @property \core\ModuleManager $ModuleManager
- * @property \core\Request $Request
- * @property \core\UploadedFiles $UploadedFiles
- * @property \core\PathManager $PathManager
- * @property \core\SettingsFromDB $SettingsFromDB
- * @property \core\Session $Session
- * @property \modules\third_party_login\lib\ThirdPartyAuthManager $ThirdPartyAuthManager
- * @property \modules\banners\lib\Banner\BannerManager $BannerManager
- * @property \modules\banners\lib\BannerGroup\BannerGroupManager $BannerGroupManager
- * @property \modules\classifieds\lib\ListingGallery\ListingGalleryManager $ListingGalleryManager
- * @property \modules\classifieds\lib\SavedSearch\SavedSearchManager $SavedSearchManager
- * @property \modules\classifieds\lib\Category\CategoryTree $CategoryTree
- * @property \modules\classifieds\lib\Category\CategoryManager $CategoryManager
- * @property \modules\classifieds\lib\ListingFactory $ListingFactory
- * @property \modules\classifieds\lib\Listing\ListingFeaturesManager $ListingFeaturesManager
- * @property \modules\classifieds\lib\ListingField\ListingFieldManager $ListingFieldManager
- * @property \modules\classifieds\lib\ListingField\ListingFieldTreeManager $ListingFieldTreeManager
- * @property \modules\classifieds\lib\Listing\ListingManager $ListingManager
- * @property \modules\feed_import\lib\Alias\AliasManager $AliasManager
- * @property \modules\feed_import\lib\Feed\FeedManager $FeedManager
- * @property \modules\feed_import\lib\FieldValueAlias\FieldValueAliasManager $FieldValueAliasManager
- * @property \modules\image_carousel\lib\CarouselImage\CarouselImageManager $CarouselImageManager
- * @property \modules\licenses\lib\License\LicenseManager $LicenseManager
- * @property \modules\licenses\lib\LicenseFactory $LicenseFactory
- * @property \modules\licenses\lib\RsaKeyset\RsaKeysetManager $RsaKeysetManager
- * @property \modules\main\lib\EmailService $EmailService
- * @property \modules\main\lib\AccessControlManager $AccessControlManager
- * @property \modules\miscellaneous\lib\ErrorMessages $ErrorMessages
- * @property \modules\miscellaneous\lib\UploadFileManager $UploadFileManager
- * @property \modules\miscellaneous\lib\UploadPictureManager $UploadPictureManager
- * @property \modules\miscellaneous\lib\WarningMessages $WarningMessages
- * @property \modules\miscellaneous\lib\SuccessMessages $SuccessMessages
- * @property \modules\miscellaneous\lib\QRCodeGenerator $QRCodeGenerator
- * @property \modules\users\lib\UserProfileField\UserProfileFieldManager $UserProfileFieldManager
- * @property \modules\users\lib\User\UserManager $UserManager
- * @property \modules\users\lib\UserGroup\UserGroupManager $UserGroupManager
- * @property \modules\template_manager\lib\TemplateManagerFactory $TemplateManagerFactory
- * @property \modules\I18N\lib\Actions\PhraseActionFactory $PhraseActionFactory
- * @property \modules\I18N\lib\I18N $I18N
- * @property \modules\ip_blocklist\lib\IpRangeManager $IpRangeManager
- * @property \modules\membership_plan\lib\MembershipPlan\MembershipPlanManager $MembershipPlanManager
- * @property \modules\membership_plan\lib\Package\PackageManager $PackageManager
- * @property \modules\membership_plan\lib\Contract\ContractManager $ContractManager
- * @property \modules\membership_plan\lib\ListingPackage\ListingPackageManager $ListingPackageManager
- * @property \modules\membership_plan\lib\ContractPackage\ContractPackagesManager $ContractPackagesManager
- * @property \modules\payment\lib\PaymentGateway\PaymentGatewayManager $PaymentGatewayManager
- * @property \modules\payment\lib\Payment\PaymentManager $PaymentManager
- * @property \modules\payment\lib\Payment\PaymentFactory $PaymentFactory
- * @property \modules\listing_comments\lib\ListingCommentManager $ListingCommentManager
- * @property \modules\listing_comments\lib\Actions\CommentsActionFactory $CommentsActionFactory
- * @property \modules\listing_repost\lib\UserSocialNetworkAccessData\UserSocialNetworkAccessDataManager $UserSocialNetworkAccessDataManager
- * @property \modules\mass_email\lib\MassEmailManager $MassEmailManager
- * @property \modules\sub_administrator\lib\SubAdministrator\SubAdministratorManager $SubAdministratorManager
- * @property \modules\admin_dashboard\apps\AdminPanel\AdminDashboardManager $AdminDashboardManager
- * @property \modules\basket\lib\BasketItemManager $BasketItemManager
- * @property \modules\basket\lib\BasketContainer\BasketContainerItemManager $BasketContainerItemManager
- * @property \modules\payment\lib\Actions\PaymentActionsFactory $PaymentActionsFactory
- * @property \modules\payment_system\lib\PaymentSystemManager $PaymentSystemManager
- * @property \modules\payment_system\lib\PaymentTerminal $PaymentTerminal
- * @property \modules\payment_system\lib\InvoiceManager $InvoiceManager
- * @property \modules\listing_option_reactivation\lib\ListingReactivationManager $ListingReactivationManager
- * @property \modules\listing_option_reactivation\lib\Actions\ListingReactivationActionFactory $ListingReactivationActionFactory
- * @property \modules\classifieds\lib\Listing\AdditionalListingOptionManager $AdditionalListingOptionManager
- * @property \modules\credits\lib\CreditsFactory $CreditsFactory
- * @property \modules\credits\lib\CreditPackages\CreditPackagesManager $CreditPackagesManager
- * @property \modules\basket\lib\Actions\BasketActionsFactory $BasketActionsFactory
- * @property \modules\classifieds\lib\Actions\ClassifiedsActionsFactory $ClassifiedsActionsFactory
- */
- class WebApplication
- {
- private $_KnownServiceClasses = array( "FileSystem" => "\\core\\FileSystem", "DB" => "\\core\\DB", "MemoryCache" => "\\core\\MemoryCache", "Request" => "\\core\\Request", "ModuleManager" => "\\core\\ModuleManager" );
- private $SYSTEM_COMMANDS = array( "REBUILD_INTERFACE_CACHE" => "\\core\\Commands\\RebuildInterfaceCache", "REBUILD_INTERFACE_CACHE_PARTIAL" => "\\core\\Commands\\RebuildInterfaceCachePartial", "CLEAR_CACHE" => "\\core\\Commands\\ClearCache", "SETUP_ENVIRONMENT" => "\\core\\Commands\\SetupEnvironment" );
- private $moduleInterfaceNames = array( 0 => "core\\IModule", 1 => "core\\ISampleDataModule" );
- /**
- * @var Settings
- */
- private $_Settings = null;
- private $_Services = array( );
- public $_KnownInterfaceImplementations = array( );
- private $needToSetupEnvironment = false;
- private $modulesList = array( 0 => "admin_dashboard", 1 => "basket", 2 => "business_catalog", 3 => "classifieds", 4 => "content_management", 5 => "cookie_notice", 6 => "export_ip_blocklist", 7 => "export_listings", 8 => "export_users", 9 => "field_types", 10 => "google_map", 11 => "I18N", 12 => "image_carousel", 13 => "import_ip_blocklist", 14 => "import_listings", 15 => "import_users", 16 => "ip_blocklist", 17 => "listing_comments", 18 => "listing_feature_featured", 19 => "listing_feature_highlighted", 20 => "listing_feature_slideshow", 21 => "listing_feature_sponsored", 22 => "listing_feature_youtube", 23 => "listing_option_reactivation", 24 => "listing_repost", 25 => "main", 26 => "membership_plan", 27 => "menu", 28 => "miscellaneous", 29 => "module_manager", 30 => "moduleTemplate", 31 => "payment", 32 => "payment_gateway_2checkout", 33 => "payment_gateway_authnet_sim", 34 => "payment_gateway_cash_payment", 35 => "payment_gateway_paypal_standard", 36 => "payment_gateway_wire_transfer", 37 => "payment_system", 38 => "poll", 39 => "publications", 40 => "recent_listings", 41 => "recent_tweets", 42 => "site_pages", 43 => "smarty_based_template_processor", 44 => "static_content", 45 => "template_manager", 46 => "third_party_auth_providers", 47 => "third_party_login", 48 => "users", 49 => "sample_data_poll", 50 => "sample_data_publications", 51 => "sample_data_static_content", 52 => "sample_data_iAutoBikes_business_catalog", 53 => "sample_data_iAutoBikes_classifieds_categories", 54 => "sample_data_iAutoBikes_classifieds_listings", 55 => "sample_data_iAutoBikes_listing_comments", 56 => "sample_data_iAutoBikes_main", 57 => "sample_data_iAutoBikes_membership_plan", 58 => "sample_data_iAutoBikes_users", 59 => "theme_iauto_bikes_base", 60 => "theme_iauto_bikes_green" );
- private $allowedModuleNames = null;
- private $licenseError = null;
- private $extraModules = array( );
- const SYSCOMMAND_PARAMETER_NAME = "SYSCOMMAND";
- /**
- * @return \modules\smarty_based_template_processor\lib\TemplateProcessor
- */
- public function getTemplateProcessor( )
- {
- list( $module ) = $this->ModuleManager->getCurrentModuleAndFunction();
- if ( $module != core\null ) {
- $templateProcessor = $this->TemplateProcessor->getFreshInstance( $module );
- $templateProcessor->setIfAddTemplateStartEndComments( !(bool) app()->Request->getValueOrDefault( "skip_template_comments", core\false ) );
- return $templateProcessor;
- }
- return core\null;
- }
- public function __construct( )
- {
- spl_autoload_register( $this );
- $this->_Settings = new core\Settings();
- $this->_Services["SystemSettings"] = $this->_Settings;
- $GLOBALS["APPLICATION_CONTEXT_INSTANCE"] = $this;
- return;
- }
- public function rootAutoLoad( $className )
- {
- include_once core\PATH_TO_ROOT . join( "/", explode( "\\", $className ) ) . ".php";
- return;
- }
- private function defineServices( )
- {
- $servicesList = $this->getImplementationsOf( "core\\IService" );
- $services = array( );
- foreach ( $servicesList as $serviceClassName ) {
- $reflectionClass = new ReflectionClass( $serviceClassName );
- $defaultProperties = $reflectionClass->getDefaultProperties();
- $serviceName = !$defaultProperties["serviceName"] ? $defaultProperties["serviceName"] : $reflectionClass->getShortName();
- $services[$serviceName] = $serviceClassName;
- continue;
- }
- $this->_Settings->incorporateSettings( array(
- "services" => $services
- ) );
- return;
- }
- public function run( )
- {
- $this->processLicense();
- set_include_path( core\PATH_TO_ROOT . app()->SystemSettings["VendorLibs"] );
- try {
- if ( $this->systemCommandRequested() ) {
- $this->executeSystemCommand();
- }
- $this->checkIfApplicationInstalled();
- $this->defineServices();
- $this->updateServices();
- if ( $this->needToSetupEnvironment ) {
- $this->setupEnvironment();
- }
- header( "Content-type:text/html;charset=utf-8" );
- if ( !( app()->Navigator->isRequestedUnderLegalURI() ) ) {
- throw new lib\Http\ForbiddenException( "The software is not configured to respond to requests to the following URL: <tt>http://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"] . "</tt>.
- <br>" );
- }
- $this->testLicense();
- $initFunctions = new core\ExtensionPoint( "core\\IInitFunction" );
- foreach ( $initFunctions as $initFunction ) {
- $initFunction->execute();
- continue;
- }
- $afterInitFunctions = new core\ExtensionPoint( "core\\IAfterInitFunction" );
- foreach ( $afterInitFunctions as $afterInitFunction ) {
- $afterInitFunction->execute();
- continue;
- }
- app()->ModuleManager->executeModulesStartupFunctions();
- $frontControllerClassName = $this->SystemSettings["frontController"];
- $frontController = new $frontControllerClassName();
- $frontController->dispatch();
- return;
- }
- catch ( lib\Http\Exception $exc ) {
- foreach ( $exc->getHeaders() as $header ) {
- header( $header, core\true );
- continue;
- }
- echo $exc->getScreenText();
- return;
- }
- return;
- }
- public function readConfig( $fileName )
- {
- $this->_Settings->incorporateSettings( parse_ini_file( $fileName, core\true ) );
- return;
- }
- ..........................................................................
- .............................................
- ...................
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement