$oPart->setPartUnit($partUnit); for ($i=0;$i<rand(0,15);$i++) { $randomManufacturer = rand(0, count($aManufacturers)-1); $oPart->getManufacturers()->add(new PartManufacturer($oPart, $aManufacturers[$randomManufacturer])); } $oPart->getDistributors()->add(new PartDistributor($oPart, $aDistributors[$part["id_supplier"]])); //echo "Migrating part ".sprintf("%-40s", $part["name"])."\r"; /* Add existing datasheets */ $datasheetQuery = "SELECT datasheeturl FROM datasheets WHERE part_id = ".$part["id"]; $r3 = mysql_query($datasheetQuery); while ($res = mysql_fetch_assoc($r3)) { $attachment = new PartAttachment(); $attachment->setPart($oPart); $attachment->replaceFromURL($res["datasheeturl"]); $attachment->setDescription(PartKeepr::i18n("Datasheet")); $oPart->getAttachments()->add($attachment); } PartKeepr::getEM()->persist($oPart); $oStock = new StockEntry($oPart, $part["instock"]); $priceQuery = "SELECT AVG(preis) AS preis FROM preise WHERE part_id = ".$part["id"]; $r2 = mysql_query($priceQuery); $res = mysql_fetch_assoc($r2);
private function processAttachmentChanges (Part $part, Array $data) { if (array_key_exists("updates", $data)) { foreach ($data["updates"] as $record) { foreach ($part->getAttachments() as $partAttachment) { if ($partAttachment->getId() == $record["id"]) { $partAttachment->setDescription($record["description"]); break; } } } } if (array_key_exists("removals", $data)) { foreach ($data["removals"] as $record) { foreach ($part->getAttachments() as $partAttachment) { if ($partAttachment->getId() == $record["id"]) { PartKeepr::getEM()->remove($partAttachment); $part->getAttachments()->removeElement($partAttachment); break; } } } } if (array_key_exists("inserts", $data)) { foreach ($data["inserts"] as $record) { $attachment = new PartAttachment(); $attachment->setPart($part); $attachment->setDescription($record["description"]); $file = TempUploadedFile::loadById($record["tmp_id"]); $attachment->replace($file->getFilename()); $attachment->setOriginalFilename($file->getOriginalFilename()); $part->getAttachments()->add($attachment); } } }