<?php

if(!defined('sugarEntry') || !sugarEntry) die('Not A Valid Entry Point');

global $sugar_version, $sugar_config, $current_user, $app_strings, $mod_strings, $current_user, $app_list_strings, $db;
	  
$app_list_strings['ecmproducts_parent_dom'] = array (
  'Accounts' => $app_list_strings['moduleList']['Accounts'],
  'Leads' => $app_list_strings['moduleList']['Leads'],
);
require_once('modules/EcmProductB2Bs/EcmProductB2B.php');
require_once('modules/EcmProductB2Bs/Forms.php');
require_once('include/time.php');
require_once('include/json_config.php');

$json_config = new json_config();

$focus = new EcmProductB2B();   
  
if(isset($_REQUEST['record'])){
	$focus->retrieve($_REQUEST['record']);
    //if(isset($focus->id) && $focus->id != '')$focus->format_all_fields();
}

$json = getJSONobj();

require_once('include/MVC/View/SugarView.php');  
require_once('modules/EcmProductB2Bs/views/DetailView/view.detail.ecmproductb2bs.php');
$detail = new ViewDetailEcmProductB2Bs();
$detail->ss = new Sugar_Smarty();
$detail->bean = $focus;

$detail->preDisplay(); 

   $uunit_array = array();
   $uunit='';
   $result = $db->query("select id,name from ecmproductusageunits order by name asc");
   while(($row=$db->fetchByAssoc($result))!=null)
   {
		$uunit.='<option value="'.$row['id'].'"';
		if($focus->usage_unit_id==$row['id'])$uunit.=' selected';
		$uunit.='>'.$row['name'].'</option>';
		$uunit_array[$row['id']] = $row['name'];
   }
   $detail->ss->assign("USAGE_UNIT_ID",$uunit);  

   $tax='';
   $result = $db->query("select id,name from ecmvats where deleted='0' order by name asc");
   while(($row=$db->fetchByAssoc($result))!=null)
   {
		$tax.='<option value="'.$row['id'].'"';
		if($focus->vat_id==$row['id'])$tax.=' selected';
		$tax.='>'.$row['name'].'</option>';
   }
   $detail->ss->assign("VAT_ID",$tax);  

   $fbas='';
   $result = $db->query("select id,name from ecmproductbasis order by name asc");
   while(($row=$db->fetchByAssoc($result))!=null)
   {
		$fbas.='<option value="'.$row['id'].'"';
		if($focus->fob_basis_id==$row['id'])$fbas.=' selected';
		$fbas.='>'.$row['name'].'</option>';
   }
   $detail->ss->assign("FOB_BASIS_ID",$fbas);  

   $pack='';
   $result = $db->query("select id,name from ecmproductpackingtypes order by name asc");
   while(($row=$db->fetchByAssoc($result))!=null)
   {
		$pack.='<option value="'.$row['id'].'"';
		if($focus->packing_type_id==$row['id'])$pack.=' selected';
		$pack.='>'.$row['name'].'</option>';
   }
   $detail->ss->assign("PACKING_TYPE_ID",$pack);  
   
	//load currencies
    require_once('modules/Currencies/Currency.php');
    $currency = new Currency();
    $currency_list = $currency->get_full_list('name');
    $currency->retrieve('-99');
    if(is_array($currency_list))
	{
    	$currency_list = array_merge(Array($currency), $currency_list);
    }
	else
	{
   		$currency_list = Array($currency); 
    } 
    $arr = array();
    foreach($currency_list as $key=>$value)
	{
    	$arr[$value->id] = $value->name;
    } 
    $detail->ss->assign("EXCHANGE_RATE_NAME", $arr[$focus->exchange_rate_id]); 

function show_image($img)
{
	if(is_file($img))
	{
		$obraz=@GetImageSize($img);
		if($obraz[0]>=180)
		{
			$szerokosc=180;
			$wysokosc=$obraz[1]*$szerokosc/$obraz[0];

		}
		else
		{
			$szerokosc=$obraz[0];
			$wysokosc=$obraz[1];
		}
		$height=$obraz[1]+20;
		$width=$obraz[0]+20;
		return '<a style="cursor:pointer;" onclick="window.open(\''.$img.'\',\'Image\',\'height='.$height.',width='.$width.'\');"><img src="pic.php?p='.$img.'&w='.$szerokosc.'&h='.$wysokosc.'"></a>';
	}
}	
$detail->ss->assign("PRODUCT_PICTURE", show_image("modules/EcmProductB2Bs/upload/images/".$focus->product_picture));
$detail->ss->assign("PACKING_FRONT_PICTURE", show_image("modules/EcmProductB2Bs/upload/images/".$focus->packing_front_picture));
$detail->ss->assign("DRIVER_1", $focus->driver_1);
if($focus->driver_1)$detail->ss->assign("DRIVER_1_DOWNLOAD",'<a href="modules/EcmProductB2Bs/upload/'.$focus->driver_1.'">Download</a>');
$detail->ss->assign("DRIVER_2", $focus->driver_2);
if($focus->driver_2)$detail->ss->assign("DRIVER_2_DOWNLOAD",'<a href="modules/EcmProductB2Bs/upload/'.$focus->driver_2.'">Download</a>');

//add mz
$pl3 = $this->bean->showPositions3();
$detail->ss->assign('POSITIONS3', $pl3);
$pl4 = $this->bean->showPrices();
$detail->ss->assign('POSITIONS4', $pl4);
$ii='<table cellspacing="0" cellpadding="0" border="0" width="400">
		<tr>
			<td><b>'.$mod_strings['LBL_II_STOCK'].'</b></td>
			<td><b>'.$mod_strings['LBL_II_QTY'].'</b></td>
			<td><b>'.$mod_strings['LBL_II_PRICE'].'</b></td>
		</tr>';
$w=$GLOBALS['db']->query("select ecmstocks.name as sname,ecmstocks.id as sid,sum(ecmstockstates.quantity) as q,avg(ecmstockstates.price) as p from ecmstockstates inner join ecmstocks on ecmstocks.id=ecmstockstates.stock_id where ecmstockstates.deleted='0' and ecmstockstates.product_id='".$focus->id."' group by ecmstockstates.stock_id order by ecmstocks.name asc");
while($r=$GLOBALS['db']->fetchByAssoc($w)){
	if($r['q']>0)$ii.='<tr><td><a href="index.php?query=true&module=EcmStockOperations&action=&searchFormTab=basic_search&product_id_basic='.$_REQUEST['record'].'&product_name_basic='.$focus->name.'&stock_id_basic='.$r['sid'].'&stock_name_basic='.$r['sname'].'">'.$r['sname']."</a></td><td>".$r['q']."</td><td>".number_format($r['p'],2,$GLOBALS['sugar_config']['default_decimal_seperator'],$GLOBALS['sugar_config']['default_number_grouping_seperator'])."</td></tr>";
}

$ii.='</table>';
$detail->ss->assign("INVENTORY_INFORMATION",$ii);

$rp_app=$GLOBALS['db']->fetchByAssoc($GLOBALS['db']->query("select sum(p.product_quantity) as s from ecmproducts_ecmpurchaseorders as p inner join ecmpurchaseorders as e on e.id=p.ecmpurchaseorder_id where p.ecmproduct_id='".$focus->id."' and p.deleted='0' and e.status='accepted'"));
$rp_cr=$GLOBALS['db']->fetchByAssoc($GLOBALS['db']->query("select sum(p.product_quantity) as s from ecmproducts_ecmpurchaseorders as p inner join ecmpurchaseorders as e on e.id=p.ecmpurchaseorder_id where p.ecmproduct_id='".$focus->id."' and p.deleted='0' and e.status='registered'"));
$detail->ss->assign("ORDERED",$rp_app['s']+$rp_cr['s']);

$detail->ss->assign("CARTON_DIMENSIONS_1",$focus->carton_dimensions_1);
$detail->ss->assign("CARTON_DIMENSIONS_2",$focus->carton_dimensions_2);
$detail->ss->assign("CARTON_DIMENSIONS_3",$focus->carton_dimensions_3);
$detail->ss->assign("PACKING_DIMENSIONS_1",$focus->packing_dimensions_1);
$detail->ss->assign("PACKING_DIMENSIONS_2",$focus->packing_dimensions_2);
$detail->ss->assign("PACKING_DIMENSIONS_3",$focus->packing_dimensions_3);

if($focus->product_picture)$detail->ss->assign("PRODUCT_PICTURE_UPLOAD",$mod_strings['LBL_UPLOADED']);
if($focus->packing_front_picture)$detail->ss->assign("PACKING_FRONT_PICTURE_UPLOAD",$mod_strings['LBL_UPLOADED']);
if($focus->driver_1)$detail->ss->assign("DRIVER_1_UPLOAD",$mod_strings['LBL_UPLOADED']);
if($focus->driver_2)$detail->ss->assign("DRIVER_2_UPLOAD",$mod_strings['LBL_UPLOADED']);

$result = $GLOBALS['db']->query("select ean,remarks,short_description,long_description,language,price from ecmproduct_language where ecmproduct_id='".$_REQUEST['record']."'");
while($row=$GLOBALS['db']->fetchByAssoc($result))
{
   	$detail->ss->assign("EAN_".$row['language'],$row['ean']);
   	$detail->ss->assign("REMARKS_".$row['language'],$row['remarks']);
   	$detail->ss->assign("SHORT_DESCRIPTION_".$row['language'],$row['short_description']);
   	$detail->ss->assign("LONG_DESCRIPTION_".$row['language'],str_replace("&lt;","<",str_replace("&gt;",">",$row['long_description'])));
   	$detail->ss->assign("PRICE_".$row['language'],number_format($row['price'],2,",","."));
}
$send_xml=true;
if(!file_exists("modules/EcmProductB2Bs/upload/images/big/".$focus->product_picture))$send_xml=false;
if(!file_exists("modules/EcmProductB2Bs/upload/images/big/".$focus->packing_front_picture))$send_xml=false;
$r=$GLOBALS['db']->fetchByAssoc($GLOBALS['db']->query("select ean,remarks,short_description,long_description,language,price from ecmproduct_language where language='pl' and ecmproduct_id='".$_REQUEST['record']."'"));
if(!$r['ean'] || !$r['short_description'] || !$r['long_description'] || !$r['price'])$send_xml=false;
if($send_xml)$detail->ss->assign("SEND_XML",1);
else $detail->ss->assign("SEND_XML",0);

/*
$desc='';
$desc.='<input title="Product Card" class="button" onclick="if(document.getElementById(\'div_desc\').style.display==\'none\')document.getElementById(\'div_desc\').style.display=\'block\';else document.getElementById(\'div_desc\').style.display=\'none\';" type="button" name="productcard" id="productcard" value="Create Catalogue">';
$desc.='<div id="div_desc" style="border: 1px solid #cccccc;background:#e6e6e6;padding:5px;position:absolute;display:none;">';
$desc.='Show header: <select name="show_header" id="show_header"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='Show content: <select name="show_content" id="show_content"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='To image: <select name="image" id="image"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='Title page: <select name="title" id="title"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='Show price: <select name="show_price" id="show_price"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='Extra info: <select name="extra" id="extra"><option value="1">Yes</option><option value="0" selected>No</option></select><br /><br />';
$desc.='Price: <select name="price" id="price"><option value="srp_price">SRP Price</option></select><br /><br />';
$desc.='Language: <select name="language" id="language"><option value="pl">pl</option><option value="en">en</option></select><br /><br />';
$desc.='EAN: <select name="ean" id="ean"><option value="1">1</option><option value="2">2</option></select><br /><br />';
$desc.='<input type="button" class="button" name="generate" id="generate" value="Generate" onclick="window.open(\'index.php?module=EcmProductB2Bs&action=generateProductCardsFromProduct&record='.$_REQUEST['record'].'&to_pdf=1&price=\'+document.getElementById(\'price\').value+\'&header=\'+document.getElementById(\'show_header\').value+\'&content=\'+document.getElementById(\'show_content\').value+\'&extra=\'+document.getElementById(\'extra\').value+\'&create_img=\'+document.getElementById(\'image\').value+\'&show_price=\'+document.getElementById(\'show_price\').value+\'&title=\'+document.getElementById(\'title\').value+\'&language=\'+document.getElementById(\'language\').value+\'&ean=\'+document.getElementById(\'ean\').value);"></div>';

$detail->ss->assign("CATALOGUE",$desc);
*/
//add mz - nowa karta produktu
global $mod_strings;

$desc='';
$desc.='<input title="Product Card" class="button" onclick="if(document.getElementById(\'div_desc2\').style.display==\'none\')document.getElementById(\'div_desc2\').style.display=\'block\';else document.getElementById(\'div_desc2\').style.display=\'none\';" type="button" name="productcard" id="productcard" value="'.$mod_strings['LBL_PRODUCT_CARD'].'">';
$desc.='<div id="div_desc2" style="border: 1px solid #cccccc;background:#e6e6e6;padding:5px;position:absolute;display:none;">';
$desc.='Zdjęcie: <select name="new_image" id="new_image"><option value="1">Tak</option><option value="0" selected>Nie</option></select><br /><br />';
$desc.='Pokaż cene: <select name="new_show_price" id="new_show_price"><option value="1">Tak</option><option value="0" selected>Nie</option></select><br /><br />';
$desc.='Cena: <select name="new_price" id="new_price"><option value="srp_price">SRP Price</option></select><br /><br />';
$desc.='Język: <select name="new_language" id="new_language"><option value="pl">pl</option><option value="en">en</option></select><br /><br />';
$desc.='EAN: <select name="new_ean" id="new_ean"><option value="1">1</option><option value="2">2</option></select><br /><br />';

$desc.='<input type="button" class="button" name="generate" id="generate" value="Generuj" onclick="window.open(\'index.php?module=EcmProductB2Bs&action=generateCard&record='.$_REQUEST['record'].'&to_pdf=1&price=\'+document.getElementById(\'new_price\').value+\'&create_img=\'+document.getElementById(\'new_image\').value+\'&show_price=\'+document.getElementById(\'new_show_price\').value+\'&language=\'+document.getElementById(\'new_language\').value+\'&ean=\'+document.getElementById(\'new_ean\').value);"></div>';

$detail->ss->assign("CATALOGUE_NEW",$desc);

$desc='<div id="div_desc" style="border: 1px solid #cccccc;background:#e6e6e6;padding:5px;position:absolute;display:none;">';
$desc.='<input type="checkbox" name="show_characteristic" id="show_characteristic" value="1" checked">Show attributes<br />';
$desc.='<input type="checkbox" name="show_description" id="show_description" value="1" checked">Show description<br />';
$desc.='<input type="checkbox" name="show_specification" id="show_specification" value="1" checked">Show specification<br />';
$desc.='<input type="checkbox" name="print_version" id="print_version" value="1" checked">Print version<br />';
$desc.='Language: <select name="language" id="language"><option value="">pl</option><option value="en">en</option></select><br /><br />';
$desc.='<input type="button" class="button" name="generate" id="generate" value="Generate" onclick="window.open(\'index.php?module=EcmProductB2Bs&action=productCard&record='.$_REQUEST['record'].'&to_pdf=1&show_characteristic=\'+document.getElementById(\'show_characteristic\').checked+\'&show_specification=\'+document.getElementById(\'show_specification\').checked+\'&show_description=\'+document.getElementById(\'show_description\').checked+\'&print_version=\'+document.getElementById(\'print_version\').checked+\'&language=\'+document.getElementById(\'language\').value);"></div>';
$detail->ss->assign("DIV_DESC",$desc);

$desc='<div id="div_desc_card" style="border: 1px solid #cccccc;background:#e6e6e6;padding:5px;position:absolute;display:none;">';
$desc.='<input type="checkbox" name="show_characteristic_card" id="show_characteristic_card" value="1" checked">Show attributes<br />';
$desc.='<input type="checkbox" name="show_description_card" id="show_description_card" value="1" checked">Show description<br />';
$desc.='<input type="checkbox" name="show_specification_card" id="show_specification_card" value="1" checked">Show specification<br />';
$desc.='Language: <select name="language" id="language"><option value="">pl</option><option value="en">en</option></select><br /><br />';
$desc.='<input type="button" class="button" name="generate_card" id="generate_card" value="Generate" onclick="window.open(\'index.php?module=EcmProductB2Bs&action=productCard&record='.$_REQUEST['record'].'&to_pdf=1&show_characteristic=\'+document.getElementById(\'show_characteristic_card\').checked+\'&show_specification=\'+document.getElementById(\'show_specification_card\').checked+\'&show_description=\'+document.getElementById(\'show_description_card\').checked+\'&html=1\'+\'&language=\'+document.getElementById(\'language\').value,\'create_html\',\'location=0,status=0,scrollbars=0,width=640,height=500\');"></div>';
$detail->ss->assign("DIV_DESC_CARD",$desc);

//Added for Graduated Prices - Begin
/*	require_once('modules/EcmProductB2Bs/EcmProductB2BGraduatedPrices.php');
	$epgp = new EcmProductB2BGraduatedPrices($focus->graduated_prices);
	$detail->ss->assign("PRODUCT_GRADUATED_PRICES_HTML", $epgp->getHtmlDetail());*/
//Added for Graduated Prices - End

//Added for Components
	$detail->ss->assign("POSITION_LIST", $focus->getPositionList());

	$file = 'modules/EcmGroupSales/EcmGroupSale.php';
	if(file_exists($file)) {
		$cc = array();
		require_once($file);
		$cc = EcmGroupSale::loadSettings();	
	}
	$OPT = array();
	$OPT['row_item_height'] = $cc['row_item_height'];
	$OPT['row_item_height_selected'] = $cc['row_item_height_selected'];
	$OPT['rows_on_item_list'] = $cc['rows_on_item_list'];
	$OPT['position_table_height'] = $OPT['row_item_height']*$OPT['rows_on_item_list']+40+$OPT['rows_on_item_list']*4;
	$OPT['quick_product_item_adding'] = $cc['quick_product_item_adding'];
	
	global $current_user;
	$tmp = $current_user->getPreference('num_grp_sep');
	if(!isset($tmp) || $tmp == '' || $tmp == NULL) $tmp = $sugar_config['default_number_grouping_seperator'];
	$OPT['sep_1000'] = $tmp;
	$tmp = $current_user->getPreference('dec_sep');
	if(!isset($tmp) || $tmp == '' || $tmp == NULL) $tmp = $sugar_config['default_decimal_seperator'];
	$OPT['dec_sep'] = $tmp;
	$tmp = $current_user->getPreference('default_currency_significant_digits');
	if(!isset($tmp) || $tmp == '' || $tmp == NULL) $tmp = $sugar_config['default_currency_significant_digits'];
	$OPT['dec_len'] = $tmp;
	$OPT['default_unit'] = "1";
	$OPT['default_vat'] = "19.00";
	$OPT['default_category'] = "";
	$OPT['default_currency'] = "-99";
	$OPT['type'] = $focus->type;
	$OPT['to_is_vat_free'] = $focus->to_is_vat_free;
	$OPT['ecmproduct_usage_units_options'] = $uunit_array;
	
	$scriptOpt = '
		<script language="javascript">
			var VAT = '.str_replace('&quot;','\"',$json->encode($VAT)).';
			var OPT = '.str_replace('&quot;','\"',$json->encode($OPT)).';
			var MOD = '.str_replace('&quot;','\"',$json->encode($mod_strings)).';
			var N;
		</script>';
	echo $scriptOpt;
	include('modules/EcmProductB2Bs/phpqrcode/qrlib.php'); 
	$tempDir = EXAMPLE_TMP_SERVERPATH; 
     
    $codeContents = $_REQUEST['record']; 
     
    // we need to generate filename somehow,  
    // with md5 or with database ID used to obtains $codeContents... 
    $fileName = '005_file_'.md5($codeContents).'.png'; 
    $fileName2 ='005_file_'.md5($codeContents).'.html'; 
    $pngAbsoluteFilePath = 'qrfile/'.$fileName; 
    $urlRelativeFilePath = EXAMPLE_TMP_URLRELPATH.$fileName; 
     
    // generating 
    if (!file_exists($pngAbsoluteFilePath)) { 
        QRcode::png($codeContents, $pngAbsoluteFilePath); 
   
    } else { 

    } 





// create new PDF document
    // displaying 
	$desc='<img src="http://'.$_SERVER['HTTP_HOST'].'/crm/'.$pngAbsoluteFilePath.'" />';
	$desc2.='<input name="quote_pdf" id="quote_pdf" title="Show PDF" accessKey="" class="button" onclick="window.location = \'modules/EcmProductB2Bs/t.php?r='.$fileName2.'\';" type="button" value="Pokaż PDF QR">';
	$result = $db->query("select name,code from ecmproducts where id='".$_REQUEST['record']."'");
while($row=$db->fetchByAssoc($result)){
$n=$row['name'];
$c=$row['code'];
}
$pdfik='Nazwa towaru: '.$n.'<br>Kod towaru: '.$c.'<br>'.$desc;
$fp = fopen('modules/EcmProductB2Bs/'.$fileName2.'', 'w');
fwrite($fp, $pdfik);
fclose($fp);

$detail->ss->assign("QRGEN",$desc2);
	$detail->ss->assign("QRCODE",$desc);
	$detail->ss->assign("OPT", $OPT);
//Added for Components
global $current_user;
echo $detail->display();

require_once('include/SubPanel/SubPanelTiles.php');
$subpanel = new SubPanelTiles($focus, "EcmProductB2Bs");
echo $subpanel->display();  

?>