!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache/2.4.41 (Ubuntu). PHP/8.0.30 

uname -a: Linux apirnd 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64 

uid=33(www-data) gid=33(www-data) groups=33(www-data) 

Safe-mode: OFF (not secure)

/var/www/html/main_file/vendor/rachidlaasri/laravel-installer/src/Controllers/   drwxrwxr-x
Free 12.93 GB of 57.97 GB (22.3%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     EnvironmentController.php (4.52 KB)      -rw-rw-r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php

namespace RachidLaasri\LaravelInstaller\Controllers;

use 
Exception;
use 
Illuminate\Http\Request;
use 
Illuminate\Routing\Controller;
use 
Illuminate\Routing\Redirector;
use 
Illuminate\Support\Facades\DB;
use 
RachidLaasri\LaravelInstaller\Events\EnvironmentSaved;
use 
RachidLaasri\LaravelInstaller\Helpers\EnvironmentManager;
use 
Validator;

class 
EnvironmentController extends Controller
{
    
/**
     * @var EnvironmentManager
     */
    
protected $EnvironmentManager;

    
/**
     * @param EnvironmentManager $environmentManager
     */
    
public function __construct(EnvironmentManager $environmentManager)
    {
        
$this->EnvironmentManager $environmentManager;
    }

    
/**
     * Display the Environment menu page.
     *
     * @return \Illuminate\View\View
     */
    
public function environmentMenu()
    {
        return 
view('vendor.installer.environment');
    }

    
/**
     * Display the Environment page.
     *
     * @return \Illuminate\View\View
     */
    
public function environmentWizard()
    {
        
$envConfig $this->EnvironmentManager->getEnvContent();

        return 
view('vendor.installer.environment-wizard'compact('envConfig'));
    }

    
/**
     * Display the Environment page.
     *
     * @return \Illuminate\View\View
     */
    
public function environmentClassic()
    {
        
$envConfig $this->EnvironmentManager->getEnvContent();

        return 
view('vendor.installer.environment-classic'compact('envConfig'));
    }

    
/**
     * Processes the newly saved environment configuration (Classic).
     *
     * @param Request $input
     * @param Redirector $redirect
     * @return \Illuminate\Http\RedirectResponse
     */
    
public function saveClassic(Request $inputRedirector $redirect)
    {
        
$message $this->EnvironmentManager->saveFileClassic($input);

        
event(new EnvironmentSaved($input));

        return 
$redirect->route('LaravelInstaller::environmentClassic')
                        ->
with(['message' => $message]);
    }

    
/**
     * Processes the newly saved environment configuration (Form Wizard).
     *
     * @param Request $request
     * @param Redirector $redirect
     * @return \Illuminate\Http\RedirectResponse
     */
    
public function saveWizard(Request $requestRedirector $redirect)
    {
        
$rules config('installer.environment.form.rules');
        
$messages = [
            
'environment_custom.required_if' => trans('installer_messages.environment.wizard.form.name_required'),
        ];

        
$validator Validator::make($request->all(), $rules$messages);

        if (
$validator->fails()) {
            return 
$redirect->route('LaravelInstaller::environmentWizard')->withInput()->withErrors($validator->errors());
        }

        if (! 
$this->checkDatabaseConnection($request)) {
            return 
$redirect->route('LaravelInstaller::environmentWizard')->withInput()->withErrors([
                
'database_connection' => trans('installer_messages.environment.wizard.form.db_connection_failed'),
            ]);
        }

        
$results $this->EnvironmentManager->saveFileWizard($request);

        
event(new EnvironmentSaved($request));

        return 
$redirect->route('LaravelInstaller::database')
                        ->
with(['results' => $results]);
    }

    
/**
     * TODO: We can remove this code if PR will be merged: https://github.com/RachidLaasri/LaravelInstaller/pull/162
     * Validate database connection with user credentials (Form Wizard).
     *
     * @param Request $request
     * @return bool
     */
    
private function checkDatabaseConnection(Request $request)
    {
        
$connection $request->input('database_connection');

        
$settings config("database.connections.$connection");

        
config([
            
'database' => [
                
'default' => $connection,
                
'connections' => [
                    
$connection => array_merge($settings, [
                        
'driver' => $connection,
                        
'host' => $request->input('database_hostname'),
                        
'port' => $request->input('database_port'),
                        
'database' => $request->input('database_name'),
                        
'username' => $request->input('database_username'),
                        
'password' => $request->input('database_password'),
                    ]),
                ],
            ],
        ]);

        
DB::purge();

        try {
            
DB::connection()->getPdo();

            return 
true;
        } catch (
Exception $e) {
            return 
false;
        }
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0052 ]--