Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

<?php require_once("modules/PDFMaker/PDFMakerUtils.php"); require_once "modules/PDFMaker..

Decoded Output download

<?php 
require_once("modules/PDFMaker/PDFMakerUtils.php"); 
require_once "modules/PDFMaker/PDFMaker.php"; 
Debugger::GetInstance()->Init(); 
 
$memory_limit = substr(ini_get("memory_limit"), 0,-1); 
if($memory_limit<256){ 
	ini_set("memory_limit","256M"); 
} 
 
global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; 
$x0b="array_keys"; $x0c="array_push"; $x0d="array_merge"; $x0e="array_sum"; $x0f="call_user_func_array"; $x10="count"; $x11="date"; $x12="explode"; $x13="file_exists"; $x14="glob"; $x15="html_entity_decode"; $x16="htmlentities"; $x17="iconv"; $x18="implode"; $x19="in_array"; $x1a="is_numeric"; $x1b="is_object"; $x1c="md5"; $x1d="nl2br"; $x1e="number_format"; $x1f="preg_match_all"; $x20="round"; $x21="rtrim"; $x22="sprintf"; $x23="str_replace"; $x24="str_ireplace"; $x25="strlen"; $x26="strip_tags"; $x27="strtoupper"; $x28="strpos"; $x29="strtolower"; $x2a="strstr"; $x2b="substr"; $x2c="trim"; 
class PDFContent {private $templateid;private $module;private $language;private $focus;private $db;private $mod_strings;private $def_charset;private $site_url;private $decimal_point;private $thousands_separator;private $decimals;public $pagebreak;private $rowbreak;private $ignored_picklist_values=array();private $header;private $footer;private $body;private $content;private $filename;private $templatename;private $type;private $section_sep="&#%ITS%%%@@@%%%ITS%#&";private $replacements;private $inventory_table_array = Array("PurchaseOrder"=>"vtiger_purchaseorder", "SalesOrder"=>"vtiger_salesorder", "Quotes"=>"vtiger_quotes", "Invoice"=>"vtiger_invoice", "Issuecards"=>"vtiger_issuecards", "Receiptcards"=>"vtiger_receiptcards", "Creditnote"=>"vtiger_creditnote", "StornoInvoice"=>"vtiger_stornoinvoice");private $inventory_id_array = Array("PurchaseOrder"=>"purchaseorderid","SalesOrder"=>"salesorderid","Quotes"=>"quoteid","Invoice"=>"invoiceid","Issuecards"=>"issuecardid","Receiptcards"=>"receiptcardid","Creditnote"=>"creditnote_id","StornoInvoice"=>"stornoinvoice_id");private $org_cols = array("organizationname" => "COMPANY_NAME","address" => "COMPANY_ADDRESS","city" => "COMPANY_CITY","state" => "COMPANY_STATE","code" => "COMPANY_ZIP","country" => "COMPANY_COUNTRY","phone" => "COMPANY_PHONE","fax" => "COMPANY_FAX","website" => "COMPANY_WEBSITE","logo" => "COMPANY_LOGO", );public $bridge2mpdf = array();private $relBlockModules = array();function __construct($templateid, $module, $focus, $language) {$db = "adb";$mod = "mod_strings";$vcv = "vtiger_current_version";$salt = "site_URL";$dc = "default_charset";global $$db, $$mod, $$vcv, $$salt, $$dc, $PDFMaker_template_id;$this->db = &$$db;$this->mod_strings = $$mod;$this->def_charset = $$dc;$this->templateid = $templateid;$PDFMaker_template_id = $this->templateid;$this->module = $module;$this->focus = $focus;$this->language = $language;$result = $$db->query("SELECT license FROM vtiger_pdfmaker_version WHERE version='".$$vcv."'");if($$db->query_result($result,0,"license")==$this->x2a($$salt))$this->type = "professional";elseif ($$db->query_result($result,0,"license")==$this->x2a("basic/".$$salt) && ($module == "PurchaseOrder" || $module == "SalesOrder" || $module == "Quotes" || $module == "Invoice"))$this->type = "basic";else$this->type = "invalid";$this->x16();$this->x17();$this->bridge2mpdf["record"] = $this->focus->id;$this->bridge2mpdf["templateid"] = $this->templateid;$this->rowbreak = "<rowbreak />";}public function getContent() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  require_once("classes/simple_html_dom.php"); $img_root = "img_root_directory";$vcv="vtiger_current_version";global $$img_root, $$vcv;if($this->module=='Calendar') $this->replacements = Array(); if ($this->type == "professional" || $this->type == "basic") { $this->content = $this->body; $this->content = $this->header.$this->section_sep; $this->content .= $this->body.$this->section_sep; $this->content .= $this->footer; $this->replacements["&nbsp;"]=" "; $this->replacements["##PAGE##"]="{PAGENO}"; $this->replacements["##PAGES##"]="{nb}"; $this->replacements["##DD-MM-YYYY##"]=$x11("d-m-Y"); $this->replacements["##DD.MM.YYYY##"]=$x11("d.m.Y"); $this->replacements["##MM-DD-YYYY##"]=$x11("m-d-Y"); $this->replacements["##YYYY-MM-DD##"]=$x11("Y-m-d"); $this->replacements["src='"]="src='".$$img_root; $this->replacements["$".$x27($this->module)."_CRMID$"]=$this->focus->id; if($$vcv=='5.2.1'){$displayValueCreated=getDisplayDate($this->focus->column_fields['createdtime']);$displayValueModified=getDisplayDate($this->focus->column_fields['modifiedtime']); } else {$createdtime = new DateTimeField($this->focus->column_fields['createdtime']);$displayValueCreated = $createdtime->getDisplayDateTimeValue();$modifiedtime = new DateTimeField($this->focus->column_fields['modifiedtime']);$displayValueModified = $modifiedtime->getDisplayDateTimeValue(); } $this->replacements["$".$x27($this->module)."_CREATEDTIME_DATETIME$"]=$displayValueCreated; $this->replacements["$".$x27($this->module)."_MODIFIEDTIME_DATETIME$"]=$displayValueModified; $this->x36();$this->x15(); $this->content = $x15($this->content,ENT_QUOTES,$this->def_charset);$html = str_get_html($this->content);foreach($html->find("div[style^=page-break-after]") as $div_page_break) {$div_page_break->outertext = $this->pagebreak;$this->content = $html->save(); }foreach($html->find("div[style^=PAGE-BREAK-AFTER]") as $div_page_break) {$div_page_break->outertext = $this->pagebreak;$this->content = $html->save(); } $this->x2f(); $this->x30(); $this->x31(); $this->x0b(); $this->x2b(); $this->x10($this->module, $this->focus); $this->x0d(); if($this->focus->column_fields["assigned_user_id"]==""){$this->focus->column_fields["assigned_user_id"]=$this->db->query_result($this->db->query("SELECT smownerid FROM vtiger_crmentity WHERE crmid=".$this->focus->id),0,"smownerid"); } $this->x2d();$this->x0e(); $this->x11(); $this->x12(); $this->x13(); $this->x14(); $this->x35();if($x27($this->def_charset) != "UTF-8") {$this->content = $x17($this->def_charset,"UTF-8//TRANSLIT",$this->content); }if ($this->type == "professional")$this->x28(); $PDF_content = array(); list($PDF_content["header"],$PDF_content["body"],$PDF_content["footer"]) = $x12($this->section_sep,$this->content);}else{ $error_text = "Invalid license key! Please contact the vendor of PDF Maker."; $PDF_content = array("header" => "<center>ERROR</center>", "body" => $error_text, "footer" => "");}return $PDF_content; }public function getSettings() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql = "SELECT (margin_top * 10) AS margin_top,
                     (margin_bottom * 10) AS margin_bottom,
                     (margin_left * 10) AS margin_left,
                     (margin_right*10) AS margin_right,
                     format,
 
                     orientation,
                     encoding, 

                     disp_header, disp_footer
 
              FROM vtiger_pdfmaker_settings WHERE templateid = '".$this->templateid."'";$result = $this->db->query($sql);$Settings = $this->db->fetchByAssoc($result, 1);return $Settings;}private function x0b() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $vcv="vtiger_current_version";global $$vcv;$field_inf = "_fieldinfo_cache"; $sql = "SELECT fieldid, relmodule FROM vtiger_fieldmodulerel";$result = $this->db->query($sql);$fieldModRel = array();while($row = $this->db->fetchByAssoc($result)) {$fieldModRel[$row["fieldid"]][] = $row["relmodule"];}$sql = "SELECT fieldid, fieldname, uitype, columnname 

              FROM vtiger_field
              WHERE tabid=".getTabId($this->module)." AND (displaytype != 3 OR fieldid = 64)";$result = $this->db->query($sql);$num_rows = $this->db->num_rows($result);if ($num_rows > 0){$tacModules = array();$tac4you = $x1a(getTabId("Tac4you"));if($tac4you == true) {$tacSql = "SELECT tac4you_module FROM vtiger_tac4you_module WHERE presence = 1";$tacResult = $this->db->query($tacSql);while($tacRow = $this->db->fetchByAssoc($tacResult))$tacModules[$tacRow["tac4you_module"]] = $tacRow["tac4you_module"];}$descModules = array();$desc4you = $x1a(getTabId("Descriptions4you"));if($desc4you == true) {$descSql = "SELECT b.name FROM vtiger_links AS a 
                         INNER JOIN vtiger_tab AS b USING (tabid)
 
                         WHERE linktype = 'DETAILVIEWWIDGET'
                            AND linkurl = 'block://ModDescriptions4you:modules/Descriptions4you/ModDescriptions4you.php'";$descResult = $this->db->query($descSql);while($descRow = $this->db->fetchByAssoc($descResult))$descModules[$descRow["name"]] = $descRow["name"];}$ModCommentsModules = array();$ModComments = $x1a(getTabId("ModComments"));if($ModComments == true) {$sql = "SELECT relmodule FROM vtiger_fieldmodulerel WHERE module='ModComments' AND relmodule != 'ModComments'";$modCommResult = $this->db->query($sql);while($row = $this->db->fetchByAssoc($modCommResult))$ModCommentsModules[$row["relmodule"]] = $row["relmodule"];}while($row = $this->db->fetch_array($result)){$related_module = "";$columnname = $row["columnname"];$fk_record = $this->focus->column_fields[$row["fieldname"]];switch ($row["uitype"]) {case "51": $related_module = "Accounts"; break;case "57": $related_module = "Contacts"; break;case "58": $related_module = "Campaigns"; break;case "59": $related_module = "Products"; break;case "73": $related_module = "Accounts"; break;case "75": $related_module = "Vendors"; break;case "81": $related_module = "Vendors"; break;case "76": $related_module = "Potentials"; break;case "78": $related_module = "Quotes"; break;case "80": $related_module = "SalesOrder"; break;case "68":case "10": $related_module = getSalesEntityType($fk_record); break;}if ($related_module != "") {$tabid = getTabId($related_module);$temp = &VTCacheUtils::$$field_inf;unset($temp[$tabid]);$focus2 = CRMEntity::getInstance($related_module);if ($fk_record != "" && $fk_record != "0") {$result_delete = $this->db->query("SELECT deleted FROM vtiger_crmentity WHERE crmid='".$fk_record."' AND deleted=0");if($this->db->num_rows($result_delete)>0){ $focus2->retrieve_entity_info($fk_record,$related_module); $focus2->id = $fk_record;}}$this->replacements["$"."R_".$x27($related_module)."_CRMID$"]=$focus2->id;$this->replacements["$"."R_".$x27($columnname)."_CRMID$"]=$focus2->id; if($$vcv=='5.2.1'){$displayValueCreated=getDisplayDate($focus2->column_fields['createdtime']);$displayValueModified=getDisplayDate($focus2->column_fields['modifiedtime']); } else {$createdtime = new DateTimeField($focus2->column_fields['createdtime']);$displayValueCreated = $createdtime->getDisplayDateTimeValue();$modifiedtime = new DateTimeField($focus2->column_fields['modifiedtime']);$displayValueModified = $modifiedtime->getDisplayDateTimeValue(); } $this->replacements["$"."R_".$x27($related_module)."_CREATEDTIME_DATETIME$"]=$displayValueCreated; $this->replacements["$"."R_".$x27($columnname)."_CREATEDTIME_DATETIME$"]=$displayValueCreated; $this->replacements["$"."R_".$x27($related_module)."_MODIFIEDTIME_DATETIME$"]=$displayValueModified; $this->replacements["$"."R_".$x27($columnname)."_MODIFIEDTIME_DATETIME$"]=$displayValueModified; if(isset($related_module)){$entityImg = "";switch($related_module){case "Contacts":$entityImg = $this->x1b($focus2->id);break;case "Products":$entityImg = $this->x1d($focus2->id);break;}$this->replacements['$R_'.$x27($related_module).'_IMAGENAME$']=$entityImg;$this->replacements['$R_'.$x27($columnname).'_IMAGENAME$']=$entityImg;}if(isset($tacModules[$related_module])) {$tacSql = "SELECT text FROM vtiger_tac4you_texts WHERE id=?";$tacResult = $this->db->pquery($tacSql, array($focus2->id));$tacText = $this->db->query_result($tacResult, 0, "text");$tacText = $x15($tacText, ENT_QUOTES, $this->def_charset);$this->replacements["$"."R_".$x27($related_module)."_TAC4YOU$"] = $tacText;$this->replacements["$"."R_".$x27($columnname)."_TAC4YOU$"] = $tacText;}if(isset($descModules[$related_module])) {$descSql = "SELECT text FROM vtiger_descriptions4you_texts WHERE id=?";$descResult = $this->db->pquery($descSql, array($focus2->id));$descText = $this->db->query_result($descResult, 0, "text");$descText = $x15($descText, ENT_QUOTES, $this->def_charset);$this->replacements["$"."R_".$x27($related_module)."_DESC4YOU$"] = $descText;$this->replacements["$"."R_".$x27($columnname)."_DESC4YOU$"] = $descText;}if(isset($ModCommentsModules[$related_module])) {$modCommText = $this->x32($focus2->id);$modCommText = $x15($modCommText, ENT_QUOTES, $this->def_charset);$this->replacements["$"."R_".$x27($columnname)."_MODCOMMENTS$"] = $modCommText;} $this->x15();$this->x10($related_module, $focus2, true);$this->x10($related_module, $focus2, $columnname); $this->x34($related_module, $focus2, $columnname);unset($focus2);} if ($row["uitype"] == "68") {$fieldModRel[$row["fieldid"]][] = "Contacts";$fieldModRel[$row["fieldid"]][] = "Accounts";}if(isset($fieldModRel[$row["fieldid"]])) { foreach($fieldModRel[$row["fieldid"]] as $idx => $relMod) { if($relMod == $related_module) continue;$tmpTabId = getTabId($relMod);$temp = &VTCacheUtils::$$field_inf;unset($temp[$tmpTabId]);$tmpFocus = CRMEntity::getInstance($relMod);$this->replacements["$"."R_".$x27($relMod)."_CRMID$"] = $tmpFocus->id;$this->replacements["$"."R_".$x27($columnname)."_CRMID$"] = $tmpFocus->id;if($$vcv=='5.2.1'){ $displayValueCreated=getDisplayDate($tmpFocus->column_fields['createdtime']); $displayValueModified=getDisplayDate($tmpFocus->column_fields['modifiedtime']);} else { $createdtime = new DateTimeField($tmpFocus->column_fields['createdtime']); $displayValueCreated = $createdtime->getDisplayDateTimeValue(); $modifiedtime = new DateTimeField($tmpFocus->column_fields['modifiedtime']); $displayValueModified = $modifiedtime->getDisplayDateTimeValue();}$this->replacements["$"."R_".$x27($relMod)."_CREATEDTIME_DATETIME$"]=$displayValueCreated;$this->replacements["$"."R_".$x27($columnname)."_CREATEDTIME_DATETIME$"]=$displayValueCreated;$this->replacements["$"."R_".$x27($relMod)."_MODIFIEDTIME_DATETIME$"]=$displayValueModified;$this->replacements["$"."R_".$x27($columnname)."_MODIFIEDTIME_DATETIME$"]=$displayValueModified;$this->x10($relMod, $tmpFocus, true);$this->x10($relMod, $tmpFocus, $columnname); $this->x34($relMod, $tmpFocus, $columnname);unset($tmpFocus); }}}}} private function x0c() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("classes/simple_html_dom.php");$html = str_get_html($this->content);$tableDOM=false;foreach($html->find("td") as $td){ if($x2c($td->plaintext) == "#PRODUCTBLOC_START#"){ $td->parent->outertext = "#PRODUCTBLOC_START#"; $oParent = $td->parent;while($oParent->tag != "table")$oParent = $oParent->parent; list($tag)=$x12(">",$oParent->outertext,2); $header = $oParent->first_child();if($header->tag != "tr")$header = $header->children(0);if($x1b($td->parent->prev_sibling()->children[0])) $header_style = $td->parent->prev_sibling()->children[0]->getAttribute("style");else $header_style = '';$footer_tag="<tr>";if(isset($header_style)){ $StyleHeader = $x12(";", $header_style);if(isset($StyleHeader)){foreach($StyleHeader as $style_header_tag){ if($x28($style_header_tag, "border-top") == TRUE){$footer_tag.="<td colspan='".$td->getAttribute("colspan")."' style='".$style_header_tag."'>&nbsp;</td>"; }} }} else { $footer_tag.="<td colspan='".$td->getAttribute("colspan")."' style='border-top:1px solid #000000;'>&nbsp;</td>";}$footer_tag.="</tr>"; $var = $td->parent->next_sibling()->last_child()->plaintext;$subtotal_tr=""; if($x28($var, "TOTAL")!==false){if($x1b($td)){$style_subtotal=$td->getAttribute("style"); } if(isset($td->innertext)){list($style_subtotal_tag,$style_subtotal_endtag)=$x12("#PRODUCTBLOC_START#",$td->innertext); } else {$style_subtotal_tag = "";$style_subtotal_endtag = ""; }if(isset($style_subtotal)){$StyleSubtotal = $x12(";", $style_subtotal);if(isset($StyleSubtotal)){ foreach($StyleSubtotal as $style_tag) {if($x28($style_tag, "border-top") == TRUE){ $tag.=" style='".$style_tag."'"; break;} }} } else {$style_subtotal = ""; } $subtotal_tr="<tr>"; $subtotal_tr.="<td colspan='".($td->getAttribute("colspan")-1)."' style='".$style_subtotal.";border-right:none'>".$style_subtotal_tag."%G_Subtotal%".$style_subtotal_endtag."</td>"; $subtotal_tr.="<td align='right' nowrap='nowrap' style='".$style_subtotal."'>".$style_subtotal_tag."".$x21($var,"$")."_SUBTOTAL$".$style_subtotal_endtag."</td>"; $subtotal_tr.="</tr>";}$tag.=">";$tableDOM["tag"] = $tag;$tableDOM["header"] = $header->outertext;$tableDOM["footer"] = $footer_tag;$tableDOM["subtotal"] = $subtotal_tr; } if($x2c($td->plaintext) == "#PRODUCTBLOC_END#")$td->parent->outertext = "#PRODUCTBLOC_END#";}$this->content=$html->save();return $tableDOM;}private function x0d() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $query = "select * from vtiger_inventoryproductrel where id=?";$result = $this->db->pquery($query, array($this->focus->id));$num_rows=$this->db->num_rows($result); if ($num_rows > 0){ $Products = $this->x34($this->module, $this->focus); $var_array = array();if($x28($this->content,"#PRODUCTBLOC_START#") !== false && $x28($this->content,"#PRODUCTBLOC_END#") !== false){$tableTag = $this->x0c();$breaklines_array = $this->x19();$breaklines = $breaklines_array["products"];$show_header = $breaklines_array["show_header"];$show_subtotal = $breaklines_array["show_subtotal"];$breakline_type="";if($x10($breaklines)>0){if($tableTag!==false) {$breakline_type="</table>".$this->pagebreak.$tableTag["tag"];if($show_header==1)$breakline_type.=$tableTag["header"];if($show_subtotal==1){$breakline_type=$tableTag["subtotal"].$breakline_type;} else {$breakline_type=$tableTag["footer"].$breakline_type;}}else$breakline_type=$this->pagebreak;}$ExplodedPdf = array();$Exploded = $x12("#PRODUCTBLOC_START#",$this->content);$ExplodedPdf[] = $Exploded[0];for($iterator=1;$iterator<$x10($Exploded);$iterator++){$SubExploded = $x12("#PRODUCTBLOC_END#",$Exploded[$iterator]);foreach($SubExploded as $part)$ExplodedPdf[] = $part;$highestpartid = $iterator*2-1;$ProductParts[$highestpartid]=$ExplodedPdf[$highestpartid];$ExplodedPdf[$highestpartid]='';}if ($Products["P"]) {foreach ($Products["P"] AS $Product_i => $Product_Details) {foreach($ProductParts as $productpartid=>$productparttext){$breakline="";if($breakline_type!="" && isset($breaklines[$Product_Details["SERVICES_RECORD_ID"]."_".$Product_Details["PRODUCTSEQUENCE"]]) || isset($breaklines[$Product_Details["PRODUCTS_RECORD_ID"]."_".$Product_Details["PRODUCTSEQUENCE"]]) ){$breakline=$breakline_type;}$productparttext.=$breakline;foreach ($Product_Details AS $coll => $value) {$productparttext = $x23("$".$x27($coll)."$",$value,$productparttext);}$ExplodedPdf[$productpartid].=$productparttext;}}}$this->content = $x18('',$ExplodedPdf);}}}private function x0e(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $html = str_get_html($this->content);$toSkip = 0;foreach($html->find("rowbreak") as $pb){if($pb->outertext == $this->rowbreak) {$tmpPb = $pb;while($tmpPb != null && $tmpPb->tag != "td") {$tmpPb = $tmpPb->parent();}if($tmpPb->tag == "td") { if($toSkip > 0) {$toSkip--;continue;} $prev_sibling = $tmpPb->prev_sibling();$prev_sibling_styles = array();while($prev_sibling != null) {$prev_sibling_styles[] = $this->x0f($prev_sibling);$prev_sibling = $prev_sibling->prev_sibling();} $next_sibling = $tmpPb->next_sibling();$next_sibling_styles = array();while($next_sibling != null) {$next_sibling_styles[] = $this->x0f($next_sibling);$next_sibling = $next_sibling->next_sibling();}$partsArr = $x12($this->rowbreak, $tmpPb->innertext);for($i=0; $i<($x10($partsArr) - 1); $i++) {$tmpPb->innertext = $partsArr[$i];$addition = '<tr>';for($j=0; $j<$x10($prev_sibling_styles); $j++){$addition.='<td '.$prev_sibling_styles[$j].'>&nbsp;</td>';}$addition.='<td style="'.$tmpPb->getAttribute("style").'">'.$partsArr[$i+1].'</td>';for($j=0; $j<$x10($next_sibling_styles); $j++){$addition.='<td '.$next_sibling_styles[$j].'>&nbsp;</td>';}$addition .= '</tr>';$tmpPb->parent()->outertext = $tmpPb->parent()->outertext.$addition;} $toSkip = $x10($partsArr) - 2;}}}$this->content = $html->save();}private function x0f($elm){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $atts_string = "";if($elm != null) {foreach($elm->attr as $attName=>$attVal) {$atts_string .= $attName.'="'.$attVal.'" ';}}return $atts_string;}private function x10($emodule, $efocus, $is_related = false, $is_inventory = false) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $related_fieldnames = array("related_to","relatedto","parent_id","parentid","product_id","productid","service_id","serviceid","vendor_id","product","account","invoiceid","linktoaccountscontacts","projectid","sc_related_to");if($is_inventory)$inventory_content=array();$tabid = getTabid($emodule);$convEntity = $emodule;if($is_related === false){$related = "";}else{$related = "R_";if($is_related !== true)$convEntity = $is_related; }$Checkboxes = array();$Picklists = array();$Textareas = array();$Datefields = array();$Multipicklists = array();$NumbersField = array();if($tabid=='9') $sql = "SELECT fieldname, uitype FROM vtiger_field WHERE tabid IN (9,16)";else$sql = "SELECT fieldname, uitype FROM vtiger_field WHERE tabid = '".$tabid."'";$result = $this->db->query($sql);while($row = $this->db->fetchByAssoc($result)){if ($row["uitype"] == "19" || $row["uitype"] == "20" || $row["uitype"] == "21" || $row["uitype"] == "24")$Textareas[] = $row["fieldname"];elseif ($row["uitype"] == "5" || $row["uitype"] == "6" || $row["uitype"] == "23" || $row["uitype"] == "70")$Datefields[] = $row["fieldname"];elseif ($row["uitype"] == "15" || $row["fieldname"] == "salutationtype")$Picklists[] = $row["fieldname"];elseif ($row["uitype"] == "56")$Checkboxes[] = $row["fieldname"];elseif ($row["uitype"] == "33")$Multipicklists[] = $row["fieldname"];elseif ($row["uitype"] == "71")$NumbersField[] = $row["fieldname"];}foreach ($efocus->column_fields as $fieldname => $value){if ($fieldname == "assigned_user_id")$value = $this->x1e($value);elseif($fieldname == "account_id") { $value = getAccountName($value);}elseif($fieldname == "potential_id")$value = getPotentialName($value);elseif($fieldname == "contact_id")$value = getContactName($value);elseif($fieldname == "quote_id")$value = getQuoteName($value);elseif($fieldname == "salesorder_id")$value = getSoName($value);elseif($fieldname == "campaignid")$value = getCampaignName($value);elseif($fieldname == "terms_conditions")$value = $this->x25($value);elseif($fieldname == "comments")$value = $this->x26($efocus);elseif($fieldname == "folderid")$value = $this->x27($value);elseif($fieldname == "time_start" || $fieldname == "time_end"){$curr_time = DateTimeField::convertToUserTimeZone($value);$value = $curr_time->format('H:i');}elseif($x19($fieldname, $related_fieldnames)) {if ($value != "") {$parent_module = getSalesEntityType($value);$displayValueArray = getEntityName($parent_module, $value);if(!empty($displayValueArray)) {foreach($displayValueArray as $key=>$p_value) {$value = $p_value;}}if($fieldname=="invoiceid" && $value=="0")$value="";}}if($x19($fieldname, $Datefields)) {if($emodule == "Events" ||$emodule == "Calendar"){if($fieldname == "date_start" && $efocus->column_fields["time_start"] != ""){$curr_time = $efocus->column_fields['time_start']; $value = $value . ' ' . $curr_time;}elseif($fieldname == "due_date" && $efocus->column_fields["time_end"] != ""){$curr_time = $efocus->column_fields['time_end']; $value = $value . ' ' . $curr_time; }}if($value != "")$value = getValidDisplayDate($value);}elseif($x19($fieldname, $Picklists)) {if(!$x19($x2c($value), $this->ignored_picklist_values))$value = $this->x20($value,$emodule);else$value = "";}elseif($x19($fieldname, $Checkboxes)) {$pdf_app_strings = return_application_language($this->language);if($value == 1)$value = $pdf_app_strings["yes"];else$value = $pdf_app_strings["no"];} elseif($x19($fieldname, $Textareas)) {$value = $x1d($value); $value = $x15($value,ENT_QUOTES,$this->def_charset);} elseif($x19($fieldname, $Multipicklists))$value = $x24(' |##| ',', ',$value);elseif($x19($fieldname, $NumbersField))$value = $this->x23($value);if ($is_inventory)$inventory_content[$x27($emodule."_".$fieldname)] = $value;else$this->replacements["$".$related.$x27($convEntity."_".$fieldname)."$"]=$value;}if($is_inventory)return $inventory_content;else$this->x15();}private function x11() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $cur_usr = "current_user";$root_dir = "root_directory";global $$cur_usr,$$root_dir; $sql = "SELECT * FROM vtiger_organizationdetails";$result = $this->db->query($sql);$Org_Details = $this->db->fetchByAssoc($result, 1);foreach ($Org_Details AS $coll => $value) {if ($coll == "logo")$value = '<img src="'.$$root_dir.'test/logo/'.$Org_Details["logoname"].'">';$this->replacements["$".$this->org_cols[$coll]."$"] = $value;} $sql = "SELECT tandc FROM vtiger_inventory_tandc WHERE type = 'Inventory'";$tandc = $this->db->query_result($this->db->query($sql), 0, "tandc");$this->replacements["$"."TERMS_AND_CONDITIONS$"] = $x1d($tandc); $user_sql = "SELECT *
                   FROM vtiger_users WHERE id=".$this->focus->column_fields["assigned_user_id"];$user_res = $this->db->query($user_sql);$user_row = $this->db->fetchByAssoc($user_res);$this->replacements["$"."USER_USERNAME$"] = $user_row["user_name"];$this->replacements["$"."USER_FIRSTNAME$"] = $user_row["first_name"];$this->replacements["$"."USER_LASTNAME$"] = $user_row["last_name"];$this->replacements["$"."USER_EMAIL$"] = $user_row["email1"];$this->replacements["$"."USER_TITLE$"] = $user_row["title"];$this->replacements["$"."USER_FAX$"] = $user_row["phone_fax"];$this->replacements["$"."USER_DEPARTMENT$"] = $user_row["department"];$this->replacements["$"."USER_OTHER_EMAIL$"] = $user_row["email2"];$this->replacements["$"."USER_PHONE$"] = $user_row["phone_work"];$this->replacements["$"."USER_YAHOOID$"] = $user_row["yahoo_id"];$this->replacements["$"."USER_MOBILE$"] = $user_row["phone_mobile"];$this->replacements["$"."USER_HOME_PHONE$"] = $user_row["phone_home"];$this->replacements["$"."USER_OTHER_PHONE$"] = $user_row["phone_other"];$this->replacements["$"."USER_SIGHNATURE$"] = $user_row["signature"];$this->replacements["$"."USER_NOTES$"] = $user_row["description"];$this->replacements["$"."USER_ADDRESS$"] = $user_row["address_street"];$this->replacements["$"."USER_COUNTRY$"] = $user_row["address_country"];$this->replacements["$"."USER_CITY$"] = $user_row["address_city"];$this->replacements["$"."USER_ZIP$"] = $user_row["address_postalcode"];$this->replacements["$"."USER_STATE$"] = $user_row["address_state"]; $this->replacements["$"."L_USER_USERNAME$"] = $$cur_usr->column_fields["user_name"];$this->replacements["$"."L_USER_FIRSTNAME$"] = $$cur_usr->column_fields["first_name"];$this->replacements["$"."L_USER_LASTNAME$"] = $$cur_usr->column_fields["last_name"];$this->replacements["$"."L_USER_EMAIL$"] = $$cur_usr->column_fields["email1"];$this->replacements["$"."L_USER_TITLE$"] = $$cur_usr->column_fields["title"];$this->replacements["$"."L_USER_FAX$"] = $$cur_usr->column_fields["phone_fax"];$this->replacements["$"."L_USER_DEPARTMENT$"] = $$cur_usr->column_fields["department"];$this->replacements["$"."L_USER_OTHER_EMAIL$"] = $$cur_usr->column_fields["email2"];$this->replacements["$"."L_USER_PHONE$"] = $$cur_usr->column_fields["phone_work"];$this->replacements["$"."L_USER_YAHOOID$"] = $$cur_usr->column_fields["yahoo_id"];$this->replacements["$"."L_USER_MOBILE$"] = $$cur_usr->column_fields["phone_mobile"];$this->replacements["$"."L_USER_HOME_PHONE$"] = $$cur_usr->column_fields["phone_home"];$this->replacements["$"."L_USER_OTHER_PHONE$"] = $$cur_usr->column_fields["phone_other"];$this->replacements["$"."L_USER_SIGHNATURE$"] = $$cur_usr->column_fields["signature"];$this->replacements["$"."L_USER_NOTES$"] = $$cur_usr->column_fields["description"];$this->replacements["$"."L_USER_ADDRESS$"] = $$cur_usr->column_fields["address_street"];$this->replacements["$"."L_USER_COUNTRY$"] = $$cur_usr->column_fields["address_country"];$this->replacements["$"."L_USER_CITY$"] = $$cur_usr->column_fields["address_city"];$this->replacements["$"."L_USER_ZIP$"] = $$cur_usr->column_fields["address_postalcode"];$this->replacements["$"."L_USER_STATE$"] = $$cur_usr->column_fields["address_state"];$this->x15(); $focus_user = CRMEntity::getInstance("Users");$focus_user->id = $this->focus->column_fields["assigned_user_id"];$this->x24($focus_user,$focus_user->id ,"Users");$this->x10("Users", $focus_user, false); $this->x10("Users", $$cur_usr, true);}private function x12(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once "modules/PDFMaker/PDFMaker.php";$PDFMaker = new PDFMaker();$app_lang = return_application_language($this->language);$mod_lang = return_specified_module_language($this->language, $this->module);list($custom_lang, $languages) = $PDFMaker->GetCustomLabels();$currLangId = "";foreach($languages as $langId=>$langVal) {if($langVal["prefix"] == $this->language){$currLangId = $langId;break;}} if($x28($this->content, "%G_")!==false){foreach($app_lang as $key=>$value){$this->replacements["%G_".$key."%"] = $value;}} if($x28($this->content, "%M_")!==false){foreach($mod_lang as $key=>$value){$this->replacements["%M_".$key."%"] = $value;}} if($x28($this->content, "%C_")!==false){foreach($custom_lang as $key=>$value){$this->replacements["%".$value->GetKey()."%"] = $value->GetLangValue($currLangId);}} foreach($this->relBlockModules as $relBlockId => $relBlockModule){if($relBlockModule != ""){$relMod_lang = return_specified_module_language($this->language, $relBlockModule);foreach($relMod_lang as $key=>$value){$this->replacements["%R_".$x27($relBlockModule)."_".$x16($key, ENT_QUOTES, $this->def_charset)."%"] = $value;}}}$this->x15();}private function x13(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("classes/simple_html_dom.php");$this->replacements["[BARCODE|"]="<barcode>";$this->replacements["|BARCODE]"]="</barcode>";$this->x15();$html = str_get_html($this->content);foreach($html->find("barcode") as $barcode) {$params = $x12("|",$barcode->plaintext);list($type,$code) = $x12("=",$params[0],2);$barcodeAtts = 'code="'.$code.'" type="'.$type.'" ';for($i=1; $i<$x10($params); $i++){list($attName,$attVal) = $x12("=",$params[$i],2);$barcodeAtts .= $x29($attName).'="'.$attVal.'" ';}$barcode->outertext = '<barcode '.$barcodeAtts.'/>';}$this->content = $html->save();}private function x14(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $salt = "site_URL";global $$salt;$surl = $$salt;require_once("classes/simple_html_dom.php");$html = str_get_html($this->content);foreach($html->find("img") as $img){if($surl[$x25($surl) - 1] != "/")$surl = $surl."/";if($x28($img->src, $surl) === 0) {$newPath = $x23($surl, "", $img->src);if($x13($newPath))$img->src = $newPath;}}$this->content=$html->save();}private function x15() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(!empty($this->replacements)){$this->content = $x23($x0b($this->replacements), $this->replacements, $this->content);$this->replacements = array();}} private function x16() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $salt="site_URL";global $$salt;$this->site_url = $x2c($$salt,"/");$sql = "SELECT vtiger_pdfmaker.*, vtiger_pdfmaker_settings.* 
              FROM vtiger_pdfmaker 

              LEFT JOIN vtiger_pdfmaker_settings
                ON vtiger_pdfmaker_settings.templateid = vtiger_pdfmaker.templateid
 
              WHERE vtiger_pdfmaker.templateid=?";$result = $this->db->pquery($sql, array($this->templateid));$data = $this->db->fetch_array($result);$this->decimal_point = $x15($data["decimal_point"], ENT_QUOTES);$this->thousands_separator = $x15(($data["thousands_separator"]!="sp" ? $data["thousands_separator"] : " "), ENT_QUOTES);$this->decimals = $data["decimals"];$this->header = $data["header"];$this->footer = $data["footer"];$this->body = $data["body"];$this->filename = $data["file_name"];$this->templatename = $data["filename"]; $formatPB = $data["format"];if($x28($formatPB, ";")>0) {$tmpArr = $x12(";", $formatPB);$formatPB = $tmpArr[0]."mm ".$tmpArr[1]."mm";}elseif($data["orientation"] == "landscape") {$formatPB .= "-L";}$this->pagebreak = '<pagebreak sheet-size="'.$formatPB.'" orientation="'.$data["orientation"].'" margin-left="'.($data["margin_left"] * 10).'mm" margin-right="'.($data["margin_right"] * 10).'mm" margin-top="0mm" margin-bottom="0mm" margin-header="'.($data["margin_top"] * 10).'mm" margin-footer="'.($data["margin_bottom"] * 10).'mm" />'; }private function x17() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql = "SELECT value FROM vtiger_pdfmaker_ignorepicklistvalues";$result = $this->db->query($sql);while($row = $this->db->fetchByAssoc($result)) {$this->ignored_picklist_values[] = $row["value"];}}private function x18($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $taxtype = $this->x22($module, $focus);$currencytype = $this->x21($module, $focus);$query="select case when vtiger_products.productid != '' then vtiger_products.productname else vtiger_service.servicename end as productname," ." case when vtiger_products.productid != '' then vtiger_products.productid else vtiger_service.serviceid end as psid," ." case when vtiger_products.productid != '' then vtiger_products.product_no else vtiger_service.service_no end as psno," ." case when vtiger_products.productid != '' then 'Products' else 'Services' end as entitytype," ." case when vtiger_products.productid != '' then vtiger_products.unit_price else vtiger_service.unit_price end as unit_price," ." case when vtiger_products.productid != '' then vtiger_products.usageunit else vtiger_service.service_usageunit end as usageunit," ." case when vtiger_products.productid != '' then vtiger_products.qty_per_unit else vtiger_service.qty_per_unit end as qty_per_unit," ." case when vtiger_products.productid != '' then vtiger_products.qtyinstock else 'NA' end as qtyinstock," ." case when vtiger_products.productid != '' then c1.description else c2.description end as psdescription, vtiger_inventoryproductrel.* " ." from vtiger_inventoryproductrel" ." left join vtiger_products on vtiger_products.productid=vtiger_inventoryproductrel.productid " ." left join vtiger_crmentity as c1 on c1.crmid = vtiger_products.productid " ." left join vtiger_service on vtiger_service.serviceid=vtiger_inventoryproductrel.productid " ." left join vtiger_crmentity as c2 on c2.crmid = vtiger_service.serviceid " ." where id=? ORDER BY sequence_no";$result = $this->db->pquery($query, array($focus->id));$num_rows=$this->db->num_rows($result);$netTotal = "0.00"; $totalAfterDiscount_subtotal=0;$total_subtotal=0;$totalsum_subtotal=0; $images = $this->x1a($focus->id); $mpdfSubtotalAble = array();$Total_Tax_Values = array();for($i=1;$i<=$num_rows;$i++){$sub_prod_query = $this->db->pquery("SELECT productid from vtiger_inventorysubproductrel WHERE id=? AND sequence_no=?",array($focus->id,$i));$subprodname_str='';if($this->db->num_rows($sub_prod_query)>0){for($j=0;$j<$this->db->num_rows($sub_prod_query);$j++){$sprod_id = $this->db->query_result($sub_prod_query,$j,"productid");$sprod_name = getProductName($sprod_id);$str_sep = "";if($j>0) $str_sep = ":";$subprodname_str .= $str_sep." - ".$sprod_name;}}$subprodname_str = $x23(":","<br>",$subprodname_str);$psid = $this->db->query_result($result,$i-1,"psid");$psno = $this->db->query_result($result,$i-1,"psno");$productid=$this->db->query_result($result,$i-1,"productid");$entitytype=$this->db->query_result($result,$i-1,"entitytype");$producttitle = $productname= $this->db->query_result($result,$i-1,"productname");if($subprodname_str!="") $productname .= "<br/><span style='color:#C0C0C0;font-style:italic;'>".$subprodname_str."</span>";$comment=$this->db->query_result($result,$i-1,"comment");$psdescription =$this->db->query_result($result,$i-1,"psdescription");$inventory_prodrel_desc = $this->db->query_result($result,$i-1,"description");$qtyinstock=$this->db->query_result($result,$i-1,"qtyinstock");$qty=$this->db->query_result($result,$i-1,"quantity");$qty_per_unit=$this->db->query_result($result,$i-1,"qty_per_unit");$usageunit=$this->db->query_result($result,$i-1,"usageunit");$unitprice=$this->db->query_result($result,$i-1,"unit_price");$listprice=$this->db->query_result($result,$i-1,"listprice");$total = $qty*$listprice; $discount_percent=$this->db->query_result($result,$i-1,"discount_percent");$discount_amount=$this->db->query_result($result,$i-1,"discount_amount");$totalAfterDiscount = $total;$productDiscount = "0.00";$productDiscountPercent = "";if($discount_percent != "NULL" && $discount_percent != "") {$productDiscount = $total*$discount_percent/100;$totalAfterDiscount = $total-$productDiscount; $productDiscountPercent=$discount_percent;}elseif($discount_amount != "NULL" && $discount_amount != "") {$productDiscount = $discount_amount;$totalAfterDiscount = $total-$productDiscount;} $netprice = $totalAfterDiscount; if($taxtype == "individual") {$taxtotal = "0.00";$tax_info_message = $mod_strings["LBL_TOTAL_AFTER_DISCOUNT"]." = $totalAfterDiscount \n";$tax_details = getTaxDetailsForProduct($productid,"all");$Tax_Values = array();for($tax_count=0;$tax_count<$x10($tax_details);$tax_count++){$tax_name = $tax_details[$tax_count]["taxname"];$tax_label = $tax_details[$tax_count]["taxlabel"];$tax_value = getInventoryProductTaxValue($focus->id, $productid, $tax_name);$individual_taxamount = $totalAfterDiscount*$tax_value/100;$taxtotal = $taxtotal + $individual_taxamount;if ($tax_name != "" && $tax_value > 0){ $vatblock[$tax_name."-".$tax_value]["label"] = $tax_label;$vatblock[$tax_name."-".$tax_value]["netto"] += $totalAfterDiscount; $vatblock[$tax_name."-".$tax_value]["vat"] += $x20($individual_taxamount,$this->decimals); $vatblock[$tax_name."-".$tax_value]["value"] = $tax_value;$x0c($Tax_Values, $tax_value);$x0c($Total_Tax_Values, $tax_value);}}$netprice = $netprice + $taxtotal; if ($x10($Tax_Values) > 0){ $tax_avg_value = $x0e($Tax_Values);}else{ $tax_avg_value = "0.00";}$Details["P"][$i]["PRODUCTVATPERCENT"] = $this->x23($tax_avg_value);$Details["P"][$i]["PRODUCTVATSUM"] = $this->x23($taxtotal);}if ($entitytype == "Products"){ $Details["P"][$i]["PRODUCTS_CRMID"] = $psid; $Details["P"][$i]["SERVICES_CRMID"] = "";}else{ $Details["P"][$i]["PRODUCTS_CRMID"] = ""; $Details["P"][$i]["SERVICES_CRMID"] = $psid;}$Details["P"][$i]["PS_CRMID"] = $psid;$Details["P"][$i]["PS_NO"] = $psno;if($comment!=""){$comment = $x23("\n", "<br>", $x1d($comment)); $comment = $x15($comment,ENT_QUOTES,$this->def_charset);$productname .= "<br /><small>".$comment."</small>";}$Details["P"][$i]["PRODUCTNAME"] = $productname;$Details["P"][$i]["PRODUCTTITLE"] = $producttitle;$psdescription = $x23("\n", "<br>", $x1d($psdescription));$Details["P"][$i]["PRODUCTDESCRIPTION"] = $x15($psdescription,ENT_QUOTES,$this->def_charset);$Details["P"][$i]["PRODUCTEDITDESCRIPTION"] = $comment;$inventory_prodrel_desc = $x23("\n", "<br>", $x1d($inventory_prodrel_desc));$Details["P"][$i]["CRMNOWPRODUCTDESCRIPTION"] = $x15($inventory_prodrel_desc,ENT_QUOTES,$this->def_charset);$Details["P"][$i]["PRODUCTLISTPRICE"] = $this->x23($listprice);$Details["P"][$i]["PRODUCTTOTAL"] = $this->x23($total);$Details["P"][$i]["PRODUCTQUANTITY"] = $this->x23($qty);$Details["P"][$i]["PRODUCTQINSTOCK"] = $this->x23($qtyinstock); $Details["P"][$i]["PRODUCTPRICE"] = $this->x23($unitprice); $Details["P"][$i]["PRODUCTPOSITION"] = $i;$Details["P"][$i]["PRODUCTQTYPERUNIT"] = $this->x23($qty_per_unit); $value = $usageunit;if(!$x19($x2c($value), $this->ignored_picklist_values))$value = $this->x20($value,"Products/Services");else$value = "";$Details["P"][$i]["PRODUCTUSAGEUNIT"] = $value;$Details["P"][$i]["PRODUCTDISCOUNT"] = $this->x23($productDiscount);$Details["P"][$i]["PRODUCTDISCOUNTPERCENT"] = $this->x23($productDiscountPercent);$Details["P"][$i]["PRODUCTSTOTALAFTERDISCOUNTSUM"] = $totalAfterDiscount; $Details["P"][$i]["PRODUCTSTOTALAFTERDISCOUNT"] = $this->x23($totalAfterDiscount);$Details["P"][$i]["PRODUCTTOTALSUM"] = $this->x23($totalAfterDiscount+$taxtotal); $totalAfterDiscount_subtotal += $totalAfterDiscount;$total_subtotal += $total;$totalsum_subtotal+= $totalAfterDiscount+$taxtotal;$Details["P"][$i]["PRODUCTSTOTALAFTERDISCOUNT_SUBTOTAL"] = $this->x23($totalAfterDiscount_subtotal);$Details["P"][$i]["PRODUCTTOTAL_SUBTOTAL"] = $this->x23($total_subtotal);$Details["P"][$i]["PRODUCTTOTALSUM_SUBTOTAL"] = $this->x23($totalsum_subtotal); $mpdfSubtotalAble[$i]["$"."TOTALAFTERDISCOUNT_SUBTOTAL$"] = $Details["P"][$i]["PRODUCTSTOTALAFTERDISCOUNT_SUBTOTAL"];$mpdfSubtotalAble[$i]["$"."TOTAL_SUBTOTAL$"] = $Details["P"][$i]["PRODUCTTOTAL_SUBTOTAL"];$mpdfSubtotalAble[$i]["$"."TOTALSUM_SUBTOTAL$"] = $Details["P"][$i]["PRODUCTTOTALSUM_SUBTOTAL"]; $sequence = $this->db->query_result($result,$i-1,"sequence_no");$Details["P"][$i]["PRODUCTSEQUENCE"] = $sequence;if(isset($images[$productid."_".$sequence])){$width="";$height="";if($images[$productid."_".$sequence]["width"]>0)$width=" width='".$images[$productid."_".$sequence]["width"]."' ";if($images[$productid."_".$sequence]["height"]>0)$height=" height='".$images[$productid."_".$sequence]["height"]."' ";$Details["P"][$i]["PRODUCTS_IMAGENAME"] = "<img src='".$this->site_url."/".$images[$productid."_".$sequence]["src"]."' ".$width.$height."/>";} $focus_p = CRMEntity::getInstance("Products");if ($entitytype == "Products" && $psid != "") {$focus_p->id = $psid;$this->x24($focus_p,$psid,"Products"); }$Array_P = $this->x10("Products", $focus_p, false, true);$Details["P"][$i] = $x0d($Array_P,$Details["P"][$i]);unset($focus_p);$focus_s = CRMEntity::getInstance("Services");if ($entitytype == "Services" && $psid != "") {$focus_s->id = $psid;$this->x24($focus_s,$psid,"Services"); }$Array_S = $this->x10("Services", $focus_s, false, true);$Details["P"][$i] = $x0d($Array_S,$Details["P"][$i]);unset($focus_s); $sumwithoutvat += $totalAfterDiscount;$netTotal = $netTotal + $netprice;} if($this->module == $module)$this->bridge2mpdf["subtotalsArray"] = $mpdfSubtotalAble; $finalDiscount = "0.00";$final_discount_info = "0";$finalDiscountPercent=""; if($focus->column_fields["hdnDiscountPercent"] != "0") {$finalDiscount = ($netTotal*$focus->column_fields["hdnDiscountPercent"]/100);$finalDiscountPercent = $focus->column_fields["hdnDiscountPercent"];}elseif($focus->column_fields["hdnDiscountAmount"] != "0") {$finalDiscount = $focus->column_fields["hdnDiscountAmount"];} $taxtotal = "0.00";if($taxtype == "group") {$final_totalAfterDiscount = $netTotal - $finalDiscount;$tax_details = getAllTaxes("available","","edit",$focus->id);for($tax_count=0;$tax_count<$x10($tax_details);$tax_count++) {$tax_name = $tax_details[$tax_count]["taxname"];$tax_label = $tax_details[$tax_count]["taxlabel"];$tax_value = $this->db->query_result($result,0,$tax_name);if($tax_value == "" || $tax_value == "NULL")$tax_value = "0.00";$taxamount = ($netTotal-$finalDiscount)*$tax_value/100;$taxtotal = $taxtotal + $taxamount;if ($tax_name != "" && $tax_value > 0){$vatblock[$tax_name]["label"] = $tax_label;$vatblock[$tax_name]["netto"] = $final_totalAfterDiscount; $vatblock[$tax_name]["vat"] += $taxamount; $vatblock[$tax_name]["value"] = $tax_value; } $total_vat_percent += $tax_value;}$vat_value = $taxtotal; foreach ($Details["P"] as $keyP=>$valueP) {$productvatsum = ($Details["P"][$keyP]["PRODUCTSTOTALAFTERDISCOUNTSUM"]*$total_vat_percent)/100;$producttotalsum = $Details["P"][$keyP]["PRODUCTSTOTALAFTERDISCOUNTSUM"] + $productvatsum;$Details["P"][$keyP]["PRODUCTVATPERCENT"] = $this->x23($total_vat_percent);$Details["P"][$keyP]["PRODUCTVATSUM"] = $this->x23($productvatsum);$Details["P"][$keyP]["PRODUCTTOTALSUM"] = $this->x23($producttotalsum);} }else{if ($x10($vatblock) > 0){ foreach ($vatblock as $keyM => $valueM) $vat_value += $valueM["vat"];}else{ $vat_value = "0.00";}} $shAmount = ($focus->column_fields["hdnS_H_Amount"] != "")?$focus->column_fields["hdnS_H_Amount"]:"0.00";$shtaxtotal = "0.00";$shtax_details = getAllTaxes("available","sh","edit",$focus->id);for($shtax_count=0;$shtax_count<$x10($shtax_details);$shtax_count++) {$shtax_name = $shtax_details[$shtax_count]["taxname"];$shtax_label = $shtax_details[$shtax_count]["taxlabel"];$shtax_percent = getInventorySHTaxPercent($focus->id,$shtax_name);$shtaxamount = $shAmount*$shtax_percent/100;$shtaxtotal = $shtaxtotal + $shtaxamount;}$totalafterdiscount = $sumwithoutvat-$finalDiscount;$totalwithvat = ($sumwithoutvat-$finalDiscount)+$vat_value;$Details["TOTAL"]["NETTOTAL"] = $this->x23($netTotal);$Details["TOTAL"]["TOTALWITHOUTVAT"] = $this->x23($sumwithoutvat);$Details["TOTAL"]["FINALDISCOUNT"] = $this->x23($finalDiscount);$Details["TOTAL"]["FINALDISCOUNTPERCENT"] = $this->x23($finalDiscountPercent);$Details["TOTAL"]["TOTALAFTERDISCOUNT"] = $this->x23($totalafterdiscount);$Details["TOTAL"]["TAXTOTAL"] = $this->x23($vat_value);$Details["TOTAL"]["TAXTOTALPERCENT"] = $this->x23($total_vat_percent); $Details["TOTAL"]["TOTALWITHVAT"] = $this->x23($totalwithvat);$Details["TOTAL"]["SHTAXAMOUNT"] = $this->x23($shAmount);$Details["TOTAL"]["SHTAXTOTAL"] = $this->x23($shtaxtotal);$Details["TOTAL"]["VATBLOCK"] = $vatblock;return $Details;}private function x19(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="SELECT productid, sequence, show_header, show_subtotal FROM vtiger_pdfmaker_breakline WHERE crmid=?";$res = $this->db->pquery($sql,array($this->focus->id));$products=array();$show_header=0;$show_subtotal=0;while($row=$this->db->fetchByAssoc($res)){$products[$row["productid"]."_".$row["sequence"]] = $row["sequence"];$show_header=$row["show_header"];$show_subtotal=$row["show_subtotal"];}$output["products"] = $products;$output["show_header"] = $show_header;$output["show_subtotal"] = $show_subtotal;return $output;}private function x1a($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="SELECT vtiger_attachments.path, vtiger_attachments.name, vtiger_attachments.attachmentsid, productid, sequence, width, height
            FROM vtiger_pdfmaker_images 
            INNER JOIN vtiger_attachments
 
              ON vtiger_attachments.attachmentsid=vtiger_pdfmaker_images.attachmentid
            INNER JOIN vtiger_crmentity
              ON vtiger_attachments.attachmentsid=vtiger_crmentity.crmid 

            WHERE deleted=0 AND vtiger_pdfmaker_images.crmid=?";$res = $this->db->pquery($sql,array($id));$products=array();while($row=$this->db->fetchByAssoc($res)){$products[$row["productid"]."_".$row["sequence"]]["src"] = $row["path"].$row["attachmentsid"]."_".$row["name"];$products[$row["productid"]."_".$row["sequence"]]["width"] = $row["width"];$products[$row["productid"]."_".$row["sequence"]]["height"] = $row["height"];}return $products;}private function x1b($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(isset($id) AND $id!=""){$query="SELECT vtiger_attachments.path, vtiger_attachments.name, vtiger_attachments.attachmentsid 
              FROM vtiger_contactdetails 

              INNER JOIN vtiger_seattachmentsrel
                ON vtiger_contactdetails.contactid=vtiger_seattachmentsrel.crmid
              INNER JOIN vtiger_attachments 

                ON vtiger_attachments.attachmentsid=vtiger_seattachmentsrel.attachmentsid
              INNER JOIN vtiger_crmentity
                ON vtiger_attachments.attachmentsid=vtiger_crmentity.crmid 

              WHERE deleted=0 AND vtiger_contactdetails.contactid=?";$result = $this->db->pquery($query, array($id));$num_rows = $this->db->num_rows($result);if ($num_rows > 0){$image_src = $this->db->query_result($result,0,"path").$this->db->query_result($result,0,"attachmentsid")."_".$this->db->query_result($result,0,"name");$image = "<img src='".$this->site_url."/".$image_src."'/>";return $image;}} else {return "";}}private function x1c($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(isset($id) AND $id!=""){$sql = "select vtiger_attachments.* from vtiger_attachments left join vtiger_salesmanattachmentsrel on vtiger_salesmanattachmentsrel.attachmentsid = vtiger_attachments.attachmentsid where vtiger_salesmanattachmentsrel.smid=?";$image_res = $this->db->pquery($sql, array($id));$image_id = $this->db->query_result($image_res, 0, 'attachmentsid');$image_path = $this->db->query_result($image_res, 0, 'path');$image_name = $this->db->query_result($image_res, 0, 'name');$imgpath = $image_path . $image_id . "_" . $image_name;if ($image_name != '') {$image = '<img src="' . $imgpath . '" width="250px" border="0">';} else { $image = '';}return $image; } else {return "";}}private function x1d($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $productid = $id;$images = $this->x1a($productid);$sequence = "1";$retImage = "";if(isset($images[$productid."_".$sequence])){$width="";$height="";if($images[$productid."_".$sequence]["width"]>0)$width=" width='".$images[$productid."_".$sequence]["width"]."' ";if($images[$productid."_".$sequence]["height"]>0)$height=" height='".$images[$productid."_".$sequence]["height"]."' ";$retImage = "<img src='".$this->site_url."/".$images[$productid."_".$sequence]["src"]."' ".$width.$height."/>";}return $retImage;} private function x1e($id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($id != "") {$sql = "SELECT user_name FROM vtiger_users WHERE id=?";$result = $this->db->pquery($sql, array($id));$ownername = $this->db->query_result($result,0,"user_name");}if($ownername == "") {$sql = "SELECT groupname FROM vtiger_groups WHERE groupid=?";$result = $this->db->pquery($sql, array($id));$ownername = $this->db->query_result($result,0,"groupname");}else {$ownername = getUserFullName($id);}return $ownername;}private function x1f($account_id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $accountno = "";if($account_id != '') {$sql = "SELECT account_no FROM vtiger_account WHERE accountid=?";$result = $this->db->pquery($sql, array($account_id));$accountno = $this->db->query_result($result,0,"account_no");}return $accountno;}private function x20($str,$emodule) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("modules/PDFMaker/PDFMakerUtils.php");return getTranslatedStringInLang($str,$emodule,$this->language);}private function x21($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $inventory_table = $this->inventory_table_array[$module];$inventory_id = $this->inventory_id_array[$module];$res = $this->db->pquery("SELECT currency_id, ".$inventory_table.".conversion_rate AS conv_rate, vtiger_currency_info.* 
                           FROM ".$inventory_table."
                           INNER JOIN vtiger_currency_info ON ".$inventory_table.".currency_id = vtiger_currency_info.id
                           WHERE ".$inventory_id."=?", array($focus->id));$currency_info = array();$currency_info["currency_id"] = $this->db->query_result($res,0,"currency_id");$currency_info["conversion_rate"] = $this->db->query_result($res,0,"conv_rate");$currency_info["currency_name"] = $this->db->query_result($res,0,"currency_name");$currency_info["currency_code"] = $this->db->query_result($res,0,"currency_code");$currency_info["currency_symbol"] = $this->db->query_result($res,0,"currency_symbol"); return $currency_info;}private function x22($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $res = $this->db->pquery("SELECT taxtype FROM ".$this->inventory_table_array[$module]." WHERE ".$this->inventory_id_array[$module]."=?", array($focus->id));$taxtype = $this->db->query_result($res,0,'taxtype');return $taxtype;}private function x23($value) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x1a($value)){$number = $x1e($value,$this->decimals,$this->decimal_point,$this->thousands_separator);}else {$number = "";}return $number;}private function x24(&$focus,$record,$module) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $result = Array();foreach($focus->tab_name_index as $table_name=>$index)$result[$table_name] = $this->db->pquery("SELECT * FROM ".$table_name." WHERE ".$index."=?", array($record));$tabid = getTabid($module);$sql1 = "SELECT fieldname, fieldid, fieldlabel, columnname, tablename, uitype, typeofdata, presence
               FROM vtiger_field WHERE tabid=?";$result1 = $this->db->pquery($sql1, array($tabid));$noofrows = $this->db->num_rows($result1);if($noofrows) {while($resultrow = $this->db->fetch_array($result1)) {$fieldcolname = $resultrow["columnname"];$tablename= $resultrow["tablename"];$fieldname= $resultrow["fieldname"];$fld_value="";if(isset($result[$tablename]))$fld_value = $this->db->query_result($result[$tablename],0,$fieldcolname);$focus->column_fields[$fieldname] = $fld_value;}}$focus->column_fields["record_id"] = $record;$focus->column_fields["record_module"] = $module;}private function x25($value) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x13("modules/Settings/EditTermDetails.php")) {$sql = "SELECT tandc FROM vtiger_inventory_tandc WHERE id='".$value."'";$res = $this->db->query($sql);$num = $this->db->num_rows($res);if($num>0)$tandc = $this->db->query_result($res,0,"tandc");else$tandc = $value;}else$tandc = $value;return $tandc;}private function x26($efocus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $commentlist="";$prefix="";if($efocus->column_fields["record_module"] == "HelpDesk"){$prefix="ticket";}elseif($efocus->column_fields["record_module"] == "Faq") {$prefix="faq";}if($prefix!="") {$mod_lang = return_specified_module_language($this->language,$efocus->column_fields["record_module"]);$sql="SELECT * FROM vtiger_".$prefix."comments WHERE ".$prefix."id=".$efocus->id;$result=$this->db->query($sql);while($row = $this->db->fetchByAssoc($result)) {$comment = $row["comments"];$crtime = getValidDisplayDate($row["createdtime"]);$body="";if($prefix=="ticket"){$author = $this->x1e($row["ownerid"]);$body=$comment."<br />".$mod_lang["LBL_AUTHOR"].": ".$author."<br />".$mod_lang["Created Time"].": ".$crtime."<br /><br />";}else {$body=$comment."<br />".$mod_lang["Created Time"].": ".$crtime."<br /><br />";}$commentlist.=$body;}}return $commentlist;}private function x27($folderid) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="SELECT foldername FROM vtiger_attachmentsfolder WHERE folderid=".$folderid;return $foldername = $this->db->query_result($this->db->query($sql),0,"foldername");}private function x28(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x1a($x28($this->content, '[CUSTOMFUNCTION|'))){ require_once("classes/simple_html_dom.php");foreach ($x14('modules/PDFMaker/functions/*.php') as $file) {include_once $file;} $this->replacements["[CUSTOMFUNCTION|"]="<customfunction>"; $this->replacements["|CUSTOMFUNCTION]"]="</customfunction>"; $this->x15(); $html = str_get_html($this->content); foreach($html->find("customfunction") as $customfunction) { $Params = $this->x29($x2c($customfunction->plaintext));$func = $Params[0];unset($Params[0]);$replacement = $x0f($func,$Params);$customfunction->outertext = $replacement; } $this->content = $html->save(); } }private function x29($val){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $Params = array();$end = false;do {if ($x2a($val, '|')){ if ($val[0] == '"') {$delimiter = '"|';$val = $x2b($val, 1); } elseif ($x2b($val,0,6) == '&quot;') {$delimiter = '&quot;|';$val = $x2b($val, 6); } else $delimiter = '|'; list($Params[],$val) = $x12($delimiter,$val,2);}else{ $Params[] = $val; $end = true;}} while (!$end);return $Params;}public function getFilename() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $this->content = $this->filename;$this->replacements["$#TEMPLATE_NAME#$"]=$this->templatename;$this->replacements["$#DD-MM-YYYY#$"]=$x11("d-m-Y");$this->replacements["$#MM-DD-YYYY#$"]=$x11("m-d-Y");$this->replacements["$#YYYY-MM-DD#$"]=$x11("Y-m-d");$this->replacements["$".$x27($this->module)."_CRMID$"]=$this->focus->id;$this->x10($this->module, $this->focus);$this->replacements=array();$this->replacements["
"]="";$this->replacements["

"]="";$this->replacements["
"]="";$this->replacements["
"]="";$this->x15();return $x23(" ", "_", $x2b($x26($x15($this->content,ENT_QUOTES,$this->def_charset)),0,255));}private function x2a($val) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; return $x1c($val);}private function x2b(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; include_once("modules/PDFMaker/RelBlockRun.php");if($x28($this->content,"#RELBLOCK") !== false){$x1f("|#RELBLOCK([0-9]+)_START#|U", $this->content, $RelatedBlocks, PREG_PATTERN_ORDER);if ($x10($RelatedBlocks[1]) > 0){$ConvertRelBlock = array();foreach($RelatedBlocks[1] AS $r => $relblockid){if (!$x19($relblockid,$ConvertRelBlock)){$sql_rb = "SELECT secmodule FROM vtiger_pdfmaker_relblocks WHERE relblockid = '".$relblockid."'";$secmodule = $this->db->query_result($this->db->query($sql_rb), 0, "secmodule");if($x28($this->content,"#RELBLOCK".$relblockid."_START#") !== false){if ($x28($this->content,"#RELBLOCK".$relblockid."_END#") !== false){$tableDOM = $this->x2c($relblockid);$oRelBlockRun = new RelBlockRun($this->focus->id, $relblockid, $this->module, $secmodule);$oRelBlockRun->SetPDFLanguage($this->language);$RelBlock_Data = $oRelBlockRun->GenerateReport();$ExplodedPdf = array();$Exploded = $x12("#RELBLOCK".$relblockid."_START#",$this->content);$ExplodedPdf[] = $Exploded[0];for($iterator=1;$iterator<$x10($Exploded);$iterator++){$SubExploded = $x12("#RELBLOCK".$relblockid."_END#",$Exploded[$iterator]);foreach($SubExploded as $part)$ExplodedPdf[] = $part;$highestpartid = $iterator*2-1;$ProductParts[$highestpartid]=$ExplodedPdf[$highestpartid];$ExplodedPdf[$highestpartid]='';}if ($x10($RelBlock_Data) > 0){ $this->relBlockModules[$relblockid] = $secmodule;foreach ($RelBlock_Data AS $RelBlock_i => $RelBlock_Details){foreach($ProductParts as $productpartid=>$productparttext){$show_line = false;foreach ($RelBlock_Details AS $coll => $value){ if ($x2c($value) != "-" && $coll != "listprice") {$show_line = true;} $productparttext = $x24("$".$coll."$",$value,$productparttext);}if ($show_line) $ExplodedPdf[$productpartid].=$productparttext;}}}$this->content = $x18('',$ExplodedPdf);}}$ConvertRelBlock[] = $relblockid;}}}}}private function x2c($relblockid){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("classes/simple_html_dom.php");$html = str_get_html($this->content);$tableDOM=false;foreach($html->find("td") as $td){if($x2c($td->plaintext) == "#RELBLOCK".$relblockid."_START#"){$td->parent->outertext = "#RELBLOCK".$relblockid."_START#";list($tag)=$x12(">",$td->parent->parent->parent->outertext,2);$header = $td->parent->prev_sibling()->outertext;$header_style = $td->parent->prev_sibling()->children[0]->getAttribute("style");$footer_tag="<tr>";if(isset($header_style)){ $StyleHeader = $x12(";", $header_style);if(isset($StyleHeader)){ foreach($StyleHeader as $style_header_tag) {if($x28($style_header_tag, "border-top") == TRUE){$footer_tag.="<td colspan='".$td->getAttribute("colspan")."' style='".$style_header_tag."'>&nbsp;</td>";} }}} else {$footer_tag.="<td colspan='".$td->getAttribute("colspan")."' style='border-top:1px solid #000000;'>&nbsp;</td>";}$footer_tag.="</tr>";$var = $td->parent->next_sibling()->last_child()->plaintext; $subtotal_tr="";if($x28($var, "TOTAL")!==false){ if($x1b($td)){$style_subtotal=$td->getAttribute("style");}if(isset($td->innertext)){list($style_subtotal_tag,$style_subtotal_endtag)=$x12("#PRODUCTBLOC_START#",$td->innertext);} else {$style_subtotal_tag = "";$style_subtotal_endtag = "";}if(isset($style_subtotal)){ $StyleSubtotal = $x12(";", $style_subtotal); if(isset($StyleSubtotal)){ foreach($StyleSubtotal as $style_tag) {if($x28($style_tag, "border-top") == TRUE){$tag.=" style='".$style_tag."'";break;} } } } else {$style_subtotal = ""; } $tag.=">"; $subtotal_tr="<tr>";$subtotal_tr.="<td colspan='".($td->getAttribute("colspan")-1)."' style='".$style_subtotal.";border-right:none'>".$style_subtotal_tag."%G_Subtotal%".$style_subtotal_endtag."</td>";$subtotal_tr.="<td align='right' nowrap='nowrap' style='".$style_subtotal."'>".$style_subtotal_tag."".$x21($var,"$")."_SUBTOTAL$".$style_subtotal_endtag."</td>"; $subtotal_tr.="</tr>"; } $tableDOM["tag"] = $tag; $tableDOM["header"] = $header; $tableDOM["footer"] = $footer_tag; $tableDOM["subtotal"] = $subtotal_tr;}if($x2c($td->plaintext) == "#RELBLOCK".$relblockid."_END#") $td->parent->outertext = "#RELBLOCK".$relblockid."_END#";}$this->content=$html->save();return $tableDOM;}private function x2d() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("classes/simple_html_dom.php");$html = str_get_html($this->content);foreach($html->find("td") as $td){if($x2c($td->plaintext) == "#LISTVIEWBLOCK_START#") $td->parent->outertext = "#LISTVIEWBLOCK_START#";if($x2c($td->plaintext) == "#LISTVIEWBLOCK_END#") $td->parent->outertext = "#LISTVIEWBLOCK_END#";}$this->content=$html->save();}private function x2e() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("classes/simple_html_dom.php");$html = str_get_html($this->content);foreach($html->find("td") as $td){ if($x2c($td->plaintext) == "#VATBLOCK_START#"){$td->parent->outertext = "#VATBLOCK_START#"; } if($x2c($td->plaintext) == "#VATBLOCK_END#"){$td->parent->outertext = "#VATBLOCK_END#"; }}$this->content =$html->save();} private function x2f(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $tacModules = array();$tac4you = $x1a(getTabId("Tac4you"));if($tac4you == true) { $tacSql = "SELECT text FROM vtiger_tac4you_texts WHERE id=?"; $tacResult = $this->db->pquery($tacSql, array($this->focus->id)); $tacText = $this->db->query_result($tacResult, 0, "text"); $this->replacements["$".$x27($this->module)."_TAC4YOU$"] = $x15($tacText, ENT_QUOTES, $this->def_charset);} } private function x30() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $desc4youModules = array();$desc4you = $x1a(getTabId("Descriptions4you"));if($desc4you == true) { $descSql = "SELECT text FROM vtiger_descriptions4you_texts WHERE id=?"; $descResult = $this->db->pquery($descSql, array($this->focus->id)); $descText = $this->db->query_result($descResult, 0, "text"); $this->replacements["$".$x27($this->module)."_DESC4YOU$"] = $x15($descText, ENT_QUOTES, $this->def_charset);}}private function x31() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $ModCommentsModules = array();$ModComments = $x1a(getTabId("ModComments"));$string_comments = "";if($ModComments == true){$sql = "SELECT relmodule FROM vtiger_fieldmodulerel WHERE module='ModComments' AND relmodule = ?";$result = $this->db->pquery($sql, array($this->module));if($this->db->num_rows($result) > 0 ) {$string_comments = $this->x32($this->focus->id);}}$this->replacements["$".$x27($this->module)."_MODCOMMENTS$"] = $x15($string_comments, ENT_QUOTES, $this->def_charset);}private function x32($parent_id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $string_comments = "";if($x13("modules/ModComments/ModComments.php") == true) {require_once("modules/ModComments/ModComments.php");$moduleName = "ModComments";$entityInstance = CRMEntity::getInstance($moduleName);$queryCriteria = $x22(" ORDER BY %s.%s DESC ", $entityInstance->table_name, $entityInstance->table_index);$query = $entityInstance->getListQuery($moduleName, $x22(" AND %s.related_to=?", $entityInstance->table_name));$query .= $queryCriteria;$result = $this->db->pquery($query, array($parent_id));$instances = array();if($this->db->num_rows($result)) { while($resultrow = $this->db->fetch_array($result)) {$tmpMc = new ModComments_CommentsModel($resultrow);$string_comments .= "<p>[".$tmpMc->author().": ".$tmpMc->timestamp()." ]<br />".$tmpMc->content()."</p>"; }}}return $string_comments;}private function x33($module, $focus){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  if(isset($focus->column_fields["currency_id"])) {$this->inventory_table_array[$module] = $focus->table_name;$this->inventory_id_array[$module] = $focus->table_index;}}private function x34($module, $focus, $is_related = false){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  if(!isset($this->inventory_table_array[$module]))$this->x33($module, $focus);if(!isset($this->inventory_table_array[$module]))return array();$prefix = "";if($is_related !== false)$prefix = "R_".$x27($is_related)."_";$this->replacements["$".$prefix."SUBTOTAL$"] = $this->x23($focus->column_fields["hdnSubTotal"]);$this->replacements["$".$prefix."TOTAL$"] = $this->x23($focus->column_fields["hdnGrandTotal"]);$currencytype = $this->x21($module, $focus);$currencytype["currency_symbol"] = $x23("","&euro;",$currencytype["currency_symbol"]);$currencytype["currency_symbol"] = $x23("","&pound;",$currencytype["currency_symbol"]);$this->replacements["$".$prefix."CURRENCYNAME$"] = getTranslatedCurrencyString($currencytype["currency_name"]);$this->replacements["$".$prefix."CURRENCYSYMBOL$"] = $currencytype["currency_symbol"];$this->replacements["$".$prefix."CURRENCYCODE$"] = $currencytype["currency_code"];$this->replacements["$".$prefix."ADJUSTMENT$"] = $this->x23($focus->column_fields["txtAdjustment"]);$Products = $this->x18($module, $focus);$this->replacements["$".$prefix."TOTALWITHOUTVAT$"] = $Products["TOTAL"]["TOTALWITHOUTVAT"];$this->replacements["$".$prefix."VAT$"] = $Products["TOTAL"]["TAXTOTAL"];$this->replacements["$".$prefix."VATPERCENT$"] = $Products["TOTAL"]["TAXTOTALPERCENT"];$this->replacements["$".$prefix."TOTALWITHVAT$"] = $Products["TOTAL"]["TOTALWITHVAT"];$this->replacements["$".$prefix."SHTAXAMOUNT$"] = $Products["TOTAL"]["SHTAXAMOUNT"];$this->replacements["$".$prefix."SHTAXTOTAL$"] = $Products["TOTAL"]["SHTAXTOTAL"];$this->replacements["$".$prefix."TOTALDISCOUNT$"] = $Products["TOTAL"]["FINALDISCOUNT"];$this->replacements["$".$prefix."TOTALDISCOUNTPERCENT$"] = $Products["TOTAL"]["FINALDISCOUNTPERCENT"];$this->replacements["$".$prefix."TOTALAFTERDISCOUNT$"] = $Products["TOTAL"]["TOTALAFTERDISCOUNT"];$this->x15(); if($is_related === false){ if ($x10($Products["TOTAL"]["VATBLOCK"]) > 0){$vattable = "<table border='1' style='border-collapse:collapse;' cellpadding='3'>";$vattable .= "<tr> 
                                <td nowrap align='center'>".$this->app_strings["Name"]."</td> 

                                <td nowrap align='center'>".$this->mod_strings["LBL_VATBLOCK_VAT_PERCENT"]."</td> 

                                <td nowrap align='center'>".$this->mod_strings["LBL_VATBLOCK_SUM"]." (".$currencytype["currency_symbol"].")"."</td> 

                                <td nowrap align='center'>".$this->mod_strings["LBL_VATBLOCK_VAT_VALUE"]." (".$currencytype["currency_symbol"].")"."</td> 
                              </tr>";foreach ($Products["TOTAL"]["VATBLOCK"] as $keyW=>$valueW){if($valueW["netto"]!=0) {$vattable .= "<tr> 

                                        <td nowrap align='left' width='20%'>".$valueW["label"]."</td> 

                        				<td nowrap align='right' width='25%'>".$this->x23($valueW["value"])." %</td>
 
                                        <td nowrap align='right' width='30%'>".$this->x23($valueW["netto"])."</td> 

                                        <td nowrap align='right' width='25%'>".$this->x23($valueW["vat"])."</td>
                                      </tr>";} }$vattable .= "</table>";}else{ $vattable = "";}$this->replacements["$"."VATBLOCK$"] = $vattable;$this->x15(); if($x28($this->content,"#VATBLOCK_START#") !== false && $x28($this->content,"#VATBLOCK_END#") !== false){$this->x2e();$VExplodedPdf = array();$VExploded = $x12("#VATBLOCK_START#",$this->content);$VExplodedPdf[] = $VExploded[0];for($iterator=1;$iterator<$x10($VExploded);$iterator++){$VSubExploded = $x12("#VATBLOCK_END#",$VExploded[$iterator]);foreach($VSubExploded as $Vpart){$VExplodedPdf[] = $Vpart;}$Vhighestpartid = $iterator*2-1;$VProductParts[$Vhighestpartid]=$VExplodedPdf[$Vhighestpartid];$VExplodedPdf[$Vhighestpartid]='';}if ($x10($Products["TOTAL"]["VATBLOCK"]) > 0){foreach ($Products["TOTAL"]["VATBLOCK"] as $keyW=>$valueW){foreach($VProductParts as $productpartid=>$productparttext){if($valueW["netto"]!=0){foreach($valueW as $vColl=>$vVal){if($x1a($vVal))$vVal = $this->x23($vVal);$productparttext = $x23("$"."VATBLOCK_".$x27($vColl)."$", $vVal, $productparttext);}$VExplodedPdf[$productpartid].=$productparttext;}}}}$this->content = $x18('',$VExplodedPdf);}}return $Products;}private function x35(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $this->replacements["$"."MULTICOMPANY_COMPANYNAME"."$"] = '';$this->replacements["$"."MULTICOMPANY_STREET"."$"] = '';$this->replacements["$"."MULTICOMPANY_CITY"."$"] = '';$this->replacements["$"."MULTICOMPANY_CODE"."$"] = '';$this->replacements["$"."MULTICOMPANY_STATE"."$"] = '';$this->replacements["$"."MULTICOMPANY_COUNTRY"."$"] = '';$this->replacements["$"."MULTICOMPANY_PHONE"."$"] = '';$this->replacements["$"."MULTICOMPANY_FAX"."$"] = '';$this->replacements["$"."MULTICOMPANY_EMAIL"."$"] = '';$this->replacements["$"."MULTICOMPANY_WEBSITE"."$"] = '';$this->replacements["$"."MULTICOMPANY_LOGO"."$"] = '';$this->replacements["$"."MULTICOMPANY_STAMP"."$"] = '';$this->replacements["$"."MULTICOMPANY_BANKNAME"."$"] = '';$this->replacements["$"."MULTICOMPANY_BANKACCOUNTNO"."$"] = '';$this->replacements["$"."MULTICOMPANY_IBAN"."$"] = '';$this->replacements["$"."MULTICOMPANY_SWIFT"."$"] = '';$this->replacements["$"."MULTICOMPANY_REGISTRATIONNO"."$"] = '';$this->replacements["$"."MULTICOMPANY_VATNO"."$"] = '';$this->replacements["$"."MULTICOMPANY_TAXID"."$"] = '';$this->replacements["$"."MULTICOMPANY_ADDITIONALINFORMATIONS"."$"] = '';if(getTabId('MultiCompany4you') && vtlib_isModuleActive('MultiCompany4you') && isset($this->focus->column_fields) && $this->focus->column_fields>0){ require_once('modules/MultiCompany4you/MultiCompany4youUtils.php'); $roleid = getCompanyRole($this->focus->column_fields['assigned_user_id']);$res = $this->db->pquery("SELECT * FROM vtiger_multicompany4you WHERE role=? AND deleted=0",array($roleid)); $row = $this->db->fetchByAssoc($res);foreach($row as $key=>$value){switch($key){ case "logo":continue (2); break; case "logoname": case "stampname":$key = $x2b($key,0,-4);$value = "<img src=\"test/logo/".$value."\">"; break;}$this->replacements["$"."MULTICOMPANY_".$x27($key)."$"] = $value;} $this->x15();} } private function x36() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $this->replacements['$USERS_IMAGENAME$']=$this->x1c($this->focus->column_fields["assigned_user_id"]); $this->replacements['$R_USERS_IMAGENAME$']=$this->x1c($_SESSION["authenticated_user_id"]);switch($this->module) {case "Contacts":$this->replacements['$CONTACTS_IMAGENAME$']=$this->x1b($this->focus->id);break;case "Products":$this->replacements['$PRODUCTS_IMAGENAME$'] = $this->x1d($this->focus->id);break;}}} 
?>

Did this file decode correctly?

Original Code

<?php
require_once("modules/PDFMaker/PDFMakerUtils.php");
require_once "modules/PDFMaker/PDFMaker.php";
Debugger::GetInstance()->Init();

$memory_limit = substr(ini_get("memory_limit"), 0,-1);
if($memory_limit<256){
	ini_set("memory_limit","256M");
}

global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;
$x0b="\x61\162\x72\x61y\137k\145\171\163"; $x0c="a\x72r\x61\x79\137p\x75\x73h"; $x0d="a\x72\x72\141\x79\137\x6d\x65r\147e"; $x0e="\x61\162r\141\171\137\x73\165\x6d"; $x0f="cal\x6c\x5f\165\163\x65\162\x5ff\165\156\143\137\x61\162\162\141\x79"; $x10="c\x6f\165\156t"; $x11="\144\141t\145"; $x12="e\170p\154\157d\x65"; $x13="\146il\x65_\x65\x78\151s\164s"; $x14="\x67\154o\x62"; $x15="\x68\164\x6d\154\137\145\156\x74i\x74\x79\137\x64\x65\x63o\144\x65"; $x16="\x68t\x6d\154\x65\x6e\164it\151\145\163"; $x17="\x69\x63\x6fnv"; $x18="im\160\x6co\144e"; $x19="\151\156_a\162\x72ay"; $x1a="\x69s\x5f\x6e\165\x6d\145\x72\151\x63"; $x1b="i\163\137o\x62j\145\x63\164"; $x1c="\155d\x35"; $x1d="\156\154\x32b\x72"; $x1e="\156umb\x65\162_\146\x6f\x72\x6dat"; $x1f="\160\162\x65g_\155a\164\x63h\137\x61l\x6c"; $x20="\162\x6f\x75n\144"; $x21="\x72\x74\x72\151m"; $x22="\x73\160\162\x69n\x74\146"; $x23="\163t\162\x5f\162\x65\x70\x6c\141\143\x65"; $x24="s\x74\x72_\151\x72eplace"; $x25="\x73\x74\162\x6ce\x6e"; $x26="\163t\162ip\137\164\141\147s"; $x27="\163\164r\x74\x6f\x75p\x70\x65\x72"; $x28="\x73t\162p\157s"; $x29="\x73\x74\x72to\x6c\157\167\145\162"; $x2a="st\x72s\164r"; $x2b="s\165bstr"; $x2c="\164\162\x69\x6d";
class PDFContent {private $templateid;private $module;private $language;private $focus;private $db;private $mod_strings;private $def_charset;private $site_url;private $decimal_point;private $thousands_separator;private $decimals;public $pagebreak;private $rowbreak;private $ignored_picklist_values=array();private $header;private $footer;private $body;private $content;private $filename;private $templatename;private $type;private $section_sep="&\x23%\111TS\045\045\x25@@\100%\x25%\x49\x54S\x25\043&";private $replacements;private $inventory_table_array = Array("Pu\x72\143\x68\141s\x65\x4fr\144\145r"=>"v\x74\x69\147\x65\162_\x70\x75\x72\143ha\x73e\157\162\x64e\162", "\123\x61\x6c\x65s\117\162\x64\x65r"=>"\x76tiger_\x73\141l\x65\x73\x6frde\162", "\121\x75\157t\x65\x73"=>"\166tige\162\x5fq\165\157\164e\163", "\x49\x6e\x76\x6f\x69\x63\145"=>"v\x74i\147\145\x72_\x69\x6e\x76\157\151\x63\x65", "\111\163\163ue\x63\141\x72\x64\x73"=>"\166\x74\x69\x67\145\162\x5f\x69s\x73ue\x63\x61\x72\144s", "\122e\143\145\151\160\164\x63\x61\162\144\x73"=>"v\x74\151\x67\x65\x72\137\162\145ce\x69p\164\x63\141\162ds", "C\x72\x65dit\x6e\x6f\164e"=>"\x76t\x69ge\162_\143\162\x65\144i\164\x6e\157\x74e", "St\157\162\156\157\x49\156\x76\x6fi\143e"=>"\166\164\151\x67er_s\164o\162n\x6fi\156\166\x6f\x69\143e");private $inventory_id_array = Array("P\x75\162\143\x68\x61\x73\x65O\x72d\145\x72"=>"\160\x75r\x63\150\x61\x73e\157\162d\145\162id","\123\141l\x65\x73\x4f\162\144\145r"=>"\x73\x61l\x65\x73\157\x72\144er\x69\144","\121u\x6f\x74\145s"=>"q\165\157te\x69d","\x49n\166\x6f\151c\x65"=>"\x69\x6e\x76oic\145i\x64","\111ssu\x65\x63a\162\x64\163"=>"\x69\163\x73\165\145\x63\141r\x64i\144","\x52e\143eip\x74ca\x72\144\x73"=>"\x72\145c\145i\x70\164\x63\x61\x72\x64\151\x64","\x43r\x65\144\151\x74n\x6f\164\x65"=>"c\162e\144\x69t\156ote\137i\x64","\123\164\x6fr\x6e\157\x49n\166o\x69\x63\145"=>"\x73\164\x6f\x72\x6e\x6fin\x76\157\x69\143\145_\x69\x64");private $org_cols = array("o\162\x67\141\x6e\x69\172\141\x74\151o\156na\x6d\x65" => "\x43\x4f\115PA\116\x59_\116\101\x4d\105","ad\x64\x72\x65\163\x73" => "\103O\115\120\101\x4eY_\101\x44\x44R\105\x53S","\x63\x69ty" => "C\117M\x50\x41\116\x59\137\x43\x49T\x59","\x73\x74\141t\145" => "\x43\117\115P\x41\x4e\x59_\123\x54\x41\x54\x45","c\157\x64e" => "\103\x4f\115\x50\101N\x59_\132\x49P","\143o\165nt\162\171" => "\103\x4fM\x50AN\131\x5f\103O\125N\x54\x52\131","pho\156\145" => "\103O\115\x50\x41NY_P\110O\x4e\x45","\146\x61\170" => "\x43\x4f\x4d\x50\101N\131\137\106\101\x58","we\142si\x74\145" => "C\x4f\x4d\x50\x41NY\137\x57\105\x42\x53\111TE","\154\157\x67\157" => "\x43\117MP\x41\116\x59\x5fL\117\107\x4f", );public $bridge2mpdf = array();private $relBlockModules = array();function __construct($templateid, $module, $focus, $language) {$db = "a\x64\142";$mod = "m\157\x64\137s\164\162\151\x6e\x67\163";$vcv = "\x76t\151g\x65\x72_\143\165\x72\x72\145\156\x74_\166\x65r\163i\157\156";$salt = "s\x69\164e\137\x55\122\x4c";$dc = "d\145\146\141\165\154\164_\143\150\141r\163\145t";global $$db, $$mod, $$vcv, $$salt, $$dc, $PDFMaker_template_id;$this->db = &$$db;$this->mod_strings = $$mod;$this->def_charset = $$dc;$this->templateid = $templateid;$PDFMaker_template_id = $this->templateid;$this->module = $module;$this->focus = $focus;$this->language = $language;$result = $$db->query("S\105\x4c\x45\103\124 \x6c\x69\x63e\x6e\x73\x65\040\106\x52\x4f\x4d\040vti\x67\145\x72\x5f\x70\x64f\x6dak\x65\x72\137\x76\145\x72s\151on\x20W\110ER\105 ve\162\x73i\157\156\075'".$$vcv."'");if($$db->query_result($result,0,"\x6ci\x63\x65nse")==$this->x2a($$salt))$this->type = "\x70\162\x6ff\145\163\x73\151\157\156\141\x6c";elseif ($$db->query_result($result,0,"\154\151c\145n\x73\145")==$this->x2a("\x62\141\163i\x63/".$$salt) && ($module == "P\x75\x72\143\x68\141\163\145O\x72\144er" || $module == "Sa\154\145\163Or\144er" || $module == "\x51\x75ot\x65\163" || $module == "\x49nvo\x69\x63\145"))$this->type = "b\141\163\x69\x63";else$this->type = "\151n\166al\151\x64";$this->x16();$this->x17();$this->bridge2mpdf["\x72\145c\157r\144"] = $this->focus->id;$this->bridge2mpdf["t\145mpl\x61\164e\151\144"] = $this->templateid;$this->rowbreak = "<r\157w\142r\145a\153 />";}public function getContent() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  require_once("\x63\154\141\x73\x73\145\163\057\x73i\155\160\154e\x5f\150t\155\154\137\x64o\155\056\160h\160"); $img_root = "\151m\147\x5fr\157\x6f\x74\x5f\x64\151r\145c\164o\x72\x79";$vcv="vti\147\x65r\x5f\143\165r\162\145\156t\137\x76\145\162\163i\x6f\x6e";global $$img_root, $$vcv;if($this->module=='Calendar') $this->replacements = Array(); if ($this->type == "p\x72of\x65ss\x69o\156\x61l" || $this->type == "\x62a\x73\x69\x63") { $this->content = $this->body; $this->content = $this->header.$this->section_sep; $this->content .= $this->body.$this->section_sep; $this->content .= $this->footer; $this->replacements["\046n\x62\x73\x70\x3b"]="\040"; $this->replacements["#\x23\x50AG\x45\x23\x23"]="\x7b\120\x41\107\x45NO\x7d"; $this->replacements["##\x50AGE\x53\043\043"]="\173n\142}"; $this->replacements["#\x23\x44D-M\115-Y\x59Y\131\x23\x23"]=$x11("\x64\x2d\155\x2dY"); $this->replacements["\x23\x23DD\x2eMM\x2e\x59\131\x59\131\043#"]=$x11("\144\056\x6d.\131"); $this->replacements["##MM\055\x44D-YYY\131##"]=$x11("\155-\x64\x2dY"); $this->replacements["\x23\043\x59\x59Y\x59\x2d\x4d\x4d-\104\104\043\x23"]=$x11("\x59\055\155\x2dd"); $this->replacements["\163\162\143=\x27"]="\163\162\143='".$$img_root; $this->replacements["\044".$x27($this->module)."_\x43R\115\x49\x44$"]=$this->focus->id; if($$vcv=='5.2.1'){$displayValueCreated=getDisplayDate($this->focus->column_fields['createdtime']);$displayValueModified=getDisplayDate($this->focus->column_fields['modifiedtime']); } else {$createdtime = new DateTimeField($this->focus->column_fields['createdtime']);$displayValueCreated = $createdtime->getDisplayDateTimeValue();$modifiedtime = new DateTimeField($this->focus->column_fields['modifiedtime']);$displayValueModified = $modifiedtime->getDisplayDateTimeValue(); } $this->replacements["\x24".$x27($this->module)."\x5f\103R\x45AT\105\104T\111\115E_\104\101\124\x45T\111M\105\x24"]=$displayValueCreated; $this->replacements["$".$x27($this->module)."_\x4d\117\104I\x46\111E\104\124I\115E\x5f\104\101\124\105\x54\x49ME\x24"]=$displayValueModified; $this->x36();$this->x15(); $this->content = $x15($this->content,ENT_QUOTES,$this->def_charset);$html = str_get_html($this->content);foreach($html->find("\144\151\x76[\x73t\171l\x65\x5e\075\x70a\147e\055\142\162\145\x61k\055a\146\x74\145r]") as $div_page_break) {$div_page_break->outertext = $this->pagebreak;$this->content = $html->save(); }foreach($html->find("\x64\151\x76[\x73\x74y\x6ce^=\120\101\107\105\055\x42\122\x45\101\113\x2d\x41\x46T\105R\135") as $div_page_break) {$div_page_break->outertext = $this->pagebreak;$this->content = $html->save(); } $this->x2f(); $this->x30(); $this->x31(); $this->x0b(); $this->x2b(); $this->x10($this->module, $this->focus); $this->x0d(); if($this->focus->column_fields["\x61\x73\163i\147\x6eed\x5fuse\x72\137i\x64"]==""){$this->focus->column_fields["a\163\x73igned\x5f\x75\x73\x65\162\x5f\x69\144"]=$this->db->query_result($this->db->query("\123\105L\105\103\124\x20sm\x6f\167neri\144\040F\x52\x4f\x4d\040\x76\x74\x69\147\x65\162\137\143\x72\x6d\x65\x6e\164\151\x74\171\040\127\110\x45\x52\105\040\143\x72\155\151\x64=".$this->focus->id),0,"\163\x6d\157wn\x65\x72i\x64"); } $this->x2d();$this->x0e(); $this->x11(); $this->x12(); $this->x13(); $this->x14(); $this->x35();if($x27($this->def_charset) != "\x55\x54\106-8") {$this->content = $x17($this->def_charset,"\125T\106\x2d\x38\x2f\x2f\124\x52\101\116S\x4c\x49\124",$this->content); }if ($this->type == "pr\157f\x65\163\x73\x69\157na\154")$this->x28(); $PDF_content = array(); list($PDF_content["\150\x65a\144e\x72"],$PDF_content["bo\x64\x79"],$PDF_content["f\157o\x74e\x72"]) = $x12($this->section_sep,$this->content);}else{ $error_text = "I\x6e\166\x61l\151\x64\x20\154\151\143en\163\145\040\153ey\x21\040P\x6ce\141s\145\x20c\x6f\156\164\141\x63\x74\040\x74\x68e\040\x76e\156\144\157r\x20\x6f\x66 \x50D\x46 \x4d\141k\x65\162\056"; $PDF_content = array("\x68e\x61\x64e\162" => "<\x63e\156te\x72\076\x45\122\x52\117R<\057c\145\156\x74er\x3e", "b\157\144\x79" => $error_text, "\146\x6f\x6ft\x65\x72" => "");}return $PDF_content; }public function getSettings() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql = "\x53E\x4c\105CT\x20(\155\141\x72\147\x69\x6e\x5f\x74\157p *\x20\061\x30) A\x53 \155\141rg\151\156\137\x74\157p\054\015\012\x20\040 \040\x20 \040\040\040\x20 \040\040\x20\040  \x20\x20  \x28\x6da\162\x67\151\x6e_\142\157\x74\x74\x6f\x6d\040\052 10\x29\040\x41S \x6d\x61rgin_\x62\x6f\164\x74\157\155,\x0d\x0a\040\x20 \x20 \x20\040 \x20\x20\x20\x20\040\040\x20 \040   \x20\050\155\x61\x72\147\151\156\x5f\x6c\x65\x66t\040*\x201\060\x29\040\x41\x53 \155\141\162g\151\156\x5fl\145\x66t\054\x0d\012\040   \x20\x20\x20\x20\x20\040\x20\x20\x20\x20 \x20  \x20\x20\x20(\155\141r\x67\151\x6e_r\x69\x67\150\x74\x2a\x310\051\x20\x41\123\040ma\x72\147\x69n_\162i\147\150\164\x2c\x0d\x0a\x20\040\040\040 \040\040\040\x20\x20  \040 \x20 \x20   \x20\146o\x72m\x61t,\015
   \040\040 \x20\040 \x20\040\x20   \040\x20 \040\040\040\x6fr\151e\156ta\164\x69\x6f\156\x2c\x0d\x0a\040\x20 \040\x20 \040  \x20 \x20\x20\040\040 \040\040\x20\040\x20\x65\156\143o\144\151\x6eg,
\x0a\x20\040   \040\040\040  \x20\040 \040\x20\x20 \040 \040\040d\x69\x73\160_\x68\145\x61\x64\x65r, \144i\x73p\137\x66\x6f\x6ft\145\162\015
 \x20 \040 \x20\x20\x20\x20  \x20\x20\040FR\117\x4d \166\x74i\x67\145\x72_p\x64\x66\x6d\141\153\145r\x5fs\145\164tin\x67\x73\040\127\110E\x52\x45\x20tem\x70\x6c\x61\x74\x65id \075\040'".$this->templateid."'";$result = $this->db->query($sql);$Settings = $this->db->fetchByAssoc($result, 1);return $Settings;}private function x0b() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $vcv="v\164ig\145\162_\x63u\162\x72\145nt_\x76e\162\163\151o\x6e";global $$vcv;$field_inf = "\x5ff\x69\x65\154di\x6e\x66o\137\x63ac\x68e"; $sql = "\x53EL\105CT\040\146\x69\145\154\144i\144\054\040\162\x65\154\155\x6fd\165\x6c\145 \106\122\117\x4d\x20\166t\x69ge\x72_\146iel\144\x6dod\165\154\145r\x65\154";$result = $this->db->query($sql);$fieldModRel = array();while($row = $this->db->fetchByAssoc($result)) {$fieldModRel[$row["fi\x65\154d\x69\144"]][] = $row["re\154\x6d\157\144\165l\145"];}$sql = "\123E\x4c\105\103T\040\146\151eld\x69\x64\x2c \146\151\x65\x6cd\156a\x6d\x65\x2c\x20\165\x69typ\x65\x2c \x63\157\x6cu\155\156\x6e\141m\145
\x0a   \x20\040\040\040\040\040\x20 \040 \040FR\117\x4d\040\166t\x69g\145\x72\x5f\x66\x69\145ld\x0d\x0a\040\x20\x20\x20\040 \040\x20  \040\040\040\x20W\110E\122E\x20\164\x61\142id\075".getTabId($this->module)." A\x4e\x44 \050\x64\151\163pl\141\171\x74\171\x70\x65\040\x21=\040\063\x20\x4f\122 \x66\151e\154\144id\040=\x20\x36\064\x29";$result = $this->db->query($sql);$num_rows = $this->db->num_rows($result);if ($num_rows > 0){$tacModules = array();$tac4you = $x1a(getTabId("Ta\143\x34\171\157\165"));if($tac4you == true) {$tacSql = "\123\105\x4cE\x43\x54\040\x74\x61\1434\x79\157\x75\x5f\x6d\x6fd\x75\x6c\x65\x20FR\x4f\x4d \166\164i\147\x65\x72\x5f\164\141\x63\x34y\x6f\x75\137m\157\144\x75le\x20\x57HE\122\105\x20\160\x72\x65\x73e\x6ec\145 \075 \x31";$tacResult = $this->db->query($tacSql);while($tacRow = $this->db->fetchByAssoc($tacResult))$tacModules[$tacRow["t\141c4\x79\x6f\x75\137\x6do\144\165\154e"]] = $tacRow["\164\141\1434\x79\157u\137\155\157d\x75\x6c\x65"];}$descModules = array();$desc4you = $x1a(getTabId("De\x73\143\162\151pt\x69o\156\163\064y\x6f\165"));if($desc4you == true) {$descSql = "\123\105L\105\x43\124\x20\x62\x2e\x6eam\x65\x20F\122\x4fM \166\x74\x69\147\x65\x72\x5fl\151\x6e\153\163\x20\x41\x53 \x61
\040   \040\040 \x20\040\040\x20 \x20\x20  \x20\x20\x20\x20 \x20\x20\x20\x20\x49N\116\105\x52\x20\x4a\x4fI\x4e\x20\x76\x74\151g\x65\x72\x5ft\x61\x62\x20A\123\040b\x20US\x49\116\107\x20\050t\141\x62id\x29\015
 \040 \040\x20\x20\x20\x20 \040\040\x20\x20\x20 \040  \x20\x20\x20\040\x20\x20\x20\127HER\x45\040l\x69n\153\164yp\145\x20= '\x44\105TAI\114V\x49\105\127\x57\x49D\x47E\x54'\x0d\012\040\040\x20 \040\040\040\040 \x20 \x20\x20\x20\040 \040 \x20 \040  \040\040 \x20 \101\116\104\040\x6c\151\156\x6bur\x6c\x20=\x20'bl\157\x63k:\x2f/\x4d\157d\x44\145scri\160\164\x69o\156\x73\x34y\157\x75:\155\157d\165l\145\x73\x2f\104\x65sc\162\151\160\x74\151o\x6e\163\064\171\157\x75/\115\157\x64\x44\x65\x73\143ri\x70t\151\157ns4\x79\x6f\x75\056\160\150\160'";$descResult = $this->db->query($descSql);while($descRow = $this->db->fetchByAssoc($descResult))$descModules[$descRow["\x6e\141m\145"]] = $descRow["n\x61\x6de"];}$ModCommentsModules = array();$ModComments = $x1a(getTabId("\x4d\x6f\x64C\x6f\155me\156\164\163"));if($ModComments == true) {$sql = "SE\x4c\105\x43\x54 \x72e\154mo\x64u\x6c\x65\040F\x52O\115\040\166\164\151ge\162\x5f\146\151e\x6c\x64\155\157\x64\x75\x6ce\x72\145\154\x20W\x48\105\122\x45 m\x6f\x64\x75\x6ce\075'Mod\x43\157\155\155\x65n\164s'\040A\x4e\x44 \x72e\x6c\155\157\x64\165\154\145\040!= '\115\x6fd\x43o\x6dme\x6ets'";$modCommResult = $this->db->query($sql);while($row = $this->db->fetchByAssoc($modCommResult))$ModCommentsModules[$row["\162\145\154\x6do\x64\x75l\x65"]] = $row["\162e\x6cmodu\154\145"];}while($row = $this->db->fetch_array($result)){$related_module = "";$columnname = $row["c\157\x6c\x75\x6dnna\x6d\x65"];$fk_record = $this->focus->column_fields[$row["\x66i\x65\154\x64\x6ea\x6d\x65"]];switch ($row["\165i\164\x79\x70e"]) {case "\x35\061": $related_module = "\x41c\x63o\x75\156t\163"; break;case "57": $related_module = "\x43\157n\164act\x73"; break;case "\0658": $related_module = "C\141\x6d\x70\x61\151\x67\156s"; break;case "\065\x39": $related_module = "Pro\144\x75\x63\164\163"; break;case "\067\063": $related_module = "Ac\143\157u\156\164s"; break;case "\x37\065": $related_module = "\126\145\x6ed\x6frs"; break;case "81": $related_module = "\126\x65\156\144o\x72\x73"; break;case "\067\x36": $related_module = "\x50\157\x74\x65\x6e\x74\151\141\154\163"; break;case "7\x38": $related_module = "Q\x75\x6f\164\145\x73"; break;case "8\x30": $related_module = "\123\x61\154\x65\x73\117\x72\x64\145r"; break;case "\x36\070":case "\x310": $related_module = getSalesEntityType($fk_record); break;}if ($related_module != "") {$tabid = getTabId($related_module);$temp = &VTCacheUtils::$$field_inf;unset($temp[$tabid]);$focus2 = CRMEntity::getInstance($related_module);if ($fk_record != "" && $fk_record != "\060") {$result_delete = $this->db->query("SEL\x45\103\124\x20\144\x65l\145t\x65\144 \106\x52OM\040\x76\x74i\147\145\162_c\162me\x6e\x74i\x74y\x20W\110ER\105 c\x72\155id\075'".$fk_record."'\040A\116D d\145lete\144\x3d\x30");if($this->db->num_rows($result_delete)>0){ $focus2->retrieve_entity_info($fk_record,$related_module); $focus2->id = $fk_record;}}$this->replacements["$"."\122\x5f".$x27($related_module)."\x5f\103\x52M\111D\x24"]=$focus2->id;$this->replacements["\x24"."R_".$x27($columnname)."\x5f\103\122\x4d\x49\x44\044"]=$focus2->id; if($$vcv=='5.2.1'){$displayValueCreated=getDisplayDate($focus2->column_fields['createdtime']);$displayValueModified=getDisplayDate($focus2->column_fields['modifiedtime']); } else {$createdtime = new DateTimeField($focus2->column_fields['createdtime']);$displayValueCreated = $createdtime->getDisplayDateTimeValue();$modifiedtime = new DateTimeField($focus2->column_fields['modifiedtime']);$displayValueModified = $modifiedtime->getDisplayDateTimeValue(); } $this->replacements["\044"."\122\x5f".$x27($related_module)."\x5fCR\x45ATE\x44\x54I\115\105\x5fD\x41\124E\x54\x49\115\x45\x24"]=$displayValueCreated; $this->replacements["\x24"."R_".$x27($columnname)."_\x43R\x45A\x54E\x44\124\111\x4d\105_\104ATE\x54I\x4dE$"]=$displayValueCreated; $this->replacements["$"."R\x5f".$x27($related_module)."\x5f\x4dO\x44\x49\106\x49EDT\x49ME\137\104A\x54\x45\x54I\x4d\105\044"]=$displayValueModified; $this->replacements["\x24"."R\137".$x27($columnname)."\x5fM\x4fD\x49\106IE\104\124\x49ME\137\x44A\124ET\111\115\105$"]=$displayValueModified; if(isset($related_module)){$entityImg = "";switch($related_module){case "C\x6f\x6e\164\x61\143\x74\x73":$entityImg = $this->x1b($focus2->id);break;case "\120\x72o\144\165cts":$entityImg = $this->x1d($focus2->id);break;}$this->replacements['$R_'.$x27($related_module).'_IMAGENAME$']=$entityImg;$this->replacements['$R_'.$x27($columnname).'_IMAGENAME$']=$entityImg;}if(isset($tacModules[$related_module])) {$tacSql = "\123\x45L\105C\x54\x20\x74\145\x78\164\040\106\122\117M v\164\x69g\x65r\x5ft\x61\143\064\171o\x75\x5f\164e\170t\x73 W\110E\122\105\x20id\075\077";$tacResult = $this->db->pquery($tacSql, array($focus2->id));$tacText = $this->db->query_result($tacResult, 0, "\164\145\x78\x74");$tacText = $x15($tacText, ENT_QUOTES, $this->def_charset);$this->replacements["$"."\122_".$x27($related_module)."\137\124\101\x43\x34\131\x4fU\044"] = $tacText;$this->replacements["\044"."\x52_".$x27($columnname)."\137\124\x41C\064\131\x4f\125$"] = $tacText;}if(isset($descModules[$related_module])) {$descSql = "\123\x45L\x45\103\x54\x20t\x65x\x74\040\106R\x4f\x4d\040\166\x74ige\x72_\x64\x65\x73c\162i\x70ti\x6f\x6e\163\x34\171o\165_\x74e\x78ts\x20WH\105\x52\105 \x69d\075\x3f";$descResult = $this->db->pquery($descSql, array($focus2->id));$descText = $this->db->query_result($descResult, 0, "t\145\x78\164");$descText = $x15($descText, ENT_QUOTES, $this->def_charset);$this->replacements["$"."\122_".$x27($related_module)."_D\105\x53C4\131\117\125\x24"] = $descText;$this->replacements["\044"."\x52\x5f".$x27($columnname)."\137\104\x45\x53\103\x34\131OU$"] = $descText;}if(isset($ModCommentsModules[$related_module])) {$modCommText = $this->x32($focus2->id);$modCommText = $x15($modCommText, ENT_QUOTES, $this->def_charset);$this->replacements["\x24"."\122_".$x27($columnname)."\137\115\117\104\103OM\115\105N\x54\x53\x24"] = $modCommText;} $this->x15();$this->x10($related_module, $focus2, true);$this->x10($related_module, $focus2, $columnname); $this->x34($related_module, $focus2, $columnname);unset($focus2);} if ($row["\165\x69t\171\160\x65"] == "\x36\070") {$fieldModRel[$row["\x66ie\x6c\x64\151d"]][] = "\103\x6f\x6eta\143\164\163";$fieldModRel[$row["\146\151e\154d\151\144"]][] = "A\143c\x6f\165\x6et\163";}if(isset($fieldModRel[$row["f\x69el\144\151\x64"]])) { foreach($fieldModRel[$row["\146i\145\x6c\x64\x69\x64"]] as $idx => $relMod) { if($relMod == $related_module) continue;$tmpTabId = getTabId($relMod);$temp = &VTCacheUtils::$$field_inf;unset($temp[$tmpTabId]);$tmpFocus = CRMEntity::getInstance($relMod);$this->replacements["\x24"."R\x5f".$x27($relMod)."\x5f\x43\x52\115\x49\104\044"] = $tmpFocus->id;$this->replacements["\x24"."\x52\x5f".$x27($columnname)."_CRM\x49\x44\044"] = $tmpFocus->id;if($$vcv=='5.2.1'){ $displayValueCreated=getDisplayDate($tmpFocus->column_fields['createdtime']); $displayValueModified=getDisplayDate($tmpFocus->column_fields['modifiedtime']);} else { $createdtime = new DateTimeField($tmpFocus->column_fields['createdtime']); $displayValueCreated = $createdtime->getDisplayDateTimeValue(); $modifiedtime = new DateTimeField($tmpFocus->column_fields['modifiedtime']); $displayValueModified = $modifiedtime->getDisplayDateTimeValue();}$this->replacements["\x24"."R_".$x27($relMod)."\x5fC\122\x45\101T\105DTI\115\x45\137D\101T\105\x54\111\115\x45\x24"]=$displayValueCreated;$this->replacements["$"."\122\x5f".$x27($columnname)."_\103R\105\x41\x54ED\124I\115\x45\x5f\x44\x41T\x45T\111\x4d\x45$"]=$displayValueCreated;$this->replacements["\044"."\x52_".$x27($relMod)."_\x4dO\104I\106\111E\104\x54\111\115\x45\137D\101\x54\x45\124I\x4dE\x24"]=$displayValueModified;$this->replacements["\044"."\122\x5f".$x27($columnname)."\x5f\115\117D\111F\111E\104\x54\x49\x4dE_\x44AT\105\x54\111\115\105\x24"]=$displayValueModified;$this->x10($relMod, $tmpFocus, true);$this->x10($relMod, $tmpFocus, $columnname); $this->x34($relMod, $tmpFocus, $columnname);unset($tmpFocus); }}}}} private function x0c() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("\x63\154\x61\x73\x73\x65s/s\x69m\x70\x6c\x65_\150\x74m\154\x5f\x64\157\155.\160hp");$html = str_get_html($this->content);$tableDOM=false;foreach($html->find("\x74\144") as $td){ if($x2c($td->plaintext) == "\043\120\x52\117\x44\125\103\124\102\x4cOC_STA\122\124\x23"){ $td->parent->outertext = "#\x50RO\x44U\103\x54B\114O\103_\123T\101R\124\x23"; $oParent = $td->parent;while($oParent->tag != "ta\x62le")$oParent = $oParent->parent; list($tag)=$x12("\x3e",$oParent->outertext,2); $header = $oParent->first_child();if($header->tag != "t\x72")$header = $header->children(0);if($x1b($td->parent->prev_sibling()->children[0])) $header_style = $td->parent->prev_sibling()->children[0]->getAttribute("s\164\x79\154\145");else $header_style = '';$footer_tag="<\x74\162\076";if(isset($header_style)){ $StyleHeader = $x12("\073", $header_style);if(isset($StyleHeader)){foreach($StyleHeader as $style_header_tag){ if($x28($style_header_tag, "\142o\x72\144\145\162\055\164\157\160") == TRUE){$footer_tag.="\074\x74\x64 \143o\x6cs\x70a\156='".$td->getAttribute("c\157l\163\160\141\x6e")."' s\164y\154\x65\075'".$style_header_tag."'\x3e\x26\x6eb\163p\073\x3c/\164\144\x3e"; }} }} else { $footer_tag.="\074\x74\x64\040\x63\x6f\154\163p\141\x6e='".$td->getAttribute("\143\157l\163\160\141\x6e")."' s\x74yl\145='\x62\x6fr\x64\145\162-\164\x6f\x70:1p\170\x20s\x6fl\151d \043\060\x30\x30\060\0600\x3b'\076\x26\156bs\160;\x3c\x2f\164d\076";}$footer_tag.="<\x2f\x74\162\x3e"; $var = $td->parent->next_sibling()->last_child()->plaintext;$subtotal_tr=""; if($x28($var, "\x54\x4f\x54AL")!==false){if($x1b($td)){$style_subtotal=$td->getAttribute("s\164\171\x6c\145"); } if(isset($td->innertext)){list($style_subtotal_tag,$style_subtotal_endtag)=$x12("\043\x50\122\117D\x55\x43\124\102L\x4f\103_\x53TA\122T#",$td->innertext); } else {$style_subtotal_tag = "";$style_subtotal_endtag = ""; }if(isset($style_subtotal)){$StyleSubtotal = $x12("\073", $style_subtotal);if(isset($StyleSubtotal)){ foreach($StyleSubtotal as $style_tag) {if($x28($style_tag, "\x62\x6fr\x64\x65r-\164o\160") == TRUE){ $tag.="\x20\x73t\x79\x6ce\x3d'".$style_tag."'"; break;} }} } else {$style_subtotal = ""; } $subtotal_tr="\074\x74r>"; $subtotal_tr.="\074\164\144 c\157\154s\x70\x61\156\x3d'".($td->getAttribute("\x63\x6f\154\x73\x70\141\x6e")-1)."'\040\x73\x74y\x6ce='".$style_subtotal.";b\x6frd\x65\x72-r\x69\x67\x68\164\x3an\x6f\156\145'\x3e".$style_subtotal_tag."%\x47\137\123\x75\x62to\x74\x61\154\045".$style_subtotal_endtag."<\057\164\144>"; $subtotal_tr.="\074\x74\144\x20\x61\154\x69\x67\x6e\075'\x72i\x67h\x74' \x6e\x6f\167\162\x61\160\075'\x6e\x6fw\x72\x61p'\x20s\x74\171l\x65='".$style_subtotal."'\076".$style_subtotal_tag."".$x21($var,"$")."\x5fS\125\x42\124\x4f\x54\x41\114$".$style_subtotal_endtag."\x3c\057td>"; $subtotal_tr.="<\x2f\x74\x72>";}$tag.=">";$tableDOM["\x74a\x67"] = $tag;$tableDOM["\x68\x65ad\x65r"] = $header->outertext;$tableDOM["f\157\x6f\164e\162"] = $footer_tag;$tableDOM["su\142t\157ta\154"] = $subtotal_tr; } if($x2c($td->plaintext) == "\043PRO\x44U\103\x54\x42\114\117\103_E\116D\043")$td->parent->outertext = "\x23\120\x52\117\x44UC\x54B\114\x4f\x43_E\116\104\043";}$this->content=$html->save();return $tableDOM;}private function x0d() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $query = "\x73\145\x6c\x65\x63\164\040\052\040\x66r\157m\040v\x74ig\x65\162\137inv\x65\x6e\164\x6fr\x79\160\162\157\x64\165\x63\x74\x72e\154\x20\x77\150\x65\x72\145\x20\x69\144\x3d?";$result = $this->db->pquery($query, array($this->focus->id));$num_rows=$this->db->num_rows($result); if ($num_rows > 0){ $Products = $this->x34($this->module, $this->focus); $var_array = array();if($x28($this->content,"\043\120\x52\x4f\104\125\x43\x54B\x4c\117\103\137\123\x54\101\x52T\043") !== false && $x28($this->content,"\043\x50\x52\x4f\x44\x55\103\124\x42\x4c\117\x43\137\105N\x44\x23") !== false){$tableTag = $this->x0c();$breaklines_array = $this->x19();$breaklines = $breaklines_array["pr\x6f\x64\x75\x63\x74\163"];$show_header = $breaklines_array["\163\x68\x6f\167_h\x65\x61de\x72"];$show_subtotal = $breaklines_array["\163\x68\157\167_\163ubto\x74\x61l"];$breakline_type="";if($x10($breaklines)>0){if($tableTag!==false) {$breakline_type="</\164a\x62\x6c\145\076".$this->pagebreak.$tableTag["\x74a\147"];if($show_header==1)$breakline_type.=$tableTag["h\x65\x61\x64\145r"];if($show_subtotal==1){$breakline_type=$tableTag["s\165\x62t\157\164\x61l"].$breakline_type;} else {$breakline_type=$tableTag["\x66\x6foter"].$breakline_type;}}else$breakline_type=$this->pagebreak;}$ExplodedPdf = array();$Exploded = $x12("\043\120R\117\104U\x43TB\x4c\117\x43_\123\124\101R\x54\x23",$this->content);$ExplodedPdf[] = $Exploded[0];for($iterator=1;$iterator<$x10($Exploded);$iterator++){$SubExploded = $x12("\043\x50\x52\x4f\x44\x55\103T\102LO\103\137\x45\116\104\x23",$Exploded[$iterator]);foreach($SubExploded as $part)$ExplodedPdf[] = $part;$highestpartid = $iterator*2-1;$ProductParts[$highestpartid]=$ExplodedPdf[$highestpartid];$ExplodedPdf[$highestpartid]='';}if ($Products["P"]) {foreach ($Products["\120"] AS $Product_i => $Product_Details) {foreach($ProductParts as $productpartid=>$productparttext){$breakline="";if($breakline_type!="" && isset($breaklines[$Product_Details["\123E\x52\x56\x49CE\x53\x5f\122\105\103\117\x52\104\x5f\x49\104"]."\x5f".$Product_Details["\x50\122\117\104U\x43\124S\x45\121\125\x45\116\x43E"]]) || isset($breaklines[$Product_Details["\120\x52\117D\125\103\x54\123_\x52E\103OR\x44\x5fID"]."\137".$Product_Details["\120RO\x44\x55\103TS\x45\x51UEN\x43\x45"]]) ){$breakline=$breakline_type;}$productparttext.=$breakline;foreach ($Product_Details AS $coll => $value) {$productparttext = $x23("$".$x27($coll)."$",$value,$productparttext);}$ExplodedPdf[$productpartid].=$productparttext;}}}$this->content = $x18('',$ExplodedPdf);}}}private function x0e(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $html = str_get_html($this->content);$toSkip = 0;foreach($html->find("r\157\x77br\145\x61\153") as $pb){if($pb->outertext == $this->rowbreak) {$tmpPb = $pb;while($tmpPb != null && $tmpPb->tag != "\164\x64") {$tmpPb = $tmpPb->parent();}if($tmpPb->tag == "td") { if($toSkip > 0) {$toSkip--;continue;} $prev_sibling = $tmpPb->prev_sibling();$prev_sibling_styles = array();while($prev_sibling != null) {$prev_sibling_styles[] = $this->x0f($prev_sibling);$prev_sibling = $prev_sibling->prev_sibling();} $next_sibling = $tmpPb->next_sibling();$next_sibling_styles = array();while($next_sibling != null) {$next_sibling_styles[] = $this->x0f($next_sibling);$next_sibling = $next_sibling->next_sibling();}$partsArr = $x12($this->rowbreak, $tmpPb->innertext);for($i=0; $i<($x10($partsArr) - 1); $i++) {$tmpPb->innertext = $partsArr[$i];$addition = '<tr>';for($j=0; $j<$x10($prev_sibling_styles); $j++){$addition.='<td '.$prev_sibling_styles[$j].'>&nbsp;</td>';}$addition.='<td style="'.$tmpPb->getAttribute("s\164\x79\154e").'">'.$partsArr[$i+1].'</td>';for($j=0; $j<$x10($next_sibling_styles); $j++){$addition.='<td '.$next_sibling_styles[$j].'>&nbsp;</td>';}$addition .= '</tr>';$tmpPb->parent()->outertext = $tmpPb->parent()->outertext.$addition;} $toSkip = $x10($partsArr) - 2;}}}$this->content = $html->save();}private function x0f($elm){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $atts_string = "";if($elm != null) {foreach($elm->attr as $attName=>$attVal) {$atts_string .= $attName.'="'.$attVal.'" ';}}return $atts_string;}private function x10($emodule, $efocus, $is_related = false, $is_inventory = false) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $related_fieldnames = array("\162\x65\154\x61t\145\x64_\164\x6f","\x72\x65\x6ca\x74e\x64\x74\x6f","p\141\162e\156\x74_\x69\x64","\160\x61r\x65ntid","\x70ro\x64\165c\164\x5f\x69\x64","p\x72o\x64u\x63\164id","s\145r\x76\x69\x63\x65_i\144","s\x65r\166\x69ce\151\x64","v\145\156\x64\x6f\162_\x69\x64","p\x72o\x64uc\x74","a\x63\x63\x6f\165n\x74","i\x6e\166\x6f\x69\x63\145\x69\144","l\151n\x6b\x74\157\141\x63co\x75\x6et\163\143\x6f\156\164\141\x63\x74s","\x70ro\152\145\143\164\x69d","s\143\137\162\145\x6ca\164e\x64\137\x74\x6f");if($is_inventory)$inventory_content=array();$tabid = getTabid($emodule);$convEntity = $emodule;if($is_related === false){$related = "";}else{$related = "\x52\x5f";if($is_related !== true)$convEntity = $is_related; }$Checkboxes = array();$Picklists = array();$Textareas = array();$Datefields = array();$Multipicklists = array();$NumbersField = array();if($tabid=='9') $sql = "\x53\x45L\x45\103T\x20\x66\151el\x64\156\x61\155\x65\054 u\151t\171p\x65\x20F\122\117M \x76\x74\151\x67\x65\162_\146i\145l\144\x20\127\x48\105\122\x45 \x74\141\142id\x20\x49\116\040\050\x39\x2c\061\066\x29";else$sql = "\123\x45\114\x45\x43\x54 \146\151\145\x6c\x64\156\141\x6d\145, \x75\151\x74\x79\160\145\040\106\122\117M\040\166t\x69\x67\145r\137\x66\x69\145\x6cd\x20\127H\x45\122E t\x61\x62\151\x64\x20\075 '".$tabid."'";$result = $this->db->query($sql);while($row = $this->db->fetchByAssoc($result)){if ($row["\x75it\171\x70e"] == "1\x39" || $row["uit\171pe"] == "\x32\x30" || $row["ui\164\171\160e"] == "\x321" || $row["\165\x69ty\160\145"] == "\062\064")$Textareas[] = $row["f\x69\x65l\x64\156\x61\155\x65"];elseif ($row["\165it\x79\x70\x65"] == "\065" || $row["u\x69\x74y\x70\145"] == "6" || $row["\x75\x69\x74y\160\x65"] == "2\x33" || $row["uit\171\x70\x65"] == "\067\060")$Datefields[] = $row["\146i\145l\x64n\141m\145"];elseif ($row["\165\151t\x79p\145"] == "\x315" || $row["\146ie\154\144\x6e\141\155e"] == "\x73\x61luta\x74\x69\x6fn\164y\160\145")$Picklists[] = $row["\146\x69\145ldna\x6de"];elseif ($row["u\x69\x74\171p\x65"] == "\x35\x36")$Checkboxes[] = $row["\146\151\x65\154\144\156\141\x6d\145"];elseif ($row["\165\x69ty\x70\x65"] == "33")$Multipicklists[] = $row["\146\151\x65\x6cdn\141m\145"];elseif ($row["\x75\151\164\171\x70\x65"] == "7\061")$NumbersField[] = $row["fi\x65l\144n\x61\x6d\145"];}foreach ($efocus->column_fields as $fieldname => $value){if ($fieldname == "\141\163s\x69\x67\x6e\145\144_\x75\x73\x65r\x5fi\144")$value = $this->x1e($value);elseif($fieldname == "\141\x63\x63\x6f\x75\x6e\x74\137i\144") { $value = getAccountName($value);}elseif($fieldname == "\x70\157\164\x65\156\164\x69a\154_i\x64")$value = getPotentialName($value);elseif($fieldname == "co\x6e\164a\x63\x74\137id")$value = getContactName($value);elseif($fieldname == "qu\x6f\164\x65_id")$value = getQuoteName($value);elseif($fieldname == "s\141\154e\x73\x6fr\144\145r\x5f\151d")$value = getSoName($value);elseif($fieldname == "\x63\141\x6dp\x61\151gn\151\144")$value = getCampaignName($value);elseif($fieldname == "\164e\x72\x6d\x73\137\143\x6fn\144i\x74i\157n\163")$value = $this->x25($value);elseif($fieldname == "co\x6d\155ent\x73")$value = $this->x26($efocus);elseif($fieldname == "\146\157\154\144\x65r\x69d")$value = $this->x27($value);elseif($fieldname == "\x74i\155\x65\x5f\163\x74a\162\164" || $fieldname == "t\151\155\145\137\x65\156d"){$curr_time = DateTimeField::convertToUserTimeZone($value);$value = $curr_time->format('H:i');}elseif($x19($fieldname, $related_fieldnames)) {if ($value != "") {$parent_module = getSalesEntityType($value);$displayValueArray = getEntityName($parent_module, $value);if(!empty($displayValueArray)) {foreach($displayValueArray as $key=>$p_value) {$value = $p_value;}}if($fieldname=="\x69n\x76\157\x69\143\x65\x69\144" && $value=="0")$value="";}}if($x19($fieldname, $Datefields)) {if($emodule == "\105v\145nt\163" ||$emodule == "\103a\154\x65\156d\x61r"){if($fieldname == "\x64at\x65\x5f\163\164ar\164" && $efocus->column_fields["\164i\155\145\x5f\163t\x61r\x74"] != ""){$curr_time = $efocus->column_fields['time_start']; $value = $value . ' ' . $curr_time;}elseif($fieldname == "due_\x64\141te" && $efocus->column_fields["t\x69\x6d\145_\145\x6e\144"] != ""){$curr_time = $efocus->column_fields['time_end']; $value = $value . ' ' . $curr_time; }}if($value != "")$value = getValidDisplayDate($value);}elseif($x19($fieldname, $Picklists)) {if(!$x19($x2c($value), $this->ignored_picklist_values))$value = $this->x20($value,$emodule);else$value = "";}elseif($x19($fieldname, $Checkboxes)) {$pdf_app_strings = return_application_language($this->language);if($value == 1)$value = $pdf_app_strings["y\x65\x73"];else$value = $pdf_app_strings["\156o"];} elseif($x19($fieldname, $Textareas)) {$value = $x1d($value); $value = $x15($value,ENT_QUOTES,$this->def_charset);} elseif($x19($fieldname, $Multipicklists))$value = $x24(' |##| ',', ',$value);elseif($x19($fieldname, $NumbersField))$value = $this->x23($value);if ($is_inventory)$inventory_content[$x27($emodule."_".$fieldname)] = $value;else$this->replacements["\x24".$related.$x27($convEntity."\137".$fieldname)."$"]=$value;}if($is_inventory)return $inventory_content;else$this->x15();}private function x11() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $cur_usr = "\143u\162\x72\x65\156\164\137\x75\x73\145\162";$root_dir = "r\x6fo\x74\137\x64\151\162ec\164o\162y";global $$cur_usr,$$root_dir; $sql = "\123\105\x4c\x45C\124\040*\x20\106\x52\x4fM\x20\166\164ig\x65\x72_\157\162\x67an\x69\x7aa\164\x69o\156\x64\145\x74ai\154s";$result = $this->db->query($sql);$Org_Details = $this->db->fetchByAssoc($result, 1);foreach ($Org_Details AS $coll => $value) {if ($coll == "l\157\x67\157")$value = '<img src="'.$$root_dir.'test/logo/'.$Org_Details["logo\156a\155e"].'">';$this->replacements["$".$this->org_cols[$coll]."$"] = $value;} $sql = "\123\105\x4cEC\x54\040t\x61n\144\x63\040\x46\122\x4f\x4d v\164\x69\x67er_\151nv\145\x6e\x74or\171_t\x61nd\x63 \x57\x48\105\x52E\040\x74yp\145 = '\x49nven\164\157\x72\x79'";$tandc = $this->db->query_result($this->db->query($sql), 0, "\x74\141\156\x64c");$this->replacements["\x24"."\124E\122\115\123\x5f\x41N\104\x5f\103\x4f\116D\x49TIO\x4e\123\x24"] = $x1d($tandc); $user_sql = "\123\105\x4c\105\103T\040*\015\012 \x20 \x20  \x20  \040\x20   \040\040\x20\040\x20F\122\117\115 \166\164\151g\x65\162_\x75\x73\x65r\x73\040\127\110E\x52\x45\x20id\075".$this->focus->column_fields["as\x73\x69\x67\156\x65\144_\x75\x73er\137\151\x64"];$user_res = $this->db->query($user_sql);$user_row = $this->db->fetchByAssoc($user_res);$this->replacements["\x24"."\125\x53\x45\x52\x5f\125\123\x45\122\x4eA\115\x45\x24"] = $user_row["\x75\163e\x72\x5f\x6e\141m\145"];$this->replacements["$"."\125S\105R\137\x46IR\x53\124N\x41\x4d\105$"] = $user_row["\x66\151\x72\x73\164_\156\141\x6d\145"];$this->replacements["$"."\x55S\x45\x52_L\x41\123\x54N\101\115\x45\044"] = $user_row["\154a\x73t\x5fn\141\155\x65"];$this->replacements["\044"."U\x53E\122_\105\115\x41IL\044"] = $user_row["ema\x69\x6c1"];$this->replacements["\044"."\x55\123\105\x52_\124\111\124\x4c\105\044"] = $user_row["\x74\x69\x74l\145"];$this->replacements["$"."\125S\105R_\x46\101X\044"] = $user_row["\160h\x6f\x6ee_f\x61\x78"];$this->replacements["\x24"."\125SER\137D\105P\101\x52\x54ME\x4e\x54\044"] = $user_row["\x64\x65\x70\141r\x74\155en\x74"];$this->replacements["\x24"."US\105\122\x5f\117TH\x45R_EM\x41\x49\114$"] = $user_row["\x65\155\x61i\154\062"];$this->replacements["\044"."\x55\123\105R\137\120\x48\x4fNE$"] = $user_row["p\150\x6fne\137\x77\157r\153"];$this->replacements["\044"."\x55\123\105R_\131AH\117O\x49D$"] = $user_row["\x79\x61\150\x6f\x6f\137i\144"];$this->replacements["\044"."\125SE\122\x5fM\117\x42\111\x4c\x45\x24"] = $user_row["p\x68\x6f\x6e\x65_\155o\142\x69\x6ce"];$this->replacements["\044"."\125S\105\x52\137\x48\117\115\x45\x5f\120H\x4f\116\x45\044"] = $user_row["\160\x68o\x6ee\x5f\150\157\155\145"];$this->replacements["\x24"."U\123E\122_OTHE\x52\137P\110\117\116\x45\x24"] = $user_row["\x70h\157n\145\x5f\157th\145r"];$this->replacements["\x24"."\125\123E\122_\x53\x49\x47\110\116\101\124\125RE\044"] = $user_row["\x73\151g\156\141tu\162e"];$this->replacements["\044"."\x55\x53\105R\x5f\116\117\124E\123$"] = $user_row["\144esc\162\x69\160t\151\157\x6e"];$this->replacements["\x24"."\x55S\105\122_\101D\104RES\x53\x24"] = $user_row["a\144\144\162\x65\163\163_\163t\x72e\145t"];$this->replacements["$"."\125SE\122_C\x4f\125N\x54\122\131$"] = $user_row["a\x64d\x72\x65\163s_\143\x6f\165n\164r\x79"];$this->replacements["\044"."\x55\x53\105\x52\x5f\x43\111TY\x24"] = $user_row["add\x72e\163\x73\x5f\x63i\164\x79"];$this->replacements["\044"."\x55\x53E\x52_ZI\120\x24"] = $user_row["\x61\x64d\162e\x73s\x5f\x70o\x73t\x61l\143\157\144e"];$this->replacements["\044"."\x55S\105\x52\x5f\x53\124\101\124E$"] = $user_row["ad\x64r\145\x73\163\137\x73\x74a\164\145"]; $this->replacements["\044"."\114\x5f\x55\123\105\x52\137\125\x53\x45\122\x4e\101M\105$"] = $$cur_usr->column_fields["\x75\163\x65\x72\137\x6e\x61m\145"];$this->replacements["\x24"."\x4c\x5fU\123ER\x5fFIR\123\x54\116\x41ME$"] = $$cur_usr->column_fields["fi\162s\x74_\156\x61\155\145"];$this->replacements["\044"."\114\x5f\125\123E\x52_\x4cA\123TN\x41\x4d\x45$"] = $$cur_usr->column_fields["\x6c\x61\163\x74\137name"];$this->replacements["$"."\114_U\123\105R\137\105\115\x41I\x4c\x24"] = $$cur_usr->column_fields["\x65m\x61\151l\x31"];$this->replacements["\x24"."\114\x5f\x55\123\105\122\137\x54\111\x54L\x45\044"] = $$cur_usr->column_fields["t\151\164\154\145"];$this->replacements["\044"."L\137U\x53\105\122\137F\101\x58\x24"] = $$cur_usr->column_fields["\x70ho\156\145\137fa\170"];$this->replacements["\x24"."L\137\x55\123\x45\122\137D\x45\x50A\122\x54M\x45\x4e\124\x24"] = $$cur_usr->column_fields["\144\145\160\x61\x72\x74m\x65n\164"];$this->replacements["\044"."L\137US\105R\x5fO\124\110\105R\137\x45\115AI\x4c$"] = $$cur_usr->column_fields["\145ma\151l\x32"];$this->replacements["\044"."L\137\x55SE\x52\x5fP\110\117N\105$"] = $$cur_usr->column_fields["ph\x6f\x6e\x65\x5f\x77\157rk"];$this->replacements["$"."\114\x5fUS\105\122_YAHOO\x49\104\044"] = $$cur_usr->column_fields["y\x61\150o\157\137\x69\144"];$this->replacements["$"."\114\137\125SE\x52\137\x4dOB\x49L\105$"] = $$cur_usr->column_fields["ph\x6f\156e\x5f\x6d\x6f\142\x69\154e"];$this->replacements["\x24"."\114\x5fUS\x45R\x5f\110O\115E\x5f\x50H\x4f\x4e\x45\x24"] = $$cur_usr->column_fields["\x70\x68one_\x68\157me"];$this->replacements["\x24"."\114\x5f\x55S\x45\122\137OT\110\105R\137\x50\x48\x4fN\x45\x24"] = $$cur_usr->column_fields["\160h\x6f\x6e\x65_\x6f\164\x68er"];$this->replacements["\x24"."\114\x5f\x55\x53ER\x5fS\x49\107\x48\116\x41\x54UR\105\x24"] = $$cur_usr->column_fields["\163i\x67n\x61\164\165\x72e"];$this->replacements["$"."\114\137US\105\122\137\x4e\x4f\x54E\123$"] = $$cur_usr->column_fields["\x64\145\x73c\162\151\160\x74i\x6f\156"];$this->replacements["\x24"."\114\137\x55SE\x52\x5f\101\104\104\x52\x45\x53\123\x24"] = $$cur_usr->column_fields["a\x64d\162\145\163\163\137\x73\164\x72\x65\145t"];$this->replacements["$"."\x4c_\x55S\105R\x5f\103O\x55\x4e\124\122\131$"] = $$cur_usr->column_fields["a\144\x64r\x65\x73\163\x5f\143\157u\x6e\164\162y"];$this->replacements["$"."L\137USE\122\137\103IT\x59$"] = $$cur_usr->column_fields["\x61d\x64r\145\163\x73\137\x63\x69\x74y"];$this->replacements["\044"."\x4c\x5fU\123E\122\x5f\132\111\x50\044"] = $$cur_usr->column_fields["\141d\144\x72\145ss_\160o\x73\164\x61\x6c\143o\144\x65"];$this->replacements["\x24"."\114\137\125S\x45\x52_\x53T\x41\x54E\044"] = $$cur_usr->column_fields["a\144\x64\162\145\163\x73\x5fst\x61\x74\x65"];$this->x15(); $focus_user = CRMEntity::getInstance("\x55\163\x65\162s");$focus_user->id = $this->focus->column_fields["\x61\x73s\x69\147\x6e\x65\144_\165\x73\x65r\x5f\x69d"];$this->x24($focus_user,$focus_user->id ,"U\x73\145r\x73");$this->x10("\x55\x73\x65\162s", $focus_user, false); $this->x10("U\x73\x65rs", $$cur_usr, true);}private function x12(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once "\155\x6fdul\145\163/P\x44F\115a\153\x65r\057\120\104FM\x61\153\x65\162\x2e\160\x68\x70";$PDFMaker = new PDFMaker();$app_lang = return_application_language($this->language);$mod_lang = return_specified_module_language($this->language, $this->module);list($custom_lang, $languages) = $PDFMaker->GetCustomLabels();$currLangId = "";foreach($languages as $langId=>$langVal) {if($langVal["\160\x72\x65\x66i\x78"] == $this->language){$currLangId = $langId;break;}} if($x28($this->content, "%\x47_")!==false){foreach($app_lang as $key=>$value){$this->replacements["%G\x5f".$key."\x25"] = $value;}} if($x28($this->content, "\x25\115\137")!==false){foreach($mod_lang as $key=>$value){$this->replacements["\045\115_".$key."\045"] = $value;}} if($x28($this->content, "\x25\103\137")!==false){foreach($custom_lang as $key=>$value){$this->replacements["\045".$value->GetKey()."%"] = $value->GetLangValue($currLangId);}} foreach($this->relBlockModules as $relBlockId => $relBlockModule){if($relBlockModule != ""){$relMod_lang = return_specified_module_language($this->language, $relBlockModule);foreach($relMod_lang as $key=>$value){$this->replacements["\x25R_".$x27($relBlockModule)."_".$x16($key, ENT_QUOTES, $this->def_charset)."\045"] = $value;}}}$this->x15();}private function x13(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("cl\141\x73\163es\057\x73\151\x6d\x70l\x65\x5f\x68\164ml\x5fd\x6fm\056p\150\160");$this->replacements["[\x42\101\122\103\x4f\104\x45|"]="\x3c\x62ar\143\157\144\145>";$this->replacements["\174B\101\122\x43\117\x44\105\135"]="<\x2f\x62\x61\x72\143\157d\145>";$this->x15();$html = str_get_html($this->content);foreach($html->find("ba\x72c\157\x64e") as $barcode) {$params = $x12("|",$barcode->plaintext);list($type,$code) = $x12("\075",$params[0],2);$barcodeAtts = 'code="'.$code.'" type="'.$type.'" ';for($i=1; $i<$x10($params); $i++){list($attName,$attVal) = $x12("=",$params[$i],2);$barcodeAtts .= $x29($attName).'="'.$attVal.'" ';}$barcode->outertext = '<barcode '.$barcodeAtts.'/>';}$this->content = $html->save();}private function x14(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $salt = "\x73\151\164\145_UR\114";global $$salt;$surl = $$salt;require_once("\143lass\145\163\057s\151\155\160l\x65_\x68\x74m\x6c\x5fdom\056p\x68\160");$html = str_get_html($this->content);foreach($html->find("i\x6d\147") as $img){if($surl[$x25($surl) - 1] != "/")$surl = $surl."\057";if($x28($img->src, $surl) === 0) {$newPath = $x23($surl, "", $img->src);if($x13($newPath))$img->src = $newPath;}}$this->content=$html->save();}private function x15() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(!empty($this->replacements)){$this->content = $x23($x0b($this->replacements), $this->replacements, $this->content);$this->replacements = array();}} private function x16() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $salt="\163i\164\145\x5f\x55\122\114";global $$salt;$this->site_url = $x2c($$salt,"\057");$sql = "S\x45L\105CT\x20\x76t\151\x67\x65\x72\137\x70\144f\155ak\145r\x2e\x2a, \x76\164\151g\145r_\160\x64\x66m\141\153\145\162\x5fs\x65\x74t\x69n\147\x73.\052
\040\x20\040\040 \x20 \040  \x20\040\x20 \106\x52O\115\x20\166t\x69\147\145\162\137p\144\146\155\141\x6b\x65\162
\x0a \x20 \x20\x20\040 \x20\x20\040   \x20\114\105\106\124\040\x4a\117\111N \x76t\x69\x67e\x72_\x70d\x66\155\141\153\x65\x72\x5f\163e\164ti\156\147\163\015\x0a \x20  \040\040\x20\040 \040  \x20\040\040\040\x4fN v\164\151\x67\x65\x72\x5f\x70df\x6d\141\153\x65\162\x5f\163\145\164t\151ngs\x2e\x74em\x70\154\x61\164ei\144\x20\x3d\040\x76\x74\x69g\145r\x5f\160\144fma\153\x65\162\x2e\164\145mp\x6c\x61t\x65\x69\144\x0d
\x20 \040 \040  \040   \040\x20\040\x57\x48E\122E\x20v\164ige\x72\x5fp\144f\x6d\141k\x65\162\x2e\164\145m\160\154\141\164\x65i\144=\x3f";$result = $this->db->pquery($sql, array($this->templateid));$data = $this->db->fetch_array($result);$this->decimal_point = $x15($data["\144e\143i\155\x61\x6c_\160\x6f\151\156t"], ENT_QUOTES);$this->thousands_separator = $x15(($data["\x74\150\x6f\165san\x64\163\x5f\163ep\x61\162a\164\157\x72"]!="\x73\x70" ? $data["\x74\150\157\x75\x73\141\x6e\144\x73_\163\145\160\141\x72\x61\x74\157\162"] : " "), ENT_QUOTES);$this->decimals = $data["d\x65\143i\x6d\x61\x6cs"];$this->header = $data["h\x65\141de\162"];$this->footer = $data["\146\157\157\x74\x65\162"];$this->body = $data["\x62\x6f\144\x79"];$this->filename = $data["fi\154e\137\156\x61\155e"];$this->templatename = $data["\x66\151\x6c\145n\141\x6d\x65"]; $formatPB = $data["\x66o\x72\x6d\141t"];if($x28($formatPB, ";")>0) {$tmpArr = $x12(";", $formatPB);$formatPB = $tmpArr[0]."\x6d\x6d\x20".$tmpArr[1]."m\155";}elseif($data["\x6fri\x65\x6e\164a\164i\x6f\156"] == "\x6c\x61\156d\163\143\x61p\145") {$formatPB .= "-\114";}$this->pagebreak = '<pagebreak sheet-size="'.$formatPB.'" orientation="'.$data["o\162\x69\x65\156\164\141t\151\157\156"].'" margin-left="'.($data["\155\141\x72g\151\x6e\x5f\154e\x66\x74"] * 10).'mm" margin-right="'.($data["\155a\162g\x69\156_\x72\x69\x67\x68\164"] * 10).'mm" margin-top="0mm" margin-bottom="0mm" margin-header="'.($data["m\x61\162\x67\x69\156\137\164op"] * 10).'mm" margin-footer="'.($data["\155arg\151n\x5f\142\157t\x74\x6fm"] * 10).'mm" />'; }private function x17() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql = "\x53\105L\105\103T \x76\141\x6cu\145\040\106\x52\x4fM\x20\x76\164\x69g\x65\x72\137pd\x66m\141k\145r\x5f\151g\156\x6fr\x65\160i\x63\x6bl\x69\163\x74\x76\141\x6c\x75\145\163";$result = $this->db->query($sql);while($row = $this->db->fetchByAssoc($result)) {$this->ignored_picklist_values[] = $row["va\154\x75\x65"];}}private function x18($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $taxtype = $this->x22($module, $focus);$currencytype = $this->x21($module, $focus);$query="\163\x65l\145c\x74 \143a\x73\145\x20\x77he\156\040\x76\x74\151\x67\145\x72\137\160\162o\144ucts.\x70r\x6f\x64\x75\143\x74\151d\040!\x3d\x20''\040\164\x68\x65\156 \x76t\x69\147e\x72\137pr\157\x64\165c\x74\x73\x2e\x70\x72o\144uctna\155\x65\x20e\154se v\164ig\145\x72_se\162vi\143e\x2e\x73e\x72\x76\151\x63\145\156am\145\040\145n\x64\x20\x61\x73 \x70\x72\157d\x75\x63\164\156\141me\x2c" ." \143\x61\x73e \167\x68\145n\x20\166\x74\151\x67\x65\x72\137\x70\162o\x64u\x63\x74\x73\056p\x72\x6f\144\165\x63ti\x64\040\x21\075\040'' \x74he\x6e\040v\x74\151\147\145\162_\160r\157\144\x75\x63\x74\163.\x70\x72\x6f\x64\165\x63\164\x69d\040\x65l\163\145 v\x74i\x67\x65\162_\163\145r\x76\x69c\x65\056\163e\x72\x76\x69c\145\x69d\x20\145\156\x64\040\x61\x73\x20\x70s\151\x64\x2c" ."\x20ca\x73e\x20w\x68\x65\x6e \x76\164\151g\x65\162_pr\x6fd\165\143\x74\x73\056p\162\157\x64\165cti\144 \x21\075 ''\x20\x74he\x6e vti\147\145r\137\x70rod\x75\143\164s\056\x70r\157\x64\x75\x63\x74\137\x6eo\x20el\163\145\040\166t\x69\x67\x65\162\137\x73\x65\162\x76\x69\143e\x2e\163e\162v\x69ce_\156o \145nd\040a\x73 p\163n\x6f," ."\040\x63a\163e\x20w\150\x65\x6e\x20\x76\x74\x69\x67\x65\162_\x70\x72\x6f\x64\x75c\x74s\056\160\x72\157d\x75\x63ti\144 !\x3d\x20''\x20t\150\145\x6e\x20'\x50\162\157\144\165\x63\x74\x73' \x65\x6c\163\145 'S\145\x72\x76\x69\143es' \x65n\x64\040\141\x73\x20en\x74i\164\171type," ."\x20\x63\x61s\x65 w\x68e\x6e \166\x74\x69\x67\145\x72_\160\162\157\x64uct\163.\160\162\x6fd\x75\143t\x69d\040\x21\x3d\x20''\x20the\x6e\040v\164ig\x65\x72_\160ro\x64\165ct\x73\056u\x6e\151t_pr\x69c\x65 e\x6c\163\145 \x76t\x69\147er\x5fse\x72\x76i\143\145.\165\x6eit_p\162\151\143\x65\040en\144\x20as\x20\165\x6e\151\x74_p\162\x69\143e\x2c" ."\x20ca\x73e\040w\150\x65\x6e\x20\166t\x69g\145\162_p\x72o\144\x75\143\x74\163.\x70\x72\x6fd\x75\x63t\x69\144\x20\x21\075 ''\040t\x68\145\x6e\040v\x74i\147e\x72\x5f\160r\157d\165c\x74\x73\056\165\x73\141\147eu\156\151\164\x20\x65\x6cs\x65\040\166ti\147e\162\137\163e\162vice\056\163\x65\x72\166i\143\x65\x5f\165sa\x67\145u\x6eit\040en\144 a\x73\x20\x75s\141g\x65\165\156\x69\164\054" ." \143\x61\163e \x77\150\145\156 \x76\164i\x67e\x72_p\162\157\144u\143ts\056\160\x72od\165\143t\x69\x64\040!= ''\040\164\150\145\156\x20\166t\151\x67\x65\x72\137p\x72o\144u\x63\x74\163.\x71\x74\x79_p\145\x72\137u\156i\164\040\x65\x6cse\x20\166t\x69\147e\x72\x5f\163\x65r\x76\151c\145\056\161\164y\x5f\x70\x65r\137\165\x6e\151\164\040\x65n\x64\x20\141\163 \161\x74y\x5f\x70\145r_\165\156it," ." case\040\167\x68\145n\x20\x76ti\147\x65\x72_p\x72o\x64uc\x74s\x2e\x70r\x6f\x64u\143\x74\x69\x64 \041\075\x20'' \164\x68en\040\166\x74\x69\x67er\137p\x72o\x64\x75\x63\x74\163.\161t\x79\151\x6e\x73\164\157c\153 \145\x6c\x73\x65\040'\x4eA'\040\145\x6e\144 as\x20\x71\164y\x69n\163\x74o\x63k\054" ."\x20\143\141s\x65\x20w\150e\156\040v\x74\x69ger\x5f\160\x72\x6f\144\x75\143\x74\x73.p\x72o\144\165c\x74\151d\040\x21\075\040''\x20\164\x68\x65\156 \1431.d\x65\163c\162ip\x74\151\x6f\156\x20\145\154\x73e \143\x32\x2ede\x73c\162\x69\x70\164i\x6f\x6e\040\145\x6ed as \x70\x73\x64es\143\x72\x69p\164\151\x6f\x6e\054 \x76\x74\151\147\145\162\x5fi\156\x76\x65nto\162\171\160\x72\x6f\x64u\143t\162el\x2e\052\040" ."\040fro\x6d \x76\164\x69\147\x65\162_\151\156\166\145\x6e\164\x6f\162y\x70\x72\x6f\144\x75ctr\145\154" ."\040l\145\x66t\040\x6a\x6f\151\x6e \166tig\145\162\x5fpr\157\144\x75\x63\x74\163\x20\x6fn\x20vti\147er\137\x70\162\157\144\165c\x74s.\160rodu\x63ti\x64\x3d\166ti\147\x65r\x5fi\156v\145\156\164o\162\171p\x72\157\144u\x63tre\x6c\x2e\x70\x72\157\x64ucti\x64\x20" ."\040\154\145\x66\x74\040\152\157i\156 \166\164\x69\147\145\x72_\143\x72\x6d\x65\x6etity\040\141s\040\x63\x31\040\x6fn \x63\061.\x63\162\x6di\x64\040\x3d\040\166t\151\x67\x65\x72_p\162\x6f\x64\165\x63\164\x73\x2e\160\162\157\144u\143\164\151\144\x20" ." lef\x74 \152oi\x6e vt\151\x67\x65\162_\x73\x65r\166i\143\145 \157\156\040\x76\x74\151\x67e\162_\163\x65\162\166ice\x2e\x73\x65\x72\x76\151\x63e\x69d=\166\164\151\x67er\137\x69\x6e\166\x65\156t\x6f\162\171\160r\x6f\x64u\x63\164re\154.\x70\x72\x6fduc\x74\x69d\040" ."\040\x6c\x65\146\164\040j\x6fi\x6e\x20\166\164\151ge\162\x5fc\x72\x6d\145n\x74\x69\164\x79 \x61\x73 \143\062\x20\157\x6e\040c\062.\x63rmi\144 \x3d \x76\x74\x69\x67\x65r\137s\x65\162v\151\x63\145\x2e\163\145rvice\x69\x64 " ." \167h\145\x72\145\x20i\x64\075\077\040\x4fR\104E\x52 \x42Y \163eq\165\x65\x6e\143e_n\157";$result = $this->db->pquery($query, array($focus->id));$num_rows=$this->db->num_rows($result);$netTotal = "0.00"; $totalAfterDiscount_subtotal=0;$total_subtotal=0;$totalsum_subtotal=0; $images = $this->x1a($focus->id); $mpdfSubtotalAble = array();$Total_Tax_Values = array();for($i=1;$i<=$num_rows;$i++){$sub_prod_query = $this->db->pquery("SE\114E\103T p\162\x6f\x64\165\143t\151\x64\x20\x66\162o\155\040v\164\x69\x67\145r_\x69\156\166e\x6etorysu\142\160\x72\157d\x75\x63t\162\x65\154 \x57H\x45R\x45\x20\x69d=\077\x20\101\116D\x20\163\145qu\x65\x6ec\145\x5f\x6e\157=\077",array($focus->id,$i));$subprodname_str='';if($this->db->num_rows($sub_prod_query)>0){for($j=0;$j<$this->db->num_rows($sub_prod_query);$j++){$sprod_id = $this->db->query_result($sub_prod_query,$j,"p\x72od\x75c\x74id");$sprod_name = getProductName($sprod_id);$str_sep = "";if($j>0) $str_sep = "\072";$subprodname_str .= $str_sep."\040-\x20".$sprod_name;}}$subprodname_str = $x23(":","\x3c\x62r\076",$subprodname_str);$psid = $this->db->query_result($result,$i-1,"\160s\x69\144");$psno = $this->db->query_result($result,$i-1,"\x70s\x6e\157");$productid=$this->db->query_result($result,$i-1,"\160\x72o\144\x75\143t\x69\x64");$entitytype=$this->db->query_result($result,$i-1,"e\x6e\164it\x79\164\171\160\145");$producttitle = $productname= $this->db->query_result($result,$i-1,"pro\144\165c\x74\x6e\141me");if($subprodname_str!="") $productname .= "<br\057>\x3c\x73\x70\x61\156 \x73\164\171l\145\x3d'\x63o\154\157r\x3a#C\060\x430\x430\073\146o\156\x74\x2d\x73\164y\154\x65:i\164a\154i\x63\073'\076".$subprodname_str."<\057\x73\x70\x61\156>";$comment=$this->db->query_result($result,$i-1,"\x63\157\155\155\x65\156\x74");$psdescription =$this->db->query_result($result,$i-1,"\x70\x73d\145\x73c\162\x69\x70\164\151\x6fn");$inventory_prodrel_desc = $this->db->query_result($result,$i-1,"\x64\145sc\162\x69\x70\164\151o\x6e");$qtyinstock=$this->db->query_result($result,$i-1,"\x71\x74\171\151nst\x6f\143k");$qty=$this->db->query_result($result,$i-1,"\x71\x75\141\x6etit\171");$qty_per_unit=$this->db->query_result($result,$i-1,"\x71t\x79_\160\145r_\165\156\x69t");$usageunit=$this->db->query_result($result,$i-1,"\x75sage\165\156\x69\164");$unitprice=$this->db->query_result($result,$i-1,"\165n\151t_p\x72\151\x63\145");$listprice=$this->db->query_result($result,$i-1,"\154is\x74p\162\151c\x65");$total = $qty*$listprice; $discount_percent=$this->db->query_result($result,$i-1,"\x64i\x73\x63\157\165nt\x5f\x70\145rc\145n\164");$discount_amount=$this->db->query_result($result,$i-1,"\x64\151\163\143\157\x75n\164_a\x6do\165\x6et");$totalAfterDiscount = $total;$productDiscount = "\x30\x2e\x30\060";$productDiscountPercent = "";if($discount_percent != "\116U\x4c\114" && $discount_percent != "") {$productDiscount = $total*$discount_percent/100;$totalAfterDiscount = $total-$productDiscount; $productDiscountPercent=$discount_percent;}elseif($discount_amount != "\116\x55\114\x4c" && $discount_amount != "") {$productDiscount = $discount_amount;$totalAfterDiscount = $total-$productDiscount;} $netprice = $totalAfterDiscount; if($taxtype == "\x69\x6e\144\151\166idu\141l") {$taxtotal = "\x30\056\x30\060";$tax_info_message = $mod_strings["L\x42\x4c\x5fT\x4f\x54\x41L\x5fA\106\x54\105\122_\104\x49\x53\x43\x4fUN\124"]."\x20\x3d\040$totalAfterDiscount \\\156";$tax_details = getTaxDetailsForProduct($productid,"\x61\x6c\x6c");$Tax_Values = array();for($tax_count=0;$tax_count<$x10($tax_details);$tax_count++){$tax_name = $tax_details[$tax_count]["\x74\x61x\156a\x6d\x65"];$tax_label = $tax_details[$tax_count]["t\x61xlab\x65l"];$tax_value = getInventoryProductTaxValue($focus->id, $productid, $tax_name);$individual_taxamount = $totalAfterDiscount*$tax_value/100;$taxtotal = $taxtotal + $individual_taxamount;if ($tax_name != "" && $tax_value > 0){ $vatblock[$tax_name."-".$tax_value]["l\141\x62\145l"] = $tax_label;$vatblock[$tax_name."-".$tax_value]["\156e\164\x74\157"] += $totalAfterDiscount; $vatblock[$tax_name."\x2d".$tax_value]["\x76\x61\x74"] += $x20($individual_taxamount,$this->decimals); $vatblock[$tax_name."-".$tax_value]["v\141lu\145"] = $tax_value;$x0c($Tax_Values, $tax_value);$x0c($Total_Tax_Values, $tax_value);}}$netprice = $netprice + $taxtotal; if ($x10($Tax_Values) > 0){ $tax_avg_value = $x0e($Tax_Values);}else{ $tax_avg_value = "\060\056\060\x30";}$Details["\x50"][$i]["\120\x52\117D\125CT\x56\101T\120ER\103\105N\x54"] = $this->x23($tax_avg_value);$Details["\x50"][$i]["PR\117\x44\125\x43TV\x41\124SU\115"] = $this->x23($taxtotal);}if ($entitytype == "Pr\x6f\x64\165\143t\x73"){ $Details["\x50"][$i]["\120\122\117D\125CT\x53\137CR\115\111D"] = $psid; $Details["\x50"][$i]["SE\122\x56I\103\105S\137\103\122MI\x44"] = "";}else{ $Details["\120"][$i]["PR\x4f\104U\103\124S_CR\115\x49\x44"] = ""; $Details["\x50"][$i]["\x53E\x52V\111\103E\123\137C\x52\x4dI\104"] = $psid;}$Details["P"][$i]["\x50S_CR\x4d\111\104"] = $psid;$Details["P"][$i]["\x50\123\137\116\117"] = $psno;if($comment!=""){$comment = $x23("\\\x6e", "<b\x72\x3e", $x1d($comment)); $comment = $x15($comment,ENT_QUOTES,$this->def_charset);$productname .= "\x3c\142\162\040/>\074\163\155\141\x6cl\x3e".$comment."\074/\163\155a\x6c\154>";}$Details["P"][$i]["\120\x52\117\x44\125C\x54\x4e\101\x4dE"] = $productname;$Details["P"][$i]["PRO\104U\103T\124I\124LE"] = $producttitle;$psdescription = $x23("\\\x6e", "<\x62\x72>", $x1d($psdescription));$Details["\x50"][$i]["\120\x52\117DU\x43\124\104\x45\x53\x43RI\x50\x54I\117\x4e"] = $x15($psdescription,ENT_QUOTES,$this->def_charset);$Details["\120"][$i]["\120\x52O\104\125CT\x45D\111\124\104\105\x53\x43\x52\111\x50TI\117N"] = $comment;$inventory_prodrel_desc = $x23("\\\x6e", "<\x62r\076", $x1d($inventory_prodrel_desc));$Details["P"][$i]["\103\122\x4dNO\127\x50\x52\117\x44UC\x54\104\105S\x43R\111\120\x54I\117\116"] = $x15($inventory_prodrel_desc,ENT_QUOTES,$this->def_charset);$Details["\x50"][$i]["P\122ODU\x43\124\114\111\x53\124\x50\122ICE"] = $this->x23($listprice);$Details["\120"][$i]["\x50\122\x4fD\125\x43TTO\124\x41\x4c"] = $this->x23($total);$Details["\120"][$i]["PR\x4f\104\x55\x43T\x51\125\101\116T\111\124\131"] = $this->x23($qty);$Details["P"][$i]["P\x52O\104U\103\124Q\x49\116\x53T\117CK"] = $this->x23($qtyinstock); $Details["P"][$i]["\x50\x52\117\104\125\103TP\122\x49\x43\105"] = $this->x23($unitprice); $Details["\120"][$i]["\120\x52\117\104UC\x54\120\x4fSI\124\111\117\116"] = $i;$Details["\120"][$i]["\120\x52O\x44\x55\103\x54\x51TY\x50\105\122\125\x4e\111\x54"] = $this->x23($qty_per_unit); $value = $usageunit;if(!$x19($x2c($value), $this->ignored_picklist_values))$value = $this->x20($value,"\120\162o\x64\x75\x63\x74\x73\057S\x65\162\x76\x69c\x65s");else$value = "";$Details["\120"][$i]["\x50R\x4f\104\x55\103T\125\x53\101G\105\x55\x4e\x49\x54"] = $value;$Details["\120"][$i]["\x50R\117\104\125CT\104I\x53\103OUN\124"] = $this->x23($productDiscount);$Details["P"][$i]["\x50\122\117DU\x43\124\x44I\x53\x43O\125\x4e\124P\x45\x52\103\x45\116\x54"] = $this->x23($productDiscountPercent);$Details["P"][$i]["\x50R\117\104\x55C\x54\x53TO\124A\114\101\106\124E\122\x44I\x53\x43\x4fU\x4e\124\x53UM"] = $totalAfterDiscount; $Details["\x50"][$i]["\120\122ODUC\124S\x54\117\x54\x41\x4cA\x46TERDIS\103\117U\x4e\124"] = $this->x23($totalAfterDiscount);$Details["P"][$i]["\x50\122\x4f\x44U\x43\124\x54\x4fT\101\x4c\123U\115"] = $this->x23($totalAfterDiscount+$taxtotal); $totalAfterDiscount_subtotal += $totalAfterDiscount;$total_subtotal += $total;$totalsum_subtotal+= $totalAfterDiscount+$taxtotal;$Details["\120"][$i]["\x50\x52\x4f\104UCT\123T\x4f\124AL\x41\x46\124E\122\x44\x49S\x43\x4f\x55\x4e\124\137S\125B\x54\117\x54\101\x4c"] = $this->x23($totalAfterDiscount_subtotal);$Details["\120"][$i]["PR\x4f\x44\x55\x43T\124O\x54AL\x5f\x53\x55BT\117TAL"] = $this->x23($total_subtotal);$Details["\120"][$i]["P\122OD\x55\x43\x54\x54O\x54\x41\x4cS\x55\115\x5fS\x55\x42\124\117\124\101L"] = $this->x23($totalsum_subtotal); $mpdfSubtotalAble[$i]["$"."T\x4f\x54AL\101\x46\124E\122\104\x49SC\117\x55NT\137S\x55\102T\x4fT\101\114\x24"] = $Details["\x50"][$i]["P\122\x4fDUC\124\123\x54\x4f\124\101\x4c\101\106\x54\x45\122\104ISC\117\125\116\x54\137S\125B\x54\x4fTAL"];$mpdfSubtotalAble[$i]["\x24"."\124\x4fT\101\x4c\137\123\125\102\x54\x4f\124\101L$"] = $Details["P"][$i]["PRO\104\x55C\124\124\117T\x41L\137\x53\125B\x54\x4fT\x41L"];$mpdfSubtotalAble[$i]["$"."\x54\x4f\x54AL\123\x55\115\x5f\123\125\102T\x4f\124\x41\114\x24"] = $Details["\x50"][$i]["\x50\x52\x4fD\x55C\x54\x54O\124A\x4c\123\125M_S\125\102\x54O\124A\x4c"]; $sequence = $this->db->query_result($result,$i-1,"s\145q\165e\156\143\145\x5f\156\157");$Details["\x50"][$i]["\120\122\x4f\104\125\x43\x54\x53\x45Q\125ENC\105"] = $sequence;if(isset($images[$productid."_".$sequence])){$width="";$height="";if($images[$productid."\137".$sequence]["\x77i\144\164\150"]>0)$width="\x20w\151\x64\x74h\075'".$images[$productid."_".$sequence]["\x77i\144\164\x68"]."' ";if($images[$productid."\x5f".$sequence]["\x68\x65\151ght"]>0)$height=" \150\x65\x69g\x68\164='".$images[$productid."\x5f".$sequence]["\150\145\151g\x68t"]."'\x20";$Details["\x50"][$i]["PR\117\x44\125\x43TS\137I\115AGE\116AM\x45"] = "<\x69m\x67 \163\x72\143='".$this->site_url."/".$images[$productid."_".$sequence]["\x73\x72\x63"]."' ".$width.$height."\057\x3e";} $focus_p = CRMEntity::getInstance("\120r\157\144\165\x63\x74\163");if ($entitytype == "P\x72o\x64\x75\143\x74s" && $psid != "") {$focus_p->id = $psid;$this->x24($focus_p,$psid,"\120\x72\x6fd\x75\x63t\x73"); }$Array_P = $this->x10("\x50\x72\157d\165\143\x74\x73", $focus_p, false, true);$Details["P"][$i] = $x0d($Array_P,$Details["P"][$i]);unset($focus_p);$focus_s = CRMEntity::getInstance("\123e\x72\x76\x69\x63\145s");if ($entitytype == "\123er\x76\x69c\145\163" && $psid != "") {$focus_s->id = $psid;$this->x24($focus_s,$psid,"\x53er\x76\151\143\145\x73"); }$Array_S = $this->x10("\123\145\162vi\x63\145s", $focus_s, false, true);$Details["P"][$i] = $x0d($Array_S,$Details["\120"][$i]);unset($focus_s); $sumwithoutvat += $totalAfterDiscount;$netTotal = $netTotal + $netprice;} if($this->module == $module)$this->bridge2mpdf["subt\157ta\154\163\101\162\x72ay"] = $mpdfSubtotalAble; $finalDiscount = "\x30\056\x300";$final_discount_info = "0";$finalDiscountPercent=""; if($focus->column_fields["hdn\104i\x73\x63\157\x75n\164\120e\x72\143en\164"] != "0") {$finalDiscount = ($netTotal*$focus->column_fields["h\x64\x6e\x44\151\163\x63\x6f\165\x6etP\145\x72\x63e\156\164"]/100);$finalDiscountPercent = $focus->column_fields["\x68\x64\x6e\x44\151\163c\157\165\156tP\x65\x72c\145\156t"];}elseif($focus->column_fields["h\144\x6e\104\151\x73\143o\x75\x6et\x41\x6d\157\x75\x6e\164"] != "\060") {$finalDiscount = $focus->column_fields["h\x64\156D\x69\163c\x6f\165\x6e\164\x41\x6do\165nt"];} $taxtotal = "\060.0\x30";if($taxtype == "\147\x72o\165p") {$final_totalAfterDiscount = $netTotal - $finalDiscount;$tax_details = getAllTaxes("\x61\166\x61\x69\x6ca\x62\154\x65","","\x65dit",$focus->id);for($tax_count=0;$tax_count<$x10($tax_details);$tax_count++) {$tax_name = $tax_details[$tax_count]["\x74\x61xna\155\x65"];$tax_label = $tax_details[$tax_count]["\164\141x\x6c\x61\x62e\154"];$tax_value = $this->db->query_result($result,0,$tax_name);if($tax_value == "" || $tax_value == "NUL\x4c")$tax_value = "\x30\05600";$taxamount = ($netTotal-$finalDiscount)*$tax_value/100;$taxtotal = $taxtotal + $taxamount;if ($tax_name != "" && $tax_value > 0){$vatblock[$tax_name]["\154\141\x62\x65\x6c"] = $tax_label;$vatblock[$tax_name]["\156\x65\x74t\157"] = $final_totalAfterDiscount; $vatblock[$tax_name]["\166\141\x74"] += $taxamount; $vatblock[$tax_name]["\166\x61\x6c\165e"] = $tax_value; } $total_vat_percent += $tax_value;}$vat_value = $taxtotal; foreach ($Details["\120"] as $keyP=>$valueP) {$productvatsum = ($Details["P"][$keyP]["\120R\117D\125\103\124\x53\124\117\x54A\114A\106\x54ER\x44\x49SCO\125\116T\123U\115"]*$total_vat_percent)/100;$producttotalsum = $Details["P"][$keyP]["PR\117\x44U\x43\x54\x53\124\117\x54\101\114\x41FT\105RDI\x53C\117\125\x4eT\x53\125M"] + $productvatsum;$Details["P"][$keyP]["P\x52OD\125\103\124\x56\x41\x54PE\x52\x43\105\116T"] = $this->x23($total_vat_percent);$Details["P"][$keyP]["P\x52\x4f\104\125\103\x54\x56\x41\124SUM"] = $this->x23($productvatsum);$Details["\120"][$keyP]["\120\122\x4f\104\125\103\124\124O\x54\101\x4cSU\x4d"] = $this->x23($producttotalsum);} }else{if ($x10($vatblock) > 0){ foreach ($vatblock as $keyM => $valueM) $vat_value += $valueM["\x76\141\164"];}else{ $vat_value = "0\x2e\0600";}} $shAmount = ($focus->column_fields["\150dn\x53_\x48\x5fA\155\x6f\165\x6et"] != "")?$focus->column_fields["\x68\144\x6e\123_H\x5f\x41m\157u\x6e\164"]:"0.\060\060";$shtaxtotal = "\060.00";$shtax_details = getAllTaxes("\141v\141\151\154\141ble","s\x68","e\144it",$focus->id);for($shtax_count=0;$shtax_count<$x10($shtax_details);$shtax_count++) {$shtax_name = $shtax_details[$shtax_count]["\x74axn\141\x6de"];$shtax_label = $shtax_details[$shtax_count]["\164\141\x78l\141\x62\x65\154"];$shtax_percent = getInventorySHTaxPercent($focus->id,$shtax_name);$shtaxamount = $shAmount*$shtax_percent/100;$shtaxtotal = $shtaxtotal + $shtaxamount;}$totalafterdiscount = $sumwithoutvat-$finalDiscount;$totalwithvat = ($sumwithoutvat-$finalDiscount)+$vat_value;$Details["\124O\124\x41\114"]["\116\x45\124\x54\x4fT\x41\114"] = $this->x23($netTotal);$Details["\124\117\124A\x4c"]["TO\124\101\114\x57\x49\124\110\117U\124\x56\101T"] = $this->x23($sumwithoutvat);$Details["\124O\x54\x41L"]["FI\x4e\x41\x4c\x44\x49\x53C\117\125\x4eT"] = $this->x23($finalDiscount);$Details["\x54\x4f\x54A\114"]["FI\116\101L\104\111\x53CO\x55N\x54\x50\x45RC\x45N\124"] = $this->x23($finalDiscountPercent);$Details["T\x4f\124AL"]["\x54O\x54\x41\114\x41\x46\124\105\x52\104I\x53\103O\125NT"] = $this->x23($totalafterdiscount);$Details["T\117\x54\101\114"]["\124\x41\130\124OT\101L"] = $this->x23($vat_value);$Details["\124\117\x54\101\x4c"]["\124\101X\x54O\124\101\x4c\x50ER\x43EN\x54"] = $this->x23($total_vat_percent); $Details["\x54\117\124\x41L"]["\124\x4fT\x41\114\x57\111\x54H\x56\x41T"] = $this->x23($totalwithvat);$Details["\124OT\x41L"]["S\110\124\101XA\115O\x55NT"] = $this->x23($shAmount);$Details["\124\117\x54AL"]["S\x48T\101\x58TO\124\101\114"] = $this->x23($shtaxtotal);$Details["\124\x4f\x54A\114"]["\126\x41\x54\x42\x4c\117\103K"] = $vatblock;return $Details;}private function x19(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="S\105\x4cE\103T \x70\x72\x6f\144\165ct\151\x64\x2c\x20\163\145qu\145\156\x63\x65\054\040\163\x68\x6fw_\150e\x61d\x65\x72\054\040\x73\150\x6f\167_\163\165\142to\164\141l\040\106R\x4f\115 \166\x74\x69\147\x65\162\137\x70df\x6d\141ke\x72_b\x72\145a\x6b\154i\x6ee WH\105\122E \143r\155\x69d=\077";$res = $this->db->pquery($sql,array($this->focus->id));$products=array();$show_header=0;$show_subtotal=0;while($row=$this->db->fetchByAssoc($res)){$products[$row["\x70r\157\x64\165c\x74\x69d"]."_".$row["\163\x65\x71u\x65\156ce"]] = $row["se\x71\x75\x65\x6e\143\145"];$show_header=$row["sh\157w_\x68\x65\x61\144\x65\162"];$show_subtotal=$row["\x73\150o\x77_s\165bt\157\164\x61l"];}$output["p\x72\x6f\x64\x75\x63ts"] = $products;$output["s\150\157\x77\x5fhe\141\144\x65\x72"] = $show_header;$output["sh\x6f\167\137\163\x75\142\164\157\x74\x61\154"] = $show_subtotal;return $output;}private function x1a($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="\123\x45\x4c\x45\x43\x54 \166\164ige\162\137\141\164\x74\141\143\150me\x6e\x74\163.p\141t\x68,\x20v\164i\147\145\x72\137\x61\164t\141\x63\x68\155\x65\x6e\x74s\056\x6e\141m\145\054 v\x74\151\x67\x65\162\137\x61\x74\x74\141\143hm\145n\x74s.a\x74t\x61c\x68\x6d\145\x6ets\151\x64\x2c\040p\162\157\x64u\143\164i\144\x2c\040\163\x65q\x75\145\x6ece, w\151d\164\x68\x2c \150\145i\x67\150\x74\015\x0a\x20\040  \040 \x20\040\x20\x20  FR\117\x4d\040\x76\164\x69\147er_\160\144\146\155\x61\153\145r_i\x6d\141g\x65\x73
  \040\x20 \x20\x20 \x20\040  I\116\116E\x52\040JO\111N v\164\151\x67\145r\137a\164\x74a\143h\x6de\x6e\x74\163\015
\040\x20 \x20\x20 \x20\040\040 \040\040\x20\040O\x4e\x20\x76\x74\151\x67\145\162_a\x74t\x61c\x68\x6de\x6ets\x2e\x61\x74\x74\x61c\x68\x6d\145\x6ets\x69d\x3d\166\x74\151g\x65r\x5f\160\x64\146\155a\x6be\162_i\x6d\141\147\x65\x73.\x61\x74\164\141\143\150\155\x65\156\x74\x69d\015\012\040 \x20   \040\x20 \x20 \040\x49\116\x4eE\122 \x4a\x4fIN\x20\166t\151\147er\x5f\x63\162\x6d\x65n\164\x69\164y\015\012\x20\x20\x20\x20 \x20\040\040  \x20  \x20\x4f\x4e vt\x69ge\x72_\x61\x74\164\x61\x63\x68\x6d\x65\x6e\164s\x2e\141\164t\x61\x63\x68m\x65\156t\163i\144\075\x76t\x69ger_\x63\x72m\145\156\164\x69t\171\056\143\162m\x69d
\x0a   \040   \x20\x20\040\x20\040\x57\110\105RE\x20\x64\x65\x6c\x65t\x65\x64=0\x20\101ND\040\x76\x74\151\147\x65\x72_p\x64\x66m\141k\145r\x5f\151\155\x61\x67\145\x73.\x63rm\x69d\075\x3f";$res = $this->db->pquery($sql,array($id));$products=array();while($row=$this->db->fetchByAssoc($res)){$products[$row["pr\157duc\x74\151d"]."\137".$row["\163\x65\161\x75e\156c\145"]]["\x73\x72\143"] = $row["\x70\x61t\150"].$row["\141t\x74\x61\x63\x68\x6de\x6et\163\151d"]."\137".$row["\156\141me"];$products[$row["p\162\x6f\x64uc\164\x69\x64"]."\137".$row["\x73\x65qu\145\x6ece"]]["wid\164h"] = $row["w\151\x64th"];$products[$row["\x70\x72\x6f\144\165c\x74\x69d"]."\x5f".$row["s\145q\x75e\156\143\145"]]["\x68\x65\x69\147h\164"] = $row["\x68\x65ig\150t"];}return $products;}private function x1b($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(isset($id) AND $id!=""){$query="S\x45\114ECT \166\x74\151\147\x65\162\137a\x74\164\141\143h\x6d\145\156t\163\056\x70\141t\x68\054\x20\x76t\x69\x67\145r\x5f\141t\x74\141\x63\150\x6de\156\164\163\056n\141\155e\x2c v\x74\x69\x67\145\x72_\x61tt\x61\x63\150m\145n\x74\163\x2ea\x74\x74\141\x63h\155\145\156\164\x73i\x64
\040 \040  \040\x20\040\x20\040\040  \040\x46\x52\117\115\x20\x76t\151\147\x65\x72\x5f\x63onta\x63\x74\x64\145\x74\141i\x6c\x73
\x0a\x20  \040   \x20\040 \040\040\x20\x20I\116\x4e\x45R\040\x4a\117\111\x4e \166t\x69\147\x65r\x5fs\x65\141\164t\x61\x63\x68me\x6e\x74\163\x72\x65\x6c\x0d\012\040\040\040  \040\x20\040\x20 \040 \x20\x20\040 \117\x4e\x20\166\164i\147\145r\x5f\143\x6fn\164\141c\164\x64\145t\x61ils\056\143\157\156\x74\141\x63\164\x69\144\x3d\166\164\151\147e\162_\163\145\x61t\x74\x61c\x68\x6d\145\156\x74srel\056\x63\x72mi\x64\015\012\040\x20\040\040\x20 \040\x20\x20 \x20\040 \x20I\116\116\x45\x52\040JO\111\x4e v\164i\x67\x65\x72\x5fa\164\x74\x61c\150m\x65\x6e\164s
\x0a\x20\x20\040\x20  \040\x20\x20 \040\040\040\x20 \040O\x4e\040\166t\151g\145\162\x5f\x61tt\x61\x63h\x6den\164\163\056\x61\x74\164\141c\150\x6de\x6et\163id\x3dvt\151\x67\145r\137sea\164\x74\141\143\x68\x6d\145n\x74\163r\x65l.\141t\164\x61\143h\x6d\x65n\x74\x73\x69\144\x0d\012\x20\040\x20 \040\x20\040 \040\x20 \040\040\x20\111N\116\x45\122\x20JOI\116\040\x76\164ig\x65r\x5f\143\x72me\156\164\x69t\171\015\012 \040 \x20\x20\040\040  \040\040\x20\040 \x20\040O\116\040\166\x74\x69\x67\145\x72\x5f\141ttach\x6d\x65\x6e\164\x73.\141tt\x61\x63\150m\x65\156\164\x73id\075\x76\164\x69g\x65r_\x63\162me\x6e\x74\151\164\x79.\x63\162m\151\x64
\x0a\040\x20\040\040\040\x20\x20\x20 \x20   \x20\x57\x48E\122\105\x20d\x65l\x65\164e\144\075\x30\x20A\116\x44\040\166ti\x67\x65\162\137c\x6fn\164a\143\164\144\x65t\x61i\154\x73\x2e\143o\156\164\141c\164\151\144\075\x3f";$result = $this->db->pquery($query, array($id));$num_rows = $this->db->num_rows($result);if ($num_rows > 0){$image_src = $this->db->query_result($result,0,"\160\x61\x74h").$this->db->query_result($result,0,"a\x74ta\143h\155\x65\156\164sid")."\137".$this->db->query_result($result,0,"\156a\155\145");$image = "\074\151m\x67\x20\163r\143\075'".$this->site_url."/".$image_src."'/\076";return $image;}} else {return "";}}private function x1c($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if(isset($id) AND $id!=""){$sql = "\x73e\154\x65c\164\040\166t\x69\147\145r_\141\164tach\155\145\156t\163\x2e\052\x20\146\162\x6f\x6d\x20vti\x67er_\x61t\164\x61\x63h\155\145\156\164s\040\x6c\x65\146\164 \152\157i\x6e \x76\164\151\147e\162_\x73\x61\x6c\x65\x73\155an\141t\164a\143h\155e\156\164\163\x72\x65\154\040\157n\x20\166ti\147\145\x72_s\141l\x65\163\155an\141\164\x74\141\x63h\x6d\x65\156\164\x73\162el.\x61\x74\164a\x63h\155\x65\x6et\163i\x64 =\x20\166t\151\x67e\x72_\141\x74\x74\141ch\155\x65\x6e\164\x73\056at\164\x61\143\150\155\x65\x6e\x74\163\151\144\x20\x77\150er\x65 \x76\164i\x67\x65\162_\x73a\x6ce\163\x6d\141n\141\164ta\143\150\x6d\x65\x6e\164\x73\x72\145\154.\x73\155\151\x64\075?";$image_res = $this->db->pquery($sql, array($id));$image_id = $this->db->query_result($image_res, 0, 'attachmentsid');$image_path = $this->db->query_result($image_res, 0, 'path');$image_name = $this->db->query_result($image_res, 0, 'name');$imgpath = $image_path . $image_id . "\137" . $image_name;if ($image_name != '') {$image = '<img src="' . $imgpath . '" width="250px" border="0">';} else { $image = '';}return $image; } else {return "";}}private function x1d($id){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $productid = $id;$images = $this->x1a($productid);$sequence = "\x31";$retImage = "";if(isset($images[$productid."\137".$sequence])){$width="";$height="";if($images[$productid."\x5f".$sequence]["w\x69d\x74h"]>0)$width="\040w\x69\x64t\150\075'".$images[$productid."_".$sequence]["\167\x69\144t\150"]."'\x20";if($images[$productid."\137".$sequence]["hei\x67\150\164"]>0)$height="\040\x68\x65\x69\x67\150\164='".$images[$productid."_".$sequence]["\150e\151\147\150\164"]."'\040";$retImage = "<\151\x6d\x67\x20\x73rc\x3d'".$this->site_url."/".$images[$productid."\137".$sequence]["\163\162\x63"]."' ".$width.$height."\x2f\076";}return $retImage;} private function x1e($id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($id != "") {$sql = "\x53\x45\x4cE\x43\x54 us\x65r\137\156\141\155\x65 \x46\122\117M\040vt\x69g\145\x72_\x75s\145rs\040\127\110\105R\x45 \151\144\075?";$result = $this->db->pquery($sql, array($id));$ownername = $this->db->query_result($result,0,"\165\x73e\162_\156\141m\x65");}if($ownername == "") {$sql = "\x53\105\114E\x43\124\040gr\157\165p\x6eame\040FR\x4f\x4d\x20v\x74i\147e\162\137\x67\162\x6fup\163\040\x57HE\x52E\040\147\162oupi\144\075\077";$result = $this->db->pquery($sql, array($id));$ownername = $this->db->query_result($result,0,"\147r\157u\160n\x61m\145");}else {$ownername = getUserFullName($id);}return $ownername;}private function x1f($account_id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $accountno = "";if($account_id != '') {$sql = "\x53\105L\x45\103T a\x63co\165nt\x5f\x6eo\x20F\122\x4fM\040\166tige\x72_\141\x63\x63\x6fu\156t \127\x48E\x52\x45\x20a\143co\165\x6e\164\x69d=\x3f";$result = $this->db->pquery($sql, array($account_id));$accountno = $this->db->query_result($result,0,"\x61\143\143ou\x6e\x74\x5fn\157");}return $accountno;}private function x20($str,$emodule) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("m\x6fd\165l\x65\163/\x50\x44FM\x61\x6b\x65\162\057P\x44\x46\x4d\x61\153e\x72U\164ils\056p\150\160");return getTranslatedStringInLang($str,$emodule,$this->language);}private function x21($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $inventory_table = $this->inventory_table_array[$module];$inventory_id = $this->inventory_id_array[$module];$res = $this->db->pquery("SE\x4c\105C\x54\040c\x75r\x72en\143\x79\137i\x64\x2c\x20".$inventory_table."\056\143\157\x6e\x76ersi\157\x6e\137\162a\164\x65\040\x41\123\040co\156\166\137\162\141\164\x65\054 \166\164\151\147e\x72\x5f\143\165\162\162\145n\143y\137in\146o\056\x2a
\x20 \x20\x20\040 \040\x20\x20   \x20\x20\040\x20  \x20\040\040  \040\040\040\040\106\x52\117\115\x20".$inventory_table."\x0d\x0a    \x20\x20\x20\x20\040\040 \040 \040 \x20\x20\040  \040 \x20\x20 \x20 \x49\x4e\116\x45\122 J\x4f\111N \166ti\147\145r\x5f\x63u\162\162e\156\x63\171\137i\x6e\x66\157 O\116 ".$inventory_table."\x2e\x63\x75\x72\162\x65n\143\171\137id\x20= \166t\x69\x67\145r_c\x75\162\162\145\x6ec\171_i\x6e\x66\157.\x69d\015\x0a \x20  \x20 \040\x20\040 \x20\x20\x20\040  \040\x20\040\040  \040 \040\040 WH\105RE\040".$inventory_id."=\x3f", array($focus->id));$currency_info = array();$currency_info["\x63\x75\x72\x72e\156\143\171\x5fi\x64"] = $this->db->query_result($res,0,"c\165\162\162\145\156\143\171_\151d");$currency_info["\143o\156v\145rs\151on_\x72\x61te"] = $this->db->query_result($res,0,"c\x6fnv\x5fra\x74e");$currency_info["\143\x75\162\x72e\x6ec\x79\x5f\x6e\141me"] = $this->db->query_result($res,0,"\143u\162\x72\x65\156cy\x5f\156\141\x6de");$currency_info["cu\162\x72\145\156cy_\x63\x6f\144e"] = $this->db->query_result($res,0,"c\x75rr\145\156\143\171_\143ode");$currency_info["\143\x75r\x72\145\156\143y_\x73y\155\x62o\x6c"] = $this->db->query_result($res,0,"\x63\165\162re\x6ec\171\x5f\x73\171m\x62ol"); return $currency_info;}private function x22($module, $focus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $res = $this->db->pquery("\123\x45\114\x45\x43\124 tax\x74y\x70\x65\040\x46\x52OM ".$this->inventory_table_array[$module]." \127\x48\x45\122\105 ".$this->inventory_id_array[$module]."\075\x3f", array($focus->id));$taxtype = $this->db->query_result($res,0,'taxtype');return $taxtype;}private function x23($value) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x1a($value)){$number = $x1e($value,$this->decimals,$this->decimal_point,$this->thousands_separator);}else {$number = "";}return $number;}private function x24(&$focus,$record,$module) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $result = Array();foreach($focus->tab_name_index as $table_name=>$index)$result[$table_name] = $this->db->pquery("\x53\x45\x4cE\x43\x54 *\040\x46\x52\x4f\115\040".$table_name." \127H\105R\x45 ".$index."\x3d\x3f", array($record));$tabid = getTabid($module);$sql1 = "S\105\114\x45\x43\x54 \146i\x65\x6c\x64\156\x61\155\145,\x20\x66\151\x65\x6cdi\x64\054\x20\x66\x69el\x64\154a\142el\x2c\x20co\x6c\165\x6d\x6e\x6e\141m\x65\x2c \164a\142\x6ce\156\141\155\x65\054\040\x75\x69\164y\160\145\x2c\x20\164y\160\145\x6f\146d\x61t\x61\x2c\x20\x70\162\145\x73\x65\x6ece\x0d\x0a \x20\x20 \040\x20 \040\x20\040\040 \040\x20 \x46ROM \x76t\x69\x67\145r\x5f\x66ie\x6c\x64\040WH\x45R\105\x20\164\x61\142\151d=\077";$result1 = $this->db->pquery($sql1, array($tabid));$noofrows = $this->db->num_rows($result1);if($noofrows) {while($resultrow = $this->db->fetch_array($result1)) {$fieldcolname = $resultrow["\143\x6fl\x75\155nn\x61\155e"];$tablename= $resultrow["t\141\x62\x6ce\x6e\x61\155\145"];$fieldname= $resultrow["\146i\145\x6cd\156a\x6d\x65"];$fld_value="";if(isset($result[$tablename]))$fld_value = $this->db->query_result($result[$tablename],0,$fieldcolname);$focus->column_fields[$fieldname] = $fld_value;}}$focus->column_fields["\x72\145\x63\157\x72\x64\137\x69\x64"] = $record;$focus->column_fields["\162e\x63o\x72\x64_\155o\144\x75\x6ce"] = $module;}private function x25($value) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x13("mo\x64u\154es\x2f\x53\145\164\164\x69\x6eg\163\057\105ditT\x65r\x6dD\x65ta\151\154s.\x70\x68\160")) {$sql = "\123\105LECT\x20\164\x61\156\x64c\x20\x46\122\117\x4d\x20\x76\164i\x67er\x5f\151n\x76e\156\164\157\162\x79\137\x74\141\156\144c\040\127\110\x45R\105 \x69\144\x3d'".$value."'";$res = $this->db->query($sql);$num = $this->db->num_rows($res);if($num>0)$tandc = $this->db->query_result($res,0,"\164\x61n\x64\x63");else$tandc = $value;}else$tandc = $value;return $tandc;}private function x26($efocus) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $commentlist="";$prefix="";if($efocus->column_fields["re\143\x6f\162\144_m\x6fdu\154\145"] == "H\x65l\x70\104es\x6b"){$prefix="\x74\151c\x6be\x74";}elseif($efocus->column_fields["r\x65c\157rd\x5f\x6do\x64u\x6c\x65"] == "\106\141\161") {$prefix="f\x61\x71";}if($prefix!="") {$mod_lang = return_specified_module_language($this->language,$efocus->column_fields["\162e\x63o\x72\144\137\x6d\x6f\x64\165l\x65"]);$sql="SE\x4c\x45\103T\040* \106R\117\x4d\040\x76\164\x69g\x65\162\x5f".$prefix."c\x6f\x6dments\x20WH\105R\105 ".$prefix."i\144\x3d".$efocus->id;$result=$this->db->query($sql);while($row = $this->db->fetchByAssoc($result)) {$comment = $row["\x63o\x6dme\x6et\x73"];$crtime = getValidDisplayDate($row["\x63\x72\x65\x61\x74\x65d\164\x69\155\145"]);$body="";if($prefix=="\x74\151\x63\153\x65\x74"){$author = $this->x1e($row["\157\167\156\x65\x72id"]);$body=$comment."\x3cb\162\040/>".$mod_lang["\114\102L_A\125TH\117\122"]."\x3a\x20".$author."<\x62\162\040/>".$mod_lang["\103\162\x65\x61\164ed\040T\151m\145"]."\x3a\x20".$crtime."\074br\x20/>\x3c\x62\162\040/>";}else {$body=$comment."\x3cbr /\x3e".$mod_lang["\x43\162\145\x61\164\x65\144\x20\124\151me"].":\x20".$crtime."\x3c\142\162\040\x2f\x3e\074\x62r\040/\076";}$commentlist.=$body;}}return $commentlist;}private function x27($folderid) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $sql="\x53\x45\114\x45C\x54\x20\x66\x6fl\x64\x65\162\156\x61\155\145\x20\x46R\x4fM \x76\x74i\x67\x65\x72_\141\x74\164ach\x6d\x65\156ts\x66o\154\144\x65\162\040W\x48E\x52\x45 \x66\157l\144e\162\x69\x64\075".$folderid;return $foldername = $this->db->query_result($this->db->query($sql),0,"\x66\x6f\154\x64\x65\162n\x61\x6d\x65");}private function x28(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; if($x1a($x28($this->content, '[CUSTOMFUNCTION|'))){ require_once("c\x6c\x61\x73s\145s\x2fs\x69\155p\154\145_h\x74\x6dl\137\x64\x6f\155.p\x68\x70");foreach ($x14('modules/PDFMaker/functions/*.php') as $file) {include_once $file;} $this->replacements["[CU\123\x54\117M\x46\125NC\x54I\x4f\116|"]="\074c\x75s\164\157\x6dfu\156\143t\x69o\x6e\x3e"; $this->replacements["|CUS\124O\115F\x55\116C\x54\111\117\116\135"]="\x3c\x2f\143\165\163t\x6f\x6d\x66\165\156c\x74io\156>"; $this->x15(); $html = str_get_html($this->content); foreach($html->find("c\165\163tom\146\165\156\143\164\151\157\156") as $customfunction) { $Params = $this->x29($x2c($customfunction->plaintext));$func = $Params[0];unset($Params[0]);$replacement = $x0f($func,$Params);$customfunction->outertext = $replacement; } $this->content = $html->save(); } }private function x29($val){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $Params = array();$end = false;do {if ($x2a($val, '|')){ if ($val[0] == '"') {$delimiter = '"|';$val = $x2b($val, 1); } elseif ($x2b($val,0,6) == '&quot;') {$delimiter = '&quot;|';$val = $x2b($val, 6); } else $delimiter = '|'; list($Params[],$val) = $x12($delimiter,$val,2);}else{ $Params[] = $val; $end = true;}} while (!$end);return $Params;}public function getFilename() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $this->content = $this->filename;$this->replacements["\044\043\x54\105M\x50\114\x41T\x45\x5f\116\101M\x45\043$"]=$this->templatename;$this->replacements["$#D\x44-\x4dM-Y\131\x59\131\043$"]=$x11("d-m\055\x59");$this->replacements["\x24\043\x4d\115\x2dD\x44-\x59Y\x59\131\x23\044"]=$x11("\x6d\055\144-\x59");$this->replacements["\044\x23\131\131Y\131\055M\x4d-\104\104\x23\x24"]=$x11("\x59\x2dm\055\144");$this->replacements["\044".$x27($this->module)."_\x43R\115I\x44\x24"]=$this->focus->id;$this->x10($this->module, $this->focus);$this->replacements=array();$this->replacements["\r\x5c\x6e"]="";$this->replacements["\134n\r"]="";$this->replacements["\134\x6e"]="";$this->replacements["\134\162"]="";$this->x15();return $x23(" ", "\x5f", $x2b($x26($x15($this->content,ENT_QUOTES,$this->def_charset)),0,255));}private function x2a($val) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; return $x1c($val);}private function x2b(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; include_once("m\x6f\144\165\x6ce\163\057\120\x44\106Mak\x65\x72\057\x52elB\x6c\x6fc\x6b\122\x75n\x2e\160hp");if($x28($this->content,"\043\x52EL\x42\114\117\x43\113") !== false){$x1f("\x7c\043\x52\105L\x42L\117\103K([\x30\x2d9]\x2b\x29_S\124\101\x52T\043\174U", $this->content, $RelatedBlocks, PREG_PATTERN_ORDER);if ($x10($RelatedBlocks[1]) > 0){$ConvertRelBlock = array();foreach($RelatedBlocks[1] AS $r => $relblockid){if (!$x19($relblockid,$ConvertRelBlock)){$sql_rb = "\x53\x45L\105CT\x20\163\x65c\155\x6fd\x75l\145\x20\106R\x4f\115\040\x76\164i\147e\162_\160\144\146\155\x61\x6b\x65\x72\x5f\162e\154b\154o\143\x6bs W\x48\x45\122\x45\040\162\x65\154b\x6c\157\x63ki\x64\040= '".$relblockid."'";$secmodule = $this->db->query_result($this->db->query($sql_rb), 0, "\x73e\143mod\165\x6c\145");if($x28($this->content,"\x23\x52E\114\x42\114\x4f\103\113".$relblockid."\x5f\123\124\x41\x52\124\043") !== false){if ($x28($this->content,"#\122\105LB\114\x4f\x43\x4b".$relblockid."\137\x45ND\x23") !== false){$tableDOM = $this->x2c($relblockid);$oRelBlockRun = new RelBlockRun($this->focus->id, $relblockid, $this->module, $secmodule);$oRelBlockRun->SetPDFLanguage($this->language);$RelBlock_Data = $oRelBlockRun->GenerateReport();$ExplodedPdf = array();$Exploded = $x12("\043\122\x45\x4cB\114OCK".$relblockid."_S\x54\x41\x52T\043",$this->content);$ExplodedPdf[] = $Exploded[0];for($iterator=1;$iterator<$x10($Exploded);$iterator++){$SubExploded = $x12("\043RE\x4c\x42\114O\x43K".$relblockid."_EN\x44\x23",$Exploded[$iterator]);foreach($SubExploded as $part)$ExplodedPdf[] = $part;$highestpartid = $iterator*2-1;$ProductParts[$highestpartid]=$ExplodedPdf[$highestpartid];$ExplodedPdf[$highestpartid]='';}if ($x10($RelBlock_Data) > 0){ $this->relBlockModules[$relblockid] = $secmodule;foreach ($RelBlock_Data AS $RelBlock_i => $RelBlock_Details){foreach($ProductParts as $productpartid=>$productparttext){$show_line = false;foreach ($RelBlock_Details AS $coll => $value){ if ($x2c($value) != "\055" && $coll != "\154i\x73\164\160\x72\151\x63e") {$show_line = true;} $productparttext = $x24("$".$coll."$",$value,$productparttext);}if ($show_line) $ExplodedPdf[$productpartid].=$productparttext;}}}$this->content = $x18('',$ExplodedPdf);}}$ConvertRelBlock[] = $relblockid;}}}}}private function x2c($relblockid){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("\143l\x61s\163es\x2f\x73i\x6dple\x5f\150t\x6dl\137\144\157\155\x2e\160\x68\160");$html = str_get_html($this->content);$tableDOM=false;foreach($html->find("td") as $td){if($x2c($td->plaintext) == "\043\x52E\x4cB\114\117\103\113".$relblockid."\137\x53\x54\101RT\x23"){$td->parent->outertext = "\043R\105L\102\x4cO\103\x4b".$relblockid."\x5fSTAR\x54\043";list($tag)=$x12("\076",$td->parent->parent->parent->outertext,2);$header = $td->parent->prev_sibling()->outertext;$header_style = $td->parent->prev_sibling()->children[0]->getAttribute("\x73\x74y\x6c\145");$footer_tag="\074\x74r>";if(isset($header_style)){ $StyleHeader = $x12("\073", $header_style);if(isset($StyleHeader)){ foreach($StyleHeader as $style_header_tag) {if($x28($style_header_tag, "\142\157\162\144\x65r\x2dt\157\x70") == TRUE){$footer_tag.="\x3c\164\144 \x63\x6fl\163\160\141\156='".$td->getAttribute("c\157lspa\156")."' \163\x74\171\x6c\x65\075'".$style_header_tag."'\x3e\046\156b\x73p\x3b\074\057\x74\144\076";} }}} else {$footer_tag.="\074\164d\x20\143ol\x73\x70\x61n\x3d'".$td->getAttribute("c\x6f\154\x73\160a\x6e")."'\040st\x79le\x3d'\x62\x6fr\x64\145\162-to\160\072\x31\x70\x78\040\x73\x6fl\x69d \x230\x300\060\x300\073'>&\156\x62s\x70\x3b\x3c/t\144\x3e";}$footer_tag.="\074/t\162\076";$var = $td->parent->next_sibling()->last_child()->plaintext; $subtotal_tr="";if($x28($var, "\x54\117\124AL")!==false){ if($x1b($td)){$style_subtotal=$td->getAttribute("\x73ty\154\145");}if(isset($td->innertext)){list($style_subtotal_tag,$style_subtotal_endtag)=$x12("#\x50\x52ODU\x43\124\x42\x4c\117\x43\137\123\x54A\122T\043",$td->innertext);} else {$style_subtotal_tag = "";$style_subtotal_endtag = "";}if(isset($style_subtotal)){ $StyleSubtotal = $x12("\x3b", $style_subtotal); if(isset($StyleSubtotal)){ foreach($StyleSubtotal as $style_tag) {if($x28($style_tag, "\142or\144\x65r-to\x70") == TRUE){$tag.="\x20\163\164\x79\x6c\x65\075'".$style_tag."'";break;} } } } else {$style_subtotal = ""; } $tag.="\x3e"; $subtotal_tr="\x3c\x74r>";$subtotal_tr.="\x3c\164d\x20\x63o\x6cs\x70a\156='".($td->getAttribute("\x63\157\x6csp\141n")-1)."'\x20\x73\164y\154\x65\075'".$style_subtotal."\073\x62o\x72d\x65\162-\162\151\x67h\164\072\x6eo\156e'\076".$style_subtotal_tag."\045G_Su\x62\164o\164\141\x6c\045".$style_subtotal_endtag."<\x2f\x74d>";$subtotal_tr.="\074t\144\x20\x61\x6c\x69\x67n\075'rig\150\x74' \156\x6f\x77r\x61\160='\x6e\x6f\x77\162\141\x70'\x20\x73\164\x79l\x65='".$style_subtotal."'\x3e".$style_subtotal_tag."".$x21($var,"$")."_S\125B\124\117\x54\101L$".$style_subtotal_endtag."\x3c\x2f\x74\144>"; $subtotal_tr.="\x3c\x2f\x74\x72\076"; } $tableDOM["tag"] = $tag; $tableDOM["h\145\x61\144e\162"] = $header; $tableDOM["f\x6f\157\164\145\162"] = $footer_tag; $tableDOM["\163\165b\x74\157\x74\x61\x6c"] = $subtotal_tr;}if($x2c($td->plaintext) == "\043\x52E\114\x42\114O\x43K".$relblockid."_\105\116\x44#") $td->parent->outertext = "\043RELB\x4cO\103\113".$relblockid."_E\116D#";}$this->content=$html->save();return $tableDOM;}private function x2d() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("\x63l\x61s\x73\145s\057\163i\x6d\160l\x65_\x68t\x6dl\x5fd\157\155\056\x70\150\x70");$html = str_get_html($this->content);foreach($html->find("\164\x64") as $td){if($x2c($td->plaintext) == "\x23L\111\123\x54VIEWB\114\x4fC\x4b_S\x54\101R\124#") $td->parent->outertext = "#\x4c\111\x53\x54V\x49\105\127\102\114O\x43\x4b_\x53\124\101\122\124#";if($x2c($td->plaintext) == "\043\114\x49STV\111E\x57\x42\x4c\117C\113_\105\116\104\043") $td->parent->outertext = "\x23\x4c\x49ST\126IEW\102\x4c\x4f\103K_\x45N\x44\x23";}$this->content=$html->save();}private function x2e() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; require_once("\143l\141sse\x73/\163im\x70\154\145_\x68\164\x6d\154\137\144\x6fm\056\160h\160");$html = str_get_html($this->content);foreach($html->find("td") as $td){ if($x2c($td->plaintext) == "#\126A\124\102\114O\x43K_\x53\x54\x41RT#"){$td->parent->outertext = "#\126\101\x54\102\x4cO\103K\x5f\x53\124A\122T#"; } if($x2c($td->plaintext) == "\043V\x41\124B\114\117\103\113\137\105\116D\043"){$td->parent->outertext = "#\126\x41\124\102LO\x43\x4b\137\105\116D\x23"; }}$this->content =$html->save();} private function x2f(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $tacModules = array();$tac4you = $x1a(getTabId("T\141c4y\157\x75"));if($tac4you == true) { $tacSql = "S\x45\x4c\105\x43\x54\x20t\x65\170\x74\x20\106\122\x4f\115\x20\x76\164\151\x67\145r\x5f\164\141\143\x34\171ou_t\145\x78\164\163\040\127HE\x52\105\040\x69\144=?"; $tacResult = $this->db->pquery($tacSql, array($this->focus->id)); $tacText = $this->db->query_result($tacResult, 0, "\164\145\x78\164"); $this->replacements["\044".$x27($this->module)."_TA\103\064\131OU\x24"] = $x15($tacText, ENT_QUOTES, $this->def_charset);} } private function x30() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $desc4youModules = array();$desc4you = $x1a(getTabId("D\145\x73c\x72\x69\160\x74\x69\x6f\x6e\1634\x79\x6f\x75"));if($desc4you == true) { $descSql = "S\105\x4c\105\103T\x20t\145x\164\040\106R\x4f\115 \166ti\x67er\x5f\x64es\x63r\151pt\151o\156\x73\064y\x6f\165\x5ft\x65x\164s\x20W\110E\x52E\x20\x69d\x3d?"; $descResult = $this->db->pquery($descSql, array($this->focus->id)); $descText = $this->db->query_result($descResult, 0, "text"); $this->replacements["\x24".$x27($this->module)."\x5f\104\105\123\x434Y\117\125\044"] = $x15($descText, ENT_QUOTES, $this->def_charset);}}private function x31() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $ModCommentsModules = array();$ModComments = $x1a(getTabId("\115\157\x64\x43o\x6dm\x65\x6ets"));$string_comments = "";if($ModComments == true){$sql = "\x53\105\114\x45\x43\124\040relm\x6f\144\x75\x6ce \106\x52O\x4d v\164i\147e\162\x5ffi\145\x6c\x64m\x6f\x64\x75\154\145\x72\145\154 \127\x48ER\x45\040\155\157dule\x3d'\x4d\x6fd\103o\155m\x65\156\164s'\040AN\104 rel\155\x6f\144u\x6c\x65\x20\075\x20?";$result = $this->db->pquery($sql, array($this->module));if($this->db->num_rows($result) > 0 ) {$string_comments = $this->x32($this->focus->id);}}$this->replacements["$".$x27($this->module)."_M\x4fD\103\x4f\x4d\x4dE\x4e\x54\x53\x24"] = $x15($string_comments, ENT_QUOTES, $this->def_charset);}private function x32($parent_id) { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $string_comments = "";if($x13("mo\144u\x6c\x65\x73/\115\157dCo\155m\145\156t\x73\057M\x6f\144Co\x6dmen\164s.\160\x68\x70") == true) {require_once("mod\x75\154\x65\163\057M\x6f\144\x43\157m\155en\x74\x73/\x4d\157dC\x6f\155\155\x65\x6et\x73.\160\150p");$moduleName = "\115\x6f\x64\103o\155\155\x65nt\163";$entityInstance = CRMEntity::getInstance($moduleName);$queryCriteria = $x22(" \x4f\122\104E\x52\040\102Y\x20%\x73.\x25\163\x20D\105S\x43 ", $entityInstance->table_name, $entityInstance->table_index);$query = $entityInstance->getListQuery($moduleName, $x22(" \x41\x4e\x44 %s\056\x72\145\154at\145\144\x5fto\x3d\x3f", $entityInstance->table_name));$query .= $queryCriteria;$result = $this->db->pquery($query, array($parent_id));$instances = array();if($this->db->num_rows($result)) { while($resultrow = $this->db->fetch_array($result)) {$tmpMc = new ModComments_CommentsModel($resultrow);$string_comments .= "\074\x70>\133".$tmpMc->author()."\x3a\040".$tmpMc->timestamp()."\040\135<\x62r\x20\x2f\076".$tmpMc->content()."\074\x2f\x70\x3e"; }}}return $string_comments;}private function x33($module, $focus){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  if(isset($focus->column_fields["\143u\x72r\145\x6ec\x79_id"])) {$this->inventory_table_array[$module] = $focus->table_name;$this->inventory_id_array[$module] = $focus->table_index;}}private function x34($module, $focus, $is_related = false){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  if(!isset($this->inventory_table_array[$module]))$this->x33($module, $focus);if(!isset($this->inventory_table_array[$module]))return array();$prefix = "";if($is_related !== false)$prefix = "\122\x5f".$x27($is_related)."_";$this->replacements["$".$prefix."\x53\x55\x42\x54\x4f\x54AL\044"] = $this->x23($focus->column_fields["hd\x6e\x53\165\142\124o\164a\154"]);$this->replacements["\044".$prefix."T\x4f\x54A\114\x24"] = $this->x23($focus->column_fields["hd\156\x47\162\141nd\124\157\164\x61\x6c"]);$currencytype = $this->x21($module, $focus);$currencytype["c\165\162\x72\145\156\x63\171_s\171\x6db\157l"] = $x23("\xe2\x82\254","&\145\x75\162o;",$currencytype["\x63u\x72\162\145n\x63\171\137\163\x79mb\x6f\x6c"]);$currencytype["\x63u\162\x72e\x6e\x63\171\137s\171mb\x6f\x6c"] = $x23("\302\xa3","\x26p\157\165\x6ed;",$currencytype["cu\162\x72e\156\x63\x79\137\163\x79\155\142\x6fl"]);$this->replacements["\044".$prefix."\x43\125\x52R\105\x4e\103\x59\x4e\101\x4d\x45\x24"] = getTranslatedCurrencyString($currencytype["\x63\x75\x72\x72\x65\156cy_n\x61me"]);$this->replacements["$".$prefix."\x43U\x52\122\105\116\x43\x59S\x59\x4d\x42O\x4c$"] = $currencytype["\x63\x75\x72re\156\x63\x79\x5fs\x79\155b\x6fl"];$this->replacements["\x24".$prefix."C\125RRE\x4e\103YCO\104E$"] = $currencytype["\x63\x75rr\x65n\x63\x79_\x63\x6fd\x65"];$this->replacements["\x24".$prefix."\x41\104\x4aUS\x54M\105\116\124$"] = $this->x23($focus->column_fields["\164\x78\x74\101dju\x73t\x6de\x6e\164"]);$Products = $this->x18($module, $focus);$this->replacements["\044".$prefix."T\x4fT\101\114\127\111TH\117\x55T\x56AT$"] = $Products["\x54\117T\101\114"]["T\x4fT\101\x4cW\111\x54\x48O\125\124\x56A\x54"];$this->replacements["$".$prefix."\126\101\124$"] = $Products["\x54\117T\101\x4c"]["\124\101\130TO\124\x41\114"];$this->replacements["\x24".$prefix."V\101\x54PE\x52C\105\116T\044"] = $Products["\x54OT\x41\114"]["\x54\101X\x54\117\x54A\114\120\105\122\103E\116T"];$this->replacements["\x24".$prefix."\124\117T\101\x4c\x57\111T\110V\x41\124\x24"] = $Products["\124\x4f\124\101\x4c"]["T\117T\101L\127I\124\x48\126A\x54"];$this->replacements["\x24".$prefix."\123\110TAX\x41\115O\125\116\x54\044"] = $Products["\124\117\x54\x41L"]["\123\x48\x54\101\x58\101M\x4f\x55\116\124"];$this->replacements["\x24".$prefix."\123H\x54A\x58\124\117T\x41\114\x24"] = $Products["T\x4fTA\114"]["\123\x48\x54\x41\130TOT\101L"];$this->replacements["$".$prefix."\x54\x4f\x54A\x4cD\111SC\117UN\124\x24"] = $Products["TOT\101L"]["F\x49\116\101\114DIS\x43\x4f\x55\116\x54"];$this->replacements["\x24".$prefix."\x54O\x54A\x4c\104\111\123\103\117UNT\x50\x45\x52\103\x45N\x54$"] = $Products["\x54\x4f\x54\x41L"]["FI\116\101\x4c\x44I\123\103\117\125N\124P\105\x52C\105\x4e\124"];$this->replacements["\044".$prefix."\124\x4fT\101\x4c\x41FTE\122DISC\117\125\116\124\x24"] = $Products["\x54\117\x54\101\114"]["\124\117T\x41\114A\x46\x54\x45\122\x44\111\123\x43\117\x55\116\x54"];$this->x15(); if($is_related === false){ if ($x10($Products["T\117T\x41L"]["\126\101T\x42LO\103\113"]) > 0){$vattable = "\x3c\x74\x61\142\x6c\145 b\157\162d\x65\x72\x3d'\061'\x20\163ty\154\145\x3d'\142\x6f\x72d\145\x72\055c\x6f\x6cla\160s\145:\x63\x6fll\x61\160se\073' c\145ll\160ad\144in\147\075'3'\076";$vattable .= "<\x74\x72\076
\040\040\x20\x20\040\040   \040\040\x20   \x20 \040\040\040\040\x20\040\040\x20 \040 \x20\x20 \040<\x74\144 \156o\x77r\x61p\040\x61\x6c\151gn\075'\x63\x65\156ter'>".$this->app_strings["N\x61m\x65"]."\x3c/t\x64>
\012\040\040\040\040\040\040\040 \x20\040  \x20\040\040\x20\040\040\040\x20\040\x20\040\x20\040\040\040\x20  \040 \074td \156o\167\162\141\160 \x61\x6ci\147\x6e='c\145\156\164\145r'\076".$this->mod_strings["LBL_V\x41TB\x4c\x4f\x43\x4b_\x56\x41\x54\137\x50\x45\122\103E\116\124"]."<\x2f\164\x64\076
\x0a \040\040\040\x20\040\x20\x20\x20\040\040   \x20\x20   \040  \040  \x20\x20\040   \x20\x3c\x74\144 \156\157\x77\162\x61p\x20\141\x6c\151g\x6e\075'c\145\x6e\164\x65\x72'>".$this->mod_strings["L\102\x4c\x5f\126\x41\124B\114\x4fC\x4b_SU\115"]."\040\050".$currencytype["\143\165r\x72ency\137\163ym\x62o\154"]."\x29"."\x3c\057\164d\076
\012 \040\x20 \040\040 \040\x20\x20\040 \x20\040 \040 \x20\040 \x20\x20\040  \040  \040\x20 \040\074\x74\144\040\156ow\x72ap \x61\154\151g\156\x3d'\x63e\x6e\164\x65\162'\x3e".$this->mod_strings["L\102\x4c\x5f\x56\x41T\x42\114\x4f\x43\113_\126\101T\137\x56\101\x4cUE"]." \050".$currencytype["c\x75\x72\x72e\156cy_s\x79\155\142o\154"]."\051"."\074/\x74\144\076
\040 \x20\040\040\x20 \x20\x20\040 \040 \x20\x20 \x20\x20\x20\x20\x20\x20  \040\x20\040\040\x20\040\074\057\164\162\076";foreach ($Products["\124\117\x54\101\114"]["\126A\x54\x42\x4c\x4fC\x4b"] as $keyW=>$valueW){if($valueW["\x6e\145\x74t\157"]!=0) {$vattable .= "\074\x74\x72\076
\012 \040\x20\x20\040\040\x20\040 \x20  \040\x20  \x20\x20  \040\040 \x20    \x20\040\x20\x20\040 \040 \x20\040\040\040\074\x74\x64\x20\x6eowr\x61p a\154ig\156='\154\145ft' \167\x69\144th\075'\x32\060\045'>".$valueW["l\x61\142\x65\x6c"]."\x3c/t\144>
\012\x20 \x20\x20\040  \x20\040\040\040\x20   \040\x20 \x20\040\040\040  \011\011\011\x09<\x74\x64\040\x6e\x6f\x77\162a\x70\x20\141\154ig\x6e\075'\x72\x69\x67\150t' \167\x69\144\x74\x68\x3d'\x325\x25'\x3e".$this->x23($valueW["\166\x61l\165e"])."\x20%\x3c/\164\144\076\015
\x20\x20\040 \040\x20\040\040\040\040\040 \040\040\x20  \040\x20\040\040  \040\x20\x20\040\040\x20      \040\040\040\040 <\164d \156\157\167\162\x61p\040\x61\x6ci\x67n='\162\x69\147\x68\164' w\151\x64\164\x68='\0630%'>".$this->x23($valueW["\x6e\145\164\164o"])."\x3c/t\x64\x3e
\012\040\040\040\040\040\040\040\x20  \x20\040\040\x20\040\x20\x20\x20 \040\x20\040\x20\x20\x20\x20\x20\x20\x20\x20\040\x20\x20  \040 \x20\x20\x20<\164\144 \x6eo\x77\x72\x61\160\x20\141\154\151\147\x6e\075'\x72\x69\147h\164' \167\151\144\x74h\x3d'\062\x35\045'\076".$this->x23($valueW["v\141\x74"])."\074\057td\076\x0d\012\040\040  \x20\x20\x20\x20\x20\x20\x20\040 \040\x20  \x20\x20\x20\x20\040 \x20 \x20\040 \x20\040\040 \040\040\040 \040\040\074\057tr>";} }$vattable .= "\x3c/\164\x61b\x6ce\x3e";}else{ $vattable = "";}$this->replacements["\x24"."\126\101\124\x42\114\117\103\x4b\x24"] = $vattable;$this->x15(); if($x28($this->content,"\x23\x56AT\102\114\117\103K\x5f\123\x54A\x52\x54\x23") !== false && $x28($this->content,"\x23V\101\124B\114\x4fCK\137\x45\x4e\104#") !== false){$this->x2e();$VExplodedPdf = array();$VExploded = $x12("\x23\126\101T\102\114\x4fC\113\137\x53\124A\x52\x54\x23",$this->content);$VExplodedPdf[] = $VExploded[0];for($iterator=1;$iterator<$x10($VExploded);$iterator++){$VSubExploded = $x12("\x23\x56A\x54\x42\x4c\117C\113\x5fE\116D#",$VExploded[$iterator]);foreach($VSubExploded as $Vpart){$VExplodedPdf[] = $Vpart;}$Vhighestpartid = $iterator*2-1;$VProductParts[$Vhighestpartid]=$VExplodedPdf[$Vhighestpartid];$VExplodedPdf[$Vhighestpartid]='';}if ($x10($Products["T\x4f\124\101\114"]["V\x41TBL\117C\113"]) > 0){foreach ($Products["\124\x4f\124\x41\x4c"]["\x56\101\x54\102L\x4f\103\113"] as $keyW=>$valueW){foreach($VProductParts as $productpartid=>$productparttext){if($valueW["\156\145\164t\x6f"]!=0){foreach($valueW as $vColl=>$vVal){if($x1a($vVal))$vVal = $this->x23($vVal);$productparttext = $x23("$"."\x56\x41T\102\114O\103K\137".$x27($vColl)."$", $vVal, $productparttext);}$VExplodedPdf[$productpartid].=$productparttext;}}}}$this->content = $x18('',$VExplodedPdf);}}return $Products;}private function x35(){ global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c; $this->replacements["\044"."\x4d\125\x4c\124I\x43\117M\x50\101NY\x5f\x43\117M\x50\x41\x4e\131NA\115E"."$"] = '';$this->replacements["\x24"."MU\114\x54\111\x43\x4f\x4dP\x41\x4eY_\x53\124\122\x45\105\x54"."\x24"] = '';$this->replacements["\x24"."\x4d\125\114TIC\117M\x50A\116Y\x5fC\111\x54\131"."$"] = '';$this->replacements["$"."\115\x55L\x54\111C\x4fMP\101N\x59\x5fC\117\104\x45"."$"] = '';$this->replacements["$"."M\x55\114\x54\x49C\x4f\115\120\x41\116\131\137\x53TA\x54\105"."\x24"] = '';$this->replacements["$"."\x4dU\x4c\x54IC\x4f\115\120\x41N\x59\x5f\x43\117\125N\x54\x52\x59"."\044"] = '';$this->replacements["$"."\x4d\x55\x4c\124\111COM\x50\101\x4e\x59\137P\110ON\105"."\x24"] = '';$this->replacements["\x24"."\115\125\114TI\x43\117MP\101\x4e\x59\137\x46\x41X"."$"] = '';$this->replacements["\044"."\x4d\x55\x4c\124\x49\103\117\x4dP\x41\x4e\x59_EMAI\114"."\x24"] = '';$this->replacements["$"."\115\125LTI\103\117M\x50\101N\x59\x5fW\x45\102S\x49\x54\105"."\x24"] = '';$this->replacements["\x24"."\115\x55LTI\103\117\x4d\x50\101\116Y_L\117GO"."\044"] = '';$this->replacements["\044"."M\x55L\x54\111\103\117M\120\x41\x4e\x59\x5fSTA\x4dP"."\x24"] = '';$this->replacements["\044"."\x4d\125\114\x54\111C\x4fM\x50A\116Y\137\102A\x4eK\116A\x4dE"."\044"] = '';$this->replacements["\044"."M\x55\x4c\124\111\103\x4f\x4d\120\101\116\131_\102\101\x4e\113\101C\103O\x55\116\124\x4eO"."\044"] = '';$this->replacements["$"."\x4d\x55\x4c\124\x49C\x4f\x4d\120\101\116Y\x5f\111\x42\101\x4e"."\044"] = '';$this->replacements["\x24"."\115\125\x4c\124\111\103\117M\x50\x41\116\131_S\127IF\124"."$"] = '';$this->replacements["\x24"."\x4d\125\114\x54IC\x4f\x4dP\101\116\x59\137\x52E\107I\x53TRAT\111\117\x4e\116\117"."$"] = '';$this->replacements["\x24"."\115U\x4c\x54\111C\x4f\115\120\101\x4e\131\x5f\126\101\124\x4e\117"."$"] = '';$this->replacements["$"."\x4dU\114\124\111\103\x4fM\x50A\116\x59\137T\x41\x58I\104"."\044"] = '';$this->replacements["$"."MUL\x54\x49\103\x4fMP\x41\x4e\x59\x5f\x41\x44\104\x49\x54\111\117\116AL\x49\116\106OR\x4d\101\124I\x4f\116\x53"."\x24"] = '';if(getTabId('MultiCompany4you') && vtlib_isModuleActive('MultiCompany4you') && isset($this->focus->column_fields) && $this->focus->column_fields>0){ require_once('modules/MultiCompany4you/MultiCompany4youUtils.php'); $roleid = getCompanyRole($this->focus->column_fields['assigned_user_id']);$res = $this->db->pquery("\123E\114E\103T\x20\052 F\122O\115\040\x76\x74\151\147e\162_\x6dul\164\151c\x6f\155pa\156\171\064y\157\x75 \127HER\105\x20\x72\x6f\x6c\145\075\x3f\040AND\040d\x65\154\145t\x65\x64\x3d\x30",array($roleid)); $row = $this->db->fetchByAssoc($res);foreach($row as $key=>$value){switch($key){ case "l\x6f\x67o":continue (2); break; case "\154\x6f\x67\157\x6e\141m\x65": case "\x73\x74\x61\x6dpn\x61\155\x65":$key = $x2b($key,0,-4);$value = "\x3c\151\155\147 s\x72c=\"\x74e\163\x74\057\x6cogo\057".$value."\"\076"; break;}$this->replacements["\x24"."\115\125\x4cT\x49C\x4f\x4d\x50A\x4e\131\x5f".$x27($key)."$"] = $value;} $this->x15();} } private function x36() { global $x0b,$x0c,$x0d,$x0e,$x0f,$x10,$x11,$x12,$x13,$x14,$x15,$x16,$x17,$x18,$x19,$x1a,$x1b,$x1c,$x1d,$x1e,$x1f,$x20,$x21,$x22,$x23,$x24,$x25,$x26,$x27,$x28,$x29,$x2a,$x2b,$x2c;  $this->replacements['$USERS_IMAGENAME$']=$this->x1c($this->focus->column_fields["\x61\163\163\x69\x67\x6e\145\x64\x5f\x75\x73\145\162_i\x64"]); $this->replacements['$R_USERS_IMAGENAME$']=$this->x1c($_SESSION["\141\x75\164\150\x65\x6et\151c\141\164\x65\x64_\165\x73\145\x72\x5f\151\x64"]);switch($this->module) {case "\x43o\x6e\x74\x61\143\x74\163":$this->replacements['$CONTACTS_IMAGENAME$']=$this->x1b($this->focus->id);break;case "\x50r\x6f\x64ucts":$this->replacements['$PRODUCTS_IMAGENAME$'] = $this->x1d($this->focus->id);break;}}}
?>

Function Calls

None

Variables

None

Stats

MD5 b0222f12e778c38f5d2a80f00c030246
Eval Count 0
Decode Time 429 ms