]> git.mxchange.org Git - core.git/blobdiff - inc/classes/main/commands/web/class_WebLoginCommand.php
WebLoginCommand is now an extra instance for hashers etc.
[core.git] / inc / classes / main / commands / web / class_WebLoginCommand.php
index e1c314b13192bb0976419fb57c1a0a6bde58e566..981ad63a44b4e3a9ea2de5ddeef16ca9e7731c6e 100644 (file)
@@ -21,7 +21,7 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <http://www.gnu.org/licenses/>.
  */
-class WebLoginCommand extends BaseCommand implements Commandable {
+class WebLoginCommand extends BaseCommand implements Commandable, Registerable {
        /**
         * Protected constructor
         *
@@ -57,6 +57,9 @@ class WebLoginCommand extends BaseCommand implements Commandable {
         * @return      void
         */
        public function execute (Requestable $requestInstance, Responseable $responseInstance) {
+               // Set request instance as extra instance
+               Registry::getRegistry()->addInstance('extra', $this);
+
                // Get the application instance
                $appInstance = $this->getResolverInstance()->getApplicationInstance();
 
@@ -98,6 +101,10 @@ class WebLoginCommand extends BaseCommand implements Commandable {
                // Set title
                $templateInstance->assignVariable('title', $this->getLanguageInstance()->getMessage('page_login_title'));
 
+               // Construct the menu in every command. We could do this in BaseCommand class. But this means
+               // *every* command has a navigation system and that is want we don't want.
+               $menuInstance = ObjectFactory::createObjectByConfiguredName('login_menu_class', array($appInstance));
+
                // ... and all variables. This should be merged together in a pattern
                // to make things easier. A cache mechanism should be added between
                // these two calls to cache compiled templates.