From 4ab361adebca9aa34d45a70fbcf02d5cd8056955 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20Kv=C3=A1=C4=8Dek?= Date: Wed, 20 Jan 2016 21:01:53 +0100 Subject: [PATCH] FEATURE #1358: prepare environment for login Initialize routes, middleware and some basic controllers/view for further implementation. --- .../{Auth => Admin}/AuthController.php | 2 +- app/Http/Controllers/Admin/Dashboard.php | 13 +++ app/Http/Controllers/Admin/LoginForm.php | 15 +++ .../{Auth => Admin}/PasswordController.php | 2 +- app/Http/routes.php | 14 ++- app/Models/User.php | 8 ++ app/User.php | 26 ----- config/auth.php | 2 +- database/schema.sql | 101 +++++++++--------- .../views/admin/loginForm/form.blade.php | 0 resources/views/visitor/theme_name/.gitkeep | 0 11 files changed, 98 insertions(+), 85 deletions(-) rename app/Http/Controllers/{Auth => Admin}/AuthController.php (98%) create mode 100644 app/Http/Controllers/Admin/Dashboard.php create mode 100644 app/Http/Controllers/Admin/LoginForm.php rename app/Http/Controllers/{Auth => Admin}/PasswordController.php (95%) delete mode 100644 app/User.php create mode 100644 resources/views/admin/loginForm/form.blade.php create mode 100644 resources/views/visitor/theme_name/.gitkeep diff --git a/app/Http/Controllers/Auth/AuthController.php b/app/Http/Controllers/Admin/AuthController.php similarity index 98% rename from app/Http/Controllers/Auth/AuthController.php rename to app/Http/Controllers/Admin/AuthController.php index 2d7b1a92..6180060a 100644 --- a/app/Http/Controllers/Auth/AuthController.php +++ b/app/Http/Controllers/Admin/AuthController.php @@ -1,6 +1,6 @@ ['web']], function () { - Route::get('/test', 'TestController@showIndex'); + Route::get('login', 'Admin\LoginForm@showLoginForm'); }); + +Route::group([ + 'middleware' => ['auth'], + 'namespace' => 'Admin', + 'prefix' => 'admin' + ], function () { + Route::get('/', 'Dashboard@showIndex'); +}); + diff --git a/app/Models/User.php b/app/Models/User.php index bcfe4996..33045e15 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -23,5 +23,13 @@ class User extends Model protected $guarded = []; + /** + * The attributes excluded from the model's JSON form. + * + * @var array + */ + protected $hidden = [ + 'password', 'remember_token', + ]; } \ No newline at end of file diff --git a/app/User.php b/app/User.php deleted file mode 100644 index ef6fe91e..00000000 --- a/app/User.php +++ /dev/null @@ -1,26 +0,0 @@ - [ 'users' => [ 'driver' => 'eloquent', - 'model' => App\User::class, + 'model' => App\Models\User::class, ], // 'users' => [ diff --git a/database/schema.sql b/database/schema.sql index c907bd8d..99bbcc33 100644 --- a/database/schema.sql +++ b/database/schema.sql @@ -14,20 +14,17 @@ SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES'; -- ----------------------------------------------------- -- Schema minicms -- ----------------------------------------------------- -CREATE SCHEMA IF NOT EXISTS `minicms` DEFAULT CHARACTER SET utf8 ; -USE `minicms` ; - -- ----------------------------------------------------- --- Table `minicms`.`user` +-- Table `user` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`user` ( +CREATE TABLE IF NOT EXISTS `user` ( `id` INT NOT NULL AUTO_INCREMENT, `email` VARCHAR(64) NOT NULL COMMENT 'E-mail is used as a contact and also as a username', - `username` VARCHAR(64) NOT NULL, + `username` VARCHAR(64) NOT NULL COMMENT 'Username can be used also for login. Default value is users email.', `password` VARCHAR(128) NOT NULL COMMENT 'Password hash', `remember_token` VARCHAR(128) NULL DEFAULT NULL COMMENT 'Token used for \"remember me\" feature', `name` VARCHAR(128) NULL DEFAULT NULL, - `status` ENUM('deleted', 'blocked', 'active') NULL DEFAULT 'active' COMMENT 'Username can be used also for login. Default value is users email.', + `status` ENUM('deleted', 'blocked', 'active') NOT NULL DEFAULT 'active' , PRIMARY KEY (`id`), UNIQUE INDEX `email_UNIQUE` (`email` ASC)) ENGINE = InnoDB @@ -35,9 +32,9 @@ COMMENT = 'Table with users who are allowed to log into system'; -- ----------------------------------------------------- --- Table `minicms`.`module` +-- Table `module` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`module` ( +CREATE TABLE IF NOT EXISTS `module` ( `handler` VARCHAR(64) NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `name` VARCHAR(64) NOT NULL, @@ -47,9 +44,9 @@ ENGINE = InnoDB; -- ----------------------------------------------------- --- Table `minicms`.`file` +-- Table `file` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`file` ( +CREATE TABLE IF NOT EXISTS `file` ( `id` INT NOT NULL, `user_id` INT NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, @@ -60,7 +57,7 @@ CREATE TABLE IF NOT EXISTS `minicms`.`file` ( INDEX `fk_file_user1_idx` (`user_id` ASC), CONSTRAINT `fk_file_user1` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB @@ -68,9 +65,9 @@ COMMENT = 'Table containing files which were uploaded into system.'; -- ----------------------------------------------------- --- Table `minicms`.`content` +-- Table `content` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`content` ( +CREATE TABLE IF NOT EXISTS `content` ( `id` INT NOT NULL, `user_id` INT NOT NULL, `module_handler` VARCHAR(64) NOT NULL, @@ -95,17 +92,17 @@ CREATE TABLE IF NOT EXISTS `minicms`.`content` ( INDEX `fk_content_file1_idx` (`title_photo` ASC), CONSTRAINT `fk_content_user1` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_content_module1` FOREIGN KEY (`module_handler`) - REFERENCES `minicms`.`module` (`handler`) + REFERENCES `module` (`handler`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_content_file1` FOREIGN KEY (`title_photo`) - REFERENCES `minicms`.`file` (`id`) + REFERENCES `file` (`id`) ON DELETE SET NULL ON UPDATE CASCADE) ENGINE = InnoDB @@ -113,9 +110,9 @@ COMMENT = 'Table with all content pages.'; -- ----------------------------------------------------- --- Table `minicms`.`content_history` +-- Table `content_history` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`content_history` ( +CREATE TABLE IF NOT EXISTS `content_history` ( `id` INT NOT NULL, `user_id` INT NOT NULL, `content_id` INT NOT NULL, @@ -131,12 +128,12 @@ CREATE TABLE IF NOT EXISTS `minicms`.`content_history` ( INDEX `fk_content_history_content1_idx` (`content_id` ASC), CONSTRAINT `fk_content_history_users` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_content_history_content1` FOREIGN KEY (`content_id`) - REFERENCES `minicms`.`content` (`id`) + REFERENCES `content` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB @@ -144,9 +141,9 @@ COMMENT = 'Table for holding history of changes on some content.'; -- ----------------------------------------------------- --- Table `minicms`.`widget_type` +-- Table `widget_type` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`widget_type` ( +CREATE TABLE IF NOT EXISTS `widget_type` ( `handler` VARCHAR(64) NOT NULL COMMENT 'Class wich handles everything about this widget type', `name` VARCHAR(64) NOT NULL COMMENT 'Name is used only in admin for better readability.', `description` TEXT NULL DEFAULT NULL COMMENT 'This field also improves readability.', @@ -156,9 +153,9 @@ COMMENT = 'Widget type table contains information about all installed widgets. T -- ----------------------------------------------------- --- Table `minicms`.`widget` +-- Table `widget` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`widget` ( +CREATE TABLE IF NOT EXISTS `widget` ( `id` INT NOT NULL, `widget_type_handler` VARCHAR(64) NOT NULL, `user_id` INT NOT NULL COMMENT 'User ID who created this widget', @@ -171,12 +168,12 @@ CREATE TABLE IF NOT EXISTS `minicms`.`widget` ( INDEX `fk_widget_widget_type1_idx` (`widget_type_handler` ASC), CONSTRAINT `fk_widget_user1` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_widget_widget_type1` FOREIGN KEY (`widget_type_handler`) - REFERENCES `minicms`.`widget_type` (`handler`) + REFERENCES `widget_type` (`handler`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB @@ -184,9 +181,9 @@ COMMENT = 'Widget is a small piece of content, which can be inserted into widget -- ----------------------------------------------------- --- Table `minicms`.`widget_area` +-- Table `widget_area` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`widget_area` ( +CREATE TABLE IF NOT EXISTS `widget_area` ( `id` INT NOT NULL, `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, @@ -200,9 +197,9 @@ COMMENT = 'Widget area is container for widgets. This container is inserted into -- ----------------------------------------------------- --- Table `minicms`.`widget_in_widget_area` +-- Table `widget_in_widget_area` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`widget_in_widget_area` ( +CREATE TABLE IF NOT EXISTS `widget_in_widget_area` ( `widget_id` INT NOT NULL, `widget_area_id` INT NOT NULL, `position` INT NOT NULL COMMENT 'Which position should the widget take?', @@ -212,21 +209,21 @@ CREATE TABLE IF NOT EXISTS `minicms`.`widget_in_widget_area` ( INDEX `position` (`position` ASC), CONSTRAINT `fk_widget_has_widget_area_widget1` FOREIGN KEY (`widget_id`) - REFERENCES `minicms`.`widget` (`id`) + REFERENCES `widget` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_widget_has_widget_area_widget_area1` FOREIGN KEY (`widget_area_id`) - REFERENCES `minicms`.`widget_area` (`id`) + REFERENCES `widget_area` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ----------------------------------------------------- --- Table `minicms`.`custom_field` +-- Table `custom_field` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`custom_field` ( +CREATE TABLE IF NOT EXISTS `custom_field` ( `id` INT NOT NULL, `handler` VARCHAR(64) NOT NULL COMMENT 'Class name, which handles saving and retrieving given custom field.', `name` VARCHAR(128) NULL, @@ -242,9 +239,9 @@ COMMENT = 'List of all custom fields which may be used for extending some part o -- ----------------------------------------------------- --- Table `minicms`.`user_has_custom_field` +-- Table `user_has_custom_field` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`user_has_custom_field` ( +CREATE TABLE IF NOT EXISTS `user_has_custom_field` ( `user_id` INT NOT NULL, `custom_field_id` INT NOT NULL, `value` TEXT NOT NULL, @@ -253,21 +250,21 @@ CREATE TABLE IF NOT EXISTS `minicms`.`user_has_custom_field` ( INDEX `fk_user_has_custom_field_user1_idx` (`user_id` ASC), CONSTRAINT `fk_user_has_custom_field_user1` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_user_has_custom_field_custom_field1` FOREIGN KEY (`custom_field_id`) - REFERENCES `minicms`.`custom_field` (`id`) + REFERENCES `custom_field` (`id`) ON DELETE CASCADE ON UPDATE CASCADE) ENGINE = InnoDB; -- ----------------------------------------------------- --- Table `minicms`.`custom_field_type` +-- Table `custom_field_type` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`custom_field_type` ( +CREATE TABLE IF NOT EXISTS `custom_field_type` ( `id` INT NOT NULL, `name` VARCHAR(45) NOT NULL, `custom_field_id` INT NOT NULL, @@ -276,7 +273,7 @@ CREATE TABLE IF NOT EXISTS `minicms`.`custom_field_type` ( INDEX `fk_custom_field_type_custom_field1_idx` (`custom_field_id` ASC), CONSTRAINT `fk_custom_field_type_custom_field1` FOREIGN KEY (`custom_field_id`) - REFERENCES `minicms`.`custom_field` (`id`) + REFERENCES `custom_field` (`id`) ON DELETE RESTRICT ON UPDATE NO ACTION) ENGINE = InnoDB @@ -284,9 +281,9 @@ COMMENT = 'List of all custom field types.'; -- ----------------------------------------------------- --- Table `minicms`.`module_has_custom_field` +-- Table `module_has_custom_field` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`module_has_custom_field` ( +CREATE TABLE IF NOT EXISTS `module_has_custom_field` ( `module_handler` VARCHAR(64) NOT NULL, `custom_field_id` INT NOT NULL, `value` TEXT NOT NULL, @@ -295,21 +292,21 @@ CREATE TABLE IF NOT EXISTS `minicms`.`module_has_custom_field` ( INDEX `fk_module_has_custom_field_module1_idx` (`module_handler` ASC), CONSTRAINT `fk_module_has_custom_field_module1` FOREIGN KEY (`module_handler`) - REFERENCES `minicms`.`module` (`handler`) + REFERENCES `module` (`handler`) ON DELETE CASCADE ON UPDATE CASCADE, CONSTRAINT `fk_module_has_custom_field_custom_field1` FOREIGN KEY (`custom_field_id`) - REFERENCES `minicms`.`custom_field` (`id`) + REFERENCES `custom_field` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB; -- ----------------------------------------------------- --- Table `minicms`.`action_log_type` +-- Table `action_log_type` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`action_log_type` ( +CREATE TABLE IF NOT EXISTS `action_log_type` ( `id` INT NOT NULL, `name` VARCHAR(45) NULL, PRIMARY KEY (`id`)) @@ -318,9 +315,9 @@ COMMENT = 'List of all types which can be logged.'; -- ----------------------------------------------------- --- Table `minicms`.`action_log` +-- Table `action_log` -- ----------------------------------------------------- -CREATE TABLE IF NOT EXISTS `minicms`.`action_log` ( +CREATE TABLE IF NOT EXISTS `action_log` ( `id` INT NOT NULL, `type_id` INT NOT NULL, `user_id` INT NOT NULL, @@ -331,12 +328,12 @@ CREATE TABLE IF NOT EXISTS `minicms`.`action_log` ( INDEX `fk_action_log_user1_idx` (`user_id` ASC), CONSTRAINT `fk_action_log_action_log_type1` FOREIGN KEY (`type_id`) - REFERENCES `minicms`.`action_log_type` (`id`) + REFERENCES `action_log_type` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION, CONSTRAINT `fk_action_log_user1` FOREIGN KEY (`user_id`) - REFERENCES `minicms`.`user` (`id`) + REFERENCES `user` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION) ENGINE = InnoDB diff --git a/resources/views/admin/loginForm/form.blade.php b/resources/views/admin/loginForm/form.blade.php new file mode 100644 index 00000000..e69de29b diff --git a/resources/views/visitor/theme_name/.gitkeep b/resources/views/visitor/theme_name/.gitkeep new file mode 100644 index 00000000..e69de29b