<?php
/**
 * 
 * @author raciniak
 *
 */
class Categories {

	/**
	 * Na wejściu przyjmuje itemy, zwraca tablicę kategorii
	 *
	 * Poniższa metoda stworzy strukturę tablicy:
	 *
	 * 	
	 * 				   |
	 * 				   |
	 * 				   +----- Kategoria1 --------------------------+ Wpis dokumentu1
	 * 				   |						|
	 * 				   |						|
	 * 				   |						|
	 * 				   |						+-------------------+ Wpis dokumentu2
	 * 				   |
	 * 				   |
	 * 				   |
	 * 				   +----- Kategoria2 --------------------------+ Wpis dokumentu3
	 * 				   							|
	 * 				   							|
	 * 				   							|
	 * 				   							+-------------------+ Wpis dokumentu4
	 *
	 * na podstawie tablicy wpisów dokumentu(items - w liście dokumentów zwracanych przez metodę getBetweenDate w klasie Invoice i Receipt)
	 * */
	public static function categorizeItemsArray( $items ) {
		$categories = array();
		
		foreach( $items as $item ) {
			$categoryName = Categories::getCategoryNameById( $item["ecmproductcategory_id"] );
			$categories[$categoryName] = $item;
		}

		return $categories;
	}
	
	/**
	 * Pobiera nazwę kategorii na podstawie id
	 * @param unknown $id
	 */
	public static function getCategoryNameById( $id ) {
		$db = $GLOBALS ['db'];
		$query = "select name from ecmproductcategories where id='$id'";
		$result = $db->query ( $query );
		$arrayResult = $result->fetch_assoc();
		$arrayResult["name"] == "" ? $name = "Inne" : $name = $arrayResult["name"];
		return $name;
	}
	
}

?>