/** * Sets usedImagesIds property */ private function setUsedImagesIds() { // clean junction table ImageGallery::deleteAll('image_id IS NULL'); // return array populated with image_ids $this->usedImagesIds = ImageGallery::find()->select('image_id')->andWhere(['gallery_id' => $this->item_id])->column(); }
public function beforeDelete() { if (parent::beforeDelete()) { $items = ImageGallery::find()->where(['ebay_item_id' => $this->ebay_item_id])->all(); foreach ($items as $item) { $item->delete(); } return true; } else { return false; } }
/** * Returns array of photos with delete button of given gallery * @return array */ public function getPhotosWithControl() { $imageGalleries = ImageGallery::find()->andWhere(['gallery_id' => $this->item_id])->orderBy('item_order')->all(); $photosArray = []; /** @var ImageGallery $imageGallery */ foreach ($imageGalleries as $imageGallery) { if ($imageGallery->image) { $photosArray[$imageGallery->id] = ['content' => $this->renderPhotoWithControl($imageGallery->image)]; } } return $photosArray; }
private function getSingleItemFromEbay($ebayitemid) { $this->queryText = $ebayitemid; $this->getItems(); if (!ImageGallery::find()->where(['ebay_item_id' => $ebayitemid])->exists()) { $service = new ShopSer\ShoppingService(array('apiVersion' => $this->config['shoppingApiVersion'], 'appId' => $this->config['production']['appId'])); $request = new ShopType\GetSingleItemRequestType(); $request->ItemID = $ebayitemid; $request->IncludeSelector = 'Details'; $response = $service->getSingleItem($request); if ($response->Ack !== 'Failure') { $res = $response->toArray(); $this->addImagesToDB($res, $ebayitemid); } } }