mirror of
https://github.com/VTECRM/vtenext.git
synced 2026-02-26 16:18:47 +00:00
657 lines
27 KiB
PHP
657 lines
27 KiB
PHP
<?php
|
|
/*************************************
|
|
* SPDX-FileCopyrightText: 2009-2020 Vtenext S.r.l. <info@vtenext.com>
|
|
* SPDX-License-Identifier: AGPL-3.0-only
|
|
************************************/
|
|
|
|
require_once('include/utils/utils.php');
|
|
|
|
global $app_strings;
|
|
global $mod_strings;
|
|
global $app_list_strings;
|
|
global $adb;
|
|
global $upload_maxsize;
|
|
global $theme,$default_charset;
|
|
global $current_language, $default_language, $current_user;
|
|
global $table_prefix;
|
|
$theme_path="themes/".$theme."/";
|
|
$image_path=$theme_path."images/";
|
|
|
|
$smarty = new VteSmarty();
|
|
|
|
if(isset($_REQUEST['templateid']) && $_REQUEST['templateid']!='')
|
|
{
|
|
$templateid = $_REQUEST['templateid'];
|
|
|
|
$sql = "SELECT ".$table_prefix."_pdfmaker.*, ".$table_prefix."_pdfmaker_settings.*
|
|
FROM ".$table_prefix."_pdfmaker
|
|
LEFT JOIN ".$table_prefix."_pdfmaker_settings
|
|
ON ".$table_prefix."_pdfmaker_settings.templateid = ".$table_prefix."_pdfmaker.templateid
|
|
WHERE ".$table_prefix."_pdfmaker.templateid=?";
|
|
|
|
$result = $adb->pquery($sql, array($templateid));
|
|
$pdftemplateResult = $adb->fetch_array($result);
|
|
|
|
$select_module = $pdftemplateResult["module"];
|
|
// $pdf_language = $pdftemplateResult["pdf_language"];
|
|
$select_format = $pdftemplateResult["format"];
|
|
$select_orientation = $pdftemplateResult["orientation"];
|
|
//$select_encoding = $pdftemplateResult["encoding"];
|
|
$nameOfFile = $pdftemplateResult["file_name"];
|
|
|
|
$sql="SELECT is_active, is_default FROM ".$table_prefix."_pdfmaker_userstatus WHERE templateid=? AND userid=?";
|
|
$result=$adb->pquery($sql,array($templateid,$current_user->id));
|
|
if($adb->num_rows($result)>0)
|
|
{
|
|
$statusrow = $adb->fetch_array($result);
|
|
$is_active = $statusrow["is_active"];
|
|
$is_default = $statusrow["is_default"];
|
|
}
|
|
else
|
|
{
|
|
$is_active = "1";
|
|
$is_default = "0";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
$templateid = "";
|
|
|
|
if (isset($_REQUEST["return_module"]) && $_REQUEST["return_module"] != "")
|
|
$select_module = $_REQUEST["return_module"];
|
|
else
|
|
$select_module = "";
|
|
|
|
$pdf_language = $current_language;
|
|
$select_format = "A4";
|
|
$select_orientation = "portrait";
|
|
//$select_encoding = "utf-8";
|
|
$nameOfFile = "";
|
|
$is_active = "1";
|
|
$is_default = "0";
|
|
}
|
|
|
|
$type = "professional";
|
|
|
|
$smarty->assign("TYPE",$type);
|
|
|
|
if(isset($_REQUEST["isDuplicate"]) && $_REQUEST["isDuplicate"]=="true")
|
|
{
|
|
$smarty->assign("FILENAME", "");
|
|
$smarty->assign("DUPLICATE_FILENAME", $pdftemplateResult["filename"]);
|
|
}
|
|
else
|
|
$smarty->assign("FILENAME", $pdftemplateResult["filename"]);
|
|
|
|
$smarty->assign("DESCRIPTION", $pdftemplateResult["description"]);
|
|
|
|
if (!isset($_REQUEST["isDuplicate"]) OR (isset($_REQUEST["isDuplicate"]) && $_REQUEST["isDuplicate"] != "true")) $smarty->assign("SAVETEMPLATEID", $templateid);
|
|
if ($templateid!="")
|
|
$smarty->assign("EMODE", "edit");
|
|
|
|
$smarty->assign("TEMPLATEID", $templateid);
|
|
$smarty->assign("MODULENAME", getTranslatedString($select_module,$select_module)); //crmv@25443
|
|
$smarty->assign("SELECTMODULE", $select_module);
|
|
|
|
$smarty->assign("BODY", $pdftemplateResult["body"]);
|
|
|
|
$smarty->assign("MOD",$mod_strings);
|
|
$smarty->assign("THEME", $theme);
|
|
$smarty->assign("IMAGE_PATH",$image_path);
|
|
$smarty->assign("APP", $app_strings);
|
|
$smarty->assign("PARENTTAB", getParentTab());
|
|
|
|
|
|
$Modulenames = Array(''=>$mod_strings["LBL_PLS_SELECT"]);
|
|
$sql = "SELECT tabid, name FROM ".$table_prefix."_tab WHERE isentitytype=1 AND presence=0 AND tabid NOT IN (10, 9, 16, 28)";
|
|
//TODO: aggiungere in vte_hide_tab anche la voce hide_pdf
|
|
$ChartsInstance = Vtecrm_Module::getInstance('Charts');
|
|
$sql .= " AND tabid NOT IN (SELECT tabid FROM vte_hide_tab WHERE hide_report = 1) AND tabid <> ".$ChartsInstance->id;
|
|
//END
|
|
$sql .= " ORDER BY name ASC";
|
|
$result = $adb->query($sql);
|
|
while($row = $adb->fetchByAssoc($result)){
|
|
if(file_exists("modules/".$row['name'])){
|
|
if ($row['tabid'] == "20" || $row['tabid'] == "21" || $row['tabid'] == "22" || $row['tabid'] == "23" || $type == "professional")
|
|
$Modulenames[$row['name']] = getTranslatedString($row['name'],$row['name']); //crmv@25443
|
|
$ModuleIDS[$row['name']] = $row['tabid'];
|
|
}
|
|
}
|
|
|
|
$smarty->assign("MODULENAMES",$Modulenames);
|
|
|
|
$sql="SELECT * FROM ".$table_prefix."_organizationdetails";
|
|
$result = $adb->pquery($sql, array());
|
|
|
|
$organization_logoname = decode_html($adb->query_result($result,0,'logoname'));
|
|
$organization_header = decode_html($adb->query_result($result,0,'headername'));
|
|
$organization_stamp_signature = $adb->query_result($result,0,'stamp_signature');
|
|
|
|
global $site_URL, $db_prefix_name;
|
|
$path = $site_URL."/test/".$db_prefix_name."/logo/";
|
|
|
|
if (isset($organization_logoname))
|
|
{
|
|
$organization_logo_img = "<img src=\"".$path.$organization_logoname."\">";
|
|
$smarty->assign("COMPANYLOGO",$organization_logo_img);
|
|
}
|
|
if (isset($organization_stamp_signature))
|
|
{
|
|
$organization_stamp_signature_img = "<img src=\"".$path.$organization_stamp_signature."\">";
|
|
$smarty->assign("COMPANY_STAMP_SIGNATURE",$organization_stamp_signature_img);
|
|
}
|
|
if (isset($organization_header))
|
|
{
|
|
$organization_header_img = "<img src=\"".$path.$organization_header."\">";
|
|
$smarty->assign("COMPANY_HEADER_SIGNATURE",$organization_header_img);
|
|
}
|
|
|
|
$Acc_Info = array(''=>$mod_strings["LBL_PLS_SELECT"],
|
|
"COMPANY_NAME"=>$mod_strings["LBL_COMPANY_NAME"],
|
|
"COMPANY_LOGO"=>$mod_strings["LBL_COMPANY_LOGO"],
|
|
"COMPANY_ADDRESS"=>$mod_strings["LBL_COMPANY_ADDRESS"],
|
|
"COMPANY_CITY"=>$mod_strings["LBL_COMPANY_CITY"],
|
|
"COMPANY_STATE"=>$mod_strings["LBL_COMPANY_STATE"],
|
|
"COMPANY_ZIP"=>$mod_strings["LBL_COMPANY_ZIP"],
|
|
"COMPANY_COUNTRY"=>$mod_strings["LBL_COMPANY_COUNTRY"],
|
|
"COMPANY_PHONE"=>$mod_strings["LBL_COMPANY_PHONE"],
|
|
"COMPANY_FAX"=>$mod_strings["LBL_COMPANY_FAX"],
|
|
"COMPANY_WEBSITE"=>$mod_strings["LBL_COMPANY_WEBSITE"],
|
|
//crmv@25443
|
|
'COMPANY_BANKING'=>getTranslatedString('LBL_ORGANIZATION_BANKING','Settings'),
|
|
'COMPANY_VAT_REGISTRATION_NUMBER'=>getTranslatedString('LBL_ORGANIZATION_VAT','Settings'),
|
|
'COMPANY_REA'=>getTranslatedString('LBL_ORGANIZATION_REA','Settings'),
|
|
'COMPANY_ISSUED_CAPITAL'=>getTranslatedString('LBL_ORGANIZATION_CAPITAL','Settings'),
|
|
//crmv@25443e
|
|
);
|
|
|
|
$smarty->assign("ACCOUNTINFORMATIONS",$Acc_Info);
|
|
|
|
if(file_exists("modules/Users/language/$default_language.lang.php")){
|
|
$user_mod_strings = return_specified_module_language($current_language, "Users");
|
|
} else {
|
|
$user_mod_strings = return_specified_module_language("en_us", "Users");
|
|
}
|
|
|
|
$User_Info = array("USER_USERNAME"=>$user_mod_strings["User Name"],
|
|
"USER_FIRSTNAME"=>$user_mod_strings["First Name"],
|
|
"USER_LASTNAME"=>$user_mod_strings["Last Name"],
|
|
"USER_EMAIL"=>$user_mod_strings["Email"],
|
|
|
|
"USER_TITLE"=>$user_mod_strings["Title"],
|
|
"USER_FAX"=>$user_mod_strings["Fax"],
|
|
"USER_DEPARTMENT"=>$user_mod_strings["Department"],
|
|
"USER_OTHER_EMAIL"=>$user_mod_strings["Other Email"],
|
|
"USER_PHONE"=>$user_mod_strings["Office Phone"],
|
|
"USER_YAHOOID"=>$user_mod_strings["Yahoo id"],
|
|
"USER_MOBILE"=>$user_mod_strings["Mobile"],
|
|
"USER_HOME_PHONE"=>$user_mod_strings["Home Phone"],
|
|
"USER_OTHER_PHONE"=>$user_mod_strings["Other Phone"],
|
|
"USER_NOTES"=>$user_mod_strings["Documents"],
|
|
|
|
"USER_ADDRESS"=>$user_mod_strings["Street Address"],
|
|
"USER_CITY"=>$user_mod_strings["City"],
|
|
"USER_STATE"=>$user_mod_strings["State"],
|
|
"USER_ZIP"=>$user_mod_strings["Postal Code"],
|
|
"USER_COUNTRY"=>$user_mod_strings["Country"]
|
|
);
|
|
|
|
$smarty->assign("USERINFORMATIONS",$User_Info);
|
|
|
|
$Logged_User_Info = array("L_USER_USERNAME"=>$user_mod_strings["User Name"],
|
|
"L_USER_FIRSTNAME"=>$user_mod_strings["First Name"],
|
|
"L_USER_LASTNAME"=>$user_mod_strings["Last Name"],
|
|
"L_USER_EMAIL"=>$user_mod_strings["Email"],
|
|
|
|
"L_USER_TITLE"=>$user_mod_strings["Title"],
|
|
"L_USER_FAX"=>$user_mod_strings["Fax"],
|
|
"L_USER_DEPARTMENT"=>$user_mod_strings["Department"],
|
|
"L_USER_OTHER_EMAIL"=>$user_mod_strings["Other Email"],
|
|
"L_USER_PHONE"=>$user_mod_strings["Office Phone"],
|
|
"L_USER_YAHOOID"=>$user_mod_strings["Yahoo id"],
|
|
"L_USER_MOBILE"=>$user_mod_strings["Mobile"],
|
|
"L_USER_HOME_PHONE"=>$user_mod_strings["Home Phone"],
|
|
"L_USER_OTHER_PHONE"=>$user_mod_strings["Other Phone"],
|
|
"L_USER_NOTES"=>$user_mod_strings["Documents"],
|
|
|
|
"L_USER_ADDRESS"=>$user_mod_strings["Street Address"],
|
|
"L_USER_CITY"=>$user_mod_strings["City"],
|
|
"L_USER_STATE"=>$user_mod_strings["State"],
|
|
"L_USER_ZIP"=>$user_mod_strings["Postal Code"],
|
|
"L_USER_COUNTRY"=>$user_mod_strings["Country"]
|
|
);
|
|
|
|
$smarty->assign("LOGGEDUSERINFORMATION",$Logged_User_Info);
|
|
|
|
|
|
$Invterandcon = array(""=>$mod_strings["LBL_PLS_SELECT"],
|
|
"TERMS_AND_CONDITIONS"=>$mod_strings["LBL_TERMS_AND_CONDITIONS"]);
|
|
|
|
$smarty->assign("INVENTORYTERMSANDCONDITIONS",$Invterandcon);
|
|
|
|
//labels
|
|
$global_lang_labels = @array_flip($app_strings);
|
|
$global_lang_labels = array_flip($global_lang_labels);
|
|
asort($global_lang_labels);
|
|
$smarty->assign("GLOBAL_LANG_LABELS",$global_lang_labels);
|
|
|
|
$module_lang_labels=array();
|
|
if($select_module!="")
|
|
{
|
|
if(file_exists("modules/$select_module/language/$default_language.lang.php")) //kontrola na $default_language pretoze vo funkcii return_specified_module_language sa kontroluje $current_language a ak neexistuje tak sa pouzije $default_language
|
|
$mod_lang=return_specified_module_language($current_language,$select_module);
|
|
else
|
|
$mod_lang=return_specified_module_language("en_us",$select_module);
|
|
|
|
$module_lang_labels = array_flip($mod_lang);
|
|
$module_lang_labels = array_flip($module_lang_labels);
|
|
asort($module_lang_labels);
|
|
}
|
|
else
|
|
$module_lang_labels[""]=$mod_strings["LBL_SELECT_MODULE_FIELD"];
|
|
|
|
$smarty->assign("MODULE_LANG_LABELS",$module_lang_labels);
|
|
|
|
$Header_Footer_Strings = array(""=>$mod_strings["LBL_PLS_SELECT"],
|
|
"PAGE"=>$app_strings["Page"],
|
|
"PAGES"=>$app_strings["Pages"],
|
|
);
|
|
|
|
$smarty->assign("HEADER_FOOTER_STRINGS",$Header_Footer_Strings);
|
|
|
|
$Article_Strings = array(""=>$mod_strings["LBL_PLS_SELECT"],
|
|
"PRODUCTBLOC_START"=>$mod_strings["LBL_ARTICLE_START"],
|
|
"PRODUCTBLOC_END"=>$mod_strings["LBL_ARTICLE_END"]
|
|
);
|
|
|
|
$smarty->assign("ARTICLE_STRINGS",$Article_Strings);
|
|
|
|
|
|
//PDF FORMAT SETTINGS
|
|
|
|
$Formats = array("A3"=>"A3",
|
|
"A4"=>"A4",
|
|
"A5"=>"A5",
|
|
"A6"=>"A6",
|
|
"Letter"=>"Letter",
|
|
"Legal"=>"Legal");
|
|
|
|
$smarty->assign("FORMATS",$Formats);
|
|
|
|
$smarty->assign("SELECT_FORMAT",$select_format);
|
|
|
|
|
|
//PDF ORIENTATION SETTINGS
|
|
|
|
$Orientations = array("portrait"=>$mod_strings["portrait"],
|
|
"landscape"=>$mod_strings["landscape"]);
|
|
|
|
$smarty->assign("ORIENTATIONS",$Orientations);
|
|
|
|
$smarty->assign("SELECT_ORIENTATION",$select_orientation);
|
|
|
|
//PDF ENCODING SETTINGS
|
|
/*
|
|
$Encodings = array("auto"=>"Auto",
|
|
"utf-8"=>"utf-8",
|
|
"win-1252"=>"win-1252",
|
|
"win-1251"=>"win-1251",
|
|
"iso-8859-2"=>"iso-8859-2",
|
|
"iso-8859-4"=>"iso-8859-4",
|
|
"iso-8859-7"=>"iso-8859-7",
|
|
"iso-8859-9"=>"iso-8859-9",
|
|
"SJIS"=>"Japanese",
|
|
"GBK"=>"Chinese - Simplified",
|
|
"BIG5"=>"Chinese - Traditional",
|
|
"UHC"=>"Korean");
|
|
|
|
$smarty->assign("ENCODINGS",$Encodings);
|
|
$smarty->assign("SELECT_ENCODING",$select_encoding);
|
|
*/
|
|
|
|
//PDF STATUS SETTINGS
|
|
$Status = array("1"=>$app_strings["Active"],
|
|
"0"=>$app_strings["Inactive"]);
|
|
$smarty->assign("STATUS",$Status);
|
|
$smarty->assign("IS_ACTIVE",$is_active);
|
|
if($is_active=="0")
|
|
$smarty->assign("IS_DEFAULT_CHECKED",'disabled="disabled"');
|
|
elseif($is_default=="1")
|
|
$smarty->assign("IS_DEFAULT_CHECKED",'checked="checked"');
|
|
|
|
//PDF MARGIN SETTINGS
|
|
|
|
if(isset($_REQUEST['templateid']) && $_REQUEST['templateid']!='')
|
|
{
|
|
$Margins = array("top" => $pdftemplateResult["margin_top"],
|
|
"bottom" => $pdftemplateResult["margin_bottom"],
|
|
"left" => $pdftemplateResult["margin_left"],
|
|
"right" => $pdftemplateResult["margin_right"]);
|
|
|
|
$Decimals = array("point"=>$pdftemplateResult["decimal_point"],
|
|
"decimals"=>$pdftemplateResult["decimals"],
|
|
"thousands"=>($pdftemplateResult["thousands_separator"]!="sp" ? $pdftemplateResult["thousands_separator"] : " ")
|
|
);
|
|
|
|
$compliance = $pdftemplateResult['compliance']; // crmv@172422
|
|
}
|
|
else
|
|
{
|
|
$Margins = array("top"=>"2", "bottom" => "2", "left" => "2", "right" => "2");
|
|
// crmv@83877
|
|
$Decimals = array(
|
|
"point" => (isset($current_user->column_fields['decimal_separator']) ? $current_user->column_fields['decimal_separator'] : ","),
|
|
"decimals" => (isset($current_user->column_fields['decimals_num']) ? $current_user->column_fields['decimals_num'] : "2"),
|
|
"thousands" => (isset($current_user->column_fields['thousands_separator']) ? $current_user->column_fields['thousands_separator'] : " ")
|
|
);
|
|
// crmv@83877e
|
|
|
|
$compliance = ''; // crmv@172422
|
|
}
|
|
$smarty->assign("MARGINS",$Margins);
|
|
$smarty->assign("DECIMALS",$Decimals);
|
|
|
|
$smarty->assign("COMPLIANCE", $compliance); // crmv@172422
|
|
|
|
//PDF HEADER / FOOTER
|
|
$header="";
|
|
$footer="";
|
|
if(isset($_REQUEST['templateid']) && $_REQUEST['templateid']!="") {
|
|
$header=$pdftemplateResult["header"];
|
|
$footer=$pdftemplateResult["footer"];
|
|
}
|
|
$smarty->assign("HEADER",$header);
|
|
$smarty->assign("FOOTER",$footer);
|
|
|
|
$hfVariables = array("##PAGE##"=>$mod_strings["LBL_CURRENT_PAGE"],
|
|
"##PAGES##"=>$mod_strings["LBL_ALL_PAGES"],
|
|
"##PAGE##/##PAGES##"=>$mod_strings["LBL_PAGE_PAGES"]);
|
|
//"##FILENAME##"=>$mod_strings["LBL_FILENAME"],
|
|
//"##FILESIZE##"=>$mod_strings["LBL_FILESIZE"]);
|
|
|
|
$smarty->assign("HEAD_FOOT_VARS",$hfVariables);
|
|
|
|
$dateVariables = array("##DD.MM.YYYY##"=>$mod_strings["LBL_DATE_DD.MM.YYYY"],
|
|
"##DD-MM-YYYY##"=>$mod_strings["LBL_DATE_DD-MM-YYYY"],
|
|
"##MM-DD-YYYY##"=>$mod_strings["LBL_DATE_MM-DD-YYYY"],
|
|
"##YYYY-MM-DD##"=>$mod_strings["LBL_DATE_YYYY-MM-DD"]);
|
|
|
|
$smarty->assign("DATE_VARS",$dateVariables);
|
|
|
|
//PDF FILENAME FIELDS
|
|
$filenameFields = array("#TEMPLATE_NAME#"=>$mod_strings["LBL_PDF_NAME"],
|
|
"#DD-MM-YYYY#"=>$mod_strings["LBL_CURDATE_DD-MM-YYYY"],
|
|
"#MM-DD-YYYY#"=>$mod_strings["LBL_CURDATE_MM-DD-YYYY"],
|
|
"#YYYY-MM-DD#"=>$mod_strings["LBL_CURDATE_YYYY-MM-DD"]
|
|
);
|
|
$smarty->assign("FILENAME_FIELDS",$filenameFields);
|
|
$smarty->assign("NAME_OF_FILE",$nameOfFile);
|
|
|
|
//Ignored picklist values
|
|
$pvsql="SELECT value FROM ".$table_prefix."_pdfmaker_ignpickvals"; //crmv@19166
|
|
$pvresult = $adb->query($pvsql);
|
|
$pvvalues="";
|
|
while($pvrow=$adb->fetchByAssoc($pvresult))
|
|
$pvvalues.=$pvrow["value"].", ";
|
|
$smarty->assign("IGNORE_PICKLIST_VALUES",rtrim($pvvalues, ", "));
|
|
|
|
$Product_Fields = array("PS_CRMID"=>$mod_strings["LBL_RECORD_ID"],
|
|
"PS_NO"=>$mod_strings["LBL_PS_NO"],
|
|
"PRODUCTPOSITION"=>$mod_strings["LBL_PRODUCT_POSITION"],
|
|
"CURRENCYNAME"=>$mod_strings["LBL_CURRENCY_NAME"],
|
|
"CURRENCYCODE"=>$mod_strings["LBL_CURRENCY_CODE"],
|
|
"CURRENCYSYMBOL"=>$mod_strings["LBL_CURRENCY_SYMBOL"],
|
|
"PRODUCTNAME"=>$mod_strings["LBL_VARIABLE_PRODUCTNAME"],
|
|
"PRODUCTTITLE"=>$mod_strings["LBL_VARIABLE_PRODUCTTITLE"],
|
|
"PRODUCTDESCRIPTION"=>$mod_strings["LBL_VARIABLE_PRODUCTDESCRIPTION"],
|
|
"PRODUCTEDITDESCRIPTION"=>$mod_strings["LBL_VARIABLE_PRODUCTEDITDESCRIPTION"]);
|
|
|
|
$Product_Fields["PRODUCTINVDESCRIPTION"]=$mod_strings["LBL_VARIABLE_PRODUCTINVDESCRIPTION"]; //crmv@23798
|
|
|
|
if($adb->num_rows($adb->query("SELECT tabid FROM ".$table_prefix."_tab WHERE name='Pdfsettings'"))>0)
|
|
$Product_Fields["CRMNOWPRODUCTDESCRIPTION"]=$mod_strings["LBL_CRMNOW_DESCRIPTION"];
|
|
|
|
$Product_Fields["PRODUCTQUANTITY"]=$mod_strings["LBL_VARIABLE_QUANTITY"];
|
|
$Product_Fields["PRODUCTUSAGEUNIT"]=$mod_strings["LBL_VARIABLE_USAGEUNIT"];
|
|
$Product_Fields["PRODUCTLISTPRICE"]=$mod_strings["LBL_VARIABLE_LISTPRICE"];
|
|
$Product_Fields["PRODUCTTOTAL"]=$mod_strings["LBL_PRODUCT_TOTAL"];
|
|
$Product_Fields["PRODUCTDISCOUNT"]=$mod_strings["LBL_VARIABLE_DISCOUNT"];
|
|
$Product_Fields["PRODUCTDISCOUNTPERCENT"]=$mod_strings["LBL_VARIABLE_DISCOUNT_PERCENT"];
|
|
$Product_Fields["PRODUCTSTOTALAFTERDISCOUNT"]=$mod_strings["LBL_VARIABLE_PRODUCTTOTALAFTERDISCOUNT"];
|
|
$Product_Fields["PRODUCTVATPERCENT"]=$mod_strings["LBL_PROCUCT_VAT_PERCENT"];
|
|
$Product_Fields["PRODUCTVATSUM"]=$mod_strings["LBL_PRODUCT_VAT_SUM"];
|
|
$Product_Fields["PRODUCTTOTALSUM"]=$mod_strings["LBL_PRODUCT_TOTAL_VAT"];
|
|
|
|
$smarty->assign("SELECT_PRODUCT_FIELD",$Product_Fields);
|
|
|
|
$More_Fields = array("SUBTOTAL"=>$mod_strings["LBL_VARIABLE_SUM"], //crmv@25443
|
|
"CURRENCYNAME"=>$mod_strings["LBL_CURRENCY_NAME"],
|
|
"CURRENCYSYMBOL"=>$mod_strings["LBL_CURRENCY_SYMBOL"],
|
|
"CURRENCYCODE"=>$mod_strings["LBL_CURRENCY_CODE"],
|
|
"TOTALWITHOUTVAT"=>$mod_strings["LBL_VARIABLE_SUMWITHOUTVAT"],
|
|
"TOTALDISCOUNT"=>$mod_strings["LBL_VARIABLE_TOTALDISCOUNT"],
|
|
"TOTALDISCOUNTPERCENT"=>$mod_strings["LBL_VARIABLE_TOTALDISCOUNT_PERCENT"],
|
|
"TOTALAFTERDISCOUNT"=>$mod_strings["LBL_VARIABLE_TOTALAFTERDISCOUNT"],
|
|
"VAT"=>$mod_strings["LBL_VARIABLE_VAT"],
|
|
"VATPERCENT"=>$mod_strings["LBL_VARIABLE_VAT_PERCENT"],
|
|
"VATBLOCK"=>$mod_strings["LBL_VARIABLE_VAT_BLOCK"],
|
|
"TOTALWITHVAT"=>$mod_strings["LBL_VARIABLE_SUMWITHVAT"],
|
|
"SHTAXTOTAL"=>$mod_strings["LBL_SHTAXTOTAL"],
|
|
"SHTAXAMOUNT"=>$mod_strings["LBL_SHTAXAMOUNT"],
|
|
"ADJUSTMENT"=>$mod_strings["LBL_ADJUSTMENT"],
|
|
"TOTAL"=>$mod_strings["LBL_VARIABLE_TOTALSUM"]
|
|
);
|
|
|
|
if (isInventoryModule($select_module)) //crmv@48404
|
|
$display_product_div = "block";
|
|
else
|
|
$display_product_div = "none";
|
|
|
|
$smarty->assign("DISPLAY_PRODUCT_DIV",$display_product_div);
|
|
|
|
foreach ($ModuleIDS as $module => $IDS) {
|
|
$sql1 = "SELECT blockid, blocklabel FROM ".$table_prefix."_blocks WHERE tabid=".$IDS." ORDER BY sequence ASC";
|
|
$res1 = $adb->query($sql1);
|
|
$block_info_arr = array();
|
|
while($row = $adb->fetch_array($res1))
|
|
{
|
|
$sql2 = "SELECT fieldid, uitype FROM ".$table_prefix."_field WHERE block=".$row['blockid']." and (displaytype != 3 OR uitype = 55) ORDER BY sequence ASC";
|
|
$res2 = $adb->query($sql2);
|
|
$num_rows2 = $adb->num_rows($res2);
|
|
|
|
if ($num_rows2 > 0)
|
|
{
|
|
$field_id_array = array();
|
|
|
|
while($row2 = $adb->fetch_array($res2))
|
|
{
|
|
$field_id_array[] = $row2['fieldid'];
|
|
|
|
switch ($row2['uitype'])
|
|
{
|
|
// crmv@182167 - removed old uitypes
|
|
case "10": $fmrs=$adb->query('select relmodule from '.$table_prefix.'_fieldmodulerel where fieldid='.$row2['fieldid']);
|
|
while ($rm=$adb->fetch_array($fmrs)) {
|
|
$All_Related_Modules[$module][] = $rm['relmodule'];
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
|
|
$block_info_arr[$row['blocklabel']] = $field_id_array;
|
|
}
|
|
}
|
|
|
|
if (isInventoryModule($module)) //crmv@48404
|
|
$block_info_arr["LBL_DETAILS_BLOCK"] = array();
|
|
|
|
$ModuleFields[$module] = $block_info_arr;
|
|
}
|
|
|
|
// ITS4YOU-CR VlZa
|
|
//Oprava prazdneho selectboxu v pripade ze zvoleny modul nemal ziadne related moduly
|
|
foreach($Modulenames as $key=>$value)
|
|
{
|
|
if(!isset($All_Related_Modules[$key]))
|
|
$All_Related_Modules[$key]=array();
|
|
}
|
|
// ITS4YOU-END
|
|
$smarty->assign("ALL_RELATED_MODULES",$All_Related_Modules);
|
|
|
|
if ($select_module != "")
|
|
{
|
|
foreach ($All_Related_Modules[$select_module] AS $rel_module)
|
|
{
|
|
$Related_Modules[$rel_module] = getTranslatedString($rel_module,$rel_module); //crmv@25443
|
|
}
|
|
}
|
|
|
|
$smarty->assign("RELATED_MODULES",$Related_Modules);
|
|
|
|
|
|
foreach ($ModuleFields AS $module => $Blocks)
|
|
{
|
|
$Optgroupts = array();
|
|
|
|
if(file_exists("modules/$module/language/$default_language.lang.php")) //kontrola na $default_language pretoze vo funkcii return_specified_module_language sa kontroluje $current_language a ak neexistuje tak sa pouzije $default_language
|
|
$current_mod_strings = return_specified_module_language($current_language, $module);
|
|
else
|
|
$current_mod_strings = return_specified_module_language("en_us", $module);
|
|
|
|
$b = 0;
|
|
foreach ($Blocks AS $block_label => $block_fields)
|
|
{
|
|
$b++;
|
|
|
|
$Options = array();
|
|
|
|
|
|
if (isset($current_mod_strings[$block_label]) AND $current_mod_strings[$block_label] != "")
|
|
$optgroup_value = $current_mod_strings[$block_label];
|
|
elseif (isset($app_strings[$block_label]) AND $app_strings[$block_label] != "")
|
|
$optgroup_value = $app_strings[$block_label];
|
|
elseif(isset($mod_strings[$block_label]) AND $mod_strings[$block_label]!="")
|
|
$optgroup_value = $mod_strings[$block_label];
|
|
else
|
|
$optgroup_value = $block_label;
|
|
|
|
$Optgroupts[] = '"'.$optgroup_value.'","'.$b.'"';
|
|
|
|
if (count($block_fields) > 0)
|
|
{
|
|
$field_ids = implode(",",$block_fields);
|
|
|
|
$sql1 = "SELECT * FROM ".$table_prefix."_field WHERE fieldid IN (".$field_ids.")";
|
|
$result1 = $adb->query($sql1);
|
|
|
|
while($row1 = $adb->fetchByAssoc($result1))
|
|
{
|
|
$fieldname = $row1['fieldname'];
|
|
$fieldlabel = $row1['fieldlabel'];
|
|
|
|
$option_key = strtoupper($module."_".$fieldname);
|
|
|
|
if (isset($current_mod_strings[$fieldlabel]) AND $current_mod_strings[$fieldlabel] != "")
|
|
$option_value = $current_mod_strings[$fieldlabel];
|
|
elseif (isset($app_strings[$fieldlabel]) AND $app_strings[$fieldlabel] != "")
|
|
$option_value = $app_strings[$fieldlabel];
|
|
else
|
|
$option_value = $fieldlabel;
|
|
|
|
$Options[] = '"'.$option_value.'","'.$option_key.'"';
|
|
$SelectModuleFields[$module][$optgroup_value][$option_key] = $option_value;
|
|
}
|
|
|
|
// crmv@198024 - add variant fields
|
|
if ($module == 'Products' && $block_label == 'LBL_VARIANT_INFORMATION' && vtlib_isModuleActive('ConfProducts')) {
|
|
$confProd = CRMEntity::getInstance('ConfProducts');
|
|
$struct = $confProd->getAllAttributes();
|
|
foreach ($struct as $prodattr) {
|
|
$fieldname = $prodattr['fieldname'];
|
|
$option_key = strtoupper($module."_".$fieldname);
|
|
$option_value = $prodattr['productname'].': '.$prodattr['fieldlabel'];
|
|
$Options[] = '"'.$option_value.'","'.$option_key.'"';
|
|
$SelectModuleFields[$module][$optgroup_value][$option_key] = $option_value;
|
|
}
|
|
}
|
|
// crmv@198024e
|
|
}
|
|
|
|
//variable RECORD ID added
|
|
if($b==1)
|
|
{
|
|
$option_value = "Record ID";
|
|
$option_key = strtoupper($module."_CRMID");
|
|
$Options[] = '"'.$option_value.'","'.$option_key.'"';
|
|
$SelectModuleFields[$module][$optgroup_value][$option_key] = $option_value;
|
|
}
|
|
//end
|
|
|
|
$Convert_RelatedModuleFields[$module."|".$b] = implode(",",$Options);
|
|
|
|
|
|
if ($block_label == "LBL_DETAILS_BLOCK" && isInventoryModule($module)) //crmv@48404
|
|
{
|
|
foreach ($More_Fields AS $variable => $variable_name)
|
|
{
|
|
$variable_key = strtoupper($variable);
|
|
|
|
$Options[] = '"'.$variable_name.'","'.$variable_key.'"';
|
|
$SelectModuleFields[$module][$optgroup_value][$variable_key] = $variable_name;
|
|
}
|
|
}
|
|
$Convert_ModuleFields[$module."|".$b] = implode(",",$Options);
|
|
}
|
|
|
|
$Convert_ModuleBlocks[$module] = implode(",",$Optgroupts);
|
|
|
|
}
|
|
|
|
if(isset($ModuleSorces))
|
|
$smarty->assign("MODULESORCES",$ModuleSorces);
|
|
|
|
$smarty->assign("MODULE_BLOCKS",$Convert_ModuleBlocks);
|
|
|
|
$smarty->assign("RELATED_MODULE_FIELDS",$Convert_RelatedModuleFields);
|
|
|
|
$smarty->assign("MODULE_FIELDS",$Convert_ModuleFields);
|
|
|
|
// ITS4YOU-CR VlZa
|
|
// Product bloc templates
|
|
$sql="SELECT * FROM ".$table_prefix."_pdfmaker_prodbloc_tpl"; //crmv@19166
|
|
$result=$adb->query($sql);
|
|
$Productbloc_tpl[""]=$mod_strings["LBL_PLS_SELECT"];
|
|
while($row=$adb->fetchByAssoc($result))
|
|
{
|
|
$Productbloc_tpl[$row["body"]]=$row["name"];
|
|
}
|
|
$smarty->assign("PRODUCT_BLOC_TPL",$Productbloc_tpl);
|
|
|
|
$smarty->assign("PRODUCTS_FIELDS",$SelectModuleFields["Products"]);
|
|
$smarty->assign("SERVICES_FIELDS",$SelectModuleFields["Services"]);
|
|
// ITS4YOU-END
|
|
|
|
if ($templateid != "" || $select_module!="")
|
|
{
|
|
$smarty->assign("SELECT_MODULE_FIELD",$SelectModuleFields[$select_module]);
|
|
$smf_filename = $SelectModuleFields[$select_module];
|
|
if(isInventoryModule($select_module)) //crmv@48404
|
|
unset($smf_filename["Details"]);
|
|
$smarty->assign("SELECT_MODULE_FIELD_FILENAME",$smf_filename);
|
|
}
|
|
|
|
include_once("version.php");
|
|
|
|
//$sql = "SELECT version_type FROM vte_pdfmaker_license";
|
|
//$version_type = ucfirst($adb->getOne($sql,0,"version_type"));
|
|
$smarty->assign("MODULE",$currentModule); //crmv
|
|
|
|
$smarty->assign("VERSION",$version_type." ".$version);
|
|
|
|
$smarty->assign("CUSTOM_FUNCTIONS",SDK::getPDFCustomFunctions()); //crmv@2539m
|
|
|
|
$category = getParentTab();
|
|
$smarty->assign("CATEGORY",$category);
|
|
$smarty->assign("INVENTORY_MODULES",getInventoryModules()); //crmv@48404
|
|
$smarty->display('modules/PDFMaker/EditPDFTemplate.tpl');
|
|
?>
|