Skip to content

Instantly share code, notes, and snippets.

@dongilbert
Last active May 12, 2019 11:25
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save dongilbert/4162595 to your computer and use it in GitHub Desktop.
Save dongilbert/4162595 to your computer and use it in GitHub Desktop.
Joomla Namespace Compatibility Layer
<?php
return array(
'JAccess' => 'Joomla\\Access\\Access',
'JAccessRule' => 'Joomla\\Access\\Rule',
'JAccessRules' => 'Joomla\\Access\\Rules',
'JApplicationBase' => 'Joomla\\Application\\Base',
'JApplicationCli' => 'Joomla\\Application\\Cli',
'JApplicationDaemon' => 'Joomla\\Application\\Daemon',
'JRoute' => 'Joomla\\Application\\Route',
'JRouter' => 'Joomla\\Application\\Router',
'JApplicationWeb' => 'Joomla\\Application\\Web',
'JApplicationWebClient' => 'Joomla\\Application\\Web\\Client',
'JApplicationWebRouter' => 'Joomla\\Application\\Web\\Router',
'JApplicationWebRouterBase' => 'Joomla\\Application\\Web\\Router\\Base',
'JApplicationWebRouterRest' => 'Joomla\\Application\\Web\\Router\\Rest',
'JArchive' => 'Joomla\\Archive\\Archive',
'JArchiveBzip2' => 'Joomla\\Archive\\Bzip2',
'JArchiveExtractable' => 'Joomla\\Archive\\Extractable',
'JArchiveGzip' => 'Joomla\\Archive\\Gzip',
'JArchiveTar' => 'Joomla\\Archive\\Tar',
'JArchiveZip' => 'Joomla\\Archive\\Zip',
'JAdapter' => 'Joomla\\Base\\Adapter',
'JAdapterInstance' => 'Joomla\\Base\\AdapterInstance',
'JCache' => 'Joomla\\Cache\\Cache',
'JCacheController' => 'Joomla\\Cache\\Controller',
'JCacheControllerCallback' => 'Joomla\\Cache\\Controller\\Callback',
'JCacheControllerOutput' => 'Joomla\\Cache\\Controller\\Output',
'JCacheControllerPage' => 'Joomla\\Cache\\Controller\\Page',
'JCacheControllerView' => 'Joomla\\Cache\\Controller\\View',
'JCacheStorage' => 'Joomla\\Cache\\Storage',
'JCacheStorageApc' => 'Joomla\\Cache\\Storage\\Apc',
'JCacheStorageCachelite' => 'Joomla\\Cache\\Storage\\Cachelite',
'JCacheStorageFile' => 'Joomla\\Cache\\Storage\\File',
'JCacheStorageHelper' => 'Joomla\\Cache\\Storage\\Helper',
'JCacheStorageMemcache' => 'Joomla\\Cache\\Storage\\Memcache',
'JCacheStorageMemcached' => 'Joomla\\Cache\\Storage\\Memcached',
'JCacheStorageWincache' => 'Joomla\\Cache\\Storage\\Wincache',
'JCacheStorageXcache' => 'Joomla\\Cache\\Storage\\Xcache',
'JClientFtp' => 'Joomla\\Client\\Ftp',
'JClientHelper' => 'Joomla\\Client\\Helper',
'JClientLdap' => 'Joomla\\Client\\Ldap',
'JControllerBase' => 'Joomla\\Controller\\Base',
'JController' => 'Joomla\\Controller\\Controller',
'JCryptCipher' => 'Joomla\\Crypt\\Cipher',
'JCryptCipher3DES' => 'Joomla\\Crypt\\Cipher_3des',
'JCryptCipherBlowfish' => 'Joomla\\Crypt\\Cipher_Blowfish',
'JCryptCipherMcrypt' => 'Joomla\\Crypt\\Cipher_Mcrypt',
'JCryptCipherRijndael256' => 'Joomla\\Crypt\\Cipher_Rijndael256',
'JCryptCipherSimple' => 'Joomla\\Crypt\\Cipher_Simple',
'JCrypt' => 'Joomla\\Crypt\\Crypt',
'JCryptKey' => 'Joomla\\Crypt\\Key',
'JCryptPassword' => 'Joomla\\Crypt\\Password',
'JCryptPasswordSimple' => 'Joomla\\Crypt\\Password\\Simple',
'JData' => 'Joomla\\Data\\Data',
'JDataDumpable' => 'Joomla\\Data\\Dumpable',
'JDataSet' => 'Joomla\\Data\\Set',
'JDatabase' => 'Joomla\\Database\\Database',
'JDatabaseInterface' => 'Joomla\\Database\\DatabaseInterface',
'JDatabaseDriver' => 'Joomla\\Database\\Driver',
'JDatabaseDriverMysql' => 'Joomla\\Database\\Driver\\Mysql',
'JDatabaseDriverMysqli' => 'Joomla\\Database\\Driver\\Mysqli',
'JDatabaseDriverOracle' => 'Joomla\\Database\\Driver\\Oracle',
'JDatabaseDriverPdo' => 'Joomla\\Database\\Driver\\Pdo',
'JDatabaseDriverPostgresql' => 'Joomla\\Database\\Driver\\Postgresql',
'JDatabaseDriverSqlazure' => 'Joomla\\Database\\Driver\\Sqlazure',
'JDatabaseDriverSqlite' => 'Joomla\\Database\\Driver\\Sqlite',
'JDatabaseDriverSqlsrv' => 'Joomla\\Database\\Driver\\Sqlsrv',
'JDatabaseExporter' => 'Joomla\\Database\\Exporter',
'JDatabaseExporterMysql' => 'Joomla\\Database\\Exporter\\Mysql',
'JDatabaseExporterMysqli' => 'Joomla\\Database\\Exporter\\Mysqli',
'JDatabaseExporterPostgresql' => 'Joomla\\Database\\Exporter\\Postgresql',
'JDatabaseFactory' => 'Joomla\\Database\\Factory',
'JDatabaseImporter' => 'Joomla\\Database\\Importer',
'JDatabaseImporterMysql' => 'Joomla\\Database\\Importer\\Mysql',
'JDatabaseImporterMysqli' => 'Joomla\\Database\\Importer\\Mysqli',
'JDatabaseImporterPostgresql' => 'Joomla\\Database\\Importer\\Postgresql',
'JDatabaseIterator' => 'Joomla\\Database\\DatabaseIterator',
'JDatabaseIteratorAzure' => 'Joomla\\Database\\Iterator\\Azure',
'JDatabaseIteratorMysql' => 'Joomla\\Database\\Iterator\\Mysql',
'JDatabaseIteratorMysqli' => 'Joomla\\Database\\Iterator\\Mysqli',
'JDatabaseIteratorOracle' => 'Joomla\\Database\\Iterator\\Oracle',
'JDatabaseIteratorPdo' => 'Joomla\\Database\\Iterator\\Pdo',
'JDatabaseIteratorSqlite' => 'Joomla\\Database\\Iterator\\Sqlite',
'JDatabaseIteratorSqlsrv' => 'Joomla\\Database\\Iterator\\Sqlsrv',
'JDatabaseQuery' => 'Joomla\\Database\\Query',
'JDatabaseQueryElement' => 'Joomla\\Database\\Query\\Element',
'JDatabaseQueryLimitable' => 'Joomla\\Database\\Query\\Limitable',
'JDatabaseQueryMysql' => 'Joomla\\Database\\Query\\Mysql',
'JDatabaseQueryMysqli' => 'Joomla\\Database\\Query\\Mysqli',
'JDatabaseQueryOracle' => 'Joomla\\Database\\Query\\Oracle',
'JDatabaseQueryPdo' => 'Joomla\\Database\\Query\\Pdo',
'JDatabaseQueryPostgresql' => 'Joomla\\Database\\Query\\Postgresql',
'JDatabaseQueryPreparable' => 'Joomla\\Database\\Query\\Preparable',
'JDatabaseQuerySqlAzure' => 'Joomla\\Database\\Query\\Sqlazure',
'JDatabaseQuerySqlite' => 'Joomla\\Database\\Query\\Sqlite',
'JDatabaseQuerySqlsrv' => 'Joomla\\Database\\Query\\Sqlsrv',
'JDate' => 'Joomla\\Date\\Date',
'JDocument' => 'Joomla\\Document\\Document',
'JDocumentError' => 'Joomla\\Document\\Error',
'JDocumentFeed' => 'Joomla\\Document\\Feed',
'JDocumentHtml' => 'Joomla\\Document\\Html',
'JDocumentImage' => 'Joomla\\Document\\Image',
'JDocumentJson' => 'Joomla\\Document\\Json',
'JDocumentOpensearch' => 'Joomla\\Document\\Opensearch',
'JDocumentRaw' => 'Joomla\\Document\\Raw',
'JDocumentXml' => 'Joomla\\Document\\Xml',
'JDocumentRender' => 'Joomla\\Document\\Renderer',
'JDocumentRendererAtom' => 'Joomla\\Document\\Renderer\\Atom',
'JDocumentRendererRss' => 'Joomla\\Document\\Renderer\\Rss',
'JDocumentRendererComponent' => 'Joomla\\Document\\Renderer\\Component',
'JDocumentRendererHead' => 'Joomla\\Document\\Renderer\\Head',
'JDocumentRendererMessage' => 'Joomla\\Document\\Renderer\\Message',
'JDocumentRendererModule' => 'Joomla\\Document\\Renderer\\Module',
'JDocumentRendererModules' => 'Joomla\\Document\\Renderer\\Modules',
'JBrowser' => 'Joomla\\Environment\\Browser',
'JResponse' => 'Joomla\\Environment\\Response',
'JEventDispatcher' => 'Joomla\\Event\\Dispatcher',
'JEvent' => 'Joomla\\Event\\Event',
'JFactory' => 'Joomla\\Factory',
'JFile' => 'Joomla\\Filesystem\\File',
'JFolder' => 'Joomla\\Filesystem\\Folder',
'JFilesystemHelper' => 'Joomla\\Filesystem\\Helper',
'JFilesystemPatcher' => 'Joomla\\Filesystem\\Patcher',
'JPath' => 'Joomla\\Filesystem\\Path',
'JStream' => 'Joomla\\Filesystem\\Stream',
'JStreamString' => 'Joomla\\Filesystem\\Stream\\String',
'JStringController' => 'Joomla\\Filesystem\\Support\\StringController',
'JFilterInput' => 'Joomla\\Filter\\Input',
'JFilterOutput' => 'Joomla\\Filter\\Output',
'JFormField' => 'Joomla\\Form\\Field',
'JFormFieldAccessLevel' => 'Joomla\\Form\\Field_AccessLevel',
'JFormFieldCacheHandler' => 'Joomla\\Form\\Field_CacheHandler',
'JFormFieldCalendar' => 'Joomla\\Form\\Field_Calendar',
'JFormFieldCheckbox' => 'Joomla\\Form\\Field_Checkbox',
'JFormFieldCheckboxes' => 'Joomla\\Form\\Field_Checkboxes',
'JFormFieldColor' => 'Joomla\\Form\\Field_Color',
'JFormFieldCombo' => 'Joomla\\Form\\Field_Combo',
'JFormFieldDatabaseConnection' => 'Joomla\\Form\\Field_DatabaseConnection',
'JFormFieldEMail' => 'Joomla\\Form\\Field_Email',
'JFormFieldFile' => 'Joomla\\Form\\Field_File',
'JFormFieldFileList' => 'Joomla\\Form\\Field_FileList',
'JFormFieldFolderList' => 'Joomla\\Form\\Field_FolderList',
'JFormFieldGroupedList' => 'Joomla\\Form\\Field_GroupedList',
'JFormFieldHidden' => 'Joomla\\Form\\Field_Hidden',
'JFormFieldImageList' => 'Joomla\\Form\\Field_ImageList',
'JFormFieldInteger' => 'Joomla\\Form\\Field_Integer',
'JFormFieldLanguage' => 'Joomla\\Form\\Field_Language',
'JFormFieldList' => 'Joomla\\Form\\Field_List',
'JFormFieldPassword' => 'Joomla\\Form\\Field_Password',
'JFormFieldPlugins' => 'Joomla\\Form\\Field_Plugins',
'JFormFieldRadio' => 'Joomla\\Form\\Field_Radio',
'JFormFieldRules' => 'Joomla\\Form\\Field_Rules',
'JFormFieldSessionHandler' => 'Joomla\\Form\\Field_SessionHandler',
'JFormFieldSpacer' => 'Joomla\\Form\\Field_Spacer',
'JFormFieldSQL' => 'Joomla\\Form\\Field_Sql',
'JFormFieldTel' => 'Joomla\\Form\\Field_Tel',
'JFormFieldText' => 'Joomla\\Form\\Field_Text',
'JFormFieldTextarea' => 'Joomla\\Form\\Field_Textarea',
'JFormFieldTimezone' => 'Joomla\\Form\\Field_Timezone',
'JFormFieldUrl' => 'Joomla\\Form\\Field_Url',
'JFormFieldUsergroup' => 'Joomla\\Form\\Field_Usergroup',
'JForm' => 'Joomla\\Form\\Form',
'JFormHelper' => 'Joomla\\Form\\Helper',
'JFormRule' => 'Joomla\\Form\\Rule',
'JFormRuleBoolean' => 'Joomla\\Form\\Rule\\Boolean',
'JFormRuleColor' => 'Joomla\\Form\\Rule\\Color',
'JFormRuleEmail' => 'Joomla\\Form\\Rule\\Email',
'JFormRuleEquals' => 'Joomla\\Form\\Rule\\Equals',
'JFormRuleOptions' => 'Joomla\\Form\\Rule\\Options',
'JFormRuleRules' => 'Joomla\\Form\\Rule\\Rules',
'JFormRuleTel' => 'Joomla\\Form\\Rule\\Tel',
'JFormRuleUrl' => 'Joomla\\Form\\Rule\\Url',
'JFormRuleUsername' => 'Joomla\\Form\\Rule\\Username',
'JGithubAccount' => 'Joomla\\Github\\Account',
'JGithubCommits' => 'Joomla\\Github\\Commits',
'JGithubForks' => 'Joomla\\Github\\Forks',
'JGithubGists' => 'Joomla\\Github\\Gists',
'JGithub' => 'Joomla\\Github\\Github',
'JGithubHooks' => 'Joomla\\Github\\Hooks',
'JGithubHttp' => 'Joomla\\Github\\Http',
'JGithubIssues' => 'Joomla\\Github\\Issues',
'JGithubMilestones' => 'Joomla\\Github\\Milestones',
'JGithubObject' => 'Joomla\\Github\\Object',
'JGithubPulls' => 'Joomla\\Github\\Pulls',
'JGithubRefs' => 'Joomla\\Github\\Refs',
'JGithubStatuses' => 'Joomla\\Github\\Statuses',
'JGoogleAuth' => 'Joomla\\Google\\Auth',
'JGoogleAuthOauth2' => 'Joomla\\Google\\Auth\\OAuth2',
'JGoogleData' => 'Joomla\\Google\\Data',
'JGoogleDataAdsense' => 'Joomla\\Google\\Data\\Adsense',
'JGoogleDataCalendar' => 'Joomla\\Google\\Data\\Calendar',
'JGoogleDataPicasa' => 'Joomla\\Google\\Data\\Picasa',
'JGoogleDataPicasaAlbum' => 'Joomla\\Google\\Data\\Picasa\\Album',
'JGoogleDataPicasaPhoto' => 'Joomla\\Google\\Data\\Picasa\\Photo',
'JGoogleDataPlus' => 'Joomla\\Google\\Data\\Plus',
'JGoogleDataPlusActivities' => 'Joomla\\Google\\Data\\Plus\\Activities',
'JGoogleDataPlusComments' => 'Joomla\\Google\\Data\\Plus\\Comments',
'JGoogleDataPlusPeople' => 'Joomla\\Google\\Data\\Plus\\People',
'JGoogleEmbed' => 'Joomla\\Google\\Embed',
'JGoogleEmbedAnalytics' => 'Joomla\\Google\\Embed\\Analytics',
'JGoogleEmbedMaps' => 'Joomla\\Google\\Embed\\Maps',
'JGoogle' => 'Joomla\\Google\\Google',
'JGrid' => 'Joomla\\Grid\\Grid',
'JHtmlAccess' => 'Joomla\\Html\\Access',
'JHtmlBehavior' => 'Joomla\\Html\\Behavior',
'JHtmlContent' => 'Joomla\\Html\\Content',
'JHtmlDate' => 'Joomla\\Html\\Date',
'JHtmlEmail' => 'Joomla\\Html\\Email',
'JHtmlForm' => 'Joomla\\Html\\Form',
'JHtmlGrid' => 'Joomla\\Html\\Grid',
'JHtml' => 'Joomla\\Html\\Html',
'JHtmlJGrid' => 'Joomla\\Html\\JGrid',
'JHtmlList' => 'Joomla\\Html\\Listt',
'JHtmlNumber' => 'Joomla\\Html\\Number',
'JHtmlRules' => 'Joomla\\Html\\Rules',
'JHtmlSelect' => 'Joomla\\Html\\Select',
'JHtmlSliders' => 'Joomla\\Html\\Sliders',
'JHtmlString' => 'Joomla\\Html\\String',
'JHtmlTabs' => 'Joomla\\Html\\Tabs',
'JHtmlTel' => 'Joomla\\Html\\Tel',
'JHtmlUser' => 'Joomla\\Html\\User',
'JHttpFactory' => 'Joomla\\Http\\Factory',
'JHttp' => 'Joomla\\Http\\Http',
'JHttpResponse' => 'Joomla\\Http\\Response',
'JHttpTransport' => 'Joomla\\Http\\Transport',
'JHttpTransportCurl' => 'Joomla\\Http\\Transport\\Curl',
'JHttpTransportSocket' => 'Joomla\\Http\\Transport\\Socket',
'JHttpTransportStream' => 'Joomla\\Http\\Transport\\Stream',
'JImage' => 'Joomla\\Image\\Image',
'JImageFilter' => 'Joomla\\Image\\Filter',
'JImageFilterBrightness' => 'Joomla\\Image\\Filter\\Brightness',
'JImageFilterContrast' => 'Joomla\\Image\\Filter\\Contrast',
'JImageFilterEdgedetect' => 'Joomla\\Image\\Filter\\Edgedetect',
'JImageFilterEmboss' => 'Joomla\\Image\\Filter\\Emboss',
'JImageFilterNegate' => 'Joomla\\Image\\Filter\\Grayscale',
'JImageFilterSketchy' => 'Joomla\\Image\\Filter\\Sketchy',
'JImageFilterSmooth' => 'Joomla\\Image\\Filter\\Smooth',
'JInputCli' => 'Joomla\\Input\\Cli',
'JInputCookie' => 'Joomla\\Input\\Cookie',
'JInputFiles' => 'Joomla\\Input\\Files',
'JInput' => 'Joomla\\Input\\Input',
'JInputJson' => 'Joomla\\Input\\Json',
'JKeychain' => 'Joomla\\Keychain\\Keychain',
'JLanguageHelper' => 'Joomla\\Language\\Helper',
'JLanguage' => 'Joomla\\Language\\Language',
'JLanguageStemmer' => 'Joomla\\Language\\Stemmer',
'JLanguageStemmerPorteren' => 'Joomla\\Language\\Stemmer\\Porteren',
'JText' => 'Joomla\\Language\\Text',
'JLanguageTransliterate' => 'Joomla\\Language\\Transliterate',
'JLogEntry' => 'Joomla\\Log\\Entry',
'JLog' => 'Joomla\\Log\\Log',
'JLogLogger' => 'Joomla\\Log\\Logger',
'JLogLoggerCallback' => 'Joomla\\Log\\Logger\\Callback',
'JLogLoggerDatabase' => 'Joomla\\Log\\Logger\\Database',
'JLogLoggerEcho' => 'Joomla\\Log\\Logger\\Echoo',
'JLogLoggerFormattedtext' => 'Joomla\\Log\\Logger\\Formattedtext',
'JLogLoggerMessagequeue' => 'Joomla\\Log\\Logger\\Messagequeue',
'JLogLoggerSyslog' => 'Joomla\\Log\\Logger\\Syslog',
'JLogLoggerW3c' => 'Joomla\\Log\\Logger\\W3c',
'JMailHelper' => 'Joomla\\Mail\\Helper',
'JMail' => 'Joomla\\Mail\\Mail',
'JModelBase' => 'Joomla\\Model\\Base',
'JModelDatabase' => 'Joomla\\Model\\Database',
'JModel' => 'Joomla\\Model\\Model',
'JOAuth2Client' => 'Joomla\\Oauth2\\Client',
'JObject' => 'Joomla\\Object\\Object',
'JPaginationObject' => 'Joomla\\Pagination\\Object',
'JPagination' => 'Joomla\\Pagination\\Pagination',
'JPluginHelper' => 'Joomla\\Plugin\\Helper',
'JPlugin' => 'Joomla\\Plugin\\Plugin',
'JProfiler' => 'Joomla\\Profiler\\Profiler',
'JRegistry' => 'Joomla\\Registry\\Registry',
'JRegistryFormat' => 'Joomla\\Registry\\Format',
'JRegistryFormatINI' => 'Joomla\\Registry\\Format\\Ini',
'JRegistryFormatJSON' => 'Joomla\\Registry\\Format\\Json',
'JRegistryFormatPHP' => 'Joomla\\Registry\\Format\\Php',
'JRegistryFormatXML' => 'Joomla\\Registry\\Format\\Xml',
'JSession' => 'Joomla\\Session\\Session',
'JSessionStorage' => 'Joomla\\Session\\Storage',
'JSessionStorageAPC' => 'Joomla\\Session\\Storage\\Apc',
'JSessionStorageDatabase' => 'Joomla\\Session\\Storage\\Database',
'JSessionStorageMemcache' => 'Joomla\\Session\\Storage\\Memcache',
'JSessionStorageMemcached' => 'Joomla\\Session\\Storage\\Memcached',
'JSessionStorageNone' => 'Joomla\\Session\\Storage\\None',
'JSessionStorageWincache' => 'Joomla\\Session\\Storage\\Wincache',
'JSessionStorageXcache' => 'Joomla\\Session\\Storage\\Xcache',
'JStringInflector' => 'Joomla\\String\\Inflector',
'JStringNormalise' => 'Joomla\\String\\Normalise',
'JString' => 'Joomla\\String\\String',
'JTableAsset' => 'Joomla\\Table\\Asset',
'JTableExtension' => 'Joomla\\Table\\Extension',
'JTableLanguage' => 'Joomla\\Table\\Language',
'JTableNested' => 'Joomla\\Table\\Nested',
'JTable' => 'Joomla\\Table\\Table',
'JTableUpdate' => 'Joomla\\Table\\Update',
'JTableUser' => 'Joomla\\Table\\User',
'JTableUsergroup' => 'Joomla\\Table\\Usergroup',
'JTableViewlevel' => 'Joomla\\Table\\Viewlevel',
'JUri' => 'Joomla\\Uri\\Uri',
'JURI' => 'Joomla\\Uri\\Uri',
'JAuthentication' => 'Joomla\\User\\Authentication',
'JAuthenticationResponse' => 'Joomla\\User\\AuthenticationResponse',
'JUserHelper' => 'Joomla\\User\\Helper',
'JUser' => 'Joomla\\User\\User',
'JArrayHelper' => 'Joomla\\Utilities\\ArrayHelper',
'JBuffer' => 'Joomla\\Utilities\\Buffer',
'JUtility' => 'Joomla\\Utilities\\Utility',
'JViewBase' => 'Joomla\\View\\Base',
'JViewHtml' => 'Joomla\\View\\Html',
'JView' => 'Joomla\\View\\View'
);
@dongilbert
Copy link
Author

In regards to #1, class_alias always put's the new class in the global namespace - http://www.php.net/manual/en/function.class-alias.php#105403

In regards to #2, if you try to alias a non-existant class, then a PHP Warning is produced. So we must autoload all the classes that we alias in order for this to work correctly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment