<?php
include_once(__DIR__."/../../../core.php");

	/*
		RICERCA PRODOTTI
	*/

	echo "<div class=\"panel panel-primary\">\n";
	echo "	<div class=\"panel-heading\">\n";
	echo "		<h3 class=\"panel-title\">Produzione</h3>\n";
	echo "	</div>\n";
		
	echo "	<div class=\"panel-body\">\n";
			

	$search_serial = $_GET['search_serial'];

	
	//Calcolo prossimo lotto e serial number
	$rs = $dbo->fetchArray("SELECT MAX(serial) AS max_serial FROM mg_prodotti WHERE idarticolo=\"".$id_record."\"");

	$max_serial = $rs[0]['max_serial'];
	$next_serial = get_next_code( $max_serial );

	
	echo "		<form action=\"\" method=\"post\" role=\"form\">\n";
	echo "		<input type=\"hidden\" name=\"backto\" value=\"record-edit\">\n";
	echo "		<input type=\"hidden\" name=\"op\" value=\"addprodotto\">\n";
	echo "		<input type=\"hidden\" name=\"id_record\" value=\"$id_record\">\n";
	
	
	//Campi di inserimento lotti
	echo "		<div class=\"row form-group\">\n";
	echo "			<div class=\"col-md-12\">\n";
	echo "				<h4>Inserimento nuovi prodotti</h4>\n";
	echo "			</div>\n";
	echo "		</div>\n";

	

	// Serial
	echo "		<div class=\"row form-group\">\n";
	echo "			<label class=\"col-md-2 control-label\" for=\"serial_start\">Serial number da:</label>\n";
	echo "			<div class=\"col-md-2\">\n";
  	echo "				<input type='text' class='form-control input-md' name='serial_start' onkeyup=\"$('input[name=serial_end]').val( $('input[name=serial_start]').val() ); $('#warn_serial').hide(); ricalcola_totale_prodotti();\" value=\"".$next_serial."\" />";
	echo "			</div>\n";
	echo "			<label class=\"col-md-1 control-label text-center\" for=\"serial_end\"> <i class=\"fa fa-arrow-circle-right fa-2x\"></i> </label>\n";
	echo "			<div class=\"col-md-2\">\n";
  	echo "				<input type='text' class='form-control input-md' name='serial_end' onkeyup=\"check_progressivo( $('input[name=serial_start]'), $('input[name=serial_end]'), $('#warn_serial'), $('#inserisci') );\" value=\"".$next_serial."\" />";
	echo "			</div>\n";
	echo "			<div class=\"col-md-3\">\n";
	if( $max_serial!='' )
	echo "				<p id='warn_serial' class='text-danger'><b>Ultimo serial number inserito:</b> $max_serial</p>\n";
	echo "			</div>\n";
	echo "		</div>\n";


	
	
	//Totale prodotti da inserire
	echo "		<div class=\"row\">\n";
	echo "			<div class=\"col-md-12\">\n";
	echo "				<p class='text-danger text-center\'>Totale prodotti da inserire: <span id='totale_prodotti'>0</span></p>\n";
	echo "				<button type='submit' id='inserisci' class='btn-app' onclick=\"if( confirm('Confermi l\\'inserimento di '+globalsp.n_prodotti+' prodotti?') ){ $('#insert_form').submit(); }\"><i class='fa fa-check'></i> Salva</button>\n";
	
	//Visualizzo, in base alle impostazioni scelte, se il magazzino verrà movimentato
	if( get_var("Movimenta il magazzino durante l'inserimento o eliminazione dei lotti/serial number")==true )
		echo "			<small>L&rsquo;inserimento incrementer&agrave; la quantit&agrave; dell&rsquo;articolo!</small>\n";
	else
		echo "			<small>L&rsquo;inserimento non movimenter&agrave; la quantit&agrave; dell&rsquo;articolo!</small>\n";


	echo "			</div>\n";
	echo "		</div>\n";
	echo "		</form>\n";

	echo "	</div>\n";
	echo "</div>\n";


	// campi di ricerca	
	echo "<div class=\"panel panel-primary\">\n";
	echo "	<div class=\"panel-heading\">\n";
	echo "		<h3 class=\"panel-title\">Ricerca prodotti</h3>\n";
	echo "	</div>\n";
		
	echo "	<div class=\"panel-body\">\n";
	
	echo "		<p>Puoi ricercare un prodotto venduto o acquistato a partire serial </p>\n";

	echo "		<form action=\"\" method=\"get\" role=\"form\">\n";
	echo "		<input type=\"hidden\" name=\"backto\" value=\"record-edit\">\n";
	echo "		<input type=\"hidden\" name=\"id_record\" value=\"$id_record\">\n";
	echo "		<input type=\"hidden\" name=\"id_module\" value=\"$id_module\">\n";

	echo "		<div class=\"row form-group\">\n";
	echo "			<div class=\"col-md-3\">\n";
	echo "				<label class=\"control-label\" for=\"search_serial\">Serial number:</label>\n";
  	echo "				<input type='text' class='form-control input-md' id='search_serial' name='search_serial' value=\"".$search_serial."\" />";
	echo "			</div>\n";	
	echo "		</div>\n";
	echo "		<button type='submit' id='ricerca' class='btn btn-primary' ><i class='fa fa-search'></i> Avvia ricerca</button>\n";
	echo "		</form><br/>\n";

	
	echo "<div class=\"text-right\">\n";
	//Visualizzo, in base alle impostazioni scelte, se il magazzino verrà movimentato
	if( get_var("Movimenta il magazzino durante l'inserimento o eliminazione dei serial number")==true )
		echo "<small style='color:#f00;'>La cancellazione decrementer&agrave; la quantit&agrave; dell&rsquo;articolo!</small>\n";
	else
		echo "<small style='color:#f00;'>L&rsquo;inserimento non decrementer&agrave; la quantit&agrave; dell&rsquo;articolo!</small>\n";
	echo "</div>\n";
	echo "<br/>\n";


	
	//Conteggio totale prodotti
	$rs = $dbo->fetchArray("SELECT COUNT(id) AS tot FROM mg_prodotti WHERE idarticolo='".$id_record."'");
	$tot_prodotti = $rs[0]['tot'];

	//Visualizzazione di tutti i prodotti		
	$query = "SELECT * FROM mg_prodotti WHERE idarticolo='".$id_record."' AND serial LIKE \"%$search_serial%\" ";


	( isset($_GET['show_all3']) && $_GET['show_all3']!='' && $search_serial=='' ) ? $show_all=$_GET['show_all3'] : $show_all='0';
	$query .= " ORDER BY data DESC, serial DESC";

	if( $show_all=='0' )
		$query .= " LIMIT 0, 20";

	$rs2 = $dbo->fetchArray($query);

	if( sizeof($rs2)==0 ){
		echo "<p>"._("Nessun articolo trovato")."...</p>\n";
		echo "<a href='".$rootdir."/editor.php?id_module=".$modules_info['Articoli']['id']."&id_record=".$id_record."&showall3=1#tab_3'>[ Mostra tutti i prodotti ]</a>\n";
	}
	else{

		echo "<table class='table table-striped table-hover table-condensed table-bordered'>\n";

		echo "<thead><tr>\n";
		echo "	<th width='200' id=\"th_Serial\">Serial</th>\n";		
		echo "	<th width='200' id=\"th_Data di creazione\">Data di creazione</th>\n";
		echo "	<th width='400' id=\"th_Documento di carico\">Ordine Fornitore</th>\n";		
		echo "	<th width='400' id=\"th_Documento di vendita\">Documento</th>\n";
		echo "	<th width='100' id=\"th_Totale\">Totale</th>\n";
		echo "	<th> </th>\n";
		echo "</tr></thead>\n";

		echo "<tbody>\n";

		for( $i=0; $i<sizeof($rs2); $i++ ){
	
			echo "<td class='text-center'>\n";
			echo $rs2[$i]['serial']."\n";
			echo "</td>\n";
							
			echo "<td class='text-center'>\n";
			echo date("d/m/Y H:i:s", strtotime($rs2[$i]['data']))."\n";
			echo "</td>\n";
		// ricerco evbemntuali dordini di carico
			$query4 = "SELECT * FROM mg_prodotti  WHERE idarticolo='".$id_record."' AND serial=\"".$rs2[$i]['serial']."\" AND id_riga_ordine <> 0";
			$rs4 = $dbo->fetchArray($query4);				
			if( sizeof($rs4)==1 ){
				$query4 = "SELECT * from or_righe_ordini  
				left join or_ordini on or_ordini.id=or_righe_ordini.idordine
				left join an_anagrafiche on an_anagrafiche.idanagrafica = or_ordini.idanagrafica				
				WHERE or_righe_ordini.id='".$rs4[0]['id_riga_ordine']."' ";				
				$rs4 = $dbo->fetchArray($query4);
				echo "<td class=''>\n";
				echo "<a href=\"".$rootdir."/editor.php?id_module=".$modules_info['Ordini fornitore']['id']."&id_record=".$rs4[0]['idordine']."\" title=\"Clicca per aprire questo ordine\" target=\"_blank\">Ordine n<sup>o</sup> ".$rs4[0]['numero_esterno']." del ".date( "d/m/Y", strtotime($rs4[0]['data']) )."</a>\n";
				echo "</td>\n";
			//	echo "<td class=''>&nbsp;</td>\n";
			}
			else{		
				//ordine
				echo "<td class='text-left'>\n";
				echo "\n";
				echo "</td>\n";
			}	
		//Venduto su fatture	
			$query4 = "SELECT * FROM mg_prodotti  WHERE idarticolo='".$id_record."' AND serial=\"".$rs2[$i]['serial']."\" AND id_riga_documento <> 0";
			$rs4 = $dbo->fetchArray($query4);			
			
			
			if( sizeof($rs4)==1 ){
				
				$query4 = "SELECT *, ( SELECT descrizione FROM co_tipidocumento WHERE id=(SELECT idtipodocumento FROM co_documenti WHERE id=iddocumento) ) AS tipo_documento, ( SELECT `dir` FROM co_tipidocumento WHERE id=(SELECT idtipodocumento FROM co_documenti WHERE id=iddocumento) ) AS `dir`, ( SELECT numero FROM co_documenti WHERE id=iddocumento ) AS numero, ( SELECT numero_esterno FROM co_documenti WHERE id=iddocumento ) AS numero_esterno, ( SELECT data FROM co_documenti WHERE id=iddocumento ) AS data FROM co_righe_documenti WHERE id='".$rs4[0]['id_riga_documento']."' ";
				$rs4 = $dbo->fetchArray($query4);
				
				
				($rs4[0]['numero_esterno']!='') ? $numero=$rs4[0]['numero_esterno'] : $numero=$rs4[0]['numero'];
				
				echo "<td class=''>\n";
				echo "<a href=\"".$rootdir."/editor.php?id_module=".$modules_info['Fatture di vendita']['id']."&id_record=".$rs4[0]['iddocumento']."\" title=\"Clicca per aprire questo documento\" target=\"_blank\">".$rs4[0]['tipo_documento']." n<sup>o</sup> ".$numero." del ".date( "d/m/Y", strtotime($rs4[0]['data']) )."</a>\n";
				echo "</td>\n";
		
				echo "<td class='text-center'>\n";
				echo "<span>&euro; ".number_format($rs4[0]['subtotale']+$rs4[0]['iva'], 2, ",", ".")."</span><br/><small style='color:#555;'>".number_format($rs4[0]['subtotale'], 2, ",", "." )." + ".number_format($rs4[0]['iva'], 2, ",", "." )."</small>\n";
				echo "</td>\n";
				
			//	echo "<td class=''>&nbsp;</td>\n";
				
			}
			

			//Non venduto
			else{								
				//Documento
				echo "<td class='text-left'>\n";
				echo "\n";
				echo "</td>\n";
			

				//Totale
				echo "<td class='text-center'>\n";
				echo "\n";
				echo "</td>\n";
			}	
				echo "<td class='text-center'>\n";

				echo "	<form action='".$rootdir."/editor.php?id_module=".$id_module."&id_record=".$id_record."' method='post' id='delete-form-".$rs2[$i]['id']."' role='form'>\n";
				echo "		<input type='hidden' name='backto' value='record-edit'>\n";
				echo "		<input type='hidden' name='id_record' value='".$id_record."'>\n";
				echo "		<input type='hidden' name='op' value='delprodotto'>\n";
				echo "		<input type='hidden' name='idprodotto' value='".$rs2[$i]['id']."'>\n";
				
				echo "		<a href='javascript:;' class='btn btn-sm btn-danger' title='Rimuovi questa riga' onclick=\"if( confirm('Vuoi eliminare questo prodotto?') ){ $('#delete-form-".$rs2[$i]['id']."').submit(); }\"><i class='fa fa-trash-o'></i></a>\n";
				echo "	</form>\n";


				echo "</td>\n";
			//}
			echo "</tr>\n";
		}
	}
	echo "</tbody>\n";
	echo "</table>\n";
	
	if( $_GET['show_all3']=='1' )
		echo "<a href='".$rootdir."/editor.php?id_module=$id_module&id_record=$id_record&amp;show_all3=0#tab_3'>[ Mostra solo gli ultimi 20 prodotti ]</a>\n";
	else
		echo "<a href='".$rootdir."/editor.php?id_module=$id_module&id_record=$id_record&amp;show_all3=1#tab_3'>[ Mostra tutti i ".$tot_prodotti." prodotti ]</a>\n";


			echo "	</div>\n";
	echo "</div>\n";

?>

<script type="text/javascript">

globalsp = { n_prodotti: 0 };


$(document).ready( function(){
	setInterval( "ricalcola_totale_prodotti()", 1000 );
});

/*
	Queste funzioni servono a verificare se i codici di lotti, serial number e "altro" sono progressivi
*/
function check_progressivo( start, end, warn, submit_btn ){
	digits_start 	= get_last_numeric_part( start.val().toString() );
	digits_end 		= get_last_numeric_part( end.val().toString() );

	//Nessun codice numerico trovato
	if( digits_start=='' || digits_end=='' ){
		warn.show();
		submit_btn.hide();
	}
	else{
		warn.hide();
		submit_btn.show();
	}
	ricalcola_totale_prodotti();
}

function ricalcola_totale_prodotti(){


		serial_start 	= get_last_numeric_part( $('input[name=serial_start]').val().toString() );
		serial_end 		= get_last_numeric_part( $('input[name=serial_end]').val().toString() );
		serial = Math.abs( parseInt(serial_end,10) - parseInt(serial_start,10) )+1;


		


		//Se tutti i campi sono vuoti, il numero di prodotti è zero!
		if(  isNaN(serial)  ){
			globalsp.n_prodotti = 0;
		}
	
		else{
			
	
			if( isNaN(serial) )
				serial = 1;
	
			
		
		
			globalsp.n_prodotti =  serial ;
		}
	
	
	
		$('#totale_prodotti').text( globalsp.n_prodotti );
	
		if( globalsp.n_prodotti==0 )
			$('#inserisci').hide();
		else
			$('#inserisci').show();
	
}


/*
	Questa funzione restituisce la parte numerica di una stringa
*/
function get_last_numeric_part( str ){
	var matches = str.match(/(.*?)([\d]*$)/);
	return matches[2];
}


function reverse_string( s ){
    return s.split("").reverse().join("");
}

</script>
