public function afterSave($created, $options = array()) { parent::afterSave($created, $options); if (isset($this->data["Combination"]['Combination'][0])) { $x = $this->Combination->find("first", array("conditions" => array("Combination.id" => $this->data["Combination"]['Combination'][0]))); $x2 = $this->Combination->find("all", array("contain" => false, "conditions" => array("Combination.reviewkey" => $x['Combination']['reviewkey']), "fields" => array("id"))); foreach ($x2 as $v) { App::uses("CombinationsReview", "Model"); $a = new CombinationsReview(); $a->create(); if (!$a->hasAny(array("CombinationsReview.combination_id" => $v['Combination']['id'], "CombinationsReview.review_id" => $this->getLastInsertID()))) { $a->save(array("CombinationsReview" => array('combination_id' => $v['Combination']['id'], 'review_id' => $this->getLastInsertID()))); } } } elseif ($this->data["Review"]['combination_reviewkey']) { $x2 = $this->Combination->find("all", array("contain" => false, "conditions" => array("Combination.reviewkey" => $this->data["Review"]['combination_reviewkey']), "fields" => array("id"))); foreach ($x2 as $v) { App::uses("CombinationsReview", "Model"); $a = new CombinationsReview(); $a->create(); if (!$a->hasAny(array("CombinationsReview.combination_id" => $v['Combination']['id'], "CombinationsReview.review_id" => $this->getLastInsertID()))) { $a->save(array("CombinationsReview" => array('combination_id' => $v['Combination']['id'], 'review_id' => $this->getLastInsertID()))); } } } }
public function generate() { Configure::write('debug', 2); $this->loadModel('Recipe'); $this->Recipe->recursive = 0; $recipes = $this->Recipe->find('all', array("order" => "Recipe.recipe_name ASC")); $r = array(); foreach ($recipes as $d) { $r[] = $d['Recipe']; } $this->set("recipes", $r); $this->loadModel('Vendor'); $this->Vendor->recursive = 0; $vendors = $this->Vendor->find('all'); $r = array(); foreach ($vendors as $d) { $r[] = $d['Vendor']; } $this->set("vendors", $r); if ($this->request->is('post')) { App::uses("HtmlHelper", "View/Helper"); $html = new HtmlHelper(new View()); foreach ($this->request->data as $data) { ///-------------Create Thali image start $is_thali = true; $dishArr = array(); foreach ($data['Combination']['CombinationItem'] as $v) { $dishArr[] = ltrim($v['image'], 'https://www.pickmeals.com/'); if ($v['is_thali'] == 'false') { $is_thali = false; } } if (count($dishArr) == 1) { //for same dish in both 2 bowls $dishArr[] = $dishArr[0]; } $thali_pngs = $this->createThali($dishArr, $is_thali, 150); $data['Combination']['image'] = $html->url("/" . $thali_pngs[2], true); ///-------------Create Thali image end //------------Vendor Cost and Price Logic starts //vendor_cost //------------Vendor Cost and Price Logic ends $this->Combination->saveAssociated($data, array('deep' => true)); $this->loadModel('Review'); debug($this->Combination->getLastInsertID()); $x = $this->Combination->find("first", array("conditions" => array("Combination.id" => $this->Combination->getLastInsertID()))); $x2 = $this->Review->find("all", array("contain" => false, "conditions" => array("Review.combination_reviewkey" => $x['Combination']['reviewkey']), "fields" => array("id"))); foreach ($x2 as $v) { App::uses("CombinationsReview", "Model"); $a = new CombinationsReview(); //$a->create(); if (!$a->hasAny(array("CombinationsReview.combination_id" => $this->Combination->getLastInsertID(), "CombinationsReview.review_id" => $v['Review']['id']))) { $a->save(array("CombinationsReview" => array('combination_id' => $this->Combination->getLastInsertID(), 'review_id' => $v['Review']['id']))); } } } } }