/**
* manage the home section suggestions
* @param [string] $type, which is the reference point to build the suggest
* @return [json] $suggest, that contain the products list to be displayed on home page
*/
public static function suggest($type, $limit = 4)
{
$data = [];
switch ($type) {
case 'purchased':
$data['preferences_key'] = 'product_purchased';
$data['limit'] = $limit;
break;
case 'categories':
$data['preferences_key'] = 'product_categories';
$data['limit'] = $limit;
$usr_prefe = UserController::getPreferences('', $data['preferences_key']);
//look up for user preferences
if (count($usr_prefe['tags']) == 0) {
$data['category'] = ProductsController::getRandCategoryId();
//if there is not info, we get a rand category id
} else {
$data['category'] = $usr_prefe['tags'][mt_rand(0, count($usr_prefe['tags']) - 1)];
//if so, we get a rand user preferences category
}
break;
case 'viewed':
$data['preferences_key'] = 'product_viewed';
$data['limit'] = $limit;
break;
case 'carousel':
return ProductsController::getTopRated(0, $limit, false);
break;
default:
$data['limit'] = $limit;
$data['preferences_key'] = '';
break;
}
$suggest = ProductsController::getSuggestions($data);
//suggestion array
return $suggest;
}