/** * recipeDetail */ public function recipeDetail($recipe_id) { if (!is_numeric($recipe_id)) { return false; } $Recipe = new ecommerce_recipe(); $recipe = $Recipe->getDetail($recipe_id); if ($recipe) { /** * get taxonomy_class */ $related_taxonomy = $Recipe->getRelatedTaxonomy($recipe_id); $recipe['taxonomy_class'] = $this->createTaxonomyClass($related_taxonomy); /** * save product taxonomy_class to registry */ $this->saveBodyCssClass($recipe['taxonomy_class']); /** * singular/plurar text */ $recipe['persons'] = $recipe['serving_people'] == 1 ? 'person' : 'persons'; $recipe['minutes'] = $recipe['cooking_time'] == 1 ? 'minute' : 'minutes'; $this->tpl->assign("RECIPE", $recipe); /** * video */ if (!empty($recipe['video_url'])) { $video_url = urlencode($recipe['video_url']); $_Onxshop_Request = new Onxshop_Request("component/video~video_url={$video_url}~"); $this->tpl->assign('RECIPE_VIDEO', $_Onxshop_Request->getContent()); } } return true; }
/** * get data */ public function getData() { /** * input */ if (is_numeric($this->GET['recipe_id'])) { $recipe_id = $this->GET['recipe_id']; } else { //msg("missing recipe_id", 'error'); $data = array(); $data['message'] = "missing recipe_id"; $data['status'] = 400; return $data; } /** * initialize */ require_once 'models/ecommerce/ecommerce_recipe.php'; $Recipe = new ecommerce_recipe(); /** * get recipe detail */ $item = $Recipe->getDetail($recipe_id); /** * get recipe image */ require_once 'models/ecommerce/ecommerce_recipe_image.php'; $Image = new ecommerce_recipe_image(); $images = $Image->listFiles($item['id']); if (count($images) > 0) { $item['image']['src'] = $images[0]['src']; $item['image']['title'] = $images[0]['title']; } /** * return the result */ if ($item['publish'] == 1) { return $this->formatItem($item); } else { return array(); } return $data; }