Anda di halaman 1dari 4

$products = DB::table('products')

->LeftJoin('products_to_categories',
'products.products_id', '=', 'products_to_categories.products_id')

->leftJoin('categories','categories.categories_id','=','products_to_categories.cate
gories_id')

->LeftJoin('categories_description','categories_description.categories_id','=','pro
ducts_to_categories.categories_id')

->leftJoin('products_description','products_description.products_id','=','products.
products_id')

->leftJoin('administrators','administrators.myid','=','products.admin_id')

->select('products.*','categories.*','categories_description.*','products_descripti
on.*',
'administrators.*','administrators.email','products.admin_id','administrators.city'
,'products.product_vedio', 'products.products_id as productsId' )
//->where('products.products_slug',$request->slug)
->where('products.admin_id',$admin->myid)
->where('products_description.language_id', 1)
// ->where('categories_description.language_id', 1)
->where('products.products_status', 1)
->get();

if(!empty($request->page)){
$page_number = $request->page;
}else{
$page_number = 0;
}

if(!empty($request->limit)){
$limit = $request->limit;
}else{
$limit = 15;
}

if(!empty($request->type)){
$type = $request->type;
}else{
$type = '';
}

//min_price
if(!empty($request->min_price)){
$min_price = $request->min_price;
}else{
$min_price = '';
}

//max_price
if(!empty($request->max_price)){
$max_price = $request->max_price;
}else{
$max_price = '';
}
//category
if(!empty($request->category) and $request->category!='all'){
$category = DB::table('categories')
->LeftJoin('products_to_categories', 'products.products_id', '=',
'products_to_categories.products_id')
-
>leftJoin('products','products.products_id','=','products_to_categories.products_id
')
-
>LeftJoin('categories_description','categories_description.categories_id','=','prod
ucts_to_categories.categories_id')
-
>leftJoin('products_description','products_description.products_id','=','products.p
roducts_id')
-
>leftJoin('manufacturers','manufacturers.manufacturers_id','=','products.manufactur
ers_id')
-
>leftJoin('administrators','administrators.myid','=','products.admin_id')

-
>LeftJoin('coupons','coupons.product_ids','=','products.products_id')
->LeftJoin('specials', 'specials.products_id', '=',
'products.products_id')
->select('specials.*','products.*', 'products_description.*',
'manufacturers.*', 'manufacturers_info.manufacturers_url',
'specials.specials_new_products_price as discount_price',
'specials.specials_new_products_price as discount_price')
->where('categories_slug',$request->category)-
>where('language_id',Session::get('language_id'))
->where('products.admin_id',$admin->myid)
->get();
echo '<pre>'; print_r($category); exit;

$categories_id = $category[0]->categories_id;
//for main
if($category[0]->parent_id==0){
$category_name = $category[0]->categories_name;
$sub_category_name = '';
$category_slug = '';
}else{
//for sub
$main_category = DB::table('categories')-
>leftJoin('categories_description','categories_description.categories_id','=','cate
gories.categories_id')->where('categories.categories_id',$category[0]->parent_id)-
>where('language_id',Session::get('language_id'))->get();

$category_slug = $main_category[0]->categories_slug;
$category_name = $main_category[0]->categories_name;
$sub_category_name = $category[0]->categories_name;
}

}else{
$categories_id = '';
$category_name = '';
$sub_category_name = '';
$category_slug = '';
}
$result['category_name'] = $category_name;
$result['category_slug'] = $category_slug;
$result['sub_category_name'] = $sub_category_name;

//search value
if(!empty($request->search)){
$search = $request->search;
}else{
$search = '';
}

$filters = array();
if(!empty($request->filters_applied) and $request->filters_applied==1){
$index = 0;
$options = array();
$option_values = array();

$option = DB::table('products_options')
->leftJoin('products_options_descriptions',
'products_options_descriptions.products_options_id', '=',
'products_options.products_options_id')-
>select('products_options.products_options_id',
'products_options_descriptions.options_name as products_options_name',
'products_options_descriptions.language_id')->where('language_id','=',
Session::get('language_id'))->get();

foreach($option as $key=>$options_data){
$option_name = str_replace(' ','_',$options_data-
>products_options_name);

if(!empty($request->$option_name)){
$index2 = 0;
$values = array();
foreach($request->$option_name as $value)
{
$value = DB::table('products_options_values')
-
>leftJoin('products_options_values_descriptions','products_options_values_descripti
ons.products_options_values_id','=','products_options_values.products_options_value
s_id')
-
>select('products_options_values.products_options_values_id',
'products_options_values_descriptions.options_values_name as
products_options_values_name', 'products_options_values_descriptions.language_id')
-
>where('products_options_values_descriptions.options_values_name', $value)-
>where('language_id',Session::get('language_id'))->get();
$option_values[]=$value[0]-
>products_options_values_id;
}
$options[] = $options_data->products_options_id;
}
}

$filters['options_count'] = count($options);
$filters['options'] = implode($options,',');
$filters['option_value'] = implode($option_values, ',');

$filters['filter_attribute']['options'] = $options;
$filters['filter_attribute']['option_values'] = $option_values;

$result['filter_attribute']['options'] = $options;
$result['filter_attribute']['option_values'] = $option_values;
}

$myVar = new DataController();


$data = array('page_number'=>$page_number, 'type'=>$type,
'limit'=>$limit, 'categories_id'=>$categories_id, 'search'=>$search,
'filters'=>$filters, 'limit'=>$limit, 'min_price'=>$min_price,
'max_price'=>$max_price );

$products = $myVar->products($data);
$result['products'] = $products;

$data = array('limit'=>$limit, 'categories_id'=>$categories_id );


$filters = $this->filters($data);
$result['filters'] = $filters;

//Offer
$myVar = new DataController();
$data = array('page_number'=>'0', 'type'=>'vendorpage',
'limit'=>$limit, 'min_price'=>$min_price, 'max_price'=>$max_price );
$men_fashion = $myVar->products($data);
$result['vendorpage'] = $men_fashion;

$cart = '';
$myVar = new CartController();
$result['cartArray'] = $myVar->cartIdArray($cart);

if($limit > $result['vendorpage']['total_record']){


$result['limit'] = $result['vendorpage']['total_record'];
}else{
$result['limit'] = $limit;
}

//liked products
$result['liked_products'] = $this->likedProducts();

Anda mungkin juga menyukai