From 3882025b6c83fa9dd169a7dfcba047a608c18985 Mon Sep 17 00:00:00 2001
From: Jacek Kowalski <Jacek@jacekk.info>
Date: Sat, 30 Mar 2013 14:18:30 +0000
Subject: [PATCH] Moduł OPAC - wersja stworzona na podstawie głównego modułu

---
 includes/ksiazki.php |  118 +++-------------------------------------------------------
 1 files changed, 7 insertions(+), 111 deletions(-)

diff --git a/includes/ksiazki.php b/includes/ksiazki.php
index eef123e..1cdced5 100644
--- a/includes/ksiazki.php
+++ b/includes/ksiazki.php
@@ -13,10 +13,6 @@
 	}
 	
 	static function cache_add($kod, &$dane) {
-		if($dane['od2']) {
-			$dane['od'] = $dane['od2'];
-			unset($dane['od2']);
-		}
 		self::$cache[(int)$kod] = $dane;
 	}
 	
@@ -37,48 +33,18 @@
 	}
 	
 	static function cache_update($kod) {
-		$dane = db2::escape_data(sql::fetchone(sql::query('SELECT *, (SELECT MAX(`od`) FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id`) as `od2`, (SELECT `do` FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id` AND `od`=`od2`) as `do`, (SELECT `kto` FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id` AND `od`=`od2`) as `kto` FROM `ksiazki` WHERE `id`=\''.sql::escape($kod).'\'')));
+		$dane = db2::escape_data(sql::fetchone(sql::query('SELECT `ksiazki`.*, `pozycz`.`od`, `pozycz`.`kto` FROM `ksiazki` LEFT OUTER JOIN `pozycz` ON `pozycz`.`id`=`ksiazki`.`id` WHERE `ksiazki`.`id`='.sql::escape($kod))));
 		self::cache_add($kod, $dane);
 	}
 }
 
 class ksiazki extends ksiazki_cache {
-	static $LT_API = '';
-	
 	static function okladka($KOD, $ISBN) {
 		return okladki::znajdz($KOD, $ISBN, 'covers');
 	}
 	
 	static function okladka_big($KOD, $ISBN) {
 		return okladki::znajdz($KOD, $ISBN, 'covers_big');
-	}
-	
-	static function dodaj(&$dane) {
-		validate::KOD($dane['id'], FALSE);
-		
-		if($dane['ISBN']) {
-			$t = validate::type($dane['ISBN']);
-			if($t!='ISBN') {
-				error::add('W polu ISBN znajduje się '.$t);
-			}
-		}
-		if($dane['ISSN']) {
-			$t = validate::type($dane['ISSN']);
-			if($t!='ISSN') {
-				error::add('W polu ISSN znajduje się '.$t);
-			}
-		}
-		
-		if($dane['jezyk']=='pol') {
-			$dane['jezyk'] = 'polski';
-		}
-		
-		unset($_POST['okladka']);
-		
-		okladki::upload($_FILES['okladka'], $dane['id'], $dane['ISBN']);
-		
-		db2::add('ksiazki', $dane);
-		self::cache_update($dane['id']);
 	}
 	
 	static function exists($kod) {
@@ -90,76 +56,6 @@
 		{
 			return FALSE;
 		}
-	}
-	
-	static function edytuj(&$dane) {
-		validate::KOD($dane['id']);
-		$kod = $dane['id'];
-		
-		$old = self::szukaj_KOD($kod);
-		
-		if($dane['id']=='' OR empty($dane['autor']) OR empty($dane['tytul']) OR empty($dane['jezyk'])) {
-			error::add('Brak wymaganych danych o książce (kod, autor, tytuł, język)');
-		}
-		
-		if($dane['nid']!='') {
-			validate::KOD($dane['nid']);
-			$dane['id'] = $dane['nid'];
-		}
-		
-		unset($dane['nid']);
-		
-		if($dane['ISBN']) {
-			$t = validate::type($dane['ISBN']);
-			if($t!='ISBN') {
-				error::add('W polu ISBN znajduje się '.$t);
-			}
-		}
-		if($dane['ISSN']) {
-			$t = validate::type($dane['ISSN']);
-			if($t!='ISSN') {
-				error::add('W polu ISSN znajduje się '.$t);
-			}
-		}
-		
-		if(!$dane['wycofana']) {
-			$dane['wycofana'] = 0;
-			$dane['powod'] = NULL;
-		}
-		
-		okladki::przenies($old['id'], $old['ISBN'], $dane['id'], $dane['ISBN']);
-		
-		unset($_POST['okladka']);
-		
-		// Nowa okładka
-		if(isset($_POST['okladka_del']) || (isset($_FILES['okladka']) && is_uploaded_file($_FILES['okladka']['tmp_name']))) {
-			okladki::usun($dane['id'], $dane['ISBN']);
-			unset($_POST['okladka_del']);
-		}
-		
-		okladki::upload($_FILES['okladka'], $dane['id'], $dane['ISBN']);
-		
-		db2::edit('ksiazki', $dane, array('id' => $kod));
-		self::cache_update($kod);
-		if($dane['id']!=$kod) {
-			self::cache_update($dane['id']);
-		}
-	}
-	
-	static function miejsce($regal, $polka, $rzad, $where) {
-		db2::edit('ksiazki', array('regal' => strtoupper($regal), 'polka' => $polka, 'rzad' => $rzad), $where);
-		self::cache_clear();
-	}
-	
-	static function usun(&$kod) {
-		validate::KOD($kod);
-		
-		$dane = self::szukaj_KOD($kod);
-		
-		okladki::usun($dane['id'], $dane['ISBN']);
-		
-		db2::del('ksiazki', array('id' => $kod));
-		self::cache_clear($kod);
 	}
 	
 	static function szukaj_KOD($kod) {
@@ -235,25 +131,25 @@
 		else
 		{
 			if($dane['do']) {
-				$num = db2::num('pozycz', 'id', array('do' => NULL));
-				if($num==0) {
+				$num = db2::num('pozycz', 'id');
+				if($num == 0) {
 					$ret = array();
 				}
 				else
 				{
-					$ret = db2::get(array('pozycz', array('J', 'ksiazki', 'USING', 'id')), '*', array('do' => NULL), $order, $start, $limit);
+					$ret = db2::get(array('pozycz', array('J', 'ksiazki', 'USING', 'id')), '*', NULL, $order, $start, $limit);
 				}
 			}
 			else
 			{
 				$num = db2::num('ksiazki', 'id', $where);
-				if($num==0) {
+				if($num == 0) {
 					$ret = array();
 				}
 				else
 				{
 					$where = db2::__combine_where($where, TRUE);
-					$ret = db2::escape_data(sql::fetch(sql::query('SELECT *, (SELECT MAX(`od`) FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id`) as `od2`, (SELECT `do` FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id` AND `od`=`od2`) as `do`, (SELECT `kto` FROM `pozycz` WHERE `pozycz`.`id`=`ksiazki`.`id` AND `od`=`od2`) as `kto`'.(db2::revelance() ? ', '.db2::$revelance : '').' FROM `ksiazki`'.$where.db2::__combine_order($order, TRUE).db2::__combine_limit($start, $limit))));
+					$ret = db2::escape_data(sql::fetch(sql::query('SELECT `ksiazki`.*, `pozycz`.`od`, `pozycz`.`kto`'.(db2::revelance() ? ', '.db2::$revelance : '').' FROM `ksiazki` LEFT OUTER JOIN `pozycz` ON `pozycz`.`id`=`ksiazki`.`id` '.$where.db2::__combine_order($order, TRUE).db2::__combine_limit($start, $limit))));
 				}
 			}
 			
@@ -263,4 +159,4 @@
 		return array($num, $ret, db2::revelance());
 	}
 }
-?>
+?>
\ No newline at end of file

--
Gitblit v1.9.1