Example #1
0
	/**
	* Sets the data for the manufacturer.
	* @param Manufacturer $manufacturer The manufacturer to process
	*/
	private function setManufacturerData (Manufacturer $manufacturer) {
		$manufacturer->setName($this->getParameter("name"));
		$manufacturer->setComment($this->getParameter("comment", ""));
		$manufacturer->setAddress($this->getParameter("address", ""));
		$manufacturer->setURL($this->getParameter("url", ""));
		$manufacturer->setEmail($this->getParameter("email", ""));
	}
	public function create () {
		$this->requireParameter("tmp_id");
		$this->requireParameter("manufacturer_id");
		
		$tmpImage = TempImage::loadById($this->getParameter("tmp_id"));
		
		$image = new ManufacturerICLogo();
		
		$manufacturer = Manufacturer::loadById($this->getParameter("manufacturer_id"));
		
		$image->setManufacturer($manufacturer);
		$image->replace($tmpImage->getFilename());
		PartKeepr::getEM()->persist($image);
		PartKeepr::getEM()->flush();
		
		return $image->serialize();
	}
	/**
	 * Returns a list of manufacturer ic logos.
	 *
	 * @param int $start Start of the list, default 0
	 * @param int $limit Number of users to list, default 10
	 * @param string $sort The field to sort by, default "name"
	 * @param string $dir The direction to sort (ASC or DESC), default ASC
	 * @param string $filter The manufacturer id
	 */
	public function getManufacturerICLogos ($start = 0, $limit = 10, $sort = "name", $dir = "asc", $filter = "") {
			
		$qb = PartKeepr::getEM()->createQueryBuilder();
		$qb->select("st.id, maf.id AS manufacturer_id")->from("de\RaumZeitLabor\PartKeepr\Manufacturer\ManufacturerICLogo","st")
			->leftJoin('st.manufacturer', "maf");

		if ($filter != "") {
			$manufacturer = Manufacturer::loadById($filter);
			$qb = $qb->where("st.manufacturer = :manufacturer");
			$qb->setParameter("manufacturer", $manufacturer);
		}
				
		if ($limit > -1) {
			$qb->setMaxResults($limit);
			$qb->setFirstResult($start);
		}
		
		$qb->orderBy("st.".$sort, $dir);

		$query = $qb->getQuery();
		
		$result = $query->getResult();
		
		$totalQueryBuilder = PartKeepr::getEM()->createQueryBuilder();
		$totalQueryBuilder->select("COUNT(st.id)")->from("de\RaumZeitLabor\PartKeepr\Manufacturer\ManufacturerICLogo","st");
		
		
		
		if ($filter != "") {
			$totalQueryBuilder = $totalQueryBuilder->where("st.manufacturer = :manufacturer");
			$totalQueryBuilder->setParameter("manufacturer", $manufacturer);
		}
		
		$totalQuery = $totalQueryBuilder->getQuery();
		
		return array("data" => $result, "totalCount" => $totalQuery->getSingleScalarResult());
	}
Example #4
0
	PartKeepr::getEM()->persist($unit);
	$aUnits[] = $unit;
	
}

PartKeepr::getEM()->flush();


/* Add manufacturers and IC logos */
$data = \Symfony\Component\Yaml\Yaml::load("../setup/data/manufacturers/manufacturers.yaml");

$aManufacturers = array();
$aDistributors = array();

foreach ($data as $mfgname => $logos) {
	$manufacturer = new Manufacturer();
	$manufacturer->setName($mfgname);
	
	PartKeepr::getEM()->persist($manufacturer);
	$aManufacturers[] = $manufacturer;
	
	foreach ($logos as $logo) {
		$mfglogo = new ManufacturerICLogo();
		$mfglogo->setManufacturer($manufacturer);
		$mfglogo->replace("../setup/data/manufacturers/images/".$logo);
		$mfglogo->setOriginalFilename($logo);
		
		PartKeepr::getEM()->persist($mfglogo);
	}
}
Example #5
0
use de\RaumZeitLabor\PartKeepr\Manufacturer\ManufacturerICLogo;
use de\RaumZeitLabor\PartKeepr\Manufacturer\Manufacturer;

include("../src/de/RaumZeitLabor/PartKeepr/PartKeepr.php");

PartKeepr::initialize("");

$keys = array_keys($_FILES);

$file = $_FILES[$keys[0]]["tmp_name"];
$filename = $_FILES[$keys[0]]["name"];

switch ($_REQUEST["uploadMode"]) {
	case "image":
		
		switch ($_REQUEST["uploadType"]) {
			case Image::IMAGE_ICLOGO:
				$manufacturer = Manufacturer::loadById($_REQUEST["manufacturer"]);
				
				$image = new ManufacturerICLogo();
				$image->setManufacturer($manufacturer);
				$image->replace($file);
				$image->setOriginalFilename(basename($filename));
				PartKeepr::getEM()->persist($image);
				PartKeepr::getEM()->flush();
		}
		
		break;
}

echo json_encode("OK");
Example #6
0
	/**
	 * Deletes the manufacturer by id
	 * @param int $id The manufacturer's id
	 */
	public function deleteManufacturer ($id) {
		$manufacturer = Manufacturer::loadById($id);
		
		PartKeepr::getEM()->remove($manufacturer);
		PartKeepr::getEM()->flush();
	}
Example #7
0
	private function processManufacturerChanges (Part $part, Array $data) {
		if (array_key_exists("updates", $data)) {
			foreach ($data["updates"] as $record) {
				foreach ($part->getManufacturers() as $partManufacturer) {
					if ($partManufacturer->getId() == $record["id"]) {
						$partManufacturer->setPartNumber($record["partNumber"]);
						$partManufacturer->setManufacturer(Manufacturer::loadById($record["manufacturer_id"]));
						break;
					}
				}
			}
		}
		
		if (array_key_exists("removals", $data)) {
			foreach ($data["removals"] as $record) {
				foreach ($part->getManufacturers() as $partManufacturer) {
					if ($partManufacturer->getId() == $record["id"]) {
						PartKeepr::getEM()->remove($partManufacturer);
						$part->getManufacturers()->removeElement($partManufacturer);
						break;
					}
				}
			}
		}
		
		if (array_key_exists("inserts", $data)) {
			foreach ($data["inserts"] as $record) {
				$manufacturer = new PartManufacturer($part, Manufacturer::loadById($record["manufacturer_id"]));
				$manufacturer->setPartNumber($record["partNumber"]);
				
				$part->getManufacturers()->add($manufacturer);
			}
		}
	}