更新到 5.2 正式版后第一次 SVN 提交。
[email protected] git-svn-id: https://svn.code.sf.net/p/hawebs/svn@643 a2543c7e-f6e9-4f8a-8bff-1ffc34733512
This commit is contained in:
@@ -0,0 +1,168 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
*******************************************************************************/
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('modules/PriceBooks/PriceBooks.php');
|
||||
require_once('include/utils/utils.php');
|
||||
|
||||
global $app_strings,$mod_strings,$current_language,$theme,$log,$currentModule;
|
||||
$current_module_strings = return_module_language($current_language, $currentModule);
|
||||
|
||||
$productid = vtlib_purify($_REQUEST['return_id']);
|
||||
$parenttab = getParentTab();
|
||||
$theme_path="themes/".$theme."/";
|
||||
$image_path=$theme_path."images/";
|
||||
require_once($theme_path.'layout_utils.php');
|
||||
$productNameArr = getEntityName($currentModule, array($productid));
|
||||
$productname = $productNameArr[$productid];
|
||||
|
||||
if(getFieldVisibilityPermission($currentModule,$current_user->id,'unit_price') != '0'){
|
||||
echo "<link rel='stylesheet' type='text/css' href='themes/$theme/style.css'>";
|
||||
echo "<table border='0' cellpadding='5' cellspacing='0' width='100%' height='450px'><tr><td align='center'>";
|
||||
echo "<div style='border: 3px solid rgb(153, 153, 153); background-color: rgb(255, 255, 255); width: 55%; position: relative; z-index: 10000000;'>
|
||||
|
||||
<table border='0' cellpadding='5' cellspacing='0' width='98%'>
|
||||
<tbody><tr>
|
||||
<td rowspan='2' width='11%'><img src='themes/images/denied.gif' ></td>
|
||||
<td style='border-bottom: 1px solid rgb(204, 204, 204);' nowrap='nowrap' width='70%'><span class='genHeaderSmall'>$app_strings[LBL_UNIT_PRICE_NOT_PERMITTED]</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='small' align='right' nowrap='nowrap'>
|
||||
<a href='javascript:window.history.back();'>$app_strings[LBL_GO_BACK]</a><br> </td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</div>";
|
||||
echo "</td></tr></table>";
|
||||
exit();
|
||||
}
|
||||
|
||||
$smarty=new vtigerCRM_Smarty;
|
||||
|
||||
$smarty->assign("MOD", $mod_strings);
|
||||
$smarty->assign("APP", $app_strings);
|
||||
$smarty->assign("IMAGE_PATH",$image_path);
|
||||
|
||||
$focus = new PriceBooks();
|
||||
|
||||
//Retreive the list of PriceBooks
|
||||
$list_query = getListQuery("PriceBooks");
|
||||
|
||||
$list_query .= ' and vtiger_pricebook.active<>0 ORDER BY pricebookid DESC ';
|
||||
|
||||
$list_result = $adb->query($list_query);
|
||||
$num_rows = $adb->num_rows($list_result);
|
||||
|
||||
$record_string= "Total No of PriceBooks : ".$num_rows;
|
||||
|
||||
//Retreiving the array of already releated products
|
||||
$sql1="select vtiger_crmentity.crmid, vtiger_pricebookproductrel.pricebookid,vtiger_service.unit_price
|
||||
from vtiger_pricebookproductrel inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_pricebookproductrel.productid
|
||||
inner join vtiger_service on vtiger_service.serviceid=vtiger_pricebookproductrel.productid
|
||||
where vtiger_crmentity.deleted=0 and vtiger_pricebookproductrel.productid=?";
|
||||
$res1 = $adb->pquery($sql1, array($productid));
|
||||
$num_prod_rows = $adb->num_rows($res1);
|
||||
$pbk_array = Array();
|
||||
for($i=0; $i<$num_prod_rows; $i++)
|
||||
{
|
||||
$pbkid=$adb->query_result($res1,$i,"pricebookid");
|
||||
$pbk_array[$pbkid] = $pbkid;
|
||||
}
|
||||
|
||||
$pro_unit_price = getUnitPrice($productid, $currentModule);
|
||||
$prod_price_details = getPriceDetailsForProduct($productid, $pro_unit_price, 'available', $currentModule);
|
||||
|
||||
$prod_cur_price = array();
|
||||
for($i=0; $i<count($prod_price_details); $i++)
|
||||
{
|
||||
$prod_cur_info = $prod_price_details[$i];
|
||||
$prod_cur_price[$prod_cur_info['curid']] = $prod_cur_info['curvalue'];
|
||||
}
|
||||
|
||||
$unit_price_array=array();
|
||||
$field_name_array=array();
|
||||
|
||||
$other_text = '
|
||||
<table border="0" cellpadding="1" cellspacing="0" width="90%" align="center">
|
||||
<form name="addToPB" method="POST" id="addToPB">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<input name="product_id" type="hidden" value="'.$productid.'">
|
||||
<input name="idlist" type="hidden">
|
||||
<input name="viewname" type="hidden">';
|
||||
|
||||
//we should not display the Add to PriceBook button if there is no pricebooks to associate
|
||||
if($num_rows != $num_prod_rows)
|
||||
$other_text .='<input class="crmbutton small save" type="submit" value="'.$mod_strings['LBL_ADD_PRICEBOOK_BUTTON_LABEL'].'" onclick="return addtopricebook()"/> ';
|
||||
|
||||
$other_text .='<input title="'.$app_strings[LBL_CANCEL_BUTTON_TITLE].'" accessKey="'.$app_strings[LBL_CANCEL_BUTTON_KEY].'" class="crmbutton small cancel" onclick="window.history.back()" type="button" name="button" value="'.$app_strings[LBL_CANCEL_BUTTON_LABEL].'"></td>';
|
||||
$other_text .='
|
||||
</tr>
|
||||
</table>';
|
||||
|
||||
$smarty->assign("PRICEBOOKLISTHEADER", get_form_header($current_module_strings['LBL_LIST_PRICEBOOK_FORM_TITLE'], $other_text, false ));
|
||||
|
||||
|
||||
//List View Table Header
|
||||
$list_header = '';
|
||||
$list_header .= '<tr>';
|
||||
$list_header .='<td class="lvtCol" width="5%"><input type="checkbox" name="selectall" onClick=\'toggleSelect(this.checked,"selected_id");updateAllListPrice() \'></td>';
|
||||
$list_header .= '<td class="lvtCol" width="35%">'.$mod_strings['LBL_PRICEBOOK'].'</td>';
|
||||
$list_header .= '<td class="lvtCol" width="20%">'.$app_strings['LBL_CURRENCY'].'</td>';
|
||||
$list_header .= '<td class="lvtCol" width="20%">'.$mod_strings['LBL_PRODUCT_UNIT_PRICE'].'</td>';
|
||||
$list_header .= '<td class="lvtCol" width="20%">'.$mod_strings['LBL_PB_LIST_PRICE'].'</td>';
|
||||
$list_header .= '</tr>';
|
||||
|
||||
$smarty->assign("LISTHEADER", $list_header);
|
||||
|
||||
$list_body ='';
|
||||
for($i=0; $i<$num_rows; $i++)
|
||||
{
|
||||
$entity_id = $adb->query_result($list_result,$i,"crmid");
|
||||
if(! array_key_exists($entity_id, $pbk_array))
|
||||
{
|
||||
$pk_currency_id = $adb->query_result($list_result,$i,"currency_id");
|
||||
$pk_currency_name = $adb->query_result($list_result,$i,"currency_name");
|
||||
$unit_price = $prod_cur_price[$pk_currency_id];
|
||||
$field_name = $entity_id."_listprice";
|
||||
$unit_price_array[]="'".$unit_price."'";
|
||||
$field_name_array[]="'".$field_name."'";
|
||||
|
||||
$list_body .= '<tr class="lvtColData" onmouseover="this.className=\'lvtColDataHover\'" onmouseout="this.className=\'lvtColData\'" bgcolor="white">';
|
||||
$list_body .= '<td><INPUT type=checkbox NAME="selected_id" id="check_'.$entity_id.'" value= '.$entity_id.' onClick=\'toggleSelectAll(this.name,"selectall");updateListPrice("'.$unit_price.'","'.$field_name.'",this)\'></td>';
|
||||
$list_body .= '<td>'.$adb->query_result($list_result,$i,"bookname").'</td>';
|
||||
$list_body .= '<td>'.$pk_currency_name.'</td>';
|
||||
$list_body .= '<td>'.$unit_price.'</td>';
|
||||
|
||||
$list_body .='<td>';
|
||||
if(isPermitted("PriceBooks","EditView","") == 'yes')
|
||||
$list_body .= '<input type="text" name="'.$field_name.'" style="visibility:hidden;" id="'.$field_name.'">';
|
||||
else
|
||||
$list_body .= '<input type="text" name="'.$field_name.'" style="visibility:hidden;" readonly id="'.$field_name.'">';
|
||||
$list_body .= '</td></tr>';
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
$smarty->assign("UNIT_PRICE_ARRAY",implode(",",$unit_price_array));
|
||||
$smarty->assign("FIELD_NAME_ARRAY",implode(",",$field_name_array));
|
||||
|
||||
if($order_by !='')
|
||||
$url_string .="&order_by=".$order_by;
|
||||
if($sorder !='')
|
||||
$url_string .="&sorder=".$sorder;
|
||||
|
||||
$smarty->assign("LISTENTITY", $list_body);
|
||||
$smarty->assign("RETURN_MODULE", vtlib_purify($_REQUEST['return_module']));
|
||||
$smarty->assign("RETURN_ACTION", vtlib_purify($_REQUEST['return_action']));
|
||||
$smarty->assign("RETURN_ID", $productid);
|
||||
$smarty->assign("CATEGORY", $parenttab);
|
||||
|
||||
$smarty->display("AddProductToPriceBooks.tpl");
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,185 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('modules/Services/Services.php');
|
||||
require_once('include/utils/utils.php');
|
||||
|
||||
global $app_strings,$mod_strings,$current_language,$theme,$log,$current_user,$default_charset,$adb;
|
||||
$current_module_strings = return_module_language($current_language, 'Services');
|
||||
|
||||
$pricebook_id = $_REQUEST['pricebook_id'];
|
||||
$currency_id = $_REQUEST['currency_id'];
|
||||
if ($currency_id == null) $currency_id = fetchCurrency($current_user->id);
|
||||
$parenttab = htmlspecialchars($_REQUEST['parenttab'],ENT_QUOTES,$default_charset);
|
||||
|
||||
$theme_path="themes/".$theme."/";
|
||||
$image_path=$theme_path."images/";
|
||||
require_once($theme_path.'layout_utils.php');
|
||||
|
||||
if(getFieldVisibilityPermission('Services',$current_user->id,'unit_price') != '0'){
|
||||
echo "<link rel='stylesheet' type='text/css' href='themes/$theme/style.css'>";
|
||||
echo "<table border='0' cellpadding='5' cellspacing='0' width='100%' height='450px'><tr><td align='center'>";
|
||||
echo "<div style='border: 3px solid rgb(153, 153, 153); background-color: rgb(255, 255, 255); width: 55%; position: relative; z-index: 10000000;'>
|
||||
|
||||
<table border='0' cellpadding='5' cellspacing='0' width='98%'>
|
||||
<tbody><tr>
|
||||
<td rowspan='2' width='11%'><img src='themes/$theme/images/denied.gif' ></td>
|
||||
<td style='border-bottom: 1px solid rgb(204, 204, 204);' nowrap='nowrap' width='70%'><span class='genHeaderSmall'>$app_strings[LBL_UNIT_PRICE_NOT_PERMITTED]</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='small' align='right' nowrap='nowrap'>
|
||||
<a href='javascript:window.history.back();'>$app_strings[LBL_GO_BACK]</a><br> </td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</div>";
|
||||
echo "</td></tr></table>";
|
||||
exit();
|
||||
}
|
||||
|
||||
$pricebookname = getPriceBookName($pricebook_id);
|
||||
|
||||
$smarty= new vtigerCRM_Smarty;
|
||||
$smarty->assign("MOD", $mod_strings);
|
||||
$smarty->assign("APP", $app_strings);
|
||||
$smarty->assign("IMAGE_PATH",$image_path);
|
||||
|
||||
$focus = new Services();
|
||||
|
||||
if (isset($_REQUEST['order_by']))
|
||||
$order_by = $adb->sql_escape_string($_REQUEST['order_by']);
|
||||
|
||||
$url_string = ''; // assigning http url string
|
||||
$sorder = 'ASC'; // Default sort order
|
||||
if(isset($_REQUEST['sorder']) && $_REQUEST['sorder'] != '')
|
||||
$sorder = $adb->sql_escape_string($_REQUEST['sorder']);
|
||||
|
||||
|
||||
//Retreive the list of Services
|
||||
$list_query = getListQuery("Services");
|
||||
|
||||
if(isset($order_by) && $order_by != '')
|
||||
{
|
||||
$list_query .= ' and vtiger_service.discontinued<>0 ORDER BY '.$order_by.' '.$sorder;
|
||||
}
|
||||
|
||||
$list_query .= " and vtiger_service.discontinued<>0 group by vtiger_crmentity.crmid";
|
||||
$list_result = $adb->query($list_query);
|
||||
$num_rows = $adb->num_rows($list_result);
|
||||
|
||||
$record_string= "Total No of Service Available : ".$num_rows;
|
||||
|
||||
//Retreiving the array of already releated services
|
||||
$sql1 = "select productid as serviceid from vtiger_pricebookproductrel
|
||||
INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid = vtiger_pricebookproductrel.productid
|
||||
WHERE vtiger_crmentity.setype='Services' AND vtiger_crmentity.deleted=0 AND pricebookid=?";
|
||||
$res1 = $adb->pquery($sql1, array($pricebook_id));
|
||||
$num_prod_rows = $adb->num_rows($res1);
|
||||
$prod_array = Array();
|
||||
for($i=0; $i<$num_prod_rows; $i++)
|
||||
{
|
||||
$prodid=$adb->query_result($res1,$i,"serviceid");
|
||||
$prod_array[$prodid] = $prodid;
|
||||
}
|
||||
|
||||
|
||||
//Buttons Add To PriceBook and Cancel
|
||||
$other_text = '
|
||||
<table width="95%" border="0" cellpadding="1" cellspacing="0" align="center">
|
||||
<form name="addToPB" method="POST" id="addToPB">
|
||||
<tr>
|
||||
<td align="center">
|
||||
<input name="pricebook_id" type="hidden" value="'.$pricebook_id.'">
|
||||
<input name="idlist" type="hidden">
|
||||
<input name="viewname" type="hidden">
|
||||
';
|
||||
|
||||
//we should not display the Add to PriceBook button if there is no services to associate
|
||||
if($num_rows != $num_prod_rows && $num_rows > 0)
|
||||
$other_text .='<input class="crmbutton small save" type="submit" value="'.$mod_strings['LBL_ADD_PRICEBOOK_BUTTON_LABEL'].'" onclick="return addtopricebook()"/>';
|
||||
|
||||
$other_text .=' <input title="'.$app_strings[LBL_CANCEL_BUTTON_TITLE].'" accessKey="'.$app_strings['LBL_CANCEL_BUTTON_KEY'].'" class="crmbutton small cancel" onclick="window.history.back()" type="button" name="button" value="'.$app_strings['LBL_CANCEL_BUTTON_LABEL'].'"></td>';
|
||||
|
||||
$other_text .='
|
||||
</tr>
|
||||
</table>';
|
||||
|
||||
$smarty->assign("PRODUCTLISTHEADER", get_form_header($current_module_strings['LBL_LIST_FORM_TITLE'], $other_text, false ));
|
||||
|
||||
//Retreive the List View Table Header
|
||||
|
||||
$list_header = '';
|
||||
$list_header .= '<tr>';
|
||||
$list_header .='<td class="lvtCol"><input type="checkbox" name="selectall" onClick=\'toggleSelect(this.checked,"selected_id");updateAllListPrice()\'></td>';
|
||||
$list_header .= '<td class="lvtCol">'.$mod_strings['LBL_LIST_SERVICE_NAME'].'</td>';
|
||||
if(getFieldVisibilityPermission('Services', $current_user->id, 'unit_price') == '0')
|
||||
$list_header .= '<td class="lvtCol">'.$mod_strings['LBL_SERVICE_UNIT_PRICE'].'</td>';
|
||||
$list_header .= '<td class="lvtCol">'.$mod_strings['LBL_PB_LIST_PRICE'].'</td>';
|
||||
$list_header .= '</tr>';
|
||||
|
||||
$smarty->assign("LISTHEADER", $list_header);
|
||||
|
||||
|
||||
//if the service is not associated already then we should display that services
|
||||
$new_prod_array = array();
|
||||
$unit_price_array=array();
|
||||
$field_name_array=array();
|
||||
$entity_id_array =array();
|
||||
for($i=0; $i<$num_rows; $i++)
|
||||
{
|
||||
$entity_id = $adb->query_result($list_result,$i,"crmid");
|
||||
if(! array_key_exists($entity_id, $prod_array))
|
||||
{
|
||||
$new_prod_array[] = $entity_id;
|
||||
}
|
||||
$entity_id_array[$entity_id] = $i;
|
||||
}
|
||||
$prod_price_list = getPricesForProducts($currency_id, $new_prod_array, 'Services');
|
||||
|
||||
$list_body ='';
|
||||
for($i=0; $i<count($new_prod_array); $i++)
|
||||
{
|
||||
$log->info("Services :: Showing the List of services to be added in price book");
|
||||
$entity_id = $new_prod_array[$i];
|
||||
|
||||
$list_body .= '<tr class="lvtColData" onmouseover="this.className=\'lvtColDataHover\'" onmouseout="this.className=\'lvtColData\'" bgcolor="white">';
|
||||
$unit_price = $prod_price_list[$entity_id];
|
||||
$field_name = $entity_id."_listprice";
|
||||
$unit_price_array[]="'".$unit_price."'";
|
||||
$field_name_array[]="'".$field_name."'";
|
||||
|
||||
$list_body .= '<td><INPUT type=checkbox NAME="selected_id" id="check_'.$entity_id.'" value= '.$entity_id.' onClick=\'toggleSelectAll(this.name,"selectall");updateListPrice("'.$unit_price.'","'.$field_name.'",this)\'></td>';
|
||||
$list_body .= '<td>'.$adb->query_result($list_result,$entity_id_array[$entity_id],"servicename").'</td>';
|
||||
|
||||
if(getFieldVisibilityPermission('Services', $current_user->id, 'unit_price') == '0')
|
||||
$list_body .= '<td>'.$unit_price.'</td>';
|
||||
|
||||
$list_body .='<td>';
|
||||
if(isPermitted("PriceBooks","EditView","") == 'yes')
|
||||
$list_body .= '<input type="text" name="'.$field_name.'" style="visibility:hidden;" id="'.$field_name.'">';
|
||||
else
|
||||
$list_body .= '<input type="text" name="'.$field_name.'" style="visibility:hidden;" readonly id="'.$field_name.'">';
|
||||
$list_body .= '</td></tr>';
|
||||
}
|
||||
|
||||
$smarty->assign("UNIT_PRICE_ARRAY",implode(",",$unit_price_array));
|
||||
$smarty->assign("FIELD_NAME_ARRAY",implode(",",$field_name_array));
|
||||
|
||||
if($order_by !='')
|
||||
$url_string .="&order_by=".$order_by;
|
||||
if($sorder !='')
|
||||
$url_string .="&sorder=".$sorder;
|
||||
|
||||
$smarty->assign("LISTENTITY", $list_body);
|
||||
$smarty->assign("CATEGORY", $parenttab);
|
||||
|
||||
$smarty->display("AddProductsToPriceBook.tpl");
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,86 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('user_privileges/default_module_view.php');
|
||||
|
||||
global $mod_strings, $app_strings, $currentModule, $current_user, $theme, $singlepane_view;
|
||||
|
||||
$category = getParentTab();
|
||||
$action = vtlib_purify($_REQUEST['action']);
|
||||
$record = vtlib_purify($_REQUEST['record']);
|
||||
$isduplicate = vtlib_purify($_REQUEST['isDuplicate']);
|
||||
$parenttab = getParentTab();
|
||||
|
||||
if($singlepane_view == 'true' && $action == 'CallRelatedList') {
|
||||
header("Location:index.php?action=DetailView&module=$currentModule&record=$record&parenttab=$parenttab");
|
||||
} else {
|
||||
|
||||
$tool_buttons = Button_Check($currentModule);
|
||||
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
if($record != '') {
|
||||
$focus->retrieve_entity_info($record, $currentModule);
|
||||
$focus->id = $record;
|
||||
$service_base_currency = getProductBaseCurrency($focus->id,$currentModule);
|
||||
} else {
|
||||
$service_base_currency = fetchCurrency($current_user->id);
|
||||
}
|
||||
|
||||
$smarty = new vtigerCRM_Smarty;
|
||||
|
||||
if($isduplicate == 'true') $focus->id = '';
|
||||
if(isset($_REQUEST['mode']) && $_REQUEST['mode'] != ' ') $smarty->assign("OP_MODE",vtlib_purify($_REQUEST['mode']));
|
||||
if(!$_SESSION['rlvs'][$currentModule]) unset($_SESSION['rlvs']);
|
||||
|
||||
// Identify this module as custom module.
|
||||
$smarty->assign('CUSTOM_MODULE', true);
|
||||
|
||||
$smarty->assign('APP', $app_strings);
|
||||
$smarty->assign('MOD', $mod_strings);
|
||||
$smarty->assign('MODULE', $currentModule);
|
||||
// TODO: Update Single Module Instance name here.
|
||||
$smarty->assign('SINGLE_MOD', getTranslatedString($currentModule));
|
||||
$smarty->assign('CATEGORY', $category);
|
||||
$smarty->assign('IMAGE_PATH', "themes/$theme/images/");
|
||||
$smarty->assign('THEME', $theme);
|
||||
$smarty->assign('ID', $focus->id);
|
||||
$smarty->assign('MODE', $focus->mode);
|
||||
$smarty->assign('CHECK', $tool_buttons);
|
||||
|
||||
$smarty->assign('NAME', $focus->column_fields[$focus->def_detailview_recname]);
|
||||
$smarty->assign('UPDATEINFO',updateInfo($focus->id));
|
||||
|
||||
$smarty->assign("CURRENCY_ID",$service_base_currency);
|
||||
|
||||
// Module Sequence Numbering
|
||||
$mod_seq_field = getModuleSequenceField($currentModule);
|
||||
if ($mod_seq_field != null) {
|
||||
$mod_seq_id = $focus->column_fields[$mod_seq_field['name']];
|
||||
} else {
|
||||
$mod_seq_id = $focus->id;
|
||||
}
|
||||
$smarty->assign('MOD_SEQ_ID', $mod_seq_id);
|
||||
// END
|
||||
|
||||
$related_array = getRelatedLists($currentModule, $focus);
|
||||
$smarty->assign('RELATEDLISTS', $related_array);
|
||||
|
||||
require_once('include/ListView/RelatedListViewSession.php');
|
||||
if(!empty($_REQUEST['selected_header']) && !empty($_REQUEST['relation_id'])) {
|
||||
$relationId = vtlib_purify($_REQUEST['relation_id']);
|
||||
RelatedListViewSession::addRelatedModuleToSession($relationId,
|
||||
vtlib_purify($_REQUEST['selected_header']));
|
||||
}
|
||||
$open_related_modules = RelatedListViewSession::getRelatedModulesFromSession();
|
||||
$smarty->assign("SELECTEDHEADERS", $open_related_modules);
|
||||
|
||||
$smarty->display('RelatedLists.tpl');
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
include('modules/CustomView/index.php');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,31 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
global $currentModule;
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
|
||||
$record = vtlib_purify($_REQUEST['record']);
|
||||
$module = vtlib_purify($_REQUEST['module']);
|
||||
$return_module = vtlib_purify($_REQUEST['return_module']);
|
||||
$return_action = vtlib_purify($_REQUEST['return_action']);
|
||||
$return_id = vtlib_purify($_REQUEST['return_id']);
|
||||
|
||||
//Added to fix 4600
|
||||
$url = getBasic_Advance_SearchURL();
|
||||
|
||||
DeleteEntity($currentModule, $return_module, $focus, $record, $return_id);
|
||||
|
||||
$parenttab = getParentTab();
|
||||
|
||||
if(isset($_REQUEST['activity_mode']))
|
||||
$url .= '&activity_mode='.vtlib_purify($_REQUEST['activity_mode']);
|
||||
|
||||
header("Location: index.php?module=$return_module&action=$return_action&record=$return_id&parenttab=$parenttab&relmodule=$module".$url);
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
|
||||
global $adb;
|
||||
global $log;
|
||||
$return_id = vtlib_purify($_REQUEST['return_id']);
|
||||
$record = vtlib_purify($_REQUEST['record']);
|
||||
$return_module = vtlib_purify($_REQUEST['return_module']);
|
||||
$return_action = vtlib_purify($_REQUEST['return_action']);
|
||||
|
||||
if($return_action !='' && $return_module == "PriceBooks" && $return_action == "CallRelatedList") {
|
||||
$log->info("Products :: Deleting Price Book - Delete from PriceBook RelatedList");
|
||||
$query = "delete from vtiger_pricebookproductrel where pricebookid=? and productid=?";
|
||||
$adb->pquery($query, array($return_id, $record));
|
||||
} else {
|
||||
$log->info("Products :: Deleting Price Book");
|
||||
$query = "delete from vtiger_pricebookproductrel where pricebookid=? and productid=?";
|
||||
$adb->pquery($query, array($record, $return_id));
|
||||
}
|
||||
|
||||
header("Location: index.php?module=".$return_module."&action=".$return_module.
|
||||
"Ajax&file=$return_action&ajax=true&record=".$return_id);
|
||||
?>
|
||||
@@ -0,0 +1,124 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('user_privileges/default_module_view.php');
|
||||
|
||||
global $mod_strings, $app_strings, $currentModule, $current_user, $theme, $singlepane_view;
|
||||
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
|
||||
$tool_buttons = Button_Check($currentModule);
|
||||
$smarty = new vtigerCRM_Smarty();
|
||||
|
||||
$record = $_REQUEST['record'];
|
||||
$isduplicate = vtlib_purify($_REQUEST['isDuplicate']);
|
||||
$tabid = getTabid($currentModule);
|
||||
$category = getParentTab($currentModule);
|
||||
|
||||
if($record != '') {
|
||||
$focus->id = $record;
|
||||
$focus->retrieve_entity_info($record, $currentModule);
|
||||
}
|
||||
if($isduplicate == 'true') $focus->id = '';
|
||||
|
||||
// Identify this module as custom module.
|
||||
$smarty->assign('CUSTOM_MODULE', true);
|
||||
|
||||
$smarty->assign('APP', $app_strings);
|
||||
$smarty->assign('MOD', $mod_strings);
|
||||
$smarty->assign('MODULE', $currentModule);
|
||||
// TODO: Update Single Module Instance name here.
|
||||
$smarty->assign('SINGLE_MOD', 'SINGLE_'.$currentModule);
|
||||
$smarty->assign('CATEGORY', $category);
|
||||
$smarty->assign('IMAGE_PATH', "themes/$theme/images/");
|
||||
$smarty->assign('THEME', $theme);
|
||||
$smarty->assign('ID', $focus->id);
|
||||
$smarty->assign('MODE', $focus->mode);
|
||||
|
||||
$recordName = array_values(getEntityName($currentModule, $focus->id));
|
||||
$recordName = $recordName[0];
|
||||
$smarty->assign('NAME', $recordName);
|
||||
$smarty->assign('UPDATEINFO',updateInfo($focus->id));
|
||||
|
||||
// Module Sequence Numbering
|
||||
$mod_seq_field = getModuleSequenceField($currentModule);
|
||||
if ($mod_seq_field != null) {
|
||||
$mod_seq_id = $focus->column_fields[$mod_seq_field['name']];
|
||||
} else {
|
||||
$mod_seq_id = $focus->id;
|
||||
}
|
||||
$smarty->assign('MOD_SEQ_ID', $mod_seq_id);
|
||||
// END
|
||||
|
||||
//Added to display the Tax informations
|
||||
$tax_details = getTaxDetailsForProduct($focus->id);
|
||||
|
||||
for($i=0;$i<count($tax_details);$i++)
|
||||
{
|
||||
$tax_details[$i]['percentage'] = getProductTaxPercentage($tax_details[$i]['taxname'],$focus->id);
|
||||
}
|
||||
$smarty->assign("TAX_DETAILS", $tax_details);
|
||||
|
||||
$price_details = getPriceDetailsForProduct($focus->id, $focus->unit_price, 'available_associated',$currentModule);
|
||||
$smarty->assign("PRICE_DETAILS", $price_details);
|
||||
|
||||
$smarty->assign('IS_REL_LIST',isPresentRelatedLists($currentModule));
|
||||
|
||||
$validationArray = split_validationdataArray(getDBValidationData($focus->tab_name, $tabid));
|
||||
$smarty->assign('VALIDATION_DATA_FIELDNAME',$validationArray['fieldname']);
|
||||
$smarty->assign('VALIDATION_DATA_FIELDDATATYPE',$validationArray['datatype']);
|
||||
$smarty->assign('VALIDATION_DATA_FIELDLABEL',$validationArray['fieldlabel']);
|
||||
|
||||
$smarty->assign('EDIT_PERMISSION', isPermitted($currentModule, 'EditView', $record));
|
||||
$smarty->assign('CHECK', $tool_buttons);
|
||||
|
||||
if(PerformancePrefs::getBoolean('DETAILVIEW_RECORD_NAVIGATION', true) && isset($_SESSION[$currentModule.'_listquery'])){
|
||||
$recordNavigationInfo = ListViewSession::getListViewNavigation($focus->id);
|
||||
VT_detailViewNavigation($smarty,$recordNavigationInfo,$focus->id);
|
||||
}
|
||||
|
||||
$smarty->assign('IS_REL_LIST', isPresentRelatedLists($currentModule));
|
||||
$smarty->assign('SinglePane_View', $singlepane_view);
|
||||
|
||||
if($singlepane_view == 'true') {
|
||||
$related_array = getRelatedLists($currentModule,$focus);
|
||||
$smarty->assign("RELATEDLISTS", $related_array);
|
||||
|
||||
require_once('include/ListView/RelatedListViewSession.php');
|
||||
if(!empty($_REQUEST['selected_header']) && !empty($_REQUEST['relation_id'])) {
|
||||
RelatedListViewSession::addRelatedModuleToSession(vtlib_purify($_REQUEST['relation_id']),
|
||||
vtlib_purify($_REQUEST['selected_header']));
|
||||
}
|
||||
$open_related_modules = RelatedListViewSession::getRelatedModulesFromSession();
|
||||
$smarty->assign("SELECTEDHEADERS", $open_related_modules);
|
||||
}
|
||||
|
||||
if(isPermitted($currentModule, 'EditView', $record) == 'yes')
|
||||
$smarty->assign('EDIT_DUPLICATE', 'permitted');
|
||||
if(isPermitted($currentModule, 'Delete', $record) == 'yes')
|
||||
$smarty->assign('DELETE', 'permitted');
|
||||
|
||||
$smarty->assign('BLOCKS', getBlocks($currentModule,'detail_view','',$focus->column_fields));
|
||||
|
||||
// Gather the custom link information to display
|
||||
include_once('vtlib/Vtiger/Link.php');
|
||||
$customlink_params = Array('MODULE'=>$currentModule, 'RECORD'=>$focus->id, 'ACTION'=>vtlib_purify($_REQUEST['action']));
|
||||
$smarty->assign('CUSTOM_LINKS', Vtiger_Link::getAllByType(getTabid($currentModule), Array('DETAILVIEWBASIC','DETAILVIEW','DETAILVIEWWIDGET'), $customlink_params));
|
||||
// END
|
||||
|
||||
// Record Change Notification
|
||||
$focus->markAsViewed($current_user->id);
|
||||
// END
|
||||
|
||||
$smarty->assign('DETAILVIEW_AJAX_EDIT', PerformancePrefs::getBoolean('DETAILVIEW_AJAX_EDIT', true));
|
||||
|
||||
$smarty->display("Inventory/InventoryDetailView.tpl");
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,41 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
global $currentModule;
|
||||
$modObj = CRMEntity::getInstance($currentModule);
|
||||
|
||||
$ajaxaction = $_REQUEST["ajxaction"];
|
||||
if($ajaxaction == 'DETAILVIEW')
|
||||
{
|
||||
$crmid = $_REQUEST['recordid'];
|
||||
$tablename = $_REQUEST['tableName'];
|
||||
$fieldname = $_REQUEST['fldName'];
|
||||
$fieldvalue = utf8RawUrlDecode($_REQUEST['fieldValue']);
|
||||
if($crmid != '')
|
||||
{
|
||||
$modObj->retrieve_entity_info($crmid, $currentModule);
|
||||
$modObj->column_fields[$fieldname] = $fieldvalue;
|
||||
$modObj->id = $crmid;
|
||||
$modObj->mode = 'edit';
|
||||
$modObj->save($currentModule);
|
||||
if($modObj->id != '')
|
||||
{
|
||||
echo ':#:SUCCESS';
|
||||
}else
|
||||
{
|
||||
echo ':#:FAILURE';
|
||||
}
|
||||
}else
|
||||
{
|
||||
echo ':#:FAILURE';
|
||||
}
|
||||
} elseif($ajaxaction == "LOADRELATEDLIST" || $ajaxaction == "DISABLEMODULE"){
|
||||
require_once 'include/ListView/RelatedListViewContents.php';
|
||||
}
|
||||
?>
|
||||
@@ -0,0 +1,72 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
|
||||
global $mod_strings;
|
||||
global $app_strings;
|
||||
global $theme;
|
||||
$theme_path="themes/".$theme."/";
|
||||
$image_path=$theme_path."images/";
|
||||
|
||||
if(isset($_REQUEST['return_module']) && $_REQUEST['return_module']=="PriceBooks")
|
||||
{
|
||||
$pricebook_id = vtlib_purify($_REQUEST['pricebook_id']);
|
||||
$product_id = vtlib_purify($_REQUEST['record']);
|
||||
$listprice = vtlib_purify($_REQUEST['listprice']);
|
||||
$return_action = "CallRelatedList";
|
||||
$return_id = vtlib_purify($_REQUEST['pricebook_id']);
|
||||
}
|
||||
else
|
||||
{
|
||||
$product_id = vtlib_purify($_REQUEST['record']);
|
||||
$pricebook_id = vtlib_purify($_REQUEST['pricebook_id']);
|
||||
$listprice = getListPrice($product_id,$pricebook_id);
|
||||
$return_action = "CallRelatedList";
|
||||
$return_id = vtlib_purify($_REQUEST['pricebook_id']);
|
||||
}
|
||||
$output='';
|
||||
$output ='<div id="roleLay" style="display:block;" class="layerPopup">
|
||||
<form action="index.php" name="index" onSubmit="if(verify_data(index) == true) gotoUpdateListPrice('.$return_id.','.$pricebook_id.','.$product_id.'); else document.getElementById(\'roleLay\').style.display=\'inline\'; return false;" >
|
||||
<input type="hidden" name="module" value="Products">
|
||||
<input type="hidden" name="action" value="UpdateListPrice">
|
||||
<input type="hidden" name="record" value="'.$return_id.'">
|
||||
<input type="hidden" name="pricebook_id" value="'.$pricebook_id.'">
|
||||
<input type="hidden" name="product_id" value="'.$product_id.'">
|
||||
<table border=0 cellspacing=0 cellpadding=5 width=100% class=layerHeadingULine>
|
||||
<tr>
|
||||
<td class=layerPopupHeading " align="left">'.$mod_strings["LBL_EDITLISTPRICE"].'</td>
|
||||
<td align="right" class="small"><img src="' . vtiger_imageurl('close.gif', $theme) . '" border=0 alt="'.$app_strings["LBL_CLOSE"].'" title="'.$app_strings["LBL_CLOSE"].'" style="cursor:pointer" onClick="document.getElementById(\'editlistprice\').style.display=\'none\';"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<table border=0 cellspacing=0 cellpadding=5 width=95% align=center>
|
||||
<tr>
|
||||
<td class="small">
|
||||
<table border=0 celspacing=0 cellpadding=5 width=100% align=center bgcolor=white>
|
||||
<tr>
|
||||
<td width="50%" class="cellLabel small"><b>'.$mod_strings["LBL_EDITLISTPRICE"].'</b></td>
|
||||
<td width="50%" class="cellText small"><input class="dataInput" type="text" id="list_price" name="list_price" value="'.$listprice.'" /></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<table border=0 cellspacing=0 cellpadding=5 width=100% class="layerPopupTransport">
|
||||
<tr>
|
||||
<td colspan="3" align="center" class="small">
|
||||
<input type="submit" name="button" value="'.$app_strings["LBL_SAVE_BUTTON_LABEL"].'" class="crmbutton small save">
|
||||
<input title="'.$app_strings["LBL_CANCEL_BUTTON_LABEL"].'" accessKey="'.$app_strings["LBL_CANCEL_BUTTON_KEY"].'" class="crmbutton small cancel" onClick="document.getElementById(\'editlistprice\').style.display=\'none\';" type="button" name="button" value="'.$app_strings["LBL_CANCEL_BUTTON_LABEL"].'">
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</form>
|
||||
</div>';
|
||||
|
||||
echo $output;
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,182 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
global $app_strings, $mod_strings, $current_language, $currentModule, $theme;
|
||||
|
||||
require_once('Smarty_setup.php');
|
||||
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
$smarty = new vtigerCRM_Smarty();
|
||||
|
||||
$category = getParentTab($currentModule);
|
||||
$record = $_REQUEST['record'];
|
||||
$isduplicate = vtlib_purify($_REQUEST['isDuplicate']);
|
||||
|
||||
//added to fix the issue4600
|
||||
$searchurl = getBasic_Advance_SearchURL();
|
||||
$smarty->assign("SEARCH", $searchurl);
|
||||
//4600 ends
|
||||
|
||||
if($record) {
|
||||
$focus->id = $record;
|
||||
$focus->mode = 'edit';
|
||||
$focus->retrieve_entity_info($record, $currentModule);
|
||||
$service_base_currency = getProductBaseCurrency($focus->id,$currentModule);
|
||||
} else {
|
||||
$service_base_currency = fetchCurrency($current_user->id);
|
||||
}
|
||||
|
||||
if($isduplicate == 'true') {
|
||||
$focus->id = '';
|
||||
$focus->mode = '';
|
||||
}
|
||||
if(empty($_REQUEST['record']) && $focus->mode != 'edit'){
|
||||
setObjectValuesFromRequest($focus);
|
||||
}
|
||||
|
||||
//needed when creating a new service with a default vtiger_vendor name to passed
|
||||
if (isset($_REQUEST['name']) && is_null($focus->name)) {
|
||||
$focus->name = $_REQUEST['name'];
|
||||
}
|
||||
|
||||
$disp_view = getView($focus->mode);
|
||||
if($disp_view == 'edit_view') {
|
||||
$smarty->assign('BLOCKS', getBlocks($currentModule, $disp_view, $focus->mode, $focus->column_fields));
|
||||
} else {
|
||||
$bas_block = getBlocks($currentModule,$disp_view,$mode,$focus->column_fields,'BAS');
|
||||
$adv_block = getBlocks($currentModule,$disp_view,$mode,$focus->column_fields,'ADV');
|
||||
|
||||
$blocks['basicTab'] = $bas_block;
|
||||
if(is_array($adv_block))
|
||||
$blocks['moreTab'] = $adv_block;
|
||||
|
||||
$smarty->assign("BLOCKS",$blocks);
|
||||
$smarty->assign("BLOCKS_COUNT",count($blocks));
|
||||
}
|
||||
|
||||
$smarty->assign('OP_MODE',$disp_view);
|
||||
$smarty->assign('APP', $app_strings);
|
||||
$smarty->assign('MOD', $mod_strings);
|
||||
$smarty->assign('MODULE', $currentModule);
|
||||
// TODO: Update Single Module Instance name here.
|
||||
$smarty->assign('SINGLE_MOD', getTranslatedString('SINGLE_'.$currentModule));
|
||||
$smarty->assign('CATEGORY', $category);
|
||||
$smarty->assign("THEME", $theme);
|
||||
$smarty->assign('IMAGE_PATH', "themes/$theme/images/");
|
||||
$smarty->assign('ID', $focus->id);
|
||||
$smarty->assign('MODE', $focus->mode);
|
||||
|
||||
$smarty->assign('CHECK', Button_Check($currentModule));
|
||||
$smarty->assign('DUPLICATE', $isduplicate);
|
||||
|
||||
if($focus->mode == 'edit' || $isduplicate) {
|
||||
$recordName = array_values(getEntityName($currentModule, $record));
|
||||
$recordName = $recordName[0];
|
||||
$smarty->assign('NAME', $recordName);
|
||||
$smarty->assign('UPDATEINFO',updateInfo($record));
|
||||
}
|
||||
|
||||
if(isset($_REQUEST['return_module'])) $smarty->assign("RETURN_MODULE", vtlib_purify($_REQUEST['return_module']));
|
||||
if(isset($_REQUEST['return_action'])) $smarty->assign("RETURN_ACTION", vtlib_purify($_REQUEST['return_action']));
|
||||
if(isset($_REQUEST['return_id'])) $smarty->assign("RETURN_ID", vtlib_purify($_REQUEST['return_id']));
|
||||
if (isset($_REQUEST['return_viewname'])) $smarty->assign("RETURN_VIEWNAME", vtlib_purify($_REQUEST['return_viewname']));
|
||||
|
||||
// Field Validation Information
|
||||
$tabid = getTabid($currentModule);
|
||||
$validationData = getDBValidationData($focus->tab_name,$tabid);
|
||||
$validationArray = split_validationdataArray($validationData);
|
||||
|
||||
$smarty->assign("VALIDATION_DATA_FIELDNAME",$validationArray['fieldname']);
|
||||
$smarty->assign("VALIDATION_DATA_FIELDDATATYPE",$validationArray['datatype']);
|
||||
$smarty->assign("VALIDATION_DATA_FIELDLABEL",$validationArray['fieldlabel']);
|
||||
|
||||
// In case you have a date field
|
||||
$smarty->assign("CALENDAR_LANG", $app_strings['LBL_JSCALENDAR_LANG']);
|
||||
|
||||
global $adb;
|
||||
// Module Sequence Numbering
|
||||
$mod_seq_field = getModuleSequenceField($currentModule);
|
||||
if($focus->mode != 'edit' && $mod_seq_field != null) {
|
||||
$autostr = getTranslatedString('MSG_AUTO_GEN_ON_SAVE');
|
||||
$mod_seq_string = $adb->pquery("SELECT prefix, cur_id from vtiger_modentity_num where semodule = ? and active=1",array($currentModule));
|
||||
$mod_seq_prefix = $adb->query_result($mod_seq_string,0,'prefix');
|
||||
$mod_seq_no = $adb->query_result($mod_seq_string,0,'cur_id');
|
||||
if($adb->num_rows($mod_seq_string) == 0 || $focus->checkModuleSeqNumber($focus->table_name, $mod_seq_field['column'], $mod_seq_prefix.$mod_seq_no))
|
||||
echo '<br><font color="#FF0000"><b>'. getTranslatedString('LBL_DUPLICATE'). ' '. getTranslatedString($mod_seq_field['label'])
|
||||
.' - '. getTranslatedString('LBL_CLICK') .' <a href="index.php?module=Settings&action=CustomModEntityNo&parenttab=Settings&selmodule='.$currentModule.'">'.getTranslatedString('LBL_HERE').'</a> '
|
||||
. getTranslatedString('LBL_TO_CONFIGURE'). ' '. getTranslatedString($mod_seq_field['label']) .'</b></font>';
|
||||
else
|
||||
$smarty->assign("MOD_SEQ_ID",$autostr);
|
||||
} else {
|
||||
$smarty->assign("MOD_SEQ_ID", $focus->column_fields[$mod_seq_field['name']]);
|
||||
}
|
||||
// END
|
||||
|
||||
// Gather the help information associated with fields
|
||||
$smarty->assign('FIELDHELPINFO', vtlib_getFieldHelpInfo($currentModule));
|
||||
// END
|
||||
|
||||
//Tax handling (get the available taxes only) - starts
|
||||
if($focus->mode == 'edit')
|
||||
{
|
||||
$retrieve_taxes = true;
|
||||
$serviceid = $focus->id;
|
||||
$tax_details = getTaxDetailsForProduct($serviceid,'available_associated');
|
||||
}
|
||||
elseif($_REQUEST['isDuplicate'] == 'true')
|
||||
{
|
||||
$retrieve_taxes = true;
|
||||
$serviceid = $_REQUEST['record'];
|
||||
$tax_details = getTaxDetailsForProduct($serviceid,'available_associated');
|
||||
}
|
||||
else {
|
||||
$tax_details = getAllTaxes('available');
|
||||
$smarty->assign("PROD_MODE", "create");
|
||||
}
|
||||
|
||||
for($i=0;$i<count($tax_details);$i++)
|
||||
{
|
||||
$tax_details[$i]['check_name'] = $tax_details[$i]['taxname'].'_check';
|
||||
$tax_details[$i]['check_value'] = 0;
|
||||
}
|
||||
|
||||
//For Edit and Duplicate we have to retrieve the service associated taxes and show them
|
||||
if($retrieve_taxes)
|
||||
{
|
||||
for($i=0;$i<count($tax_details);$i++)
|
||||
{
|
||||
$tax_value = getProductTaxPercentage($tax_details[$i]['taxname'],$serviceid);
|
||||
$tax_details[$i]['percentage'] = $tax_value;
|
||||
$tax_details[$i]['check_value'] = 1;
|
||||
//if the tax is not associated with the service then we should get the default value and unchecked
|
||||
if($tax_value == '')
|
||||
{
|
||||
$tax_details[$i]['check_value'] = 0;
|
||||
$tax_details[$i]['percentage'] = getTaxPercentage($tax_details[$i]['taxname']);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$smarty->assign("TAX_DETAILS", $tax_details);
|
||||
//Tax handling - ends
|
||||
|
||||
$unit_price = $focus->column_fields['unit_price'];
|
||||
$price_details = getPriceDetailsForProduct($serviceid, $unit_price, 'available',$currentModule);
|
||||
$smarty->assign("PRICE_DETAILS", $price_details);
|
||||
|
||||
$base_currency = 'curname' . $service_base_currency;
|
||||
$smarty->assign("BASE_CURRENCY", $base_currency);
|
||||
|
||||
if($focus->mode == 'edit') {
|
||||
$smarty->display('Inventory/InventoryEditView.tpl');
|
||||
} else {
|
||||
$smarty->display('Inventory/InventoryCreateView.tpl');
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('include/utils/ExportRecords.php');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,106 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('include/utils/utils.php');
|
||||
require_once('database/DatabaseConnection.php');
|
||||
|
||||
global $mod_strings, $app_strings, $app_list_strings;
|
||||
global $current_language, $currentModule, $current_userid, $theme;
|
||||
|
||||
require_once('themes/'.$theme.'/layout_utils.php');
|
||||
|
||||
$req_module = vtlib_purify($_REQUEST['module']);
|
||||
$focus = CRMEntity::getInstance($req_module);
|
||||
|
||||
$return_module=vtlib_purify($_REQUEST['module']);
|
||||
$delete_idstring=vtlib_purify($_REQUEST['idlist']);
|
||||
$parenttab = getParenttab();
|
||||
|
||||
$smarty = new vtigerCRM_Smarty;
|
||||
|
||||
$ids_list = array();
|
||||
$errormsg = '';
|
||||
if(isset($_REQUEST['del_rec']))
|
||||
{
|
||||
$url = getBasic_Advance_SearchURL();
|
||||
$delete_id_array=explode(",",$delete_idstring,-1);
|
||||
|
||||
foreach ($delete_id_array as $id)
|
||||
{
|
||||
if(isPermitted($req_module,'Delete',$id) == 'yes') {
|
||||
$sql="update vtiger_crmentity set deleted=1 where crmid=?";
|
||||
$result = $adb->pquery($sql, array($id));
|
||||
DeleteEntity($req_module,$return_module,$focus,$id,"");
|
||||
}
|
||||
else {
|
||||
$ids_list[] = $id;
|
||||
}
|
||||
}
|
||||
if(count($ids_list) > 0) {
|
||||
$ret = getEntityName($req_module,$ids_list);
|
||||
if(count($ret) > 0)
|
||||
{
|
||||
$errormsg = implode(',',$ret);
|
||||
}
|
||||
echo "<table border='0' cellpadding='5' cellspacing='0' width='100%' height='450px'><tr><td align='center'>";
|
||||
echo "<div style='border: 3px solid rgb(153, 153, 153); background-color: rgb(255, 255, 255); width: 55%; position: relative; z-index: 10000000;'>
|
||||
|
||||
<table border='0' cellpadding='5' cellspacing='0' width='98%'>
|
||||
<tbody><tr>
|
||||
<td rowspan='2' width='11%'><img src='themes/$theme/images/denied.gif' ></td>
|
||||
<td style='border-bottom: 1px solid rgb(204, 204, 204);' nowrap='nowrap' width='70%'>
|
||||
<span class='genHeaderSmall'>$app_strings[LBL_DUP_PERMISSION] $req_module $errormsg</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='small' align='right' nowrap='nowrap'>
|
||||
<a href='javascript:window.location.reload();'>$app_strings[LBL_GO_BACK]</a><br>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</div>";
|
||||
echo "</td></tr></table>";
|
||||
exit;
|
||||
}
|
||||
}
|
||||
|
||||
include("include/saveMergeCriteria.php");
|
||||
$ret_arr=getDuplicateRecordsArr($req_module);
|
||||
|
||||
$fld_values=$ret_arr[0];
|
||||
$total_num_group=count($fld_values);
|
||||
$fld_name=$ret_arr[1];
|
||||
$ui_type=$ret_arr[2];
|
||||
|
||||
$smarty->assign("NAVIGATION",$ret_arr["navigation"]);//Added for page navigation
|
||||
$smarty->assign("MODULE",$req_module);
|
||||
$smarty->assign("NUM_GROUP",$total_num_group);
|
||||
$smarty->assign("FIELD_NAMES",$fld_name);
|
||||
$smarty->assign("CATEGORY",$parenttab);
|
||||
$smarty->assign("ALL_VALUES",$fld_values);
|
||||
if(isPermitted($req_module,'Delete','') == 'yes')
|
||||
$button_del = $app_strings['LBL_MASS_DELETE'];
|
||||
$smarty->assign("DELETE",$button_del);
|
||||
|
||||
$smarty->assign("MOD", return_module_language($current_language,$req_module));
|
||||
$smarty->assign("THEME", $theme);
|
||||
$smarty->assign("IMAGE_PATH",$image_path);
|
||||
$smarty->assign("APP", $app_strings);
|
||||
$smarty->assign("CMOD", $mod_strings);
|
||||
$smarty->assign("MODE",'view');
|
||||
if(isset($_REQUEST['button_view']))
|
||||
{
|
||||
$smarty->assign("VIEW",'true');
|
||||
}
|
||||
if(isset($_REQUEST['ajax']) && $_REQUEST['ajax'] != '')
|
||||
$smarty->display("FindDuplicateAjax.tpl");
|
||||
else
|
||||
$smarty->display('FindDuplicateDisplay.tpl');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,12 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('modules/Import/index.php');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
/*********************************************************************************
|
||||
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
********************************************************************************/
|
||||
|
||||
global $theme, $log;
|
||||
$theme_path="themes/".$theme."/";
|
||||
$image_path=$theme_path."images/";
|
||||
|
||||
$currencyid = $_REQUEST['currencyid'];
|
||||
$products_list = $_REQUEST['productsList'];
|
||||
|
||||
$product_ids = explode("::", $products_list);
|
||||
|
||||
$price_list = array();
|
||||
|
||||
if (count($product_ids) > 0) {
|
||||
$product_prices = getPricesForProducts($currencyid, $product_ids);
|
||||
}
|
||||
|
||||
// To get the Price Values in the same order as the Products
|
||||
for ($i=0;$i<count($product_ids);++$i) {
|
||||
$product_id = $product_ids[$i];
|
||||
$price_list[] = $product_prices[$product_id];
|
||||
}
|
||||
|
||||
$price_values = implode("::", $price_list);
|
||||
echo "SUCCESS$".$price_values;
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,68 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
|
||||
global $theme, $mod_strings, $app_strings;
|
||||
$theme_path="themes/".$theme."/";
|
||||
|
||||
$productid = vtlib_purify($_REQUEST['productid']);
|
||||
$rowid = vtlib_purify($_REQUEST['curr_row']);
|
||||
$product_total = vtlib_purify($_REQUEST['productTotal']);
|
||||
|
||||
$tax_details = getTaxDetailsForProduct($productid,'all');//we should pass available instead of all if we want to display only the available taxes.
|
||||
$associated_tax_count = count($tax_details);
|
||||
|
||||
|
||||
$tax_div = '
|
||||
<table width="100%" border="0" cellpadding="5" cellspacing="0" class="small" id="tax_table'.$rowid.'">
|
||||
<tr>
|
||||
<td id="tax_div_title'.$rowid.'" nowrap align="left" ><b>'.$app_strings['LABEL_SET_TAX_FOR'].' : '.$product_total.'</b></td>
|
||||
<td> </td>
|
||||
<td align="right"><img src="'. vtiger_imageurl('close.gif', $theme) .'" border="0" onClick="fnHidePopDiv(\'tax_div'.$rowid.'\')" style="cursor:pointer;"></td>
|
||||
</tr>
|
||||
';
|
||||
|
||||
$net_tax_total = 0.00;
|
||||
for($i=0,$j=$i+1;$i<count($tax_details);$i++,$j++)
|
||||
{
|
||||
$tax_name = $tax_details[$i]['taxname'];
|
||||
$tax_label = $tax_details[$i]['taxlabel'];
|
||||
$tax_percentage = $tax_details[$i]['percentage'];
|
||||
$tax_name_percentage = $tax_name."_percentage".$rowid;
|
||||
$tax_id_name = "hidden_tax".$j."_percentage".$rowid;//used to store the tax name, used in function callTaxCalc
|
||||
$tax_name_total = "popup_tax_row".$rowid;//$tax_name."_total".$rowid;
|
||||
$tax_total = $product_total*$tax_percentage/100.00;
|
||||
|
||||
$net_tax_total += $tax_total;
|
||||
$tax_div .= '
|
||||
<tr>
|
||||
<td align="left" class="lineOnTop">
|
||||
<input type="text" class="small" size="5" name="'.$tax_name_percentage.'" id="'.$tax_name_percentage.'" value="'.$tax_percentage.'" onBlur="calcCurrentTax(\''.$tax_name_percentage.'\','.$rowid.','.$i.');calcTotal();"> %
|
||||
<input type="hidden" id="'.$tax_id_name.'" value="'.$tax_name_percentage.'">
|
||||
</td>
|
||||
<td align="center" class="lineOnTop">'.$tax_label.'</td>
|
||||
<td align="right" class="lineOnTop">
|
||||
<input type="text" class="small" size="6" name="'.$tax_name_total.'" id="'.$tax_name_total.'" style="cursor:pointer;" value="'.$tax_total.'" readonly>
|
||||
</td>
|
||||
</tr>
|
||||
';
|
||||
}
|
||||
|
||||
$tax_div .= '</table>';
|
||||
|
||||
if($associated_tax_count == 0)
|
||||
{
|
||||
$tax_div .= '<div align="left" class="lineOnTop" width="100%">'.$mod_strings['LBL_NO_TAXES_ASSOCIATED'].'.</div>';
|
||||
}
|
||||
|
||||
$tax_div .= '<input type="hidden" id="hdnTaxTotal'.$rowid.'" name="hdnTaxTotal'.$rowid.'" value="'.$net_tax_total.'">';
|
||||
|
||||
echo $tax_div;
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,212 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
global $app_strings, $mod_strings, $current_language, $currentModule, $theme;
|
||||
global $list_max_entries_per_page;
|
||||
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('include/ListView/ListView.php');
|
||||
require_once('modules/CustomView/CustomView.php');
|
||||
require_once('include/DatabaseUtil.php');
|
||||
|
||||
checkFileAccess("modules/$currentModule/$currentModule.php");
|
||||
require_once("modules/$currentModule/$currentModule.php");
|
||||
|
||||
$category = getParentTab();
|
||||
$url_string = '';
|
||||
|
||||
$tool_buttons = Button_Check($currentModule);
|
||||
$list_buttons = Array();
|
||||
|
||||
if(isPermitted($currentModule,'Delete','') == 'yes') $list_buttons['del'] = $app_strings[LBL_MASS_DELETE];
|
||||
if(isPermitted($currentModule,'EditView','') == 'yes') {
|
||||
$list_buttons['mass_edit'] = $app_strings[LBL_MASS_EDIT];
|
||||
// Mass Edit could be used to change the owner as well!
|
||||
//$list_buttons['c_owner'] = $app_strings[LBL_CHANGE_OWNER];
|
||||
}
|
||||
|
||||
$focus = new $currentModule();
|
||||
$focus->initSortbyField($currentModule);
|
||||
$sorder = $focus->getSortOrder();
|
||||
$order_by = $focus->getOrderBy();
|
||||
|
||||
$_SESSION[$currentModule."_Order_By"] = $order_by;
|
||||
$_SESSION[$currentModule."_Sort_Order"]=$sorder;
|
||||
|
||||
$smarty = new vtigerCRM_Smarty();
|
||||
|
||||
// Identify this module as custom module.
|
||||
$smarty->assign('CUSTOM_MODULE', true);
|
||||
|
||||
$smarty->assign('MOD', $mod_strings);
|
||||
$smarty->assign('APP', $app_strings);
|
||||
$smarty->assign('MODULE', $currentModule);
|
||||
$smarty->assign('SINGLE_MOD', getTranslatedString('SINGLE_'.$currentModule));
|
||||
$smarty->assign('CATEGORY', $category);
|
||||
$smarty->assign('BUTTONS', $list_buttons);
|
||||
$smarty->assign('CHECK', $tool_buttons);
|
||||
$smarty->assign("THEME", $theme);
|
||||
$smarty->assign('IMAGE_PATH', "themes/$theme/images/");
|
||||
|
||||
$smarty->assign('CHANGE_OWNER', getUserslist());
|
||||
$smarty->assign('CHANGE_GROUP_OWNER', getGroupslist());
|
||||
|
||||
// Custom View
|
||||
$customView = new CustomView($currentModule);
|
||||
$viewid = $customView->getViewId($currentModule);
|
||||
$customview_html = $customView->getCustomViewCombo($viewid);
|
||||
$viewinfo = $customView->getCustomViewByCvid($viewid);
|
||||
|
||||
// Feature available from 5.1
|
||||
if(method_exists($customView, 'isPermittedChangeStatus')) {
|
||||
// Approving or Denying status-public by the admin in CustomView
|
||||
$statusdetails = $customView->isPermittedChangeStatus($viewinfo['status']);
|
||||
|
||||
// To check if a user is able to edit/delete a CustomView
|
||||
$edit_permit = $customView->isPermittedCustomView($viewid,'EditView',$currentModule);
|
||||
$delete_permit = $customView->isPermittedCustomView($viewid,'Delete',$currentModule);
|
||||
|
||||
$smarty->assign("CUSTOMVIEW_PERMISSION",$statusdetails);
|
||||
$smarty->assign("CV_EDIT_PERMIT",$edit_permit);
|
||||
$smarty->assign("CV_DELETE_PERMIT",$delete_permit);
|
||||
}
|
||||
// END
|
||||
|
||||
$smarty->assign("VIEWID", $viewid);
|
||||
|
||||
if($viewinfo['viewname'] == 'All') $smarty->assign('ALL', 'All');
|
||||
|
||||
if($viewid ==0)
|
||||
{
|
||||
echo "<table border='0' cellpadding='5' cellspacing='0' width='100%' height='450px'><tr><td align='center'>";
|
||||
echo "<div style='border: 3px solid rgb(153, 153, 153); background-color: rgb(255, 255, 255); width: 55%; position: relative; z-index: 10000000;'>
|
||||
|
||||
<table border='0' cellpadding='5' cellspacing='0' width='98%'>
|
||||
<tbody><tr>
|
||||
<td rowspan='2' width='11%'><img src='". vtiger_imageurl('denied.gif', $theme) ."' ></td>
|
||||
<td style='border-bottom: 1px solid rgb(204, 204, 204);' nowrap='nowrap' width='70%'><span clas
|
||||
s='genHeaderSmall'>$app_strings[LBL_PERMISSION]</span></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class='small' align='right' nowrap='nowrap'>
|
||||
<a href='javascript:window.history.back();'>$app_strings[LBL_GO_BACK]</a><br>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody></table>
|
||||
</div>";
|
||||
echo "</td></tr></table>";
|
||||
exit;
|
||||
}
|
||||
|
||||
global $current_user;
|
||||
$queryGenerator = new QueryGenerator($currentModule, $current_user);
|
||||
if ($viewid != "0") {
|
||||
$queryGenerator->initForCustomViewById($viewid);
|
||||
} else {
|
||||
$queryGenerator->initForDefaultCustomView();
|
||||
}
|
||||
|
||||
// Enabling Module Search
|
||||
$url_string = '';
|
||||
if($_REQUEST['query'] == 'true') {
|
||||
$queryGenerator->addUserSearchConditions($_REQUEST);
|
||||
$ustring = getSearchURL($_REQUEST);
|
||||
$url_string .= "&query=true$ustring";
|
||||
$smarty->assign('SEARCH_URL', $url_string);
|
||||
}
|
||||
|
||||
$list_query = $queryGenerator->getQuery();
|
||||
$where = $queryGenerator->getConditionalWhere();
|
||||
if(isset($where) && $where != '') {
|
||||
$_SESSION['export_where'] = $where;
|
||||
} else {
|
||||
unset($_SESSION['export_where']);
|
||||
}
|
||||
|
||||
// Sorting
|
||||
if(!empty($order_by)) {
|
||||
if($order_by == 'smownerid') $list_query .= ' ORDER BY user_name '.$sorder;
|
||||
else {
|
||||
$tablename = getTableNameForField($currentModule, $order_by);
|
||||
$tablename = ($tablename != '')? ($tablename . '.') : '';
|
||||
$list_query .= ' ORDER BY ' . $tablename . $order_by . ' ' . $sorder;
|
||||
}
|
||||
}
|
||||
|
||||
//Postgres 8 fixes
|
||||
if( $adb->dbType == "pgsql")
|
||||
$list_query = fixPostgresQuery( $list_query, $log, 0);
|
||||
|
||||
if(PerformancePrefs::getBoolean('LISTVIEW_COMPUTE_PAGE_COUNT', false) === true){
|
||||
$count_result = $adb->query( mkCountQuery( $list_query));
|
||||
$noofrows = $adb->query_result($count_result,0,"count");
|
||||
}else{
|
||||
$noofrows = null;
|
||||
}
|
||||
|
||||
$queryMode = (isset($_REQUEST['query']) && $_REQUEST['query'] == 'true');
|
||||
$start = ListViewSession::getRequestCurrentPage($currentModule, $list_query, $viewid, $queryMode);
|
||||
|
||||
$navigation_array = VT_getSimpleNavigationValues($start,$list_max_entries_per_page,$noofrows);
|
||||
|
||||
$limit_start_rec = ($start-1) * $list_max_entries_per_page;
|
||||
|
||||
if( $adb->dbType == "pgsql")
|
||||
$list_result = $adb->pquery($list_query. " OFFSET $limit_start_rec LIMIT $list_max_entries_per_page", array());
|
||||
else
|
||||
$list_result = $adb->pquery($list_query. " LIMIT $limit_start_rec, $list_max_entries_per_page", array());
|
||||
|
||||
$recordListRangeMsg = getRecordRangeMessage($list_result, $limit_start_rec,$noofrows);
|
||||
$smarty->assign('recordListRange',$recordListRangeMsg);
|
||||
|
||||
$smarty->assign("CUSTOMVIEW_OPTION",$customview_html);
|
||||
|
||||
$navigationOutput = getTableHeaderSimpleNavigation($navigation_array, $url_string, $currentModule, 'index', $viewid);
|
||||
$smarty->assign("NAVIGATION", $navigationOutput);
|
||||
|
||||
$controller = new ListViewController($adb, $current_user, $queryGenerator);
|
||||
$listview_header = $controller->getListViewHeader($focus,$currentModule,$url_string,$sorder,
|
||||
$order_by);
|
||||
$listview_entries = $controller->getListViewEntries($focus,$currentModule,$list_result,
|
||||
$navigation_array);
|
||||
$listview_header_search = $controller->getBasicSearchFieldInfoList();
|
||||
|
||||
$smarty->assign('LISTHEADER', $listview_header);
|
||||
$smarty->assign('LISTENTITY', $listview_entries);
|
||||
$smarty->assign('SEARCHLISTHEADER',$listview_header_search);
|
||||
|
||||
// Module Search
|
||||
$alphabetical = AlphabeticalSearch($currentModule,'index',$focus->def_basicsearch_col,'true','basic','','','','',$viewid);
|
||||
$fieldnames = $controller->getAdvancedSearchOptionString();
|
||||
$criteria = getcriteria_options();
|
||||
$smarty->assign("ALPHABETICAL", $alphabetical);
|
||||
$smarty->assign("FIELDNAMES", $fieldnames);
|
||||
$smarty->assign("CRITERIA", $criteria);
|
||||
|
||||
$smarty->assign("AVALABLE_FIELDS", getMergeFields($currentModule,"available_fields"));
|
||||
$smarty->assign("FIELDS_TO_MERGE", getMergeFields($currentModule,"fileds_to_merge"));
|
||||
|
||||
//Added to select Multiple records in multiple pages
|
||||
$smarty->assign("SELECTEDIDS", vtlib_purify($_REQUEST['selobjs']));
|
||||
$smarty->assign("ALLSELECTEDIDS", vtlib_purify($_REQUEST['allselobjs']));
|
||||
$smarty->assign("CURRENT_PAGE_BOXES", implode(array_keys($listview_entries),";"));
|
||||
ListViewSession::setSessionQuery($currentModule,$list_query,$viewid);
|
||||
|
||||
// Gather the custom link information to display
|
||||
include_once('vtlib/Vtiger/Link.php');
|
||||
$customlink_params = Array('MODULE'=>$currentModule, 'ACTION'=>vtlib_purify($_REQUEST['action']), 'CATEGORY'=> $category);
|
||||
$smarty->assign('CUSTOM_LINKS', Vtiger_Link::getAllByType(getTabid($currentModule), Array('LISTVIEWBASIC','LISTVIEW'), $customlink_params));
|
||||
// END
|
||||
|
||||
if(isset($_REQUEST['ajax']) && $_REQUEST['ajax'] != '')
|
||||
$smarty->display("ListViewEntries.tpl");
|
||||
else
|
||||
$smarty->display('ListView.tpl');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+*******************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
*********************************************************************************/
|
||||
require_once 'include/ListView/ListViewPagging.php';
|
||||
?>
|
||||
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
|
||||
global $mod_strings,$app_strings,$theme,$currentModule,$current_user;
|
||||
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('include/utils/utils.php');
|
||||
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
$focus->mode = '';
|
||||
$mode = 'mass_edit';
|
||||
|
||||
$disp_view = getView($focus->mode);
|
||||
$idstring = $_REQUEST['idstring'];
|
||||
|
||||
$smarty = new vtigerCRM_Smarty;
|
||||
$smarty->assign('MODULE',$currentModule);
|
||||
$smarty->assign('APP',$app_strings);
|
||||
$smarty->assign('THEME', $theme);
|
||||
$smarty->assign('IMAGE_PATH', "themes/$theme/images/");
|
||||
$smarty->assign('IDS',$idstring);
|
||||
$smarty->assign('MASS_EDIT','1');
|
||||
$smarty->assign('BLOCKS',getBlocks($currentModule,$disp_view,$mode,$focus->column_fields,'',$focus->non_mass_edit_fields));
|
||||
$smarty->assign("CATEGORY",getParentTab());
|
||||
|
||||
// Field Validation Information
|
||||
$tabid = getTabid($currentModule);
|
||||
$validationData = getDBValidationData($focus->tab_name,$tabid);
|
||||
$validationArray = split_validationdataArray($validationData);
|
||||
|
||||
$smarty->assign("VALIDATION_DATA_FIELDNAME",$validationArray['fieldname']);
|
||||
$smarty->assign("VALIDATION_DATA_FIELDDATATYPE",$validationArray['datatype']);
|
||||
$smarty->assign("VALIDATION_DATA_FIELDLABEL",$validationArray['fieldlabel']);
|
||||
|
||||
$smarty->display('MassEditForm.tpl');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
/*+********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
********************************************************************************/
|
||||
|
||||
global $currentModule, $rstart;
|
||||
|
||||
$focus = CRMEntity::getInstance($currentModule);
|
||||
|
||||
$idlist= vtlib_purify($_REQUEST['massedit_recordids']);
|
||||
$viewid = vtlib_purify($_REQUEST['viewname']);
|
||||
$return_module = vtlib_purify($_REQUEST['massedit_module']);
|
||||
$return_action = 'index';
|
||||
|
||||
//Added to fix 4600
|
||||
$url = getBasic_Advance_SearchURL();
|
||||
|
||||
if(isset($_REQUEST['start']) && $_REQUEST['start']!=''){
|
||||
$rstart = "&start=".vtlib_purify($_REQUEST['start']);
|
||||
}
|
||||
|
||||
if(isset($idlist)) {
|
||||
$recordids = explode(';', $idlist);
|
||||
for($index = 0; $index < count($recordids); ++$index) {
|
||||
$recordid = $recordids[$index];
|
||||
if($recordid == '') continue;
|
||||
if(isPermitted($currentModule,'EditView',$recordid) == 'yes') {
|
||||
// Save each module record with update value.
|
||||
$focus->retrieve_entity_info($recordid, $currentModule);
|
||||
$focus->mode = 'edit';
|
||||
$focus->id = $recordid;
|
||||
foreach($focus->column_fields as $fieldname => $val)
|
||||
{
|
||||
if(isset($_REQUEST[$fieldname."_mass_edit_check"]))
|
||||
{
|
||||
if(is_array($_REQUEST[$fieldname]))
|
||||
$value = $_REQUEST[$fieldname];
|
||||
else
|
||||
$value = trim($_REQUEST[$fieldname]);
|
||||
$focus->column_fields[$fieldname] = $value;
|
||||
}
|
||||
else{
|
||||
$focus->column_fields[$fieldname] = decode_html($focus->column_fields[$fieldname]);
|
||||
}
|
||||
}
|
||||
$focus->save($currentModule);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
$parenttab = getParentTab();
|
||||
header("Location: index.php?module=$return_module&action=$return_action&parenttab=$parenttab$rstart");
|
||||
?>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('Popup.php');
|
||||
?>
|
||||
@@ -0,0 +1,134 @@
|
||||
<?php
|
||||
/*********************************************************************************
|
||||
** The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
*
|
||||
********************************************************************************/
|
||||
require_once('Smarty_setup.php');
|
||||
require_once('database/DatabaseConnection.php');
|
||||
require_once('modules/Users/Users.php');
|
||||
require_once('include/utils/utils.php');
|
||||
|
||||
$module = vtlib_purify($_REQUEST['module']);
|
||||
$focus = CRMEntity::getInstance($module);
|
||||
|
||||
global $mod_strings, $app_strings, $app_list_strings;
|
||||
global $current_language, $currentModule, $theme;
|
||||
global $adb;
|
||||
|
||||
$theme_path="themes/".$theme."/";
|
||||
$image_path=$theme_path."images/";
|
||||
|
||||
$mode = $_REQUEST['mergemode'];
|
||||
|
||||
if($mode == 'mergesave') {
|
||||
|
||||
$return_module=vtlib_purify($_REQUEST['return_module']);
|
||||
$action=vtlib_purify($_REQUEST['action']);
|
||||
$return_action=vtlib_purify($_REQUEST['return_action']);
|
||||
$parenttab=vtlib_purify($_REQUEST['parent']);
|
||||
$merge_id=vtlib_purify($_REQUEST['record']);
|
||||
$recordids=vtlib_purify($_REQUEST['pass_rec']);
|
||||
|
||||
$result = $adb->pquery("SELECT count(*) AS count FROM vtiger_crmentity WHERE crmid=? and deleted=0", array($merge_id));
|
||||
$count = $adb->query_result($result,0,'count');
|
||||
|
||||
if($count > 0)
|
||||
{
|
||||
// First, save the primary record
|
||||
$focus->mode="edit";
|
||||
setObjectValuesFromRequest($focus);
|
||||
$focus->save($module);
|
||||
$rec_values=$focus->column_fields;
|
||||
|
||||
// Remove the id of primary record from the list of records to be deleted.
|
||||
$del_value=explode(",",$recordids,-1);
|
||||
$offset = array_search($merge_id,$del_value);
|
||||
unset($del_value[$offset]);
|
||||
|
||||
// Transfer the related lists of the records to be deleted, to the primary record's related list
|
||||
if(method_exists($focus, 'transferRelatedRecords')){
|
||||
$focus->transferRelatedRecords($module,$del_value,$merge_id);
|
||||
} else {
|
||||
transferRelatedRecords($module,$del_value,$merge_id);
|
||||
}
|
||||
|
||||
// Delete the records by id specified in the list
|
||||
foreach($del_value as $value)
|
||||
{
|
||||
DeleteEntity($_REQUEST['module'],$_REQUEST['return_module'],$focus,$value,"");
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
||||
<script>
|
||||
window.self.close();window.opener.location.href=window.opener.location.href;
|
||||
</script>
|
||||
<?php
|
||||
} elseif ($mode == 'mergefields') {
|
||||
|
||||
$idstring=vtlib_purify($_REQUEST['passurl']);
|
||||
$parent_tab=getParentTab();
|
||||
|
||||
$exploded_id=explode(",",$idstring,-1);
|
||||
$record_count = count($exploded_id);
|
||||
|
||||
$smarty = new vtigerCRM_Smarty;
|
||||
$smarty->assign("EDIT_DUPLICATE","");
|
||||
if($record_count == 2) {
|
||||
if(isPermitted($currentModule,"EditView",$exploded_id[0]) == 'yes' && isPermitted($currentModule,"EditView",$exploded_id[1]) == 'yes'
|
||||
&& isPermitted($currentModule,"Delete",$exploded_id[0]) == 'yes' && isPermitted($currentModule,"Delete",$exploded_id[1]) == 'yes')
|
||||
$smarty->assign("EDIT_DUPLICATE","permitted");
|
||||
}
|
||||
else {
|
||||
if(isPermitted($currentModule,"EditView",$exploded_id[0]) == 'yes' && isPermitted($currentModule,"EditView",$exploded_id[1]) == 'yes' && isPermitted($currentModule,"EditView",$exploded_id[2]) == 'yes'
|
||||
&& isPermitted($currentModule,"Delete",$exploded_id[0]) == 'yes' && isPermitted($currentModule,"Delete",$exploded_id[1]) == 'yes' && isPermitted($currentModule,"Delete",$exploded_id[2]) == 'yes')
|
||||
$smarty->assign("EDIT_DUPLICATE","permitted");
|
||||
}
|
||||
|
||||
$all_values_array=getRecordValues($exploded_id,$module);
|
||||
$all_values=$all_values_array[0];
|
||||
$js_arr_val=$all_values_array[1];
|
||||
$fld_array=$all_values_array[2];
|
||||
$js_arr=implode(",",$js_arr_val);
|
||||
|
||||
$imported_records = Array();
|
||||
$sql="select bean_id from vtiger_users_last_import where bean_type=? and deleted=0";
|
||||
$result = $adb->pquery($sql, array($module));
|
||||
$num_rows=$adb->num_rows($result);
|
||||
$count=0;
|
||||
for($i=0; $i<$num_rows;$i++)
|
||||
{
|
||||
foreach($exploded_id as $value)
|
||||
if($value == $adb->query_result($result,$i,"bean_id"))
|
||||
$count++;
|
||||
array_push($imported_records,$adb->query_result($result,$i,"bean_id"));
|
||||
}
|
||||
|
||||
if ($record_count == $count)
|
||||
$no_existing=1;
|
||||
else
|
||||
$no_existing=0;
|
||||
|
||||
$smarty->assign("MOD", $mod_strings);
|
||||
$smarty->assign("APP", $app_strings);
|
||||
$smarty->assign("RECORD_COUNT",$record_count);
|
||||
$smarty->assign("THEME", $theme);
|
||||
$smarty->assign("IMAGE_PATH", $image_path);
|
||||
$smarty->assign("MODULENAME", $module);
|
||||
$smarty->assign("PARENT_TAB", $parent_tab);
|
||||
$smarty->assign("JS_ARRAY", $js_arr);
|
||||
$smarty->assign("ID_ARRAY", $exploded_id);
|
||||
$smarty->assign("IDSTRING",$idstring);
|
||||
$smarty->assign("ALLVALUES", $all_values);
|
||||
$smarty->assign("FIELD_ARRAY", $fld_array);
|
||||
$smarty->assign("IMPORTED_RECORDS", $imported_records);
|
||||
$smarty->assign("NO_EXISTING", $no_existing);
|
||||
$smarty->display("MergeFields.tpl");
|
||||
}
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('include/quickcreate.php');
|
||||
?>
|
||||
@@ -0,0 +1,59 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
global $current_user, $currentModule;
|
||||
|
||||
checkFileAccess("modules/$currentModule/$currentModule.php");
|
||||
require_once("modules/$currentModule/$currentModule.php");
|
||||
|
||||
$focus = new $currentModule();
|
||||
setObjectValuesFromRequest($focus);
|
||||
|
||||
$mode = $_REQUEST['mode'];
|
||||
$record=$_REQUEST['record'];
|
||||
if($mode) $focus->mode = $mode;
|
||||
if($record)$focus->id = $record;
|
||||
|
||||
$currencyid=fetchCurrency($current_user->id);
|
||||
$rate_symbol = getCurrencySymbolandCRate($currencyid);
|
||||
$rate = $rate_symbol['rate'];
|
||||
|
||||
if($_REQUEST['assigntype'] == 'U') {
|
||||
$focus->column_fields['assigned_user_id'] = $_REQUEST['assigned_user_id'];
|
||||
} elseif($_REQUEST['assigntype'] == 'T') {
|
||||
$focus->column_fields['assigned_user_id'] = $_REQUEST['assigned_group_id'];
|
||||
}
|
||||
|
||||
$focus->save($currentModule);
|
||||
$return_id = $focus->id;
|
||||
|
||||
$search = vtlib_purify($_REQUEST['search_url']);
|
||||
|
||||
$parenttab = getParentTab();
|
||||
if($_REQUEST['return_module'] != '') {
|
||||
$return_module = vtlib_purify($_REQUEST['return_module']);
|
||||
} else {
|
||||
$return_module = $currentModule;
|
||||
}
|
||||
|
||||
if($_REQUEST['return_action'] != '') {
|
||||
$return_action = vtlib_purify($_REQUEST['return_action']);
|
||||
} else {
|
||||
$return_action = "DetailView";
|
||||
}
|
||||
|
||||
if($_REQUEST['return_id'] != '') {
|
||||
$return_id = vtlib_purify($_REQUEST['return_id']);
|
||||
}
|
||||
|
||||
if(isset($_REQUEST['activity_mode'])) $return_action .= '&activity_mode='.vtlib_purify($_REQUEST['activity_mode']);
|
||||
|
||||
header("Location: index.php?action=$return_action&module=$return_module&record=$return_id&parenttab=$parenttab&start=".vtlib_purify($_REQUEST['pagenumber']).$search);
|
||||
|
||||
?>
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('include/Ajax/CommonAjax.php');
|
||||
?>
|
||||
@@ -0,0 +1,103 @@
|
||||
/***********************************************
|
||||
* Carousel Slideshow script- © Ger Versluis 2003
|
||||
* Permission granted to DynamicDrive.com to feature script
|
||||
* This notice must stay intact for legal use
|
||||
* Visit http://www.dynamicdrive.com/ for full source code
|
||||
***********************************************/
|
||||
|
||||
/********************************************************
|
||||
Create a div with transparent place holder in your html
|
||||
<div id="Carousel" style="position:relative">
|
||||
<img src="placeholder.gif" width="404" height="202">
|
||||
</div>
|
||||
placeholder width:
|
||||
4 sided: 1.42 * carousel image width + 3
|
||||
6 sided: 2 * carousel image width +4
|
||||
8 sided: 2.62 * carousel image width + 5
|
||||
12 sided: 3.87 * carousel image width + 7
|
||||
placeholder height:
|
||||
carousel image height+2
|
||||
|
||||
Insert onload in body tag
|
||||
<body onload="Carousel()">
|
||||
*********************************************************/
|
||||
|
||||
// 7 variables to control behavior
|
||||
var Car_Image_Width=140;
|
||||
var Car_Image_Height=80;
|
||||
var Car_Border=true; // true or false
|
||||
var Car_Border_Color="black";
|
||||
var Car_Speed=4;
|
||||
var Car_Direction=true; // true or false
|
||||
|
||||
/* array to specify images and optional links.
|
||||
For 4 sided carousel specify at least 2 images
|
||||
For 6 sided carousel specify at least 3
|
||||
For 8 sided carousel specify at least 4
|
||||
For 12 sided carousel specify at least 6
|
||||
If Link is not needed keep it ""
|
||||
*/
|
||||
/***************** DO NOT EDIT BELOW **********************************/
|
||||
CW_I=new Array(Car_NoOfSides/2+1);C_ClcW=new Array(Car_NoOfSides/2);
|
||||
C_Coef=new Array(
|
||||
3*Math.PI/2,0,3*Math.PI/2,11*Math.PI/6,Math.PI/6,3*Math.PI/2,7*Math.PI/4, 0,
|
||||
Math.PI/4,3*Math.PI/2,5*Math.PI/3,11*Math.PI/6,0,Math.PI/6,Math.PI/3);
|
||||
var C_CoefOf=Car_NoOfSides==4?0:Car_NoOfSides==6?2:Car_NoOfSides==8?5:9;
|
||||
C_Pre_Img=new Array(Car_Image_Sources.length);
|
||||
var C_Angle=Car_Direction?Math.PI/(Car_NoOfSides/2):0,C_CrImg=Car_NoOfSides,C_MaxW,C_TotalW,
|
||||
C_Stppd=false,i,C_LeftOffset,C_HalfNo=Car_NoOfSides/2;
|
||||
|
||||
function Carousel(){
|
||||
if(document.getElementById){
|
||||
for(i=0;i<Car_Image_Sources.length;i+=2){
|
||||
C_Pre_Img[i]=new Image();C_Pre_Img[i].src=Car_Image_Sources[i]}
|
||||
C_MaxW=Car_Image_Width/Math.sin(Math.PI/Car_NoOfSides)+C_HalfNo+1;
|
||||
Car_Div=document.getElementById("Carousel");
|
||||
Car_Div.style.height=Car_Image_Height+20+"px";
|
||||
|
||||
for(i=0;i<C_HalfNo;i++){
|
||||
CW_I[i]=document.createElement("img");Car_Div.appendChild(CW_I[i]);
|
||||
CW_I[i].style.position="absolute";
|
||||
CW_I[i].style.top=0+"px";
|
||||
CW_I[i].style.height=Car_Image_Height+"px";
|
||||
CW_I[i].valign="middle";
|
||||
if(Car_Border){
|
||||
CW_I[i].style.borderStyle="solid";
|
||||
CW_I[i].style.borderWidth=1+"px";
|
||||
CW_I[i].style.borderColor=Car_Border_Color}
|
||||
CW_I[i].src=Car_Image_Sources[2*i];
|
||||
CW_I[i].lnk=Car_Image_Sources[2*i+1];
|
||||
CW_I[i].onclick=C_LdLnk;
|
||||
CW_I[i].onmouseover=C_Stp;
|
||||
CW_I[i].onmouseout=C_Rstrt}
|
||||
CarImages()}}
|
||||
|
||||
function CarImages(){
|
||||
if(!C_Stppd){
|
||||
C_TotalW=0;
|
||||
for(i=0;i<C_HalfNo;i++){
|
||||
C_ClcW[i]=Math.round(Math.cos(Math.abs(C_Coef[C_CoefOf+i]+C_Angle))*Car_Image_Width);
|
||||
C_TotalW+=C_ClcW[i]}
|
||||
C_LeftOffset=(C_MaxW-C_TotalW)/2;
|
||||
for(i=0;i<C_HalfNo;i++){
|
||||
CW_I[i].style.left=C_LeftOffset+"px";
|
||||
CW_I[i].style.width=C_ClcW[i]+"px";
|
||||
C_LeftOffset+=C_ClcW[i]}
|
||||
C_Angle+=Car_Speed/720*Math.PI*(Car_Direction?-1:1);
|
||||
if((Car_Direction&&C_Angle<=0)||(!Car_Direction&&C_Angle>=Math.PI/C_HalfNo)){
|
||||
if(C_CrImg==Car_Image_Sources.length)C_CrImg=0;
|
||||
if(Car_Direction){
|
||||
CW_I[C_HalfNo]=CW_I[0];
|
||||
for(i=0;i<C_HalfNo;i++)CW_I[i]=CW_I[i+1];
|
||||
CW_I[C_HalfNo-1].src=Car_Image_Sources[C_CrImg];
|
||||
CW_I[C_HalfNo-1].lnk=Car_Image_Sources[C_CrImg+1]}
|
||||
else{ for(i=C_HalfNo;i>0;i--)CW_I[i]=CW_I[i-1];
|
||||
CW_I[0]=CW_I[C_HalfNo];
|
||||
CW_I[0].src=Car_Image_Sources[C_CrImg];
|
||||
CW_I[0].lnk=Car_Image_Sources[C_CrImg+1]}
|
||||
C_Angle=Car_Direction?Math.PI/C_HalfNo:0;C_CrImg+=2}}
|
||||
setTimeout("CarImages()",50)}
|
||||
|
||||
function C_LdLnk(){if(this.lnk)window.open(this.lnk,"test","width=600,height=400,resizable=1,scrollbars=1")}
|
||||
function C_Stp(){this.style.cursor=this.lnk?"pointer":"default";C_Stppd=true;}
|
||||
function C_Rstrt(){C_Stppd=false}
|
||||
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
|
||||
include('modules/Vtiger/Settings.php');
|
||||
|
||||
?>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+**********************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
************************************************************************************/
|
||||
require_once('include/Ajax/TagCloud.php');
|
||||
?>
|
||||
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/*+*******************************************************************************
|
||||
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
|
||||
* ("License"); You may not use this file except in compliance with the License
|
||||
* The Original Code is: vtiger CRM Open Source
|
||||
* The Initial Developer of the Original Code is vtiger.
|
||||
* Portions created by vtiger are Copyright (C) vtiger.
|
||||
* All Rights Reserved.
|
||||
*********************************************************************************/
|
||||
require_once 'modules/Home/UnifiedSearch.php';
|
||||
?>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user