<?php 
namespace Sargilla\FlatLab;

class FlatLab
{
    public function __construct()
    {

    }
    public function languages()
    {
        return [
        FLATLAB_PATH.'/resources/lang' => resource_path('lang/vendor/flatlab'),
        FLATLAB_PATH.'/resources/original-lang' => resource_path('lang/')   
        ];
    }
    public function config()
    {
        return [
        FLATLAB_PATH.'/config/flatlab.php' => config_path('flatlab.php'),
        FLATLAB_PATH.'/config/image.php' => config_path('image.php'),
        FLATLAB_PATH.'/config/imagecache.php' => config_path('imagecache.php'),
        ];
    }
    public function views()
    {
        return [
        FLATLAB_PATH.'/resources/views/flatlab'  =>  resource_path('views/vendor/flatlab'),
        FLATLAB_PATH.'/resources/views/mail'  =>  resource_path('views/vendor/mail'),
        FLATLAB_PATH.'/resources/views/notifications' =>  resource_path('views/vendor/notifications')
        ];
    }
    public function viewsToOverwrite()
    {
        return [
            FLATLAB_PATH.'/resources/views/errors'  =>  resource_path('views/errors')
        ];
    }
    public function gravatar()
    {
        return [
            base_path().'/vendor/creativeorange/gravatar/config/gravatar.php' => config_path('gravatar.php'),
        ];
    }
    public function publicAssets()
    {
        return [
            FLATLAB_PATH.'/public'  =>  public_path('')
        ];
    }
    public function resourceAssets()
    {
        return [
            FLATLAB_PATH.'/resources/assets' => resource_path('assets/flatlab/assets'),
            FLATLAB_PATH.'/resources/css' => resource_path('assets/flatlab/css'),
            FLATLAB_PATH.'/resources/img' => resource_path('assets/flatlab/img'),
            FLATLAB_PATH.'/resources/fonts' => resource_path('assets/flatlab/fonts'),
            FLATLAB_PATH.'/resources/lang' => resource_path('lang/vendor/flatlab'),
            FLATLAB_PATH.'/resources/original-lang' => resource_path('lang'),
            FLATLAB_PATH.'/resources/sass/app.scss   ' => resource_path('assets/flatlab/sass/app.scss'),
            FLATLAB_PATH.'/resources/js' => resource_path('assets/flatlab/js'),
            FLATLAB_PATH.'/webpack.mix.js'        => base_path('webpack.mix.js'),
            FLATLAB_PATH.'/package.json'        => base_path('/package.json'),
        ];
    }
    public function loginController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/LoginController.stub' =>
        app_path('Http/Controllers/Auth/LoginController.php'),
        ];
    }
    public function homeController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/HomeController.stub' => app_path('Http/Controllers/HomeController.php'),
        ];
    }
    public function menuController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/MenuController.stub' => app_path('Http/Controllers/MenuController.php'),
        ];
    }
    public function permisosController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/PermisosController.stub' => app_path('Http/Controllers/PermisosController.php'),
        FLATLAB_PATH.'/src/Stubs/RolesController.stub' => app_path('Http/Controllers/RolesController.php'),
        FLATLAB_PATH.'/src/Stubs/UserController.stub' => app_path('Http/Controllers/UserController.php')
        ];
    }
    public function registerController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/RegisterController.stub' =>
        app_path('Http/Controllers/Auth/RegisterController.php'),
        ];
    }
    public function forgotPasswordController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/ForgotPasswordController.stub' =>
        app_path('Http/Controllers/Auth/ForgotPasswordController.php'),
        ];
    }
    public function resetPasswordController()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/ResetPasswordController.stub' =>
        app_path('Http/Controllers/Auth/ResetPasswordController.php'),
        ];
    }
    public function PasswordResetNotification()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/PasswordResetNotification.stub' =>
        app_path('Notifications/PasswordResetNotification.php'),
        ];
    }
    public function AppServiceProvider()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/AppServiceProvider.stub' =>
        app_path('Providers/AppServiceProvider.php'),
        ];
    }
    public function UserModel()
    {
        return [
        FLATLAB_PATH.'/src/Stubs/User.stub' =>
        app_path('User.php'),
        ];
    }
    public function UserMigration()
    {
        return [
        FLATLAB_PATH.'/database/migrations/2014_10_12_000000_create_users_table.php' =>
        database_path('migrations/2014_10_12_000000_create_users_table.php'),
        ];
    }
    public function webroutes()
    {
        return [
            FLATLAB_PATH.'/routes/web.php' =>
                base_path('routes/web.php')
        ];
    }
    public function apiroutes()
    {
        return [
            FLATLAB_PATH.'/routes/api.php' =>
                base_path('routes/api.php')
        ];
    }
    public function menuroutes()
    {
        return FLATLAB_PATH.'/routes/menu.php';
    }
    public function permisosroutes()
    {
        return FLATLAB_PATH.'/routes/permisos.php';
    }
    public function loadMigrationRoute(){
        return FLATLAB_PATH .'/database/migrations';
    }
    /**
     * Descripcion de la funcion.
     */
    public function publishMiddlewares()
    {
    	return [
            FLATLAB_PATH.'/Middleware/AdminMiddleware.php' =>
                app_path('/Middleware/AdminMiddleware.php'),
                FLATLAB_PATH.'/Middleware/ClearanceMiddleware.php' =>
                app_path('/Middleware/ClearanceMiddleware.php')
        ];
    }
    
    
}
