{"action":"opened","issue":{"url":"https://api.github.com/repos/brunnopleffken/addictive-community/issues/108","repository_url":"https://api.github.com/repos/brunnopleffken/addictive-community","labels_url":"https://api.github.com/repos/brunnopleffken/addictive-community/issues/108/labels{/name}","comments_url":"https://api.github.com/repos/brunnopleffken/addictive-community/issues/108/comments","events_url":"https://api.github.com/repos/brunnopleffken/addictive-community/issues/108/events","html_url":"https://github.com/brunnopleffken/addictive-community/issues/108","id":197956235,"number":108,"title":"Add Kernel modules and controllers to namespaces + autoloader","user":{"login":"brunnopleffken","id":3427344,"avatar_url":"https://avatars.githubusercontent.com/u/3427344?v=3","gravatar_id":"","url":"https://api.github.com/users/brunnopleffken","html_url":"https://github.com/brunnopleffken","followers_url":"https://api.github.com/users/brunnopleffken/followers","following_url":"https://api.github.com/users/brunnopleffken/following{/other_user}","gists_url":"https://api.github.com/users/brunnopleffken/gists{/gist_id}","starred_url":"https://api.github.com/users/brunnopleffken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brunnopleffken/subscriptions","organizations_url":"https://api.github.com/users/brunnopleffken/orgs","repos_url":"https://api.github.com/users/brunnopleffken/repos","events_url":"https://api.github.com/users/brunnopleffken/events{/privacy}","received_events_url":"https://api.github.com/users/brunnopleffken/received_events","type":"User","site_admin":false},"labels":[{"id":74051698,"url":"https://api.github.com/repos/brunnopleffken/addictive-community/labels/improvement","name":"improvement","color":"207de5","default":false}],"state":"open","locked":false,"assignee":{"login":"brunnopleffken","id":3427344,"avatar_url":"https://avatars.githubusercontent.com/u/3427344?v=3","gravatar_id":"","url":"https://api.github.com/users/brunnopleffken","html_url":"https://github.com/brunnopleffken","followers_url":"https://api.github.com/users/brunnopleffken/followers","following_url":"https://api.github.com/users/brunnopleffken/following{/other_user}","gists_url":"https://api.github.com/users/brunnopleffken/gists{/gist_id}","starred_url":"https://api.github.com/users/brunnopleffken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brunnopleffken/subscriptions","organizations_url":"https://api.github.com/users/brunnopleffken/orgs","repos_url":"https://api.github.com/users/brunnopleffken/repos","events_url":"https://api.github.com/users/brunnopleffken/events{/privacy}","received_events_url":"https://api.github.com/users/brunnopleffken/received_events","type":"User","site_admin":false},"assignees":[{"login":"brunnopleffken","id":3427344,"avatar_url":"https://avatars.githubusercontent.com/u/3427344?v=3","gravatar_id":"","url":"https://api.github.com/users/brunnopleffken","html_url":"https://github.com/brunnopleffken","followers_url":"https://api.github.com/users/brunnopleffken/followers","following_url":"https://api.github.com/users/brunnopleffken/following{/other_user}","gists_url":"https://api.github.com/users/brunnopleffken/gists{/gist_id}","starred_url":"https://api.github.com/users/brunnopleffken/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/brunnopleffken/subscriptions","organizations_url":"https://api.github.com/users/brunnopleffken/orgs","repos_url":"https://api.github.com/users/brunnopleffken/repos","events_url":"https://api.github.com/users/brunnopleffken/events{/privacy}","received_events_url":"https://api.github.com/users/brunnopleffken/received_events","type":"User","site_admin":false}],"milestone":null,"comments":0,"created_at":"2016-12-29T05:36:32Z","updated_at":"2016-12-29T05:36:32Z","closed_at":null,"body":"Making further steps towards the implementation of third-party extensions and a much more organized back-end code, I'll be moving all controllers and core modules (in Addictive Community they're called \"kernel modules\") to namespaces. The native namespaces - until now - are:\r\n\r\n`\\AC` = Global namespace.\r\n`\\AC\\Controllers` = All controllers are here. And BTW, the controller Failure is \"Failure\" instead of \"Error\" because Error already exists in the PHP 7 core lib (PHP 5.x is fine).\r\n`\\AC\\Kernel` = The core modules: Database, Http, Html, i18n, Email, etc.\r\n\r\nOf course, the only annoying point in using namespaces is the need to declare some libraries with the keyword \"use\" at the top of the code.\r\n\r\nAlong with the namespaces, the class autoloader will also be implemented. Currently, all kernel modules are loaded in index.php. With autoloader we can load libraries on demand, reducing server load. This means that kernel modules like Email, Upload and even Admin won't load when reading a thread, for example.\r\n\r\nThe autoloader will be smart enough to distinguish native Addictive Community libraries from third-party extensions."}}
{"actor":{"display_login":"brunnopleffken"}}