vTiger 的所有 modules (模块文件) 进行提交。

This commit is contained in:
YUCHENG HU 2013-01-30 22:19:08 -05:00
parent d2ea05f0f9
commit f6dca8205e
2999 changed files with 316586 additions and 0 deletions

View File

@ -0,0 +1,43 @@
<?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/utils.php');
global $app_strings, $default_charset, $currentModule, $current_user, $theme;
$smarty = new vtigerCRM_Smarty;
if (!isset($where)) $where = "";
$parent_tab=getParentTab();
$smarty->assign("CATEGORY",$parent_tab);
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
$smarty->assign("MOD", $mod_strings);
$smarty->assign("APP", $app_strings);
$smarty->assign("THEME", $theme);
$smarty->assign("IMAGE_PATH",$image_path);
$smarty->assign("MODULE",$currentModule);
$check_button = Button_Check($currentModule);
$check_button['Import'] = 'no';
$check_button['Export'] = 'no';
$check_button['moduleSettings'] = 'no';
$smarty->assign("CHECK", $check_button);
$focus = CRMEntity::getInstance($currentModule);
$accountid = vtlib_purify($_REQUEST['accountid']);
if (!empty($accountid)) {
$hierarchy = $focus->getAccountHierarchy($accountid);
}
$smarty->assign("ACCOUNT_HIERARCHY",$hierarchy);
$smarty->display("AccountHierarchy.tpl");
?>

View File

@ -0,0 +1,404 @@
/*********************************************************************************
** 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.
********************************************************************************/
document.write("<script type='text/javascript' src='include/js/Inventory.js'></"+"script>");
document.write("<script type='text/javascript' src='include/js/Mail.js'></"+"script>");
document.write("<script type='text/javascript' src='include/js/Merge.js'></"+"script>");
function set_return(product_id, product_name) {
if(document.getElementById('from_link').value != '') {
window.opener.document.QcEditView.parent_name.value = product_name;
window.opener.document.QcEditView.parent_id.value = product_id;
} else {
window.opener.document.EditView.parent_name.value = product_name;
window.opener.document.EditView.parent_id.value = product_id;
}
}
function set_return_specific(product_id, product_name) {
//getOpenerObj used for DetailView
if(document.getElementById('from_link').value != '')
{
var fldName = window.opener.document.QcEditView.account_name;
var fldId = window.opener.document.QcEditView.account_id;
}else
{
var fldName = window.opener.document.EditView.account_name;
var fldId = window.opener.document.EditView.account_id;
}
fldName.value = product_name;
fldId.value = product_id;
}
function add_data_to_relatedlist(entity_id,recordid) {
opener.document.location.href="index.php?module=Emails&action=updateRelations&destination_module=Accounts&entityid="+entity_id+"&parentid="+recordid;
}
function set_return_formname_specific(formname,product_id, product_name) {
window.opener.document.EditView1.account_name.value = product_name;
window.opener.document.EditView1.account_id.value = product_id;
}
function set_return_address(account_id, account_name, bill_street, ship_street, bill_city, ship_city, bill_state, ship_state, bill_code, ship_code, bill_country, ship_country,bill_pobox,ship_pobox) {
if(document.getElementById('from_link').value != '') {
window.opener.document.QcEditView.account_name.value = account_name;
window.opener.document.QcEditView.account_id.value = account_id;
} else {
window.opener.document.EditView.account_name.value = account_name;
window.opener.document.EditView.account_id.value = account_id;
}
//Ask the user to overwite the address or not - Modified on 06-01-2007
if(confirm(alert_arr.OVERWRITE_EXISTING_ACCOUNT1+account_name+alert_arr.OVERWRITE_EXISTING_ACCOUNT2))
{
//made changes to avoid js error -- ref : hidding fields causes js error(ticket#4017)
if(document.getElementById('from_link').value != '') {
if(typeof(window.opener.document.QcEditView.bill_street) != 'undefined')
window.opener.document.QcEditView.bill_street.value = bill_street;
if(typeof(window.opener.document.QcEditView.ship_street) != 'undefined')
window.opener.document.QcEditView.ship_street.value = ship_street;
if(typeof(window.opener.document.QcEditView.bill_city) != 'undefined')
window.opener.document.QcEditView.bill_city.value = bill_city;
if(typeof(window.opener.document.QcEditView.ship_city) != 'undefined')
window.opener.document.QcEditView.ship_city.value = ship_city;
if(typeof(window.opener.document.QcEditView.bill_state) != 'undefined')
window.opener.document.QcEditView.bill_state.value = bill_state;
if(typeof(window.opener.document.QcEditView.ship_state) != 'undefined')
window.opener.document.QcEditView.ship_state.value = ship_state;
if(typeof(window.opener.document.QcEditView.bill_code) != 'undefined')
window.opener.document.QcEditView.bill_code.value = bill_code;
if(typeof(window.opener.document.QcEditView.ship_code) != 'undefined')
window.opener.document.QcEditView.ship_code.value = ship_code;
if(typeof(window.opener.document.QcEditView.bill_country) != 'undefined')
window.opener.document.QcEditView.bill_country.value = bill_country;
if(typeof(window.opener.document.QcEditView.ship_country) != 'undefined')
window.opener.document.QcEditView.ship_country.value = ship_country;
if(typeof(window.opener.document.QcEditView.bill_pobox) != 'undefined')
window.opener.document.QcEditView.bill_pobox.value = bill_pobox;
if(typeof(window.opener.document.QcEditView.ship_pobox) != 'undefined')
window.opener.document.QcEditView.ship_pobox.value = ship_pobox;
} else {
if(typeof(window.opener.document.EditView.bill_street) != 'undefined')
window.opener.document.EditView.bill_street.value = bill_street;
if(typeof(window.opener.document.EditView.ship_street) != 'undefined')
window.opener.document.EditView.ship_street.value = ship_street;
if(typeof(window.opener.document.EditView.bill_city) != 'undefined')
window.opener.document.EditView.bill_city.value = bill_city;
if(typeof(window.opener.document.EditView.ship_city) != 'undefined')
window.opener.document.EditView.ship_city.value = ship_city;
if(typeof(window.opener.document.EditView.bill_state) != 'undefined')
window.opener.document.EditView.bill_state.value = bill_state;
if(typeof(window.opener.document.EditView.ship_state) != 'undefined')
window.opener.document.EditView.ship_state.value = ship_state;
if(typeof(window.opener.document.EditView.bill_code) != 'undefined')
window.opener.document.EditView.bill_code.value = bill_code;
if(typeof(window.opener.document.EditView.ship_code) != 'undefined')
window.opener.document.EditView.ship_code.value = ship_code;
if(typeof(window.opener.document.EditView.bill_country) != 'undefined')
window.opener.document.EditView.bill_country.value = bill_country;
if(typeof(window.opener.document.EditView.ship_country) != 'undefined')
window.opener.document.EditView.ship_country.value = ship_country;
if(typeof(window.opener.document.EditView.bill_pobox) != 'undefined')
window.opener.document.EditView.bill_pobox.value = bill_pobox;
if(typeof(window.opener.document.EditView.ship_pobox) != 'undefined')
window.opener.document.EditView.ship_pobox.value = ship_pobox;
}
//end
}
}
//added to populate address
function set_return_contact_address(account_id, account_name, bill_street, ship_street, bill_city, ship_city, bill_state, ship_state, bill_code, ship_code, bill_country, ship_country,bill_pobox,ship_pobox ) {
if(document.getElementById('from_link').value != '') {
if(typeof(window.opener.document.QcEditView.account_name) != 'undefined')
window.opener.document.QcEditView.account_name.value = account_name;
if(typeof(window.opener.document.QcEditView.account_id) != 'undefined')
window.opener.document.QcEditView.account_id.value = account_id;
} else {
if(typeof(window.opener.document.EditView.account_name) != 'undefined')
window.opener.document.EditView.account_name.value = account_name;
if(typeof(window.opener.document.EditView.account_id) != 'undefined')
window.opener.document.EditView.account_id.value = account_id;
if(typeof(window.opener.document.EditView.mailingstreet) != 'undefined')
window.opener.document.EditView.mailingstreet.value = bill_street;
if(typeof(window.opener.document.EditView.otherstreet) != 'undefined')
window.opener.document.EditView.otherstreet.value = ship_street;
if(typeof(window.opener.document.EditView.mailingcity) != 'undefined')
window.opener.document.EditView.mailingcity.value = bill_city;
if(typeof(window.opener.document.EditView.othercity) != 'undefined')
window.opener.document.EditView.othercity.value = ship_city;
if(typeof(window.opener.document.EditView.mailingstate) != 'undefined')
window.opener.document.EditView.mailingstate.value = bill_state;
if(typeof(window.opener.document.EditView.otherstate) != 'undefined')
window.opener.document.EditView.otherstate.value = ship_state;
if(typeof(window.opener.document.EditView.mailingzip) != 'undefined')
window.opener.document.EditView.mailingzip.value = bill_code;
if(typeof(window.opener.document.EditView.otherzip) != 'undefined')
window.opener.document.EditView.otherzip.value = ship_code;
if(typeof(window.opener.document.EditView.mailingcountry) != 'undefined')
window.opener.document.EditView.mailingcountry.value = bill_country;
if(typeof(window.opener.document.EditView.othercountry) != 'undefined')
window.opener.document.EditView.othercountry.value = ship_country;
if(typeof(window.opener.document.EditView.mailingpobox) != 'undefined')
window.opener.document.EditView.mailingpobox.value = bill_pobox;
if(typeof(window.opener.document.EditView.otherpobox) != 'undefined')
window.opener.document.EditView.otherpobox.value = ship_pobox;
}
}
//added by rdhital/Raju for emails
function submitform(id){
document.massdelete.entityid.value=id;
document.massdelete.submit();
}
function searchMapLocation(addressType)
{
var mapParameter = '';
if (addressType == 'Main')
{
if(fieldname.indexOf('bill_street') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_street')]))
mapParameter = document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_street')]).innerHTML+' ';
}
if(fieldname.indexOf('bill_city') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_city')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_city')]).innerHTML+' ';
}
if(fieldname.indexOf('bill_state') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_state')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_state')]).innerHTML+' ';
}
if(fieldname.indexOf('bill_country') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_country')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_country')]).innerHTML+' ';
}
if(fieldname.indexOf('bill_code') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_code')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('bill_code')]).innerHTML+' ';
}
}
else if (addressType == 'Other')
{
if(fieldname.indexOf('ship_street') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_street')]))
mapParameter = document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_street')]).innerHTML+' ';
}
if(fieldname.indexOf('ship_city') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_city')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_city')]).innerHTML+' ';
}
if(fieldname.indexOf('ship_state') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_state')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_state')]).innerHTML+' ';
}
if(fieldname.indexOf('ship_country') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_country')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_country')]).innerHTML+' ';
}
if(fieldname.indexOf('ship_code') > -1)
{
if(document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_code')]))
mapParameter = mapParameter + document.getElementById("dtlview_"+fieldlabel[fieldname.indexOf('ship_code')]).innerHTML+' ';
}
}
mapParameter = removeHTMLFormatting(mapParameter);
window.open('http://maps.google.com/maps?q='+mapParameter,'goolemap','height=450,width=700,resizable=no,titlebar,location,top=200,left=250');
}
//javascript function will open new window to display traffic details for particular url using alexa.com
function getRelatedLink()
{
var param='';
param = getObj("website").value;
window.open('http://www.alexa.com/data/details/traffic_details?q=&url='+param,'relatedlink','height=400,width=700,resizable=no,titlebar,location,top=250,left=250');
}
/*
* javascript function to populate fieldvalue in account editview
* @param id1 :: div tag ID
* @param id2 :: div tag ID
*/
function populateData(id1,id2)
{
document.EditView.description.value = document.getElementById('summary').innerHTML;
document.EditView.employees.value = getObj('emp').value;
document.EditView.website.value = getObj('site').value;
document.EditView.phone.value = getObj('Phone').value;
document.EditView.fax.value = getObj('Fax').value;
document.EditView.bill_street.value = getObj('address').value;
showhide(id1,id2);
}
/*
* javascript function to show/hide the div tag
* @param argg1 :: div tag ID
* @param argg2 :: div tag ID
*/
function showhide(argg1,argg2)
{
var x=document.getElementById(argg1).style;
var y=document.getElementById(argg2).style;
if (y.display=="none")
{
y.display="block"
x.display="none"
}
}
// JavaScript Document
if (document.all) var browser_ie=true
else if (document.layers) var browser_nn4=true
else if (document.layers || (!document.all && document.getElementById)) var browser_nn6=true
function getObj(n,d) {
var p,i,x;
if(!d)d=document;
if((p=n.indexOf("?"))>0&&parent.frames.length) {d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all)x=d.all[n];
for(i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=getObj(n,d.layers[i].document);
if(!x && d.getElementById) x=d.getElementById(n);
return x;
}
function findPosX(obj) {
var curleft = 0;
if (document.getElementById || document.all) {
while (obj.offsetParent) { curleft += obj.offsetLeft; obj = obj.offsetParent;}
}
else if (document.layers) { curleft += obj.x; }
return curleft;
}
function findPosY(obj) {
var curtop = 0;
if (document.getElementById || document.all) {
while (obj.offsetParent) { curtop += obj.offsetTop; obj = obj.offsetParent; }
}
else if (document.layers) {curtop += obj.y;}
return curtop;
}
ScrollEffect = function(){ };
ScrollEffect.lengthcount=202;
ScrollEffect.closelimit=0;
ScrollEffect.limit=0;
function just(){
ig=getObj("company");
if(ScrollEffect.lengthcount > ScrollEffect.closelimit ){closet();return;}
ig.style.display="block";
ig.style.height=ScrollEffect.lengthcount+'px';
ScrollEffect.lengthcount=ScrollEffect.lengthcount+10;
if(ScrollEffect.lengthcount < ScrollEffect.limit){setTimeout("just()",25);}
else{ getObj("innerLayer").style.display="block";return;}
}
function closet(){
ig=getObj("company");
getObj("innerLayer").style.display="none";
ScrollEffect.lengthcount=ScrollEffect.lengthcount-10;
ig.style.height=ScrollEffect.lengthcount+'px';
if(ScrollEffect.lengthcount<20){ig.style.display="none";return;}
else{setTimeout("closet()", 25);}
}
function fnDown(obj){
var tagName = document.getElementById(obj);
document.EditView.description.value = document.getElementById('summary').innerHTML;
document.EditView.employees.value = getObj('emp').value;
document.EditView.website.value = getObj('site').value;
document.EditView.phone.value = getObj('Phone').value;
document.EditView.fax.value = getObj('Fax').value;
document.EditView.bill_street.value = getObj('address').value;
if(tagName.style.display == 'none')
tagName.style.display = 'block';
else
tagName.style.display = 'none';
}
function set_return_todo(product_id, product_name) {
window.opener.document.createTodo.task_parent_name.value = product_name;
window.opener.document.createTodo.task_parent_id.value = product_id;
}
//When changing the Account Address Information it should also change the related contact address.
function checkAddress(form,id)
{
var url='';
if(typeof(form.bill_street) != 'undefined')
url +="&bill_street="+form.bill_street.value;
if(typeof(form.ship_street) != 'undefined')
url +="&ship_street="+form.ship_street.value;
if(typeof(form.bill_city) != 'undefined')
url +="&bill_city="+form.bill_city.value;
if(typeof(form.ship_city) != 'undefined')
url +="&ship_city="+form.ship_city.value;
if(typeof(form.bill_state) != 'undefined')
url +="&bill_state="+form.bill_state.value;
if(typeof(form.ship_state) != 'undefined')
url +="&ship_state="+form.ship_state.value;
if(typeof(form.bill_code) != 'undefined')
url +="&bill_code="+ form.bill_code.value;
if(typeof(form.ship_code) != 'undefined')
url +="&ship_code="+ form.ship_code.value;
if(typeof(form.bill_country) != 'undefined')
url +="&bill_country="+form.bill_country.value;
if(typeof(form.ship_country) != 'undefined')
url +="&ship_country="+form.ship_country.value;
if(typeof(form.bill_pobox) != 'undefined')
url +="&bill_pobox="+ form.bill_pobox.value;
if(typeof(form.ship_pobox) != 'undefined')
url +="&ship_pobox="+ form.ship_pobox.value;
url +="&record="+id;
$("status").style.display="inline";
new Ajax.Request(
'index.php',
{queue: {position: 'end', scope: 'command'},
method: 'post',
postBody:"module=Accounts&action=AccountsAjax&ajax=true&file=AddressChange"+url,
onComplete: function(response) {
if(response.responseText == 'address_change')
{
if(confirm(alert_arr.WANT_TO_CHANGE_CONTACT_ADDR) == true)
{
form.address_change.value='yes';
form.submit();
}
else
{
form.submit();
}
}
else
{
form.submit();
}
}
}
);
}
//Changing account address info - ENDS

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.6 KiB

View File

@ -0,0 +1,14 @@
<?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');
?>

View File

@ -0,0 +1,52 @@
<?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/Accounts/Accounts.php');
require_once('modules/Contacts/Contacts.php');
require_once('include/utils/utils.php');
require_once('user_privileges/default_module_view.php');
global $adb;
global $log;
//When changing the Account Address Information it should also change the related contact address --Dinakaran
$record = $_REQUEST['record'];
$sql ="select vtiger_account.accountid,vtiger_accountbillads.bill_street as billingstreet, vtiger_accountbillads.bill_city as billingcity,vtiger_accountbillads.bill_code as billingcode,vtiger_accountbillads.bill_country as billingcountry,vtiger_accountbillads.bill_state as billingstate,vtiger_accountbillads.bill_pobox as billingpobox ,vtiger_accountshipads.* from vtiger_account inner join vtiger_accountbillads on vtiger_accountbillads.accountaddressid=vtiger_account.accountid inner join vtiger_accountshipads on vtiger_accountshipads.accountaddressid = vtiger_account.accountid where accountid=?";
//$sql ="select vtiger_account.accountid,vtiger_accountbillads.* ,vtiger_accountshipads.* from vtiger_accountbillads,vtiger_accountshipads,vtiger_account where accountid =".$record;
$result = $adb->pquery($sql, array($record));
$value = $adb->fetch_row($result);
if(($_REQUEST['bill_city'] != $value['billingcity'] && isset($_REQUEST['bill_city'])) ||
($_REQUEST['bill_street'] != $value['billingstreet'] && isset($_REQUEST['bill_street'])) ||
($_REQUEST['bill_country']!=$value['billingcountry'] && isset($_REQUEST['bill_country']))||
($_REQUEST['bill_code']!=$value['billingcode'] && isset($_REQUEST['bill_code']))||
($_REQUEST['bill_pobox']!=$value['billingpobox'] && isset($_REQUEST['bill_pobox'])) ||
($_REQUEST['bill_state']!=$value['billingstate'] && isset($_REQUEST['bill_state']))||
($_REQUEST['ship_country']!=$value['ship_country'] && isset($_REQUEST['ship_country']))||
($_REQUEST['ship_city']!=$value['ship_city'] && isset($_REQUEST['ship_city']))||
($_REQUEST['ship_state']!=$value['ship_state'] && isset($_REQUEST['ship_state']))||
($_REQUEST['ship_code']!=$value['ship_code'] && isset($_REQUEST['ship_code']))||
($_REQUEST['ship_street']!=$value['ship_street'] && isset($_REQUEST['ship_street']))||
($_REQUEST['ship_pobox']!=$value['ship_pobox'] && isset($_REQUEST['ship_pobox'])))
{
$sql1="select contactid from vtiger_contactdetails where accountid=?";
$result1 = $adb->pquery($sql1, array($record));
if($adb->num_rows($result1) > 0)
{
echo 'address_change';
}
else
{
echo 'No Changes';
}
}
else
{
echo 'No Changes';
}
?>

View File

@ -0,0 +1,87 @@
<?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');
//Redirecting Header for single page layout
require_once('user_privileges/default_module_view.php');
global $singlepane_view;
$currentmodule = vtlib_purify($_REQUEST['module']);
$RECORD = vtlib_purify($_REQUEST['record']);
$category = getParentTab();
if($singlepane_view == 'true' && $_REQUEST['action'] == 'CallRelatedList') {
header("Location:index.php?action=DetailView&module=$currentmodule&record=$RECORD&parenttab=$category");
} else {
$focus = CRMEntity::getInstance($currentmodule);
if(isset($_REQUEST['record']) && $_REQUEST['record']!='') {
$focus->retrieve_entity_info($RECORD,$currentmodule);
$focus->id = $RECORD;
$focus->name=$focus->column_fields['accountname'];
$log->debug("id is ".$focus->id);
$log->debug("name is ".$focus->name);
}
global $mod_strings;
global $app_strings;
global $theme, $currentModule;
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
$smarty = new vtigerCRM_Smarty;
if(isset($_REQUEST['isDuplicate']) && $_REQUEST['isDuplicate'] == 'true') {
$focus->id = "";
}
if(isset($_REQUEST['mode']) && $_REQUEST['mode'] != ' ') {
$smarty->assign("OP_MODE",vtlib_purify($_REQUEST['mode']));
}
if(!$_SESSION['rlvs'][$module]) {
unset($_SESSION['rlvs']);
}
// 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
$smarty->assign("TODO_PERMISSION",CheckFieldPermission('parent_id','Calendar'));
$smarty->assign("EVENT_PERMISSION",CheckFieldPermission('parent_id','Events'));
$smarty->assign("CATEGORY",$category);
$smarty->assign("UPDATEINFO",updateInfo($focus->id));
if (isset($focus->name)) $smarty->assign("NAME", $focus->name);
$related_array=getRelatedLists("Accounts",$focus);
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->assign("RELATEDLISTS", $related_array);
$smarty->assign("ID",$focus->id);
$smarty->assign("MODULE",$currentmodule);
$smarty->assign("SINGLE_MOD",$app_strings['Account']);
$smarty->assign("MOD",$mod_strings);
$smarty->assign("APP",$app_strings);
$smarty->assign("THEME", $theme);
$smarty->assign("IMAGE_PATH", $image_path);
$check_button = Button_Check($module);
$smarty->assign("CHECK", $check_button);
$smarty->display("RelatedLists.tpl");
}
?>

View File

@ -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/CustomAction.php');
?>

View File

@ -0,0 +1,14 @@
<?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');
?>

View File

@ -0,0 +1,39 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/Delete.php,v 1.5 2005/03/10 09:28:34 shaw Exp $
* Description: Deletes an Account record and then redirects the browser to the
* defined return URL.
********************************************************************************/
global $currentModule;
$focus = CRMEntity::getInstance($currentModule);
global $mod_strings;
require_once('include/logging.php');
$log = LoggerManager::getLogger('contact_delete');
//Added to fix 4600
$url = getBasic_Advance_SearchURL();
if(!isset($_REQUEST['record']))
die($mod_strings['ERR_DELETE_RECORD']);
DeleteEntity($_REQUEST['module'],$_REQUEST['return_module'],$focus,$_REQUEST['record'],$_REQUEST['return_id']);
$parenttab = getParentTab();
header("Location: index.php?module=".vtlib_purify($_REQUEST['return_module'])."&action=".vtlib_purify($_REQUEST['return_action'])."&record=".vtlib_purify($_REQUEST['return_id'])."&parenttab=".$parenttab."&relmodule=".vtlib_purify($_REQUEST['module']).$url);
?>

View File

@ -0,0 +1,187 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/DetailView.php,v 1.37 2005/04/18 10:37:49 samk Exp $
* Description: TODO To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
require_once('Smarty_setup.php');
require_once('data/Tracker.php');
require_once('include/CustomFieldUtil.php');
require_once('include/utils/utils.php');
require_once('user_privileges/default_module_view.php');
require_once 'modules/CustomView/CustomView.php';
global $mod_strings;
global $app_strings;
global $app_list_strings;
global $log, $currentModule, $singlepane_view;
$focus = CRMEntity::getInstance($currentModule);
if(isset($_REQUEST['record']) && isset($_REQUEST['record'])) {
$focus->retrieve_entity_info($_REQUEST['record'],"Accounts");
$focus->id = $_REQUEST['record'];
$focus->name=$focus->column_fields['accountname'];
$log->debug("id is ".$focus->id);
$log->debug("name is ".$focus->name);
}
if(isset($_REQUEST['isDuplicate']) && $_REQUEST['isDuplicate'] == 'true') {
$focus->id = "";
}
global $theme;
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
$log->info("Account detail view");
$smarty = new vtigerCRM_Smarty;
$smarty->assign("MOD", $mod_strings);
$smarty->assign("APP", $app_strings);
$smarty->assign("THEME", $theme);
$smarty->assign("IMAGE_PATH", $image_path);
$smarty->assign("PRINT_URL", "phprint.php?jt=".session_id().$GLOBALS['request_string']);
if (isset($focus->name)) $smarty->assign("NAME", $focus->name);
else $smarty->assign("NAME", "");
$smarty->assign("BLOCKS", getBlocks("Accounts","detail_view",'',$focus->column_fields));
$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
$smarty->assign("CUSTOMFIELD", $cust_fld);
$smarty->assign("ID", $_REQUEST['record']);
$smarty->assign("SINGLE_MOD",'Account');
$category = getParentTab();
$smarty->assign("CATEGORY",$category);
if(useInternalMailer() == 1)
$smarty->assign("INT_MAILER","true");
if(isPermitted("Accounts","EditView",$_REQUEST['record']) == 'yes')
$smarty->assign("EDIT_DUPLICATE","permitted");
if(isPermitted("Accounts","Delete",$_REQUEST['record']) == 'yes')
$smarty->assign("DELETE","permitted");
if(isPermitted("Emails","EditView",'') == 'yes') {
$vtwsObject = VtigerWebserviceObject::fromName($adb, $currentModule);
$vtwsCRMObjectMeta = new VtigerCRMObjectMeta($vtwsObject, $current_user);
$emailFields = $vtwsCRMObjectMeta->getEmailFields();
$smarty->assign("SENDMAILBUTTON","permitted");
$emails=array();
foreach($emailFields as $key => $value){
$emails[]=$value;
}
$smarty->assign("EMAILS", $emails);
$cond="LTrim('%s') !=''";
$condition=array();
foreach($emails as $key => $value){
$condition[]=sprintf($cond,$value);
}
$condition_str=implode("||",$condition);
$js="if(".$condition_str."){fnvshobj(this,'sendmail_cont');sendmail('".$currentModule."',".$_REQUEST['record'].");}else{OpenCompose('','create');}";
$smarty->assign('JS',$js);
}
if(isPermitted("Accounts","Merge",'') == 'yes')
{
global $current_user;
require("user_privileges/user_privileges_".$current_user->id.".php");
require_once('include/utils/UserInfoUtil.php');
$wordTemplateResult = fetchWordTemplateList("Accounts");
$tempCount = $adb->num_rows($wordTemplateResult);
$tempVal = $adb->fetch_array($wordTemplateResult);
for($templateCount=0;$templateCount<$tempCount;$templateCount++)
{
$optionString[$tempVal["templateid"]]=$tempVal["filename"];
$tempVal = $adb->fetch_array($wordTemplateResult);
}
if($is_admin)
$smarty->assign("MERGEBUTTON","permitted");
elseif($tempCount >0)
$smarty->assign("MERGEBUTTON","permitted");
$smarty->assign("TEMPLATECOUNT",$tempCount);
$smarty->assign("WORDTEMPLATEOPTIONS",$app_strings['LBL_SELECT_TEMPLATE_TO_MAIL_MERGE']);
$smarty->assign("TOPTIONS",$optionString);
}
$tabid = getTabid("Accounts");
$validationData = getDBValidationData($focus->tab_name,$tabid);
$data = split_validationdataArray($validationData);
$smarty->assign("VALIDATION_DATA_FIELDNAME",$data['fieldname']);
$smarty->assign("VALIDATION_DATA_FIELDDATATYPE",$data['datatype']);
$smarty->assign("VALIDATION_DATA_FIELDLABEL",$data['fieldlabel']);
$check_button = Button_Check($module);
$smarty->assign("CHECK", $check_button);
$smarty->assign("MODULE",$currentModule);
$smarty->assign("EDIT_PERMISSION",isPermitted($currentModule,'EditView',$_REQUEST['record']));
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("USE_ASTERISK", get_use_asterisk($current_user->id));
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);
}
$smarty->assign("TODO_PERMISSION",CheckFieldPermission('parent_id','Calendar'));
$smarty->assign("EVENT_PERMISSION",CheckFieldPermission('parent_id','Events'));
$smarty->assign("SinglePane_View", $singlepane_view);
// Record Change Notification
$focus->markAsViewed($current_user->id);
// END
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));
$smarty->assign('DETAILVIEW_AJAX_EDIT', PerformancePrefs::getBoolean('DETAILVIEW_AJAX_EDIT', true));
$smarty->display("DetailView.tpl");
?>

View File

@ -0,0 +1,79 @@
<?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/logging.php');
require_once('include/database/PearDatabase.php');
global $adb,$mod_strings;
$local_log =& LoggerManager::getLogger('AccountsAjax');
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,"Accounts");
$modObj->column_fields[$fieldname] = $fieldvalue;
if($fieldname=='accountname'){
$value = $fieldvalue;
$query = "SELECT accountname FROM vtiger_account,vtiger_crmentity WHERE accountname =? and vtiger_account.accountid = vtiger_crmentity.crmid and vtiger_crmentity.deleted != 1";
$params = array($value);
if(isset($crmid) && $crmid !='') {
$query .= " and vtiger_account.accountid != ?";
array_push($params, $crmid);
}
$result = $adb->pquery($query, $params);
if($adb->num_rows($result) > 0)
{
echo ":#:ERR".$mod_strings['LBL_ACCOUNT_EXIST'];
return false;
}
}
if($fieldname=='accountname'){
$value = $fieldvalue;
$query = "SELECT accountname FROM vtiger_account,vtiger_crmentity WHERE accountname =? and vtiger_account.accountid = vtiger_crmentity.crmid and vtiger_crmentity.deleted != 1";
$params = array($value);
if(isset($crmid) && $crmid !='') {
$query .= " and vtiger_account.accountid != ?";
array_push($params, $crmid);
}
$result = $adb->pquery($query, $params);
if($adb->num_rows($result) > 0)
{
echo ":#:ERR".$mod_strings['LBL_ACCOUNT_EXIST'];
return false;
}
}
$modObj->id = $crmid;
$modObj->mode = "edit";
$modObj->save("Accounts");
if($modObj->id != "")
{
echo ":#:SUCCESS";
}else
{
echo ":#:FAILURE";
}
}else
{
echo ":#:FAILURE";
}
}elseif($ajaxaction == "LOADRELATEDLIST" || $ajaxaction == "DISABLEMODULE"){
require_once 'include/ListView/RelatedListViewContents.php';
}
?>

View File

@ -0,0 +1,14 @@
<?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/Vtiger/EditView.php';
$smarty->display('salesEditView.tpl');
?>

View File

@ -0,0 +1,14 @@
<?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');
?>

View File

@ -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.
********************************************************************************/
require_once 'modules/Vtiger/FindDuplicateRecords.php';
?>

View File

@ -0,0 +1,45 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header$
* Description: TODO: To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
include('modules/Import/index.php');
?>

View File

@ -0,0 +1,18 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
require_once('modules/Vtiger/ListView.php');
?>

View File

@ -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';
?>

View File

@ -0,0 +1,110 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header$
* Description: TODO: To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
/**Function to get the top 5 Accounts order by Amount in Descending Order
*return array $values - array with the title, header and entries like Array('Title'=>$title,'Header'=>$listview_header,'Entries'=>$listview_entries) where as listview_header and listview_entries are arrays of header and entity values which are returned from function getListViewHeader and getListViewEntries
*/
function getTopAccounts($maxval,$calCnt)
{
$log = LoggerManager::getLogger('top accounts_list');
$log->debug("Entering getTopAccounts() method ...");
require_once("data/Tracker.php");
require_once('modules/Potentials/Potentials.php');
require_once('include/logging.php');
require_once('include/ListView/ListView.php');
global $app_strings;
global $adb;
global $current_language;
global $current_user;
$current_module_strings = return_module_language($current_language, "Accounts");
require('user_privileges/user_privileges_'.$current_user->id.'.php');
require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
$list_query = "select vtiger_potential.potentialname,vtiger_account.accountid, vtiger_account.accountname, ".
"vtiger_account.tickersymbol, sum(vtiger_potential.amount) as amount from vtiger_potential ".
"inner join vtiger_crmentity on (vtiger_potential.potentialid=vtiger_crmentity.crmid) ".
"inner join vtiger_account on (vtiger_potential.related_to=vtiger_account.accountid) ";
$list_query .= " WHERE vtiger_crmentity.deleted = 0 ".$where.
" AND vtiger_potential.potentialid>0";
$list_query .= " AND vtiger_crmentity.smownerid='".$current_user->id."' ".
"and vtiger_potential.sales_stage not in ('Closed Won', 'Closed Lost','".
$app_strings['LBL_CLOSE_WON']."','".$app_strings['LBL_CLOSE_LOST']."')";
$list_query .= " group by vtiger_account.accountid, vtiger_account.tickersymbol order by amount desc";
$list_query .= " LIMIT 0," . $adb->sql_escape_string($maxval);
if($calCnt == 'calculateCnt') {
$list_result_rows = $adb->query(mkCountQuery($list_query));
return $adb->query_result($list_result_rows, 0, 'count');
}
$list_result=$adb->query($list_query);
$open_accounts_list = array();
$noofrows = $adb->num_rows($list_result);
if ($noofrows) {
for($i=0;$i<$noofrows;$i++)
{
$open_accounts_list[] = Array('accountid' => $adb->query_result($list_result,$i,'accountid'),
'accountname' => $adb->query_result($list_result,$i,'accountname'),
'amount' => $adb->query_result($list_result,$i,'amount'),
'tickersymbol' => $adb->query_result($list_result,$i,'tickersymbol'),
);
}
}
$title=array();
$title[]='myTopAccounts.gif';
$title[]=$current_module_strings['LBL_TOP_ACCOUNTS'];
$title[]='home_myaccount';
$header=array();
$header[]=$current_module_strings['LBL_LIST_ACCOUNT_NAME'];
$currencyid=fetchCurrency($current_user->id);
$rate_symbol = getCurrencySymbolandCRate($currencyid);
$rate = $rate_symbol['rate'];
$curr_symbol = $rate_symbol['symbol'];
$header[]=$current_module_strings['LBL_LIST_AMOUNT'].'('.$curr_symbol.')';
$header[] = $current_module_strings['LBL_POTENTIAL_TITLE'];
$entries=array();
foreach($open_accounts_list as $account)
{
$value=array();
$account_fields = array(
'ACCOUNT_ID' => $account['accountid'],
'ACCOUNT_NAME' => $account['accountname'],
'AMOUNT' => ($account['amount']),
);
$Top_Accounts = (strlen($account['accountname']) > 20) ? (substr($account['accountname'],0,20).'...') : $account['accountname'];
$value[]='<a href="index.php?action=DetailView&module=Accounts&record='.$account['accountid'].'">'.$Top_Accounts.'</a>';
$value[] = CurrencyField::convertToUserFormat($account['amount']);
$entries[$account['accountid']]=$value;
}
$values=Array('ModuleName'=>'Accounts','Title'=>$title,'Header'=>$header,'Entries'=>$entries);
$log->debug("Exiting getTopAccounts method ...");
if (($display_empty_home_blocks && count($entries) == 0 ) || (count($entries)>0))
return $values;
}
?>

View File

@ -0,0 +1,334 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header:
* Description: TODO: To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
global $app_strings;
global $mod_strings;
global $currentModule;
global $theme, $adb;
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
global $current_language,$default_charset;
$category = htmlspecialchars($_REQUEST['parenttab'],ENT_QUOTES,$default_charset);
//Function added to convert line breaks to space in description during export
function br2nl_int($str) {
$str = preg_replace("/(\r\n)/", " ", $str);
return $str;
}
if (isset($_SESSION['export_where']))
$exportWhere = $_SESSION['export_where'];
else
$exportWhere = stripslashes(htmlspecialchars_decode($_POST['exportwhere']));
if (isset($_GET['step']))
$step = $_GET['step'];
else
$step = $_POST['step'];
$export_type = $_POST['export_type'];
function getStdContactFlds(&$queryFields, $adb, $valueArray)
{
global $current_language, $mod_strings;
require_once('modules/Contacts/language/'.$current_language.'.lang.php');
$query = "SELECT fieldid, columnname, fieldlabel FROM vtiger_field WHERE tablename='vtiger_contactdetails' AND uitype='56' and vtiger_field.presence in (0,2)";
$result = $adb->query ($query,true,"Error: "."<BR>$query");
for ($tmp=0; $tmp < $adb->num_rows($result); $tmp++)
{
$myData = $adb->fetchByAssoc ($result);
$queryFields[] = Array('columnname'=>$myData['columnname']
,'uitype'=>'56','fieldlabel'=>getTranslatedString($myData['fieldlabel'], 'Contacts')
,'value'=> $valueArray);
}
}
if ($step == "ask")
{
require_once('config.php');
require_once('include/database/PearDatabase.php');
require_once('Smarty_setup.php');
$smarty = new vtigerCRM_Smarty;
$valueArray = Array('' => $mod_strings['LBL_MAILER_EXPORT_IGNORE'],
'0' => $mod_strings['LBL_MAILER_EXPORT_NOTCHECKED'],
'1' => $mod_strings['LBL_MAILER_EXPORT_CHECKED']);
$smarty->assign("MOD", return_module_language($current_language,'Accounts'));
$smarty->assign("CMOD", $mod_strings);
$smarty->assign("APP", $app_strings);
$smarty->assign("IMAGE_PATH",$image_path);
$smarty->assign("MODULE",$currentModule);
$smarty->assign("EXPORTWHERE",$exportWhere);
$queryFields = Array();
// get the Contacts CF fields
$cfquery = "SELECT columnname,fieldlabel,uitype FROM vtiger_field WHERE tablename='vtiger_contactscf' and vtiger_field.presence in (0,2)";
$result = $adb->query ($cfquery,true,"Error: "."<BR>$cfquery");
for ($tmp=0; $tmp < $adb->num_rows($result); $tmp++)
{
$cfTmp = $adb->fetchByAssoc ($result);
$cfColName=$cfTmp['columnname'];
if ($cfTmp['uitype'] == 1)
$queryFields[$tmp] = $cfTmp;
elseif ($cfTmp['uitype'] == 15)
{
$queryFields[$tmp] = $cfTmp;
$queryFields[$tmp]['value'][''] = $mod_strings['LBL_MAILER_EXPORT_IGNORE'];
$cfValues = "SELECT ".$cfColName.",".$cfColName."id FROM vtiger_".$cfColName;
$resVal = $adb->query ($cfValues,true,"Error: "."<BR>$cfValues");
for ($tmp1=0; $tmp1 < $adb->num_rows($resVal); $tmp1++)
{
$cfTmp=$adb->fetchByAssoc ($resVal);
$queryFields[$tmp]['value'][$cfTmp[$cfColName]] = $cfTmp[$cfColName];
}
}
elseif ($cfTmp['uitype'] == 56)
{
$queryFields[$tmp] = $cfTmp;
$queryFields[$tmp]['value'] = $valueArray;
}
}
// now add the standard fields
getStdContactFlds(&$queryFields, $adb, $valueArray);
// get the list of fields
$fieldList="";
foreach ($queryFields as $myField)
{
if (strlen($fieldList) > 0)
$fieldList .= ',';
$fieldList .= $myField['columnname'];
}
$smarty->assign("FIELDLIST",$fieldList);
// and their types
$typeList ="";
foreach ($queryFields as $myField)
{
if (strlen($typeList) > 0)
$typeList .= ',';
$typeList .= $myField['uitype'];
}
$smarty->assign("TYPELIST",$typeList);
$smarty->assign("QUERYFIELDS",$queryFields);
$smarty->assign("CATEGORY",$category);
$smarty->display('MailerExport.tpl');
}
else
{
require_once('../../config.php');
chdir ($root_directory);
require_once("include/utils/CommonUtils.php");
require_once('include/database/PearDatabase.php');
require_once('include/logging.php');
$exquery = Array();
$fields = explode(",",$_POST['fieldlist']);
$types = explode(",",$_POST['typelist']);
$escapxportWhere = $adb->sql_escape_string($exportWhere);
if (($export_type == "email") || ($export_type == "emailplus") )
{
$where = "";
if(count($fields) > 0)
$where .= getExpWhereClause($fields,$types);
$exquery[0] = "SELECT vtiger_crmentity.crmid, contactdetails.contactid,
contactdetails.salutation, contactdetails.firstname,
contactdetails.lastname, contactdetails.email FROM vtiger_account
INNER JOIN vtiger_crmentity on vtiger_crmentity.crmid=vtiger_account.accountid
INNER JOIN vtiger_accountbillads ON vtiger_account.accountid=vtiger_accountbillads.accountaddressid
INNER JOIN vtiger_accountshipads ON vtiger_account.accountid=vtiger_accountshipads.accountaddressid
INNER JOIN vtiger_accountscf ON vtiger_account.accountid = vtiger_accountscf.accountid
INNER JOIN vtiger_contactdetails contactdetails ON vtiger_account.accountid = contactdetails.accountid
INNER JOIN vtiger_crmentity contactdetails_crmentity ON contactdetails.contactid = contactdetails_crmentity.crmid
INNER JOIN vtiger_contactscf contactscf ON contactscf.contactid = contactdetails.contactid
LEFT JOIN vtiger_users ON vtiger_crmentity.smownerid=vtiger_users.id
LEFT JOIN vtiger_groups ON vtiger_crmentity.smownerid=vtiger_groups.groupid
WHERE vtiger_crmentity.deleted=0 AND contactdetails_crmentity.deleted=0 AND contactdetails.email != '' ".$where;
if (strlen ($exportWhere))
$exquery[0] .= " AND ".$exportWhere;
if ($export_type == "emailplus")
{
$exquery[1] = "SELECT vtiger_crmentity.crmid, contactdetails.contactid,
contactdetails.salutation, contactdetails.firstname,
contactdetails.lastname, vtiger_account.email1 FROM vtiger_account
INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid=vtiger_account.accountid
INNER JOIN vtiger_accountbillads ON vtiger_account.accountid=vtiger_accountbillads.accountaddressid
INNER JOIN vtiger_accountshipads ON vtiger_account.accountid=vtiger_accountshipads.accountaddressid
INNER JOIN vtiger_accountscf ON vtiger_account.accountid = vtiger_accountscf.accountid
INNER JOIN vtiger_contactdetails contactdetails ON vtiger_account.accountid = contactdetails.accountid
INNER JOIN vtiger_crmentity contactdetails_crmentity ON contactdetails.contactid = contactdetails_crmentity.crmid
INNER JOIN vtiger_contactscf contactscf ON contactscf.contactid = contactdetails.contactid
LEFT JOIN vtiger_users ON vtiger_crmentity.smownerid=vtiger_users.id
LEFT JOIN vtiger_groups ON vtiger_crmentity.smownerid=vtiger_groups.groupid
WHERE vtiger_crmentity.deleted=0 AND contactdetails_crmentity.deleted=0
AND contactdetails.email = '' AND vtiger_account.email1 != '' ".$where;
if (strlen ($exportWhere))
$exquery[1] .= " AND ".$exportWhere;
}
}
else if ($export_type == "full")
{
$where = '';
if(count($fields) > 0)
$where .= getExpWhereClause($fields,$types);
$exquery[0] = "select vtiger_crmentity.crmid, contactdetails.contactid,
contactdetails.salutation, contactdetails.firstname,
contactdetails.lastname, contactdetails.email, vtiger_account.accountname,"
." vtiger_account.phone, vtiger_account.website, vtiger_accountshipads.ship_street,"
." vtiger_accountshipads.ship_code,"
." vtiger_accountshipads.ship_city, vtiger_accountshipads.ship_state,"
." vtiger_accountshipads.ship_country,"
." vtiger_accountbillads.bill_street, vtiger_accountbillads.bill_code,"
." vtiger_accountbillads.bill_city, vtiger_accountbillads.bill_state,"
." vtiger_accountbillads.bill_country"
." FROM vtiger_account INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid=vtiger_account.accountid"
." LEFT JOIN vtiger_accountbillads ON vtiger_account.accountid=vtiger_accountbillads.accountaddressid"
." LEFT JOIN vtiger_accountshipads ON vtiger_account.accountid=vtiger_accountshipads.accountaddressid"
." INNER JOIN vtiger_accountscf ON vtiger_account.accountid = vtiger_accountscf.accountid"
." INNER JOIN vtiger_contactdetails contactdetails ON vtiger_account.accountid = contactdetails.accountid"
." INNER JOIN vtiger_crmentity contactdetails_crmentity ON contactdetails.contactid = contactdetails_crmentity.crmid"
." INNER JOIN vtiger_contactscf contactscf ON contactscf.contactid = contactdetails.contactid
LEFT JOIN vtiger_users ON vtiger_crmentity.smownerid=vtiger_users.id
LEFT JOIN vtiger_groups ON vtiger_crmentity.smownerid=vtiger_groups.groupid"
." WHERE vtiger_crmentity.deleted=0 AND contactdetails_crmentity.deleted=0 ".$where;
if (strlen ($exportWhere))
$exquery[0] .= " AND ".$exportWhere;
}
// Added for getting field labels of the fields selected in the above export queries. If any new fields added in the select clause then the below array need to be updated with the corresponding lablels
$fld_label_arr = Array("salutation"=>getTranslatedString('Salutation','Contacts'),
"lastname"=>getTranslatedString('Last Name','Contacts'),
"firstname"=>getTranslatedString('First Name','Contacts'),
"email"=>getTranslatedString('Email','Contacts'),
"accountname"=>getTranslatedString('Account Name','Accounts'),
"phone"=>getTranslatedString('Phone','Accounts'),
"website"=>getTranslatedString('Website','Accounts'),
"ship_street"=>getTranslatedString('Shipping Address','Accounts'),
"ship_code"=>getTranslatedString('Shipping Code','Accounts'),
"ship_city"=>getTranslatedString('Shipping City','Accounts'),
"ship_state"=>getTranslatedString('Shipping State','Accounts'),
"ship_country"=>getTranslatedString('Shipping Country','Accounts'),
"bill_street"=>getTranslatedString('Billing Address','Accounts'),
"bill_code"=>getTranslatedString('Billing Code','Accounts'),
"bill_city"=>getTranslatedString('Billing City','Accounts'),
"bill_state"=>getTranslatedString('Billing State','Accounts'),
"bill_country"=>getTranslatedString('Billing Country','Accounts')
);
for ($temp = 0; $temp < count($exquery); $temp++)
{
$result = $adb->query ($exquery[$temp],true,"Error exporting: "."<BR>$query");
if ($temp == 0) // We only need the headers for first query
{
$fields_array = $adb->getFieldsArray($result);
// Now walk through the array and replace any cf_* with the content of the
// name array, the index is the cf_ var name
for ($arraywalk = 0; $arraywalk < count($fields_array); $arraywalk++)
{
// echo "Checking: ".$fields_array[$arraywalk];
if (strstr ($fields_array[$arraywalk], "vtiger_cf_"))
{
$fields_array[$arraywalk] = $name[$fields_array[$arraywalk]];
// echo "Changing to: ".$fields_array[$arraywalk];
}
else
$fields_array[$arraywalk] = ($fld_label_arr[$fields_array[$arraywalk]]!='')?$fld_label_arr[$fields_array[$arraywalk]]:$fields_array[$arraywalk];
}
$header = implode("\",\"",array_values($fields_array));
$header = "\"" .$header;
$header .= "\"\r\n";
$content .= $header;
$column_list = implode(",",array_values($fields_array));
}
while($val = $adb->fetchByAssoc($result, -1, false))
{
$new_arr = array();
// foreach (array_values($val) as $value)
foreach ($val as $key => $value)
{
$value=br2nl_int($value);
array_push($new_arr, preg_replace("/\"/","\"\"",$value));
}
$line = implode("\",\"",$new_arr);
$line = "\"" .$line;
$line .= "\"\r\n";
$content .= $line;
}
}
// echo "<br>Rows: ".$adb->num_rows($result);
header( "Content-Disposition: inline; filename=MailerExport.csv");
header( "Content-Type: text/csv; charset=".$app_strings['LBL_CHARSET']);
header( "Expires: Mon, 26 Jul 2007 05:00:00 GMT" );
header( "Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT" );
header( "Cache-Control: post-check=0, pre-check=0", false );
header( "Content-Length: ".strlen($content));
print $content;
exit ();
}
function getExpWhereClause($fields,$types)
{
global $adb;
$where_cond = "";
foreach ($fields as $myField)
{
$myType = each($types);
if (strlen($_POST[$myField]) > 0)
{
// type 1 should use a LIKE search
if ($myType['value'] == 1)
{
$equals = " LIKE '";
$postfix = "%'";
}
else
{
$equals = " = '";
$postfix = "'";
}
// is customer field
if (substr($myField,0,3) == 'cf_')
$where_cond .= " AND contactscf.".$myField.$equals.$adb->sql_escape_string($_POST[$myField]).$postfix;
else
$where_cond .= " AND contactdetails.".$myField.$equals.$adb->sql_escape_string($_POST[$myField]).$postfix;
}
}
return $where_cond;
}
?>

View File

@ -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.
************************************************************************************/
require_once('modules/Vtiger/MassEdit.php');
?>

View File

@ -0,0 +1,67 @@
<?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);
$idlist= vtlib_purify($_REQUEST['massedit_recordids']);
$viewid = vtlib_purify($_REQUEST['viewname']);
$return_module = vtlib_purify($_REQUEST['massedit_module']);
$return_action = 'index';
global $rstart;
//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($fieldname == 'assigned_user_id'){
if($_REQUEST['assigntype'] == 'U') {
$value = $_REQUEST['assigned_user_id'];
} elseif($_REQUEST['assigntype'] == 'T') {
$value = $_REQUEST['assigned_group_id'];
}
} else {
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");
?>

302
modules/Accounts/Merge.php Normal file
View File

@ -0,0 +1,302 @@
<?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.
*
********************************************************************************/
?>
<html>
<body>
<script>
if (document.layers)
{
document.write("This feature requires IE 5.5 or higher for Windows on Microsoft Windows 2000, Windows NT4 SP6, Windows XP.");
document.write("<br><br>Click <a href='#' onclick='window.history.back();'>here</a> to return to the previous page");
}
else if (document.layers || (!document.all && document.getElementById))
{
document.write("This feature requires IE 5.5 or higher for Windows on Microsoft Windows 2000, Windows NT4 SP6, Windows XP.");
document.write("<br><br>Click <a href='#' onclick='window.history.back();'>here</a> to return to the previous page");
}
else if(document.all)
{
document.write("<br><br>Click <a href='#' onclick='window.history.back();'>here</a> to return to the previous page");
document.write("<OBJECT Name='vtigerCRM' codebase='modules/Settings/vtigerCRM.CAB#version=1,5,0,0' id='objMMPage' classid='clsid:0FC436C2-2E62-46EF-A3FB-E68E94705126' width=0 height=0></object>");
}
</script>
<?php
require_once('include/database/PearDatabase.php');
require_once('config.php');
global $default_charset;
// Fix For: http://trac.vtiger.com/cgi-bin/trac.cgi/ticket/2107
$randomfilename = "vt_" . str_replace(array("."," "), "", microtime());
$templateid = $_REQUEST['mergefile'];
if($templateid == "")
{
die("Select Mail Merge Template");
}
//get the particular file from db and store it in the local hard disk.
//store the path to the location where the file is stored and pass it as parameter to the method
$sql = "select filename,data,filesize from vtiger_wordtemplates where templateid=?";
$result = $adb->pquery($sql, array($templateid));
$temparray = $adb->fetch_array($result);
$fileContent = $temparray['data'];
$filename=html_entity_decode($temparray['filename'], ENT_QUOTES, $default_charset);
// Fix For: http://trac.vtiger.com/cgi-bin/trac.cgi/ticket/2107
$filename= $randomfilename . "_word.doc";
$filesize=$temparray['filesize'];
$wordtemplatedownloadpath =$root_directory ."/test/wordtemplatedownload/";
$handle = fopen($wordtemplatedownloadpath.$filename,"wb");
fwrite($handle,base64_decode($fileContent),$filesize);
fclose($handle);
//<<<<<<<<<<<<<<<<<<<<<<<<<<<for mass merge>>>>>>>>>>>>>>>>>>>>>>>>>>>
$mass_merge = $_REQUEST['allselectedboxes'];
$single_record = $_REQUEST['record'];
if($mass_merge != "")
{
$mass_merge = explode(";",$mass_merge);
$temp_mass_merge = $mass_merge;
if(array_pop($temp_mass_merge)=="")
array_pop($mass_merge);
//$mass_merge = implode(",",$mass_merge);
}else if($single_record != "")
{
$mass_merge = $single_record;
}else
{
die("Record Id is not found, cannot merge the document");
}
//echo $mass_merge;
//die;
//for setting vtiger_accountid=0 for the contacts which are deleted
$ct_query = "select crmid from vtiger_crmentity where setype='Contacts' and deleted=1";
$result = $adb->pquery($ct_query, array());
while($row = $adb->fetch_array($result))
{
$deleted_id[] = $row['crmid'];
}
if(count($deleted_id) > 0)
{
$update_query = "update vtiger_contactdetails set accountid = 0 where contactid in (". generateQuestionMarks($deleted_id) .")";
$result = $adb->pquery($update_query, array($deleted_id));
}
//End setting vtiger_accountid=0 for the contacts which are deleted
//<<<<<<<<<<<<<<<<header for csv and select columns for query>>>>>>>>>>>>>>>>>>>>>>>>
global $current_user;
require('user_privileges/user_privileges_'.$current_user->id.'.php');
if($is_admin == true || $profileGlobalPermission[1] == 0 || $profileGlobalPermission[2] == 0 || $module == "Users" || $module == "Emails")
{
$query1="select vtiger_tab.name,vtiger_field.tablename,vtiger_field.columnname,vtiger_field.fieldlabel from vtiger_field inner join vtiger_tab on vtiger_tab.tabid = vtiger_field.tabid where vtiger_field.tabid in (4,6) and vtiger_field.block <> 75 and vtiger_field.presence in (0,2) order by vtiger_field.tablename";
$params1 = array();
}
else
{
$profileList = getCurrentUserProfileList();
$query1="select vtiger_tab.name,vtiger_field.tablename,vtiger_field.columnname,vtiger_field.fieldlabel from vtiger_field inner join vtiger_tab on vtiger_tab.tabid = vtiger_field.tabid INNER JOIN vtiger_profile2field ON vtiger_profile2field.fieldid=vtiger_field.fieldid INNER JOIN vtiger_def_org_field ON vtiger_def_org_field.fieldid=vtiger_field.fieldid where vtiger_field.tabid in (4,6) and vtiger_field.block <> 75 AND vtiger_profile2field.visible=0 AND vtiger_def_org_field.visible=0 AND vtiger_profile2field.profileid IN (". generateQuestionMarks($profileList) .") and vtiger_field.presence in (0,2) GROUP BY vtiger_field.fieldid order by vtiger_field.tablename";
$params1 = array($profileList);
//Postgres 8 fixes
if( $adb->dbType == "pgsql")
$query1 = fixPostgresQuery( $query1, $log, 0);
}
$result = $adb->pquery($query1, $params1);
$y=$adb->num_rows($result);
$userNameSql = getSqlForNameInDisplayFormat(array('first_name'=>
'vtiger_users.first_name', 'last_name' => 'vtiger_users.last_name'), 'Users');
$contactUserNameSql = getSqlForNameInDisplayFormat(array('first_name'=>'usersContacts.first_name', 'last_name' =>
'usersContacts.last_name'), 'Users');
for ($x=0; $x<$y; $x++)
{
$tablename = $adb->query_result($result,$x,"tablename");
$columnname = $adb->query_result($result,$x,"columnname");
$modulename = $adb->query_result($result,$x,"name");
if($tablename == "crmentity")
{
if($modulename == "Contacts")
{
$tablename = "vtiger_crmentityContacts";
}
}
$querycolumns[$x] = $tablename.".".$columnname;
if($columnname == "smownerid")
{
if($modulename == "Accounts")
{
$querycolumns[$x] = "case when (vtiger_users.user_name not like '') then $userNameSql else vtiger_groups.groupname end as userjoinname,vtiger_users.first_name,vtiger_users.last_name,vtiger_users.user_name,vtiger_users.secondaryemail,vtiger_users.title,vtiger_users.phone_work,vtiger_users.department,vtiger_users.phone_mobile,vtiger_users.phone_other,vtiger_users.phone_fax,vtiger_users.email1,vtiger_users.phone_home,vtiger_users.email2,vtiger_users.address_street,vtiger_users.address_city,vtiger_users.address_state,vtiger_users.address_postalcode,vtiger_users.address_country";
}
if($modulename == "Contacts")
{
$querycolumns[$x] = "case when (usersContacts.user_name not like '') then $contactUserNameSql else groupsContacts.groupname end as userjoincname";
}
}
if($columnname == "parentid")
{
$querycolumns[$x] = "vtiger_accountAccount.accountname";
}
if($columnname == "accountid")
{
$querycolumns[$x] = "vtiger_accountContacts.accountname";
}
if($columnname == "reportsto")
{
$querycolumns[$x] = "vtiger_contactdetailsContacts.lastname";
}
if($modulename == "Accounts")
{
$field_label[$x] = "ACCOUNT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
if($columnname == "smownerid")
{
$field_label[$x] = $field_label[$x].",USER_FIRSTNAME,USER_LASTNAME,USER_USERNAME,USER_SECONDARYEMAIL,USER_TITLE,USER_OFFICEPHONE,USER_DEPARTMENT,USER_MOBILE,USER_OTHERPHONE,USER_FAX,USER_EMAIL,USER_HOMEPHONE,USER_OTHEREMAIL,USER_PRIMARYADDRESS,USER_CITY,USER_STATE,USER_POSTALCODE,USER_COUNTRY";
}
}
if($modulename == "Contacts")
{
$field_label[$x] = "CONTACT_".strtoupper(str_replace(" ","",$adb->query_result($result,$x,"fieldlabel")));
}
}
$csvheader = implode(",",$field_label);
//<<<<<<<<<<<<<<<<End>>>>>>>>>>>>>>>>>>>>>>>>
if(count($querycolumns) > 0)
{
$selectcolumns = implode($querycolumns,",");
$query = "select $selectcolumns from vtiger_account
inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_account.accountid
inner join vtiger_accountbillads on vtiger_account.accountid=vtiger_accountbillads.accountaddressid
inner join vtiger_accountshipads on vtiger_account.accountid=vtiger_accountshipads.accountaddressid
inner join vtiger_accountscf on vtiger_account.accountid = vtiger_accountscf.accountid
left join vtiger_account as vtiger_accountAccount on vtiger_accountAccount.accountid = vtiger_account.parentid
left join vtiger_users on vtiger_users.id = vtiger_crmentity.smownerid
LEFT JOIN vtiger_groups
ON vtiger_groups.groupid = vtiger_crmentity.smownerid
left join vtiger_contactdetails on vtiger_contactdetails.accountid=vtiger_account.accountid
left join vtiger_crmentity as vtiger_crmentityContacts on vtiger_crmentityContacts.crmid = vtiger_contactdetails.contactid
left join vtiger_contactaddress on vtiger_contactdetails.contactid = vtiger_contactaddress.contactaddressid
left join vtiger_contactsubdetails on vtiger_contactdetails.contactid = vtiger_contactsubdetails.contactsubscriptionid
left join vtiger_contactscf on vtiger_contactdetails.contactid = vtiger_contactscf.contactid
left join vtiger_customerdetails on vtiger_contactdetails.contactid = vtiger_customerdetails.customerid
left join vtiger_contactdetails as vtiger_contactdetailsContacts on vtiger_contactdetailsContacts.contactid = vtiger_contactdetails.reportsto
left join vtiger_account as vtiger_accountContacts on vtiger_accountContacts.accountid = vtiger_contactdetails.accountid
left join vtiger_users as usersContacts on usersContacts.id = vtiger_crmentityContacts.smownerid
LEFT JOIN vtiger_groups as groupsContacts
ON groupsContacts.groupid = vtiger_crmentity.smownerid
where vtiger_crmentity.deleted=0 and (vtiger_crmentityContacts.deleted=0 || vtiger_crmentityContacts.deleted is null) and vtiger_account.accountid in(". generateQuestionMarks($mass_merge) .")";
//echo $query;
//die;
$result = $adb->pquery($query, array($mass_merge));
$avail_pick_arr = getAccessPickListValues('Accounts');
while($columnValues = $adb->fetch_array($result))
{
$y=$adb->num_fields($result);
for($x=0; $x<$y; $x++)
{
$value = $columnValues[$x];
foreach($columnValues as $key=>$val)
{
if($val == $value && $value != '')
{
if(array_key_exists($key,$avail_pick_arr))
{
if(!in_array($val,$avail_pick_arr[$key]))
{
$value = "Not Accessible";
}
}
}
}
//<<<<<<<<<<<<<<<for modifing default values>>>>>>>>>>>>>>>>>>>>>>>>>>>>
if(trim($value) == "--None--" || trim($value) == "--none--")
{
$value = "";
}
//<<<<<<<<<<<<<<<End>>>>>>>>>>>>>>>>>>>>>>>>>>>>
$actual_values[$x] = $value;
$actual_values[$x] = str_replace('"'," ",$actual_values[$x]);
//if value contains any line feed or carriage return replace the value with ".value."
if (preg_match ("/(\r?\n)/", $actual_values[$x]))
{
$actual_values[$x] = '"'.$actual_values[$x].'"';
}
$actual_values[$x] = decode_html(str_replace(","," ",$actual_values[$x]));
}
$mergevalue[] = implode($actual_values,",");
}
$csvdata = implode($mergevalue,"###");
}else
{
die("No fields to do Merge");
}
// Fix for: http://trac.vtiger.com/cgi-bin/trac.cgi/ticket/2107
$datafilename = $randomfilename . "_data.csv";
$handle = fopen($wordtemplatedownloadpath.$datafilename,"wb");
fwrite($handle,$csvheader."\r\n");
fwrite($handle,str_replace("###","\r\n",$csvdata));
fclose($handle);
?>
<script>
if (window.ActiveXObject){
try
{
ovtigerVM = eval("new ActiveXObject('vtigerCRM.ActiveX');");
if(ovtigerVM)
{
var filename = "<?php echo $filename?>";
if(filename != "")
{
if(objMMPage.bDLTempDoc("<?php echo $site_URL;?>/test/wordtemplatedownload/<?php echo $filename; ?>","MMTemplate.doc"))
{
try
{
if(objMMPage.Init())
{
objMMPage.vLTemplateDoc();
objMMPage.bBulkHDSrc("<?php echo $site_URL;?>/test/wordtemplatedownload/<?php echo $datafilename ?>");
objMMPage.vBulkOpenDoc();
objMMPage.UnInit()
window.history.back();
}
}catch(errorObject)
{
document.write("Error while processing mail merge operation");
}
}else
{
document.write("Cannot get template document");
}
}
}
}
catch(e) {
document.write("Requires to download ActiveX Control from vtigerCRM. Please, ensure that you have administration privilage");
}
}
</script>
</body>
</html>

View File

@ -0,0 +1,16 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
require_once('Popup.php');
?>

View File

@ -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");
}
?>

View File

@ -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/quickcreate.php');
?>

225
modules/Accounts/Save.php Normal file
View File

@ -0,0 +1,225 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/Save.php,v 1.7 2005/03/15 09:55:31 shaw Exp $
* Description: Saves an Account record and then redirects the browser to the
* defined return URL.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
require_once('modules/Accounts/Accounts.php');
require_once('include/logging.php');
require_once('include/database/PearDatabase.php');
//added to fix 4600
$search=vtlib_purify($_REQUEST['search_url']);
if(isset($_REQUEST['dup_check']) && $_REQUEST['dup_check'] != '')
{
//started
$value = $_REQUEST['accountname'];
$query = "SELECT accountname FROM vtiger_account,vtiger_crmentity WHERE accountname =? and vtiger_account.accountid = vtiger_crmentity.crmid and vtiger_crmentity.deleted != 1";
$params = array($value);
$id = $_REQUEST['record'];
if(isset($id) && $id !='') {
$query .= " and vtiger_account.accountid != ?";
array_push($params, $id);
}
$result = $adb->pquery($query, $params);
if($adb->num_rows($result) > 0)
{
echo $mod_strings['LBL_ACCOUNT_EXIST'];
}
else
{
echo 'SUCCESS';
}
die;
}
//Ended
$local_log =& LoggerManager::getLogger('index');
global $log;
$focus = new Accounts();
global $current_user;
$currencyid=fetchCurrency($current_user->id);
$rate_symbol = getCurrencySymbolandCRate($currencyid);
$rate = $rate_symbol['rate'];
$curr_symbol = $rate_symbol['symbol'];
if(isset($_REQUEST['record']))
{
$focus->id = $_REQUEST['record'];
$log->info("id is ".$focus->id);
}
if(isset($_REQUEST['mode']))
{
$focus->mode = $_REQUEST['mode'];
}
foreach($focus->column_fields as $fieldname => $val)
{
if(isset($_REQUEST[$fieldname]))
{
if(is_array($_REQUEST[$fieldname]))
$value = $_REQUEST[$fieldname];
else
$value = trim($_REQUEST[$fieldname]);
$log->DEBUG($fieldname."=Field Name &first& Value =".$value);
$focus->column_fields[$fieldname] = $value;
}
}
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'];
}
//When changing the Account Address Information it should also change the related contact address - dina
if($focus->mode == 'edit' && $_REQUEST['address_change'] == 'yes')
{
$query = "update vtiger_contactaddress set mailingcity=?,mailingstreet=?,mailingcountry=?,mailingzip=?,mailingpobox=?,mailingstate=?,othercountry=?,othercity=?,otherstate=?,otherzip=?,otherstreet=?,otherpobox=? where contactaddressid in (select contactid from vtiger_contactdetails where accountid=?)" ;
$params = array($focus->column_fields['bill_city'], $focus->column_fields['bill_street'], $focus->column_fields['bill_country'],
$focus->column_fields['bill_code'], $focus->column_fields['bill_pobox'], $focus->column_fields['bill_state'], $focus->column_fields['ship_country'],
$focus->column_fields['ship_city'], $focus->column_fields['ship_state'], $focus->column_fields['ship_code'], $focus->column_fields['ship_street'],
$focus->column_fields['ship_pobox'], $focus->id);
$adb->pquery($query, $params);
}
//Changing account address - Ends
$focus->save("Accounts");
if(isset($_REQUEST['return_module']) && $_REQUEST['return_module'] == "Campaigns")
{
if(isset($_REQUEST['return_id']) && $_REQUEST['return_id'] != "")
{
$campAccStatusResult = $adb->pquery("select campaignrelstatusid from vtiger_campaignaccountrel where campaignid=? AND accountid=?",array($_REQUEST['return_id'], $focus->id));
$accountStatus = $adb->query_result($campAccStatusResult,0,'campaignrelstatusid');
$sql = "delete from vtiger_campaignaccountrel where accountid = ?";
$adb->pquery($sql, array($focus->id));
if(isset($accountStatus) && $accountStatus!=''){
$sql = "insert into vtiger_campaignaccountrel values (?,?,?)";
$adb->pquery($sql, array($_REQUEST['return_id'], $focus->id,$accountStatus));
}
else{
$sql = "insert into vtiger_campaignaccountrel values (?,?,1)";
$adb->pquery($sql, array($_REQUEST['return_id'], $focus->id));
}
}
}
$return_id = $focus->id;
$parenttab = getParentTab();
if(isset($_REQUEST['return_module']) && $_REQUEST['return_module'] != "") $return_module = vtlib_purify($_REQUEST['return_module']);
else $return_module = "Accounts";
if(isset($_REQUEST['return_action']) && $_REQUEST['return_action'] != "") $return_action = vtlib_purify($_REQUEST['return_action']);
else $return_action = "DetailView";
if(isset($_REQUEST['return_id']) && $_REQUEST['return_id'] != "") $return_id = vtlib_purify($_REQUEST['return_id']);
$local_log->debug("Saved record with id of ".$return_id);
//code added for returning back to the current view after edit from list view
if($_REQUEST['return_viewname'] == '') $return_viewname='0';
if($_REQUEST['return_viewname'] != '')$return_viewname=vtlib_purify($_REQUEST['return_viewname']);
header("Location: index.php?action=$return_action&module=$return_module&parenttab=$parenttab&record=$return_id&viewname=$return_viewname&start=".vtlib_purify($_REQUEST['pagenumber']).$search);
/** Function to save Accounts custom field info into database
* @param integer $entity_id - accountid
*/
function save_customfields($entity_id)
{
global $log;
$log->debug("Entering save_customfields(".$entity_id.") method ...");
$log->info("save customfields invoked");
global $adb;
$dbquery = "SELECT * FROM customfields WHERE module = 'Accounts'";
$result = $adb->pquery($dbquery, array());
$custquery = "SELECT * FROM vtiger_accountcf WHERE vtiger_accountid = ?";
$cust_result = $adb->pquery($custquery, array($entity_id));
if($adb->num_rows($result) != 0)
{
$columns='';
$values='';
$ins_params = array();
$update='';
$upd_params = array();
$noofrows = $adb->num_rows($result);
for($i=0; $i<$noofrows; $i++)
{
$fldName=$adb->query_result($result,$i,"fieldlabel");
$colName=$adb->query_result($result,$i,"column_name");
if(isset($_REQUEST[$colName]))
{
$fldvalue=$_REQUEST[$colName];
if(get_magic_quotes_gpc() == 1)
{
$fldvalue = stripslashes($fldvalue);
}
}
else
{
$fldvalue = '';
}
if(isset($_REQUEST['record']) && $_REQUEST['record'] != '' && $adb->num_rows($cust_result) !=0)
{
//Update Block
if($i == 0)
{
$update = $colName."=?";
array_push($upd_params, $fldvalue);
}
else
{
$update .= ', '.$colName."=?";
array_push($upd_params, $fldvalue);
}
}
else
{
//Insert Block
if($i == 0)
{
$columns='accountid, '.$colName;
array_push($ins_params, $entity_id, $fldvalue);
}
else
{
$columns .= ', '.$colName;
array_push($ins_params, $fldvalue);
}
}
}
if(isset($_REQUEST['record']) && $_REQUEST['record'] != '' && $adb->num_rows($cust_result) !=0)
{
//Update Block
$query = "UPDATE vtiger_accountcf SET $update WHERE vtiger_accountid=?";
array_push($upd_params, $entity_id);
$adb->pquery($query, $upd_params);
}
else
{
//Insert Block
$query = "INSERT INTO vtiger_accountcf ($columns) VALUES(" . generateQuestionMarks($ins_params) .")";
$adb->pquery($query, $ins_params);
}
}
$log->debug("Exiting save_customfields method ...");
}
?>

View File

@ -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');
?>

View File

@ -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/Ajax/TagCloud.php')
?>

View File

@ -0,0 +1,100 @@
<?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/Accounts/Accounts.php");
require_once("getCompanyProfile.php");
$variable = vtlib_purify($_REQUEST['tickersymbol']);
$url = "http://moneycentral.msn.com/investor/research/profile.asp?Symbol=".trim($variable);
$data = getComdata($url,trim($variable));
if(is_array($data))
{
$summary = array_shift($data);
list($comp, $address, $phone, $fax, $site, $industry, $emp,$desc1,$desc2) = explode(":", $summary);
$address = str_replace("Company Report","",$address);
$address = str_replace("Phone","",$address);
$phone = str_replace("Fax","",$phone);
$fax = str_replace("http","",$fax);
$site = str_replace("Industry","",$site);
$site = str_replace("//","",$site);
$industry = str_replace("Employees","",$industry);
$emp = str_replace("Exchange","",$emp);
$first_array =array_slice($data,0, 8);
$second_array = array_slice($data,8);
$output='';
$output .= '<table border="0" cellpadding="0" cellspacing="0" width="80%" align=center>
<tr><td class="detailedViewHeader" style="cursor:pointer;" onclick=\'just();\'><b>Company Report</b></td></tr>
<tr><td>
<div id="company">
<div id="innerLayer">
<input type="hidden" name="address" value="'.trim($address).'">
<input type="hidden" name="Phone" value="'.trim($phone).'">
<input type="hidden" name="Fax" value="'.trim($fax).'">
<input type="hidden" name="site" value="'.trim($site).'">
<input type="hidden" name="emp" value="'.trim($emp).'">
<table class="small" border="0" cellpadding="0" cellspacing="0" width="60%" align="center">
<tr>
<td colspan="2" class="detailedViewHeader"><b>'.$comp.'</b></td>
</tr>';
$output .='<tr><td><table><tr><td><table width="185">';
foreach($first_array as $arr => $val)
{
$output .= '<tr>';
for($j=0;$j<count($val);$j+=2)
{
$output .= '<td class="dvtCellLabel" align="right" width="20%">'.$val[$j].'</td>
<td width="30%" align="left" class="dvtCellInfo">'.$val[$j+1].'</td>';
}
$output .= '</tr>';
}
$output .='</table></td>';
$output .='<td><table width="185">';
array_shift($second_array[0]);
array_shift($second_array[0]);
foreach($second_array as $arr => $val)
{
$output .= '<tr>';
for($j=0;$j<count($val);$j+=2)
{
$output .= '<td lass="dvtCellLabel" align="right" width="20%">'.$val[$j].'</td>
<td width="30%" align="left" class="dvtCellInfo">'.$val[$j+1].'</td>';
}
$output .= '</tr>';
}
$output .='</table></td><td align=left><a href="http://finance.yahoo.com/q/bc?s='.trim($variable).'&amp;t=1d" target="_blank"><img src="http://ichart.finance.yahoo.com/t?s='.trim($variable).'" width="192" height="96" alt="[Chart]" border="0"></a></td></tr></table></td></tr>';
$output .= '<tr style="height: 25px;">
<td colspan="2" style="border-top:1px solid #eaeaea;">&nbsp;</td>
</tr></table>';
$output .= '<table class="small" border="0" cellpadding="0" cellspacing="0" width="60%" align="center" id="conf">
<tr>
<td colspan="2" class="detailedViewHeader"><b>BUSINESS SUMMARY</b></td>
</tr>
<td width="30%" align="left" class="dvtCellInfo"><textarea id="summary" cols=80 rows=5 readonly>'.$desc1.' '.$desc2.'</textarea></td>
</tr>
<tr>
<td colspan="2" style="padding: 5px;border-top:1px solid #eaeaea;">
<div align="center">
<input title="Save [Alt+S]" accesskey="S" class="small" name="button" value="Yes" style="width: 70px;" type="button" onclick=\'fnDown("conf");\' />
<input title="Cancel [Alt+X]" accesskey="X" class="small" name="button" value="No" style="width: 70px;" type="button" onclick=\'just();\'/>
</div>
</td>
</tr>
</table>
</div></div>
</td></tr></table>';
echo $output;
}
else
{
$output = '';
$output .= "<div style='display:block'>";
$output .= "<b><font color='red'>".$data."</font>";
$output .= "</div>";
echo $output;
}
?>

View File

@ -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';
?>

View File

@ -0,0 +1,57 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/index.php,v 1.4 2005/03/17 10:53:29 samk Exp $
* Description: TODO To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
global $theme;
$theme_path="themes/".$theme."/";
$image_path=$theme_path."images/";
global $mod_strings;
include ('modules/Accounts/ListView.php');
?>

View File

@ -0,0 +1,234 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Organisationen',
'LBL_MODULE_TITLE'=>'Organisationen: Home',
'LBL_SEARCH_FORM_TITLE'=>'suche Organisation',
'LBL_LIST_FORM_TITLE'=>'Organisationen',
'LBL_NEW_FORM_TITLE'=>'neue Organisation',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Zugehörige Organisationen',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'meine top Organisationen',
'LBL_TOP_AMOUNT'=>'Betrag',
'LBL_LIST_ACCOUNT_NAME'=>'Organisationsname',
'LBL_LIST_CITY'=>'Ort',
'LBL_LIST_WEBSITE'=>'Webseite',
'LBL_LIST_STATE'=>'Bundesland',
'LBL_LIST_PHONE'=>'Telephone',
'LBL_LIST_EMAIL_ADDRESS'=>'E-Mail Adresse',
'LBL_LIST_CONTACT_NAME'=>'Personenname',
'LBL_LIST_AMOUNT' => 'Total Potentiale',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Organisation:',
'LBL_ACCOUNT_NAME'=>'Organisation:',
'LBL_PHONE'=>'Telefon:',
'LBL_WEBSITE'=>'Webseite:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Org. Namenszusatz:',
'LBL_OTHER_PHONE'=>'weiteres Telefon:',
'LBL_ANY_PHONE'=>'weiteres Telefon:',
'LBL_MEMBER_OF'=>'gehört zu:',
'LBL_EMAIL'=>'E-Mail:',
'LBL_EMPLOYEES'=>'Mitarbeiter:',
'LBL_OTHER_EMAIL_ADDRESS'=>'weitere E-Mail:',
'LBL_ANY_EMAIL'=>'andere E-Mail:',
'LBL_OWNERSHIP'=>'Eigentümer:',
'LBL_RATING'=>'Bewertung:',
'LBL_INDUSTRY'=>'Branche:',
'LBL_SIC_CODE'=>'Ustnr.:',
'LBL_TYPE'=>'Typ:',
'LBL_ANNUAL_REVENUE'=>'Jahresumsatz:',
'LBL_ADDRESS_INFORMATION'=>'Adresse',
'LBL_ACCOUNT_INFORMATION'=>'Organisation',
'LBL_CUSTOM_INFORMATION'=>'zusätzliche Information',
'LBL_BILLING_ADDRESS'=>'Rechnungsadresse:',
'LBL_SHIPPING_ADDRESS'=>'Lieferadresse:',
'LBL_ANY_ADDRESS'=>'beliebige Adresse:',
'LBL_CITY'=>'Ort:',
'LBL_STATE'=>'Bundesland:',
'LBL_POSTAL_CODE'=>'PLZ:',
'LBL_COUNTRY'=>'Land:',
'LBL_DESCRIPTION_INFORMATION'=>'Zusatzinformationen',
'LBL_DESCRIPTION'=>'Beschreibung:',
'NTC_COPY_BILLING_ADDRESS'=>'Kopiere Rechnungsadresse auf Lieferadresse',
'NTC_COPY_SHIPPING_ADDRESS'=>'Kopiere Lieferadresse auf Rechnungsadresse',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'Möchten Sie diesen Eintrag einer Organisation löschen?',
'LBL_DUPLICATE'=>'eventuell doppelte Organisation angelegt',
'MSG_DUPLICATE' => 'Das Anlegen dieser Organisation führt möglicherweise zu einer doppelten Eintragung. Sie können entweder mit der Auswahl einer Organisation aus der untenstehenden Liste fortfahren oder einen neue Organisation anlegen.',
'LBL_INVITEE'=>'Kontakte',
'ERR_DELETE_RECORD'=>"Zum Löschen muss mindestens ein Eintrag markiert sein.",
'LBL_SELECT_ACCOUNT'=>'Organisation wählen',
'LBL_GENERAL_INFORMATION'=>'allgemeine Information',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'neues Verkaufspotential',
'LBL_POTENTIAL_TITLE'=>'Potentiale',
'LBL_NEW_TASK'=>'neue Aufgabe',
'LBL_TASK_TITLE'=>'Aufgaben',
'LBL_NEW_CALL'=>'neuer Anruf',
'LBL_CALL_TITLE'=>'Anrufe',
'LBL_NEW_MEETING'=>'neues Meeting',
'LBL_MEETING_TITLE'=>'Meetings',
'LBL_NEW_EMAIL'=>'neue E-Mail',
'LBL_EMAIL_TITLE'=>'E-Mails',
'LBL_NEW_CONTACT'=>'neue Person',
'LBL_CONTACT_TITLE'=>'Personen',
//Added fields after RC1 - Release
'LBL_ALL'=>'Alle',
'LBL_PROSPECT'=>'Potentieller Kunde',
'LBL_INVESTOR'=>'Investor',
'LBL_RESELLER'=>'Wiederverkäufer',
'LBL_PARTNER'=>'Partner',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Werkzeuge',
//Added for 4GA
'Account Name'=>'Organisation',
'Phone'=>'Telefon',
'Website'=>'Webseite',
'Fax'=>'Fax',
'Ticker Symbol'=>'Org. Namenszusatz',
'Other Phone'=>'weiteres Telefon',
'Member Of'=>'Mitglied von',
'Email'=>'E-Mail',
'Employees'=>'Mitarbeiter',
'Other Email'=>'andere E-Mail',
'Ownership'=>'Besitzer',
'Rating'=>'Bewertung',
'industry'=>'Branche',
'SIC Code'=>'Ust. Nr.',
'Type'=>'Typ',
'Annual Revenue'=>'Jahresumsatz',
'Assigned To'=>'zuständig ',
'Billing Address'=>'Rechnungsadresse Strasse',
'Shipping Address'=>'Lieferadresse Strasse',
'Billing City'=>'Rechnungsadresse Ort',
'Shipping City'=>'Lieferadresse Ort',
'Billing State'=>'Rechnungsadresse Bundesland',
'Shipping State'=>'Lieferadresse Bundesland',
'Billing Code'=>'Rechnungsadresse PLZ',
'Shipping Code'=>'Lieferadresse PLZ',
'Billing Country'=>'Rechnungsadresse Land',
'Shipping Country'=>'Lieferadresse Land',
'Created Time'=>'erstellt',
'Modified Time'=>'geändert',
'Description'=>'Beschreibung',
'Shipping Po Box'=>'Lieferadresse Postfachnr.',
'Billing Po Box'=>'Rechnungsadresse Postfachnr.',
//Added after 4.2 patch 2
'Email Opt Out'=>'E-Mail Opt aus',
'LBL_EMAIL_OPT_OUT'=>'E-Mail Opt aus:',
//Added after 5Alpha5
'Notify Owner'=>'Besitzer informieren',
//Added for existing picklist entries
'--None--'=>'--ohne--',
'Acquired'=>'erworben',
'Active'=>'aktiv',
'Market Failed'=>'Markt verfehlt',
'Project Cancelled'=>'Projekt abgebrochen',
'Shutdown'=>'Stillstand',
'Apparel'=>'Bekleidungsindustrie',
'Banking'=>'Banken',
'Biotechnology'=>'Biotechnologie',
'Chemicals'=>'Chemie',
'Communications'=>'Kommunikation',
'Construction'=>'Anlagenbau',
'Consulting'=>'Beratung',
'Education'=>'Bildung',
'Electronics'=>'Elektronik',
'Energy'=>'Energie',
'Engineering'=>'Ingenieurwesen',
'Entertainment'=>'Unterhaltung',
'Environmental'=>'Umwelt',
'Finance'=>'Finanzen',
'Food & Beverage'=>'Nahrungsmittel',
'Government'=>'Regierung',
'Healthcare'=>'Gesundheitswesen',
'Hospitality'=>'Beherbergung',
'Insurance'=>'Versicherung',
'Machinery'=>'Maschinen',
'Manufacturing'=>'Fertigung',
'Media'=>'Medien',
'Not For Profit'=>'Wohlfahrt',
'Recreation'=>'Freizeit und Erholung',
'Retail'=>'Einzelhandel',
'Shipping'=>'Spedition',
'Technology'=>'Technologie',
'Telecommunications'=>'Telekommunikation',
'Transportation'=>'Transport',
'Utilities'=>'Versorgungseinrichtung',
'Other'=>'andere',
'Analyst'=>'Analyst',
'Competitor'=>'Wettbewerber',
'Customer'=>'Kunde',
'Integrator'=>'Integrator',
'Investor'=>'Investor',
'Partner'=>'Partner',
'Press'=>'Presse',
'Prospect'=>'Interessent',
'Reseller'=>'Wiederverkäufer',
'LBL_START_DATE' => 'Startdatum',
'LBL_END_DATE' => 'Endedatum',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'Diesen Organisationsnamen gibt es bereits!',
// mailer export
'LBL_MAILER_EXPORT' => 'Mailer Export',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Personen auswählen:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'Personen können auch über "benutzerdefinierte Felder" und einigen Standardfeldern ausgewählt werden.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Export Typ auswählen:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'Die Daten werden aus den Organisationen und deren Personen ermittelt, die als Ergebnis der die vorhergehenden Suche ermittelt wurden.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Export E-Mailer Daten',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Export E-Mail Daten, unter Benutzung des E-Mail Feldes aus den Organisationen, wenn keine E-Mail Adresse bei den Personen angegeben wurde.',
'LBL_EXPORT_RESULTS_FULL'=>'Export der Daten mit Personen, E-Mail, Organisationsname, Adresse, Telefon, usw.',
'LBL_EXPORT_RESULTS_GO'=>'Export',
'LBL_MAILER_EXPORT_IGNORE' => '--ignoriere--',
'LBL_MAILER_EXPORT_CHECKED' =>'markiert',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'nicht markiert',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Organisationsnr.',
// END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Zeige Organisationshierarchie',
'Accounts ID' => 'Organisations ID',
);
?>

View File

@ -0,0 +1,192 @@
<?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.
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Organisations',
'LBL_MODULE_TITLE' => 'Organisations: Home',
'LBL_SEARCH_FORM_TITLE' => 'Account Search',
'LBL_LIST_FORM_TITLE' => 'Organisation List',
'LBL_NEW_FORM_TITLE' => 'New Organisation',
'LBL_MEMBER_ORG_FORM_TITLE' => 'Member Organisations',
'LBL_TOP_ACCOUNTS' => 'My Top Organisations',
'LBL_TOP_AMOUNT' => 'Amount',
'LBL_LIST_ACCOUNT_NAME' => 'Organisation Name',
'LBL_LIST_CITY' => 'City',
'LBL_LIST_WEBSITE' => 'Website',
'LBL_LIST_STATE' => 'County',
'LBL_LIST_PHONE' => 'Phone',
'LBL_LIST_EMAIL_ADDRESS' => 'Email Address',
'LBL_LIST_CONTACT_NAME' => 'Contact Name',
'LBL_LIST_AMOUNT' => 'Total Amount',
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
'LBL_ACCOUNT' => 'Organisation:',
'LBL_ACCOUNT_NAME' => 'Organisation Name:',
'LBL_PHONE' => 'Phone:',
'LBL_WEBSITE' => 'Website:',
'LBL_FAX' => 'Fax:',
'LBL_TICKER_SYMBOL' => 'Ticker Symbol:',
'LBL_OTHER_PHONE' => 'Other Phone:',
'LBL_ANY_PHONE' => 'Any Phone:',
'LBL_MEMBER_OF' => 'Member of:',
'LBL_EMAIL' => 'Email:',
'LBL_EMPLOYEES' => 'Employees:',
'LBL_OTHER_EMAIL_ADDRESS' => 'Other Email:',
'LBL_ANY_EMAIL' => 'Any Email:',
'LBL_OWNERSHIP' => 'Ownership:',
'LBL_RATING' => 'Rating:',
'LBL_INDUSTRY' => 'Industry:',
'LBL_SIC_CODE' => 'SIC Code:',
'LBL_TYPE' => 'Type:',
'LBL_ANNUAL_REVENUE' => 'Annual Revenue:',
'LBL_ADDRESS_INFORMATION' => 'Address Information',
'LBL_ACCOUNT_INFORMATION' => 'Organisation Information',
'LBL_CUSTOM_INFORMATION' => 'Custom Information',
'LBL_BILLING_ADDRESS' => 'Invoice Address:',
'LBL_SHIPPING_ADDRESS' => 'Delivery Address:',
'LBL_ANY_ADDRESS' => 'Any Address:',
'LBL_CITY' => 'City:',
'LBL_STATE' => 'County:',
'LBL_POSTAL_CODE' => 'Postcode:',
'LBL_COUNTRY' => 'Country:',
'LBL_DESCRIPTION_INFORMATION' => 'Description Information',
'LBL_DESCRIPTION' => 'Description:',
'NTC_COPY_BILLING_ADDRESS' => 'Copy invoice address to delivery address',
'NTC_COPY_SHIPPING_ADDRESS' => 'Copy delivery address to invoice address',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION' => 'Are you sure you want to remove this record as a member organisation?',
'LBL_DUPLICATE' => 'Potential Duplicate Organisations',
'MSG_DUPLICATE' => 'Creating this Organisation may potentialy create a duplicate. You can either select an Organisation from the list below or you may click on Create New Organisation to continue creating a new Organisation with the previously entered data.',
'LBL_INVITEE' => 'Contacts',
'ERR_DELETE_RECORD' => 'A record number must be specified to delete the Organisation',
'LBL_SELECT_ACCOUNT' => 'Select Organisation',
'LBL_GENERAL_INFORMATION' => 'General Information',
'LBL_NEW_POTENTIAL' => 'New Opportunity',
'LBL_POTENTIAL_TITLE' => 'Opportunities',
'LBL_NEW_TASK' => 'New Task',
'LBL_TASK_TITLE' => 'Tasks',
'LBL_NEW_CALL' => 'New Call',
'LBL_CALL_TITLE' => 'Calls',
'LBL_NEW_MEETING' => 'New Meeting',
'LBL_MEETING_TITLE' => 'Meetings',
'LBL_NEW_EMAIL' => 'New Email',
'LBL_EMAIL_TITLE' => 'Emails',
'LBL_NEW_CONTACT' => 'New Contact',
'LBL_CONTACT_TITLE' => 'Contacts',
'LBL_ALL' => 'All',
'LBL_PROSPECT' => 'Prospect',
'LBL_INVESTOR' => 'Investor',
'LBL_RESELLER' => 'Reseller',
'LBL_PARTNER' => 'Partner',
'LBL_TOOL_FORM_TITLE' => 'Organisation Tools',
'Account Name' => 'Organisation Name',
'Phone' => 'Phone',
'Website' => 'Website',
'Fax' => 'Fax',
'Ticker Symbol' => 'Ticker Symbol',
'Other Phone' => 'Other Phone',
'Member Of' => 'Member Of',
'Email' => 'Email',
'Employees' => 'Employees',
'Other Email' => 'Other Email',
'Ownership' => 'Ownership',
'Rating' => 'Rating',
'industry' => 'Industry',
'SIC Code' => 'SIC Code',
'Type' => 'Type',
'Annual Revenue' => 'Annual Revenue',
'Assigned To' => 'Assigned To',
'Billing Address' => 'Invoice Address',
'Shipping Address' => 'Delivery Address',
'Billing City' => 'Invoice City',
'Shipping City' => 'Delivery City',
'Billing State' => 'Invoice County',
'Shipping State' => 'Delivery County',
'Billing Code' => 'Invoice Postcode',
'Shipping Code' => 'Delivery Postcode',
'Billing Country' => 'Invoice Country',
'Shipping Country' => 'Delivery Country',
'Created Time' => 'Created Time',
'Modified Time' => 'Modified Time',
'Description' => 'Description',
'Shipping Po Box' => 'Delivery PO Box',
'Billing Po Box' => 'Invoice PO Box',
'Email Opt Out' => 'Email Opt Out',
'LBL_EMAIL_OPT_OUT' => 'Email Opt Out: ',
'Notify Owner' => 'Notify Owner',
'--None--' => '--None--',
'Acquired' => 'Acquired',
'Active' => 'Active',
'Market Failed' => 'Market Failed',
'Project Cancelled' => 'Project Cancelled',
'Shutdown' => 'Shutdown',
'Apparel' => 'Apparel',
'Banking' => 'Banking',
'Biotechnology' => 'Biotechnology',
'Chemicals' => 'Chemicals',
'Communications' => 'Communications',
'Construction' => 'Construction',
'Consulting' => 'Consulting',
'Education' => 'Education',
'Electronics' => 'Electronics',
'Energy' => 'Energy',
'Engineering' => 'Engineering',
'Entertainment' => 'Entertainment',
'Environmental' => 'Environmental',
'Finance' => 'Finance',
'Food & Beverage' => 'Food & Beverage',
'Government' => 'Government',
'Healthcare' => 'Healthcare',
'Hospitality' => 'Hospitality',
'Insurance' => 'Insurance',
'Machinery' => 'Machinery',
'Manufacturing' => 'Manufacturing',
'Media' => 'Media',
'Not For Profit' => 'Not For Profit',
'Recreation' => 'Recreation',
'Retail' => 'Retail',
'Shipping' => 'Shipping',
'Technology' => 'Technology',
'Telecommunications' => 'Telecommunications',
'Transportation' => 'Transportation',
'Utilities' => 'Utilities',
'Other' => 'Other',
'Analyst' => 'Analyst',
'Competitor' => 'Competitor',
'Customer' => 'Customer',
'Integrator' => 'Integrator',
'Investor' => 'Investor',
'Partner' => 'Partner',
'Press' => 'Press',
'Prospect' => 'Prospect',
'Reseller' => 'Reseller',
'LBL_START_DATE' => 'Start Date',
'LBL_END_DATE' => 'End Date',
'LBL_ACCOUNT_EXIST' => 'Organisation Name already exists',
'LBL_MAILER_EXPORT' => 'Mailer Export',
'LBL_MAILER_EXPORT_CONTACTS_TYPE' => 'Select Contacts:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR' => 'Contacts can also be selected via Custom Fields and some standard fields.',
'LBL_MAILER_EXPORT_RESULTS_TYPE' => 'Select export type:',
'LBL_MAILER_EXPORT_RESULTS_DESCR' => 'The data will be gathered from the Organisations and their Contacts that were returned from the previous search.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Export Email data',
'LBL_EXPORT_RESULTS_EMAIL_CORP' => 'Export Email data using Company Email from the Organisation if the Contact\'s Email is empty',
'LBL_EXPORT_RESULTS_FULL' => 'Export data with the Contacts, Email, Organisation name, Address, Telephone, etc.',
'LBL_EXPORT_RESULTS_GO' => 'Export',
'LBL_MAILER_EXPORT_IGNORE' => '--ignore--',
'LBL_MAILER_EXPORT_CHECKED' => 'Checked',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Not Checked',
'Account No' => 'Organisation No.',
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Show Organisation Hierarchy',
'Accounts ID' => 'Organisations ID',
'Send SMS' => 'Send SMS',
'Projects' => 'Projects',
'Service Places' => 'Service Places'
);
?>

View File

@ -0,0 +1,243 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/language/en_us.lang.php,v 1.18 2005/03/19 08:59:20 rank Exp $
* Description: Defines the English language pack
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Organizations',
'LBL_MODULE_TITLE'=>'Organizations: Home',
'LBL_SEARCH_FORM_TITLE'=>'Organization Search',
'LBL_LIST_FORM_TITLE'=>'Organization List',
'LBL_NEW_FORM_TITLE'=>'New Organization',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Member Organizations',
// Label for Top Organizations in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'My Top Organizations',
'LBL_TOP_AMOUNT'=>'Amount',
'LBL_LIST_ACCOUNT_NAME'=>'Organization Name',
'LBL_LIST_CITY'=>'City',
'LBL_LIST_WEBSITE'=>'Website',
'LBL_LIST_STATE'=>'State',
'LBL_LIST_PHONE'=>'Phone',
'LBL_LIST_EMAIL_ADDRESS'=>'Email Address',
'LBL_LIST_CONTACT_NAME'=>'Contact Name',
'LBL_LIST_AMOUNT' => 'Total Amount',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Organization:',
'LBL_ACCOUNT_NAME'=>'Organization Name:',
'LBL_PHONE'=>'Phone:',
'LBL_WEBSITE'=>'Website:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Ticker Symbol:',
'LBL_OTHER_PHONE'=>'Other Phone:',
'LBL_ANY_PHONE'=>'Any Phone:',
'LBL_MEMBER_OF'=>'Member of:',
'LBL_EMAIL'=>'Email:',
'LBL_EMPLOYEES'=>'Employees:',
'LBL_OTHER_EMAIL_ADDRESS'=>'Other Email:',
'LBL_ANY_EMAIL'=>'Any Email:',
'LBL_OWNERSHIP'=>'Ownership:',
'LBL_RATING'=>'Rating:',
'LBL_INDUSTRY'=>'Industry:',
'LBL_SIC_CODE'=>'SIC Code:',
'LBL_TYPE'=>'Type:',
'LBL_ANNUAL_REVENUE'=>'Annual Revenue:',
'LBL_ADDRESS_INFORMATION'=>'Address Information',
'LBL_ACCOUNT_INFORMATION'=>'Organization Information',
'LBL_CUSTOM_INFORMATION'=>'Custom Information',
'LBL_BILLING_ADDRESS'=>'Billing Address:',
'LBL_SHIPPING_ADDRESS'=>'Shipping Address:',
'LBL_ANY_ADDRESS'=>'Any Address:',
'LBL_CITY'=>'City:',
'LBL_STATE'=>'State:',
'LBL_POSTAL_CODE'=>'Postal Code:',
'LBL_COUNTRY'=>'Country:',
'LBL_DESCRIPTION_INFORMATION'=>'Description Information',
'LBL_DESCRIPTION'=>'Description:',
'NTC_COPY_BILLING_ADDRESS'=>'Copy billing address to shipping address',
'NTC_COPY_SHIPPING_ADDRESS'=>'Copy shipping address to billing address',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'Are you sure you want to remove this record as a member organization?',
'LBL_DUPLICATE'=>'Potential Duplicate Organizations',
'MSG_DUPLICATE' => 'Creating this vtiger_account may vtiger_potentialy create a duplicate vtiger_account. You may either select an vtiger_account from the list below or you may click on Create New Organization to continue creating a new vtiger_account with the previously entered data.',
'LBL_INVITEE'=>'Contacts',
'ERR_DELETE_RECORD'=>"A record number must be specified to delete the vtiger_account.",
'LBL_SELECT_ACCOUNT'=>'Select Organization',
'LBL_GENERAL_INFORMATION'=>'General Information',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'New Opportunity',
'LBL_POTENTIAL_TITLE'=>'Opportunities',
'LBL_NEW_TASK'=>'New Task',
'LBL_TASK_TITLE'=>'Tasks',
'LBL_NEW_CALL'=>'New Call',
'LBL_CALL_TITLE'=>'Calls',
'LBL_NEW_MEETING'=>'New Meeting',
'LBL_MEETING_TITLE'=>'Meetings',
'LBL_NEW_EMAIL'=>'New Email',
'LBL_EMAIL_TITLE'=>'Emails',
'LBL_NEW_CONTACT'=>'New Contact',
'LBL_CONTACT_TITLE'=>'Contacts',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'All',
'LBL_PROSPECT'=>'Prospect',
'LBL_INVESTOR'=>'Investor',
'LBL_RESELLER'=>'Reseller',
'LBL_PARTNER'=>'Partner',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Organization Tools',
//Added for 4GA
'Account Name'=>'Organization Name',
'Phone'=>'Phone',
'Website'=>'Website',
'Fax'=>'Fax',
'Ticker Symbol'=>'Ticker Symbol',
'Other Phone'=>'Other Phone',
'Member Of'=>'Member Of',
'Email'=>'Email',
'Employees'=>'Employees',
'Other Email'=>'Other Email',
'Ownership'=>'Ownership',
'Rating'=>'Rating',
'industry'=>'Industry',
'SIC Code'=>'SIC Code',
'Type'=>'Type',
'Annual Revenue'=>'Annual Revenue',
'Assigned To'=>'Assigned To',
'Billing Address'=>'Billing Address',
'Shipping Address'=>'Shipping Address',
'Billing City'=>'Billing City',
'Shipping City'=>'Shipping City',
'Billing State'=>'Billing State',
'Shipping State'=>'Shipping State',
'Billing Code'=>'Billing Postal Code',
'Shipping Code'=>'Shipping Postal Code',
'Billing Country'=>'Billing Country',
'Shipping Country'=>'Shipping Country',
'Created Time'=>'Created Time',
'Modified Time'=>'Modified Time',
'Description'=>'Description',
'Shipping Po Box'=>'Shipping PO Box',
'Billing Po Box'=>'Billing PO Box',
//Added after 4.2 patch 2
'Email Opt Out'=>'Email Opt Out',
'LBL_EMAIL_OPT_OUT'=>'Email Opt Out:',
//Added after 5Alpha5
'Notify Owner'=>'Notify Owner',
//Added for existing picklist entries
'--None--'=>'--None--',
'Acquired'=>'Acquired',
'Active'=>'Active',
'Market Failed'=>'Market Failed',
'Project Cancelled'=>'Project Cancelled',
'Shutdown'=>'Shutdown',
'Apparel'=>'Apparel',
'Banking'=>'Banking',
'Biotechnology'=>'Biotechnology',
'Chemicals'=>'Chemicals',
'Communications'=>'Communications',
'Construction'=>'Construction',
'Consulting'=>'Consulting',
'Education'=>'Education',
'Electronics'=>'Electronics',
'Energy'=>'Energy',
'Engineering'=>'Engineering',
'Entertainment'=>'Entertainment',
'Environmental'=>'Environmental',
'Finance'=>'Finance',
'Food & Beverage'=>'Food & Beverage',
'Government'=>'Government',
'Healthcare'=>'Healthcare',
'Hospitality'=>'Hospitality',
'Insurance'=>'Insurance',
'Machinery'=>'Machinery',
'Manufacturing'=>'Manufacturing',
'Media'=>'Media',
'Not For Profit'=>'Not For Profit',
'Recreation'=>'Recreation',
'Retail'=>'Retail',
'Shipping'=>'Shipping',
'Technology'=>'Technology',
'Telecommunications'=>'Telecommunications',
'Transportation'=>'Transportation',
'Utilities'=>'Utilities',
'Other'=>'Other',
'Analyst'=>'Analyst',
'Competitor'=>'Competitor',
'Customer'=>'Customer',
'Integrator'=>'Integrator',
'Investor'=>'Investor',
'Partner'=>'Partner',
'Press'=>'Press',
'Prospect'=>'Prospect',
'Reseller'=>'Reseller',
'LBL_START_DATE' => 'Start Date',
'LBL_END_DATE' => 'End Date',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'Organization Name Already Exists!',
// mailer export
'LBL_MAILER_EXPORT' => 'Mailer Export',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Select Contacts:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'Contacts can also be selected via "Custom Fields" and some standard fields.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Select export type:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'The data will gathered from the Organizations and their Contacts, that were returned
from the previous search.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Export E-Mailer data',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Export E-Mail data, using "Company Email" from the Organization if the Contacts "Email" is empty',
'LBL_EXPORT_RESULTS_FULL'=>'Export data with the Contacts, E-Mail, Organization name, Address, Telephone, etc.',
'LBL_EXPORT_RESULTS_GO'=>'Export',
'LBL_MAILER_EXPORT_IGNORE' => '--ignore--',
'LBL_MAILER_EXPORT_CHECKED' =>'Checked',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Not Checked',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Organization No',
// END
// Organization Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Show Organization Hierarchy',
'Accounts ID' => 'Organizations ID',
);
?>

View File

@ -0,0 +1,244 @@
<?php
/***********************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************
* Module : Accounts
* Language : Español
* Version : 5.4.0
* Created Date : 2007-03-30
* Author : Rafael Soler
* Last change : 2012-02-28
* Author : Joe Bordes JPL TSolucio, S. L.
* *******************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME'=>'Cuentas',
'LBL_MODULE_TITLE'=>'Cuentas: Inicio',
'LBL_SEARCH_FORM_TITLE'=>'Buscar Cuenta',
'LBL_LIST_FORM_TITLE'=>'Lista de Cuentas',
'LBL_NEW_FORM_TITLE'=>'Nueva Cuenta',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Miembro de Organización ',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'Mis Cuentas Principales',
'LBL_TOP_AMOUNT'=>'Importe',
'LBL_LIST_ACCOUNT_NAME'=>'Cuenta',
'LBL_LIST_CITY'=>'Población',
'LBL_LIST_WEBSITE'=>'Página Web',
'LBL_LIST_STATE'=>'Provincia',
'LBL_LIST_PHONE'=>'Teléfono',
'LBL_LIST_EMAIL_ADDRESS'=>'Email',
'LBL_LIST_CONTACT_NAME'=>'Contacto',
'LBL_LIST_AMOUNT'=>'Cantidad Total',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Cuenta:',
'LBL_ACCOUNT_NAME'=>'Nombre de la Cuenta',
'LBL_PHONE'=>'Teléfono:',
'LBL_WEBSITE'=>'Página Web:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Ticker de bolsa:',
'LBL_OTHER_PHONE'=>'Tel. Otro:',
'LBL_ANY_PHONE'=>'Tel. Adicional:',
'LBL_MEMBER_OF'=>'Miembro de:',
'LBL_EMAIL'=>'Email:',
'LBL_EMPLOYEES'=>'Empleados:',
'LBL_OTHER_EMAIL_ADDRESS'=>'Email (Otro):',
'LBL_ANY_EMAIL'=>'Email Alternativo:',
'LBL_OWNERSHIP'=>'Accionistas:',
'LBL_RATING'=>'Clasificación:',
'LBL_INDUSTRY'=>'Actividad:',
'LBL_SIC_CODE'=>'CIF:',
'LBL_TYPE'=>'Tipo:',
'LBL_ANNUAL_REVENUE'=>'Facturación Anual:',
'LBL_ADDRESS_INFORMATION'=>'Información de la Dirección',
'LBL_ACCOUNT_INFORMATION'=>'Información de la Cuenta',
'LBL_CUSTOM_INFORMATION'=>'Información Específica',
'LBL_BILLING_ADDRESS'=>'Dirección (Factura):',
'LBL_SHIPPING_ADDRESS'=>'Dirección (Envío):',
'LBL_ANY_ADDRESS'=>'Dirección (Alternativa):',
'LBL_CITY'=>'Población:',
'LBL_STATE'=>'Provincia:',
'LBL_POSTAL_CODE'=>'Código Postal:',
'LBL_COUNTRY'=>'País:',
'LBL_DESCRIPTION_INFORMATION'=>'Descripción Adicional',
'LBL_DESCRIPTION'=>'Descripcion:',
'NTC_COPY_BILLING_ADDRESS'=>'Copiar Factura a Envío',
'NTC_COPY_SHIPPING_ADDRESS'=>'Copiar Envío a Factura',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'¿Está seguro que desea eliminar este registro de "Miembro"?',
'LBL_DUPLICATE'=>'Posibles cuentas duplicadas',
'MSG_DUPLICATE'=>'Creando esta cuenta puede duplicar una cuenta existente. Seleccione una cuenta de la lista de abajo o pulse en el boton Crear una Nueva Cuenta para crear una nueva cuenta con los datos introducidos.',
'LBL_INVITEE'=>'Contactos',
'ERR_DELETE_RECORD'=>'Debe especificar un registro para eliminar la empresa.',
'LBL_SELECT_ACCOUNT'=>'Seleccionar Cuenta',
'LBL_GENERAL_INFORMATION'=>'Información General',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'Añadir Oportunidad',
'LBL_POTENTIAL_TITLE'=>'Oportunidad',
'LBL_NEW_TASK'=>'Añadir Tarea',
'LBL_TASK_TITLE'=>'Tareas',
'LBL_NEW_CALL'=>'Añadir Llamada',
'LBL_CALL_TITLE'=>'Llamadas',
'LBL_NEW_MEETING'=>'Añadir Reunión',
'LBL_MEETING_TITLE'=>'Reuniones',
'LBL_NEW_EMAIL'=>'Nuevo Email',
'LBL_EMAIL_TITLE'=>'Emails',
'LBL_NEW_CONTACT'=>'Añadir Contacto',
'LBL_CONTACT_TITLE'=>'Contactos',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'Todo',
'LBL_PROSPECT'=>'Expectativa ',
'LBL_INVESTOR'=>'Inversor',
'LBL_RESELLER'=>'Revendedor',
'LBL_PARTNER'=>'Socio ',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Herramientas de Cuenta',
// Added for 4GA
'Account Name'=>'Nombre de la Cuenta',
'Phone'=>'Teléfono',
'Website'=>'Página Web',
'Fax'=>'Fax',
'Ticker Symbol'=>'Ticker de bolsa',
'Other Phone'=>'Tel. Alternativo',
'Member Of'=>'Miembro de',
'Email'=>'Email',
'Employees'=>'Empleados',
'Other Email'=>'Email (Alternativo)',
'Ownership'=>'Accionistas',
'Rating'=>'Importancia',
'industry'=>'Actividad',
'SIC Code'=>'CIF',
'Type'=>'Tipo',
'Annual Revenue'=>'Facturación Anual',
'Assigned To'=>'Asignado a',
'Billing Address'=>'Dirección (Factura)',
'Shipping Address'=>'Dirección (Envío)',
'Billing City'=>'Población (Factura)',
'Shipping City'=>'Población (Envío)',
'Billing State'=>'Provincia (Factura)',
'Shipping State'=>'Provincia (Envío)',
'Billing Code'=>'Código Postal (Factura)',
'Shipping Code'=>'Código Postal (Envío)',
'Billing Country'=>'País (Factura)',
'Shipping Country'=>'País (Envío)',
'Created Time'=>'Fecha de Creación',
'Modified Time'=>'Fecha de Modificación',
'Description'=>'Descripción',
'Shipping Po Box'=>'Apdo. de Correos (Envío)',
'Billing Po Box'=>'Apdo. de Correos (Factura)',
//Added after 4.2 patch 2
'Email Opt Out'=>'No Enviar Emails',
'LBL_EMAIL_OPT_OUT'=>'No Enviar Emails:',
//Added after 5Alpha5
'Notify Owner'=>'Notificar al Propietario',
//Added for existing picklist entries
'--None--'=>'-----',
'Acquired'=>'Adquirido',
'Active'=>'Activo',
'Market Failed'=>'Mercado Inmaduro',
'Project Cancelled'=>'Cancelado',
'Shutdown'=>'Suspendido',
'Apparel'=>'Ropa',
'Banking'=>'Banca',
'Biotechnology'=>'Biotecnología',
'Chemicals'=>'Químicas',
'Communications'=>'Comunicaciones',
'Construction'=>'Construcción',
'Consulting'=>'Consultores',
'Education'=>'Educación',
'Electronics'=>'Electronica',
'Energy'=>'Energía',
'Engineering'=>'Ingeniería',
'Entertainment'=>'Entretenimiento',
'Environmental'=>'Medio Ambiente',
'Finance'=>'Finanzas',
'Food & Beverage'=>'Restauración',
'Government'=>'Gobierno',
'Healthcare'=>'Salud',
'Hospitality'=>'Hospital',
'Insurance'=>'Seguros',
'Machinery'=>'Mecánica',
'Manufacturing'=>'Manufacturas',
'Media'=>'Medios',
'Not For Profit'=>'ONG',
'Recreation'=>'Recreo',
'Retail'=>'Venta al por menor o Detall',
'Shipping'=>'Transporte',
'Technology'=>'Tecnología',
'Telecommunications'=>'Telecomunicaciones',
'Transportation'=>'Logística',
'Utilities'=>'Utilidades',
'Other'=>'Otros',
'Analyst'=>'Analista',
'Competitor'=>'Competencia',
'Customer'=>'Cliente',
'Integrator'=>'Integrador',
'Investor'=>'Inversor',
'Partner'=>'Socio',
'Press'=>'Prensa',
'Prospect'=>'Prospector',
'Reseller'=>'Revendedor',
'LBL_START_DATE' =>'Inicio',
'LBL_END_DATE' => 'Vencimiento',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'Cuenta ya Existente',
// mailer export
'LBL_MAILER_EXPORT' => 'Exportador de Email',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Seleccione Contactos:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'También puede seleccionar "Contactos" via "Campos Personalizados" u otros campos.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Seleccione tipo de Exportación:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'Los datos se obtendrán de "Cuentas" y sus "Contactos" que provengan de la búsqueda previa.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Exportar datos de Email',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Exportar datos de Email, usando "Email de la Cuenta" si no tiene Email de Contacto',
'LBL_EXPORT_RESULTS_FULL'=>'Exportar datos con Contactos, Email, Cuenta, Dirección, Teléfono, etc...',
'LBL_EXPORT_RESULTS_GO'=>'Exportado',
'LBL_MAILER_EXPORT_IGNORE' => '--Ignorar--',
'LBL_MAILER_EXPORT_CHECKED' =>'Marcado',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'No Marcado',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Núm. Cuenta',
// END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Mostrar Jerarquía de Cuentas',
'Accounts ID' => 'Id Cuenta',
);
?>

View File

@ -0,0 +1,243 @@
<?php
/***********************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************
* Module : Accounts
* Language : Español
* Version : 5.4.0
* Created Date : 2007-03-30
* Author : Rafael Soler
* Last change : 2012-02-28
* Author : Francisco Hernandez Odin Consultores www.odin.mx
* *******************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME'=>'Cuentas',
'LBL_MODULE_TITLE'=>'Cuentas: Inicio',
'LBL_SEARCH_FORM_TITLE'=>'Buscar Cuenta',
'LBL_LIST_FORM_TITLE'=>'Lista de Cuentas',
'LBL_NEW_FORM_TITLE'=>'Nueva Cuenta',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Miembro de Organización ',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'Mis Cuentas Principales',
'LBL_TOP_AMOUNT'=>'Importe',
'LBL_LIST_ACCOUNT_NAME'=>'Cuenta',
'LBL_LIST_CITY'=>'Deleg./Mpio.',
'LBL_LIST_WEBSITE'=>'Página Web',
'LBL_LIST_STATE'=>'Estado',
'LBL_LIST_PHONE'=>'Teléfono',
'LBL_LIST_EMAIL_ADDRESS'=>'Email',
'LBL_LIST_CONTACT_NAME'=>'Contacto',
'LBL_LIST_AMOUNT'=>'Cantidad Total',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Cuenta:',
'LBL_ACCOUNT_NAME'=>'Nombre de la Cuenta',
'LBL_PHONE'=>'Teléfono:',
'LBL_WEBSITE'=>'Página Web:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Símbolo de bolsa:',
'LBL_OTHER_PHONE'=>'Tel. Otro:',
'LBL_ANY_PHONE'=>'Tel. Adicional:',
'LBL_MEMBER_OF'=>'Miembro de:',
'LBL_EMAIL'=>'Email:',
'LBL_EMPLOYEES'=>'Empleados:',
'LBL_OTHER_EMAIL_ADDRESS'=>'Email (Otro):',
'LBL_ANY_EMAIL'=>'Email Alternativo:',
'LBL_OWNERSHIP'=>'Propietario:',
'LBL_RATING'=>'Clasificación:',
'LBL_INDUSTRY'=>'Actividad:',
'LBL_SIC_CODE'=>'RFC:',
'LBL_TYPE'=>'Tipo:',
'LBL_ANNUAL_REVENUE'=>'Facturación Anual:',
'LBL_ADDRESS_INFORMATION'=>'Información de la Dirección',
'LBL_ACCOUNT_INFORMATION'=>'Información de la Cuenta',
'LBL_CUSTOM_INFORMATION'=>'Información Específica',
'LBL_BILLING_ADDRESS'=>'Dirección (Factura):',
'LBL_SHIPPING_ADDRESS'=>'Dirección (Envío):',
'LBL_ANY_ADDRESS'=>'Dirección (Alternativa):',
'LBL_CITY'=>'Deleg./Mpio.:',
'LBL_STATE'=>'Estado:',
'LBL_POSTAL_CODE'=>'Código Postal:',
'LBL_COUNTRY'=>'País:',
'LBL_DESCRIPTION_INFORMATION'=>'Descripción Adicional',
'LBL_DESCRIPTION'=>'Descripcion:',
'NTC_COPY_BILLING_ADDRESS'=>'Copiar Factura a Envío',
'NTC_COPY_SHIPPING_ADDRESS'=>'Copiar Envío a Factura',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'¿Está seguro que desea eliminar este registro de "Miembro"?',
'LBL_DUPLICATE'=>'Posibles cuentas duplicadas',
'MSG_DUPLICATE'=>'Al crear esta cuenta podría estar duplicando una cuenta existente. Seleccione una cuenta de la lista de abajo o pulse en el boton Crear una Nueva Cuenta para crear un nuevo registro con los datos introducidos.',
'LBL_INVITEE'=>'Contactos',
'ERR_DELETE_RECORD'=>'Debe especificar un registro para eliminar la empresa.',
'LBL_SELECT_ACCOUNT'=>'Seleccionar Cuenta',
'LBL_GENERAL_INFORMATION'=>'Información General',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'Agregar Oportunidad',
'LBL_POTENTIAL_TITLE'=>'Oportunidad',
'LBL_NEW_TASK'=>'Agregar Tarea',
'LBL_TASK_TITLE'=>'Tareas',
'LBL_NEW_CALL'=>'Agregar Llamada',
'LBL_CALL_TITLE'=>'Llamadas',
'LBL_NEW_MEETING'=>'Agregar Reunión',
'LBL_MEETING_TITLE'=>'Reuniones',
'LBL_NEW_EMAIL'=>'Nuevo Email',
'LBL_EMAIL_TITLE'=>'Emails',
'LBL_NEW_CONTACT'=>'Agregar Contacto',
'LBL_CONTACT_TITLE'=>'Contactos',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'Todo',
'LBL_PROSPECT'=>'Expectativa ',
'LBL_INVESTOR'=>'Inversionista',
'LBL_RESELLER'=>'Revendedor',
'LBL_PARTNER'=>'Socio ',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Herramientas de Cuenta',
// Added for 4GA
'Account Name'=>'Nombre de la Cuenta',
'Phone'=>'Teléfono',
'Website'=>'Página Web',
'Fax'=>'Fax',
'Ticker Symbol'=>'Símbolo de bolsa',
'Other Phone'=>'Tel. Alternativo',
'Member Of'=>'Miembro de',
'Email'=>'Email',
'Employees'=>'Empleados',
'Other Email'=>'Email (Alternativo)',
'Ownership'=>'Propietario',
'Rating'=>'Importancia',
'industry'=>'Actividad',
'SIC Code'=>'RFC',
'Type'=>'Tipo',
'Annual Revenue'=>'Facturación Anual',
'Assigned To'=>'Asignado a',
'Billing Address'=>'Dirección (Factura)',
'Shipping Address'=>'Dirección (Envío)',
'Billing City'=>'Deleg./Mpio. (Factura)',
'Shipping City'=>'Deleg./Mpio. (Envío)',
'Billing State'=>'Estado (Factura)',
'Shipping State'=>'Estado (Envío)',
'Billing Code'=>'Código Postal (Factura)',
'Shipping Code'=>'Código Postal (Envío)',
'Billing Country'=>'País (Factura)',
'Shipping Country'=>'País (Envío)',
'Created Time'=>'Fecha de Creación',
'Modified Time'=>'Fecha de Modificación',
'Description'=>'Descripción',
'Shipping Po Box'=>'Colonia (Envío)',
'Billing Po Box'=>'Colonia (Factura)',
//Added after 4.2 patch 2
'Email Opt Out'=>'No Enviar Emails',
'LBL_EMAIL_OPT_OUT'=>'No Enviar Emails:',
//Added after 5Alpha5
'Notify Owner'=>'Notificar al Propietario',
//Added for existing picklist entries
'--None--'=>'-----',
'Acquired'=>'Adquirido',
'Active'=>'Activo',
'Market Failed'=>'Mercado Inmaduro',
'Project Cancelled'=>'Proyecto Cancelado',
'Shutdown'=>'Detenido',
'Apparel'=>'Ropa',
'Banking'=>'Banca',
'Biotechnology'=>'Biotecnología',
'Chemicals'=>'Químicas',
'Communications'=>'Comunicaciones',
'Construction'=>'Construcción',
'Consulting'=>'Consultores',
'Education'=>'Educación',
'Electronics'=>'Electronica',
'Energy'=>'Energía',
'Engineering'=>'Ingeniería',
'Entertainment'=>'Entretenimiento',
'Environmental'=>'Medio Ambiente',
'Finance'=>'Finanzas',
'Food & Beverage'=>'Restauración',
'Government'=>'Gobierno',
'Healthcare'=>'Salud',
'Hospitality'=>'Hospital',
'Insurance'=>'Seguros',
'Machinery'=>'Mecánica',
'Manufacturing'=>'Manufacturas',
'Media'=>'Medios',
'Not For Profit'=>'ONG',
'Recreation'=>'Recreo',
'Retail'=>'Venta al por menor o Detall',
'Shipping'=>'Transporte',
'Technology'=>'Tecnología',
'Telecommunications'=>'Telecomunicaciones',
'Transportation'=>'Logística',
'Utilities'=>'Utilidades',
'Other'=>'Otros',
'Analyst'=>'Analista',
'Competitor'=>'Competencia',
'Customer'=>'Cliente',
'Integrator'=>'Integrador',
'Investor'=>'Inversionista',
'Partner'=>'Socio',
'Press'=>'Prensa',
'Prospect'=>'Prospector',
'Reseller'=>'Revendedor',
'LBL_START_DATE' =>'Inicio',
'LBL_END_DATE' => 'Vencimiento',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'Cuenta ya Existente',
// mailer export
'LBL_MAILER_EXPORT' => 'Exportador de Email',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Seleccione Contactos:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'También puede seleccionar "Contactos" via "Campos Personalizados" u otros campos.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Seleccione tipo de Exportación:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'Los datos se obtendrán de "Cuentas" y sus "Contactos" que provengan de la búsqueda previa.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Exportar datos de Email',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Exportar datos de Email, usando "Email de la Cuenta" si no tiene Email de Contacto',
'LBL_EXPORT_RESULTS_FULL'=>'Exportar datos con Contactos, Email, Cuenta, Dirección, Teléfono, etc...',
'LBL_EXPORT_RESULTS_GO'=>'Exportado',
'LBL_MAILER_EXPORT_IGNORE' => '--Ignorar--',
'LBL_MAILER_EXPORT_CHECKED' =>'Marcado',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'No Marcado',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Núm. Cuenta',
// END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Mostrar Jerarquía de Cuentas',
'Accounts ID' => 'Id Cuenta',
);
?>

View File

@ -0,0 +1,194 @@
<?php
/***********************************************************
* Module : Accounts
* Language : French
* Version : 5.4.0
* License : GPL
* Author : ABOnline solutions http://www.vtiger-crm.fr
***********************************************************/
$mod_strings = array (
'LBL_MODULE_NAME' => 'Comptes',
'LBL_MODULE_TITLE' => 'Comptes : accueil',
'LBL_SEARCH_FORM_TITLE' => 'Rechercher comptes',
'LBL_LIST_FORM_TITLE' => 'Liste des comptes',
'LBL_NEW_FORM_TITLE' => 'Nouveau compte',
'LBL_MEMBER_ORG_FORM_TITLE' => 'Filiale de',
'LBL_TOP_ACCOUNTS' => 'Top comptes',
'LBL_TOP_AMOUNT' => 'Montant',
'LBL_LIST_ACCOUNT_NAME' => 'Nom compte',
'LBL_LIST_CITY' => 'Ville ',
'LBL_LIST_WEBSITE' => 'Site Web',
'LBL_LIST_STATE' => 'Département',
'LBL_LIST_PHONE' => 'Téléphone',
'LBL_LIST_EMAIL_ADDRESS' => 'Adresse email',
'LBL_LIST_CONTACT_NAME' => 'Nom du contact',
'LBL_LIST_AMOUNT' => 'Total affaires',
'db_name' => LBL_LIST_ACCOUNT_NAME,
'db_website' => LBL_LIST_WEBSITE,
'db_billing_address_city' => LBL_LIST_CITY,
'LBL_ACCOUNT' => 'Compte :',
'LBL_ACCOUNT_NAME' => 'Nom compte :',
'LBL_PHONE' => 'Téléphone :',
'LBL_WEBSITE' => 'Site Web :',
'LBL_FAX' => 'Fax :',
'LBL_TICKER_SYMBOL' => 'Symbole boursier :',
'LBL_OTHER_PHONE' => 'Téléphone (alt.)',
'LBL_ANY_PHONE' => 'Téléphone (alt.)',
'LBL_MEMBER_OF' => 'Filiale de :',
'LBL_EMAIL' => 'Email :',
'LBL_EMPLOYEES' => 'Effectif :',
'LBL_OTHER_EMAIL_ADDRESS' => 'Email (alt.) :',
'LBL_ANY_EMAIL' => 'Email (alt.) :',
'LBL_OWNERSHIP' => 'Propriétaire :',
'LBL_RATING' => 'Notre :',
'LBL_INDUSTRY' => 'Secteur :',
'LBL_SIC_CODE' => 'Code APE :',
'LBL_TYPE' => 'Type :',
'LBL_ANNUAL_REVENUE' => 'CA :',
'LBL_ADDRESS_INFORMATION' => 'Détail adresses',
'LBL_ACCOUNT_INFORMATION' => 'Détail compte',
'LBL_CUSTOM_INFORMATION' => 'Informations personnalisées',
'LBL_BILLING_ADDRESS' => 'Adresse (facturation) :',
'LBL_SHIPPING_ADDRESS' => 'Adresse (livraison) :',
'LBL_ANY_ADDRESS' => 'Adresse (alt.):',
'LBL_CITY' => 'Ville :',
'LBL_STATE' => 'Département :',
'LBL_POSTAL_CODE' => 'Code postal :',
'LBL_COUNTRY' => 'Pays :',
'LBL_DESCRIPTION_INFORMATION' => 'Informations complémentaires',
'LBL_DESCRIPTION' => 'Description :',
'NTC_COPY_BILLING_ADDRESS' => 'Utiliser adresse de facturation pour la livraison',
'NTC_COPY_SHIPPING_ADDRESS' => 'Utiliser adresse de livraison pour la facturation',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION' => 'Etes-vous certain de vouloir désolidariser cet enregistrement du groupe ?',
'LBL_DUPLICATE' => 'Doublon probable',
'MSG_DUPLICATE' => 'Créer ce compte engeandrera probablement un doublon. Vous pouvez au choix, forcer la création de ce compte ou en sélectionner un dans la liste ci-dessous',
'LBL_INVITEE' => 'Contacts',
'ERR_DELETE_RECORD' => 'Un numéro d\'enregistrement doit être spécifié pour supprimer le compte.',
'LBL_SELECT_ACCOUNT' => 'Sélectionner compte',
'LBL_GENERAL_INFORMATION' => 'Information',
'LBL_NEW_POTENTIAL' => 'Nouvelle affaire',
'LBL_POTENTIAL_TITLE' => 'Affaires',
'LBL_NEW_TASK' => 'Nouvelle tâche',
'LBL_TASK_TITLE' => 'Tâches',
'LBL_NEW_CALL' => 'Nouvel appel',
'LBL_CALL_TITLE' => 'Appels',
'LBL_NEW_MEETING' => 'Nouveau rendez-vous',
'LBL_MEETING_TITLE' => 'Rendez-vous',
'LBL_NEW_EMAIL' => 'Nouvel email',
'LBL_EMAIL_TITLE' => 'Emails',
'LBL_NEW_CONTACT' => 'Nouveau contact',
'LBL_CONTACT_TITLE' => 'Contacts',
'LBL_ALL' => 'Tous',
'LBL_PROSPECT' => 'Prospect',
'LBL_INVESTOR' => 'Investisseur',
'LBL_RESELLER' => 'Revendeur',
'LBL_PARTNER' => 'Partenaire',
'LBL_TOOL_FORM_TITLE' => 'Outils',
'Account Name' => 'Nom compte',
'Phone' => 'Téléphone',
'Website' => 'Site Web',
'Fax' => 'Fax',
'Ticker Symbol' => 'Symbole boursier',
'Other Phone' => 'Téléphone (alt.)',
'Member Of' => 'Filiale de',
'Email' => 'Email',
'Employees' => 'Effectif',
'Other Email' => 'Autre email',
'Ownership' => 'Propriétaire',
'Rating' => 'Etat',
'industry' => 'Secteur',
'SIC Code' => 'Code APE',
'Type' => 'Type',
'Annual Revenue' => 'C.A. annuel',
'Assigned To' => 'Assigné à',
'Billing Address' => 'Adresse (facturation)',
'Shipping Address' => 'Adresse (livraison)',
'Billing City' => 'Ville (facturation)',
'Shipping City' => 'Ville (livraison)',
'Billing State' => 'Département (facturation)',
'Shipping State' => 'Département (livraison)',
'Billing Code' => 'Code postal (facturation)',
'Shipping Code' => 'Code postal (livraison)',
'Billing Country' => 'Pays (facturation)',
'Shipping Country' => 'Pays (livraison)',
'Created Time' => 'Créé le',
'Modified Time' => 'Modifié le',
'Description' => 'Description',
'Shipping Po Box' => 'Boite postale (livraison)',
'Billing Po Box' => 'Boite postale (facturation)',
'Email Opt Out' => 'Ne pas contacter par email',
'LBL_EMAIL_OPT_OUT' => 'Ne pas contacter par email :',
'Notify Owner' => 'Notifier le collaborateur assigné',
'--None--' => '--Aucun--',
'Acquired' => 'Acquis',
'Active' => 'Actif',
'Market Failed' => 'Perdu',
'Project Cancelled' => 'Projet abandonné',
'Shutdown' => 'Eteint',
'Apparel' => 'Habillement',
'Banking' => 'Banque',
'Biotechnology' => 'Biotechnologie',
'Chemicals' => 'Chimie',
'Communications' => 'Communications',
'Construction' => 'BTP',
'Consulting' => 'Consulting',
'Education' => 'Education',
'Electronics' => 'Electronique',
'Energy' => 'Energie',
'Engineering' => 'Ingénierie',
'Entertainment' => 'Divertissement',
'Environmental' => 'Environnement',
'Finance' => 'Finance',
'Food & Beverage' => 'Agro-alimentaire',
'Government' => 'Secteur public',
'Healthcare' => 'Santé',
'Hospitality' => 'Hôpitaux',
'Insurance' => 'Assurances',
'Machinery' => 'Construction mécanique',
'Manufacturing' => 'Fabrication',
'Media' => 'Médias',
'Not For Profit' => 'Associatif',
'Recreation' => 'Récréatif',
'Retail' => 'Détaillant',
'Shipping' => 'Livreur',
'Technology' => 'Technologie',
'Telecommunications' => 'Télécommunications',
'Transportation' => 'Transport',
'Utilities' => 'Utilitaire',
'Other' => 'Autre',
'Analyst' => 'Analyste',
'Competitor' => 'Concurrent',
'Customer' => 'Client',
'Integrator' => 'Intégrateur',
'Investor' => 'Investisseur',
'Partner' => 'Partenaire',
'Press' => 'Presse',
'Prospect' => 'Prospect',
'Reseller' => 'Revendeur',
'LBL_START_DATE' => 'Date de début',
'LBL_END_DATE' => 'Date de fin',
'LBL_ACCOUNT_EXIST' => 'Ce nom de compte est déjà utilisé',
'LBL_MAILER_EXPORT' => 'Mailer Export',
'LBL_MAILER_EXPORT_CONTACTS_TYPE' => 'Selectionner le contact :',
'LBL_MAILER_EXPORT_CONTACTS_DESCR' => 'Les contacts peuvent également être sélectionnés via "Champs personnalisés" et d\'autres champs standards.',
'LBL_MAILER_EXPORT_RESULTS_TYPE' => 'Sélectionnez un type d\'export',
'LBL_MAILER_EXPORT_RESULTS_DESCR' => 'Les données seront prises des comptes et leurs contacts qui ont été sélectionnés de la recherche précédente.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Données d\'export par email',
'LBL_EXPORT_RESULTS_EMAIL_CORP' => 'Pendant l\'export des données mails, utiliser l\'email de l\'entreprise du compte si le champ Email du contact est vide',
'LBL_EXPORT_RESULTS_FULL' => 'Exporter les données avec les contacts, emails, noms de compte, adresses, téléphones, etc.',
'LBL_EXPORT_RESULTS_GO' => 'Exporter',
'LBL_MAILER_EXPORT_IGNORE' => '--ignorer--',
'LBL_MAILER_EXPORT_CHECKED' => 'Sélectionné',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Non sélectionné',
//Module Sequence Numbering
'Account No'=>'Compte N°',
// END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Afficher la hiérarchie des comptes',
'Accounts ID' => 'Compte ID',
);
$mod_list_strings = array (
);
?>

View File

@ -0,0 +1,204 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: \modules\Accounts\language\hu_hu.lang.php - 17:09 2011.11.11. $
* Description: Defines the Hungarian language pack for the Account module vtiger 5.3.x
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): Istvan Holbok, e-mail: holbok@gmail.com , mobil: +3670-3420900 , Skype: holboki
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Cégek',
'LBL_MODULE_TITLE' => 'Cégek: Kezdőlap',
'LBL_SEARCH_FORM_TITLE' => 'Cég Keresés',
'LBL_LIST_FORM_TITLE' => 'Cég Lista',
'LBL_NEW_FORM_TITLE' => 'Új Cég',
'LBL_MEMBER_ORG_FORM_TITLE' => 'Szervezeti tagság',
'LBL_TOP_ACCOUNTS' => 'Legfontosabb cégeim',
'LBL_TOP_AMOUNT' => 'Összeg',
'LBL_LIST_ACCOUNT_NAME' => 'Cég neve',
'LBL_LIST_CITY' => 'Város',
'LBL_LIST_WEBSITE' => 'Weboldal',
'LBL_LIST_STATE' => 'Állam/megye',
'LBL_LIST_PHONE' => 'Telefon',
'LBL_LIST_EMAIL_ADDRESS' => 'Email cím',
'LBL_LIST_CONTACT_NAME' => 'Kapcsolat neve',
'LBL_LIST_AMOUNT' => 'Teljes összeg',
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
'LBL_ACCOUNT' => 'Cég:',
'LBL_ACCOUNT_NAME' => 'Cég neve:',
'LBL_PHONE' => 'Telefon:',
'LBL_WEBSITE' => 'Weboldal:',
'LBL_FAX' => 'Fax:',
'LBL_TICKER_SYMBOL' => 'Tőzsdei rövidítés:',
'LBL_OTHER_PHONE' => 'Telefon, másik:',
'LBL_ANY_PHONE' => 'Telefon, bármely:',
'LBL_MEMBER_OF' => 'Tagja:',
'LBL_EMAIL' => 'Email:',
'LBL_EMPLOYEES' => 'Alkalmazottak:',
'LBL_OTHER_EMAIL_ADDRESS' => 'Email, másik:',
'LBL_ANY_EMAIL' => 'Email, bármely:',
'LBL_OWNERSHIP' => 'Tulajdonos:',
'LBL_RATING' => 'Értékelés:',
'LBL_INDUSTRY' => 'Iparág:',
'LBL_SIC_CODE' => 'TEÁOR:',
'LBL_TYPE' => 'Típus:',
'LBL_ANNUAL_REVENUE' => 'Éves forgalom:',
'LBL_ADDRESS_INFORMATION' => 'Cím adatok',
'LBL_ACCOUNT_INFORMATION' => 'Cég adatok',
'LBL_CUSTOM_INFORMATION' => 'Egyedi adatok',
'LBL_BILLING_ADDRESS' => 'Számlázási cím:',
'LBL_SHIPPING_ADDRESS' => 'Szállítási cím:',
'LBL_ANY_ADDRESS' => 'Cím, bármely:',
'LBL_CITY' => 'Város:',
'LBL_STATE' => 'Állam:',
'LBL_POSTAL_CODE' => 'Írányítószám:',
'LBL_COUNTRY' => 'Ország:',
'LBL_DESCRIPTION_INFORMATION' => 'Leírás',
'LBL_DESCRIPTION' => 'Leírás:',
'NTC_COPY_BILLING_ADDRESS' => 'Számlázási cím másolása a szállítási címbe',
'NTC_COPY_SHIPPING_ADDRESS' => 'Szállítási cím másolása a számlázási címbe',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION' => 'Biztos vagy abban, hogy ezt a rekorodot mint tagszervezetet törölni akarod?',
'LBL_DUPLICATE' => 'Lehetséges Cég Duplikáció',
'MSG_DUPLICATE' => 'Ennek a Cégnek a létrehozása valószínűleg duplikálni fog egy már létező Céget a rendszerben. Kiválaszthatsz egy már létező Céget a listáról innen alább, vagy kattinthatsz az Új Cég gombra, hogy folytasd a cég létrehozását a már bevitt adatokkal.',
'LBL_INVITEE' => 'Kapcsolatok',
'ERR_DELETE_RECORD' => 'Egy rekord azonosítót meg kell adnon a vtiger_account törléséhez.',
'LBL_SELECT_ACCOUNT' => 'Cég Kiválasztása',
'LBL_GENERAL_INFORMATION' => 'Általános adatok',
'LBL_NEW_POTENTIAL' => 'Új Lehetőség',
'LBL_POTENTIAL_TITLE' => 'Lehetőségek',
'LBL_NEW_TASK' => 'Új Feladat',
'LBL_TASK_TITLE' => 'Feladatok',
'LBL_NEW_CALL' => 'Új Hívás',
'LBL_CALL_TITLE' => 'Hívások',
'LBL_NEW_MEETING' => 'Új Megbeszélés',
'LBL_MEETING_TITLE' => 'Megbeszélések',
'LBL_NEW_EMAIL' => 'Új Email',
'LBL_EMAIL_TITLE' => 'Emailek',
'LBL_NEW_CONTACT' => 'Új Kapcsolat',
'LBL_CONTACT_TITLE' => 'Kapcsolatok',
'LBL_ALL' => 'Minden',
'LBL_PROSPECT' => 'Vevő jelölt',
'LBL_INVESTOR' => 'Befektető',
'LBL_RESELLER' => 'Viszonteladó',
'LBL_PARTNER' => 'Partner',
'LBL_TOOL_FORM_TITLE' => 'Cég eszközök',
'Account Name' => 'Cég neve',
'Phone' => 'Telefon',
'Website' => 'Weboldal',
'Fax' => 'Fax',
'Ticker Symbol' => 'Tőzsdei rövidítés',
'Other Phone' => 'Telefon, másik',
'Member Of' => 'Tagja',
'Email' => 'Email',
'Employees' => 'Alkalmazottak',
'Other Email' => 'Email, másik',
'Ownership' => 'Tulajdonos',
'Rating' => 'Értékelés',
'industry' => 'Iparág',
'SIC Code' => 'TEÁOR',
'Type' => 'Típus',
'Annual Revenue' => 'Éves forgalom',
'Assigned To' => 'Felelős',
'Billing Address' => 'Számlázási cím - Utca',
'Shipping Address' => 'Szállítási cím - Utca',
'Billing City' => 'Számlázási cím - Város',
'Shipping City' => 'Szállítási cím - Város',
'Billing State' => 'Számlázási cím - Állam/Megye',
'Shipping State' => 'Szállítási cím - Állam/Megye',
'Billing Code' => 'Számlázási cím - Irányítószám',
'Shipping Code' => 'Szállítási cím - Irányítószám',
'Billing Country' => 'Számlázási cím - Ország',
'Shipping Country' => 'Szállítási cím - Ország',
'Created Time' => 'Létrehozva',
'Modified Time' => 'Módosítva',
'Description' => 'Leírás',
'Shipping Po Box' => 'Szállítási cím - Postafiók',
'Billing Po Box' => 'Számlázási cím - Postafiók',
'Email Opt Out' => 'Email leiratkozva',
'LBL_EMAIL_OPT_OUT' => 'Email leiratkozva:',
'Notify Owner' => 'Értesítsd a tulajdonost',
'--None--' => '--Nincs--',
'Acquired' => 'Megszerzett',
'Active' => 'Aktív',
'Market Failed' => 'Rossz célpiac',
'Project Cancelled' => 'Törölt projekt',
'Shutdown' => 'Halott akta',
'Apparel' => 'Ruházat - Felszerelés',
'Banking' => 'Bank',
'Biotechnology' => 'Biotechnológia',
'Chemicals' => 'Vegyipar',
'Communications' => 'Kommunikáció',
'Construction' => 'Építőipar',
'Consulting' => 'Tanácsadás',
'Education' => 'Oktatás',
'Electronics' => 'Elektronika',
'Energy' => 'Energia szektor',
'Engineering' => 'Mérnöki tevékenység',
'Entertainment' => 'Szórakoztató ipar',
'Environmental' => 'Környezetvédelem',
'Finance' => 'Pénzügyek',
'Food & Beverage' => 'Élelmiszer ipar',
'Government' => 'Államigazgatás',
'Healthcare' => 'Egészségügy',
'Hospitality' => 'Vendéglátás',
'Insurance' => 'Biztosítás',
'Machinery' => 'Gépipar',
'Manufacturing' => 'Gyártás',
'Media' => 'Média',
'Not For Profit' => 'Non-Profit',
'Recreation' => 'Wellness',
'Retail' => 'Kiskereskedelem',
'Shipping' => 'Szállítás',
'Technology' => 'Technológia',
'Telecommunications' => 'Telekommunikáció',
'Transportation' => 'Közlekedés',
'Utilities' => 'Szolgáltatás',
'Other' => 'Egyéb',
'Analyst' => 'Elemző',
'Competitor' => 'Versenytárs',
'Customer' => 'Vevő',
'Integrator' => 'Integrátor',
'Investor' => 'Befektető',
'Partner' => 'Partner',
'Press' => 'Sajtó',
'Prospect' => 'Vevőjelölt',
'Reseller' => 'Viszonteladó',
'LBL_START_DATE' => 'Kezdő dátum',
'LBL_END_DATE' => 'Záró dátum',
'LBL_ACCOUNT_EXIST' => 'Cég név már létezik!',
'LBL_MAILER_EXPORT' => 'Levelezés Exportálása',
'LBL_MAILER_EXPORT_CONTACTS_TYPE' => 'Kapcsolatok kiválasztása:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR' => 'A Kapcsolatok kiválaszthatók egyedi mezőkön és néhány standard mezőn keresztül is.',
'LBL_MAILER_EXPORT_RESULTS_TYPE' => 'Az export típus kiválasztása:',
'LBL_MAILER_EXPORT_RESULTS_DESCR' => 'Az adatokat a Cégekből és a hozzájuk tartozó Kapcsolatokból szedtük össze, amik a megelőző keresés eredményeképpen rendelkezésünkre álltak.',
'LBL_EXPORT_RESULTS_EMAIL' => 'E-levelező adatok exportálása',
'LBL_EXPORT_RESULTS_EMAIL_CORP' => 'Email adatok exportálása a "Cég Email" mezőből, amennyiben a Kapcsolatok "Email" mező üres',
'LBL_EXPORT_RESULTS_FULL' => 'Adatok exportálása a Kapcsolatok, E-Mail, Cégnév, Cím, Telefon, stb. adatokkal',
'LBL_EXPORT_RESULTS_GO' => 'Exportálás',
'LBL_MAILER_EXPORT_IGNORE' => '- mindegy -',
'LBL_MAILER_EXPORT_CHECKED' => 'Igen',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Nem',
'Account No' => 'Cég No.',
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Cég Hierarchiát mutat',
'Accounts ID' => 'Cég AZ',
'Send SMS' => 'SMS küldés',
'Projects' => 'Projektek',
'Service Places' => 'Szolgáltatási helyek'
);
?>

View File

@ -0,0 +1,252 @@
<?php
/*******************************************************************************
* The contents of this file are subject to the following licences:
* - SugarCRM Public License Version 1.1.2 http://www.sugarcrm.com/SPL
* - vtiger CRM Public License Version 1.0
* You may not use this file except in compliance with the License
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* Portions created by vtiger are Copyright (C) vtiger.
* Portions created by Vicus are Copyright (C) Vicus.
* All Rights Reserved.
* Feel free to use / redistribute these languagefiles under the VPL 1.0.
* This translations is based on earlier work of:
* - IT-Online.nl <www.it-online.nl>
* - Weltevree.org <www.Weltevree.org>
********************************************************************************/
/*******************************************************************************
* Vicus eBusiness Solutions Version Control
* @package NL-Dutch
* Description Dutch language pack for vtiger CRM version 5.3.x
* @author $Author: luuk $
* @version $Revision: 1.5 $ $Date: 2011/11/14 17:07:26 $
* @source $Source: /var/lib/cvs/vtiger530/Dutch/modules/Accounts/language/nl_nl.lang.php,v $
* @copyright Copyright (c)2005-2011 Vicus eBusiness Solutions bv <info@vicus.nl>
* @license vtiger CRM Public License Version 1.0 (by definition)
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Accounts',
'LBL_MODULE_TITLE'=>'Accounts: Home',
'LBL_SEARCH_FORM_TITLE'=>'Account zoeken',
'LBL_LIST_FORM_TITLE'=>'Accountlijst',
'LBL_NEW_FORM_TITLE'=>'Nieuw account',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Leden organisatie',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'Mijn accounts',
'LBL_TOP_AMOUNT'=>'Hoeveelheid',
'LBL_LIST_ACCOUNT_NAME'=>'Accountnaam',
'LBL_LIST_CITY'=>'Plaats',
'LBL_LIST_WEBSITE'=>'Website',
'LBL_LIST_STATE'=>'Provincie',
'LBL_LIST_PHONE'=>'Telefoon',
'LBL_LIST_EMAIL_ADDRESS'=>'E-mailadres',
'LBL_LIST_CONTACT_NAME'=>'Contactnaam',
'LBL_LIST_AMOUNT' => 'Totale verkoopkansen',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Account:',
'LBL_ACCOUNT_NAME'=>'Accountnaam:',
'LBL_PHONE'=>'Telefoon:',
'LBL_WEBSITE'=>'Website:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Ticker symbool:',
'LBL_OTHER_PHONE'=>'Telefoon Mobiel:',
'LBL_ANY_PHONE'=>'Telefoon Extra:',
'LBL_MEMBER_OF'=>'Onderdeel van:',
'LBL_EMAIL'=>'E-mail:',
'LBL_EMPLOYEES'=>'Werknemers:',
'LBL_OTHER_EMAIL_ADDRESS'=>'Bedrijfs e-mailadres:',
'LBL_ANY_EMAIL'=>'Extra e-mailadres:',
'LBL_OWNERSHIP'=>'Eigendom:',
'LBL_RATING'=>'Beoordeling:',
'LBL_INDUSTRY'=>'Industrie',
'LBL_SIC_CODE'=>'SIC nummer:',
'LBL_TYPE'=>'Type:',
'LBL_ANNUAL_REVENUE'=>'Jaarlijkse omzet:',
'LBL_ADDRESS_INFORMATION'=>'Adresinformatie',
'LBL_ACCOUNT_INFORMATION'=>'Accountinformatie',
'LBL_CUSTOM_INFORMATION'=>'Extra informatie',
'LBL_BILLING_ADDRESS'=>'Postadres:',
'LBL_SHIPPING_ADDRESS'=>'Afleveradres:',
'LBL_ANY_ADDRESS'=>'Bezoekadres:',
'LBL_CITY'=>'Plaats:',
'LBL_STATE'=>'Provincie:',
'LBL_POSTAL_CODE'=>'Postcode:',
'LBL_COUNTRY'=>'Land:',
'LBL_DESCRIPTION_INFORMATION'=>'Omschrijving',
'LBL_DESCRIPTION'=>'Omschrijving:',
'NTC_COPY_BILLING_ADDRESS'=>'Kopieer Postadres naar Bezoekadres',
'NTC_COPY_SHIPPING_ADDRESS'=>'Kopieer Bezoekadres naar Postadres',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'Weet u zeker dat u dit veld wilt verwijderen als Onderdeel van deze organisatie?',
'LBL_DUPLICATE'=>'Mogelijke dubbele Accounts',
'MSG_DUPLICATE' => 'Wanneer u deze Account aanmaakt kan dit leiden tot een duplicaat. U kunt een keuze maken uit de geselecteerde accounts hieronder of u kunt klikken op Nieuw Account om door te gaan met uw nieuwe Account en de door u ingegeven informatie.',
'LBL_INVITEE'=>'Contacten',
'ERR_DELETE_RECORD'=>"Een veld moet gespecificeerd zijn om de account te verwijderen.",
'LBL_SELECT_ACCOUNT'=>'Selecteer account',
'LBL_GENERAL_INFORMATION'=>'Algemene informatie',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'Nieuwe Verkoopkans',
'LBL_POTENTIAL_TITLE'=>'Verkoopkansen',
'LBL_NEW_TASK'=>'Nieuwe taak',
'LBL_TASK_TITLE'=>'Taken',
'LBL_NEW_CALL'=>'Telefoongesprek',
'LBL_CALL_TITLE'=>'Telefoongesprekken',
'LBL_NEW_MEETING'=>'Vergadering',
'LBL_MEETING_TITLE'=>'Vergadering',
'LBL_NEW_EMAIL'=>'Nieuwe e-mail',
'LBL_EMAIL_TITLE'=>'E-mail',
'LBL_NEW_CONTACT'=>'Nieuwe contacten',
'LBL_CONTACT_TITLE'=>'Contacten',
//Added fields after RC1 - Release
'LBL_ALL'=>'Alle',
'LBL_PROSPECT'=>'Prospect',
'LBL_INVESTOR'=>'Investeerder',
'LBL_RESELLER'=>'Wederverkoper',
'LBL_PARTNER'=>'Partner',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Account gereedschap',
//Added for 4GA
'Account Name'=>'Accountnaam',
'Phone'=>'Telefoon',
'Website'=>'Website',
'Fax'=>'Fax',
'Ticker Symbol'=>'Ticker symbool',
'Other Phone'=>'Telefoon Mobiel',
'Member Of'=>'Onderdeel van',
'Email'=>'E-mail',
'Employees'=>'Werknemers',
'Other Email'=>'Extra e-mailadres',
'Ownership'=>'Eigendom',
'Rating'=>'Beoordeling',
'industry'=>'Industrie',
'SIC Code'=>'SBI code',
'Type'=>'Type',
'Annual Revenue'=>'Jaarlijkse omzet',
'Assigned To'=>'Toegewezen aan',
'Billing Address'=>'Postadres',
'Shipping Address'=>'Bezoekadres',
'Billing City'=>'P Plaats',
'Shipping City'=>'B Plaats',
'Billing State'=>'P Provincie',
'Shipping State'=>'B Provincie',
'Billing Code'=>'P Postcode',
'Shipping Code'=>'B Postcode',
'Billing Country'=>'P Land',
'Shipping Country'=>'B Land',
'Created Time'=>'Gemaakt',
'Modified Time'=>'Gewijzigd',
'Description'=>'Omschrijving',
'Billing Po Box'=>'P Postbus',
'Shipping Po Box'=>'B Postbus',
//Added after 4.2 patch 2
'Email Opt Out'=>'E-mail optie uit',
'LBL_EMAIL_OPT_OUT'=>'E-mail optie uit:',
//Added after 5Alpha5
'Notify Owner'=>'Notificatie aan eigenaar',
//Added for existing picklist entries
'--None--'=>'--Geen--',
'Acquired'=>'Overname',
'Active'=>'Actief',
'Market Failed'=>'Slechte markt',
'Project Cancelled'=>'Project geannuleerd',
'Shutdown'=>'Afsluiten',
'Apparel'=>'Kleding',
'Banking'=>'Banken',
'Biotechnology'=>'Biotechnologie',
'Chemicals'=>'Chemicalieen',
'Communications'=>'Communicatie',
'Construction'=>'Constructie',
'Consulting'=>'Consulting',
'Education'=>'Opleidingen',
'Electronics'=>'Electronica',
'Energy'=>'Energie',
'Engineering'=>'Installatie',
'Entertainment'=>'Entertainment',
'Environmental'=>'Milieu',
'Finance'=>'Financieel',
'Food & Beverage'=>'Voedingsmiddelen & Dranken',
'Government'=>'Overheid',
'Healthcare'=>'Gezondheidszorg',
'Hospitality'=>'Hotels en Conferentie gelegenheden',
'Insurance'=>'Verzekering',
'Machinery'=>'Machinerie',
'Manufacturing'=>'Productie',
'Media'=>'Media',
'Not For Profit'=>'Non Profit',
'Recreation'=>'Recreatie',
'Retail'=>'Detailhandel',
'Shipping'=>'Distributie',
'Technology'=>'Technologie',
'Telecommunications'=>'Telecommunicatie',
'Transportation'=>'Transport',
'Utilities'=>'Nutsbedrijven',
'Other'=>'Anders',
'Analyst'=>'Analist',
'Competitor'=>'Concurrent',
'Customer'=>'Klant',
'Integrator'=>'Integrator',
'Investor'=>'Investeerder',
'Partner'=>'Partner',
'Press'=>'Pers',
'Prospect'=>'Prospect',
'Reseller'=>'Wederverkoper',
'LBL_START_DATE' => 'Startdatum',
'LBL_END_DATE' => 'Einddatum',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'Accountnaam bestaat al!',
// mailer export
'LBL_MAILER_EXPORT' => 'Mailer export',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Selecteer contacten:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'Contacten kunt u selecteren met "standaard velden" en andere velden.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Selecteer export type:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'De gegevens zullen worden verzameld van accounts en haar contacten, die zijn retourneerd van een vorige zoekopdracht.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Export e-mail data',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Export e-mail data, de "bedrijfs e-mail account" zal worden gebruikt als het contact e-mail veld niet ingevuld is.',
'LBL_EXPORT_RESULTS_FULL'=>'Export data met contacten, e-mail, Accountnaam, adres, telefoon, etc.',
'LBL_EXPORT_RESULTS_GO'=>'Export',
'LBL_MAILER_EXPORT_IGNORE' => '--negeer--',
'LBL_MAILER_EXPORT_CHECKED' =>'Gecontroleerd',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Niet gecontroleerd',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Account Nr',
// END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Toon Account Hierarchie',
);
?>

View File

@ -0,0 +1,243 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Accounts/language/en_us.lang.php,v 1.18 2005/03/19 08:59:20 rank Exp $
* Description: Defines the English language pack
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): Valmir Carlos Trindade/Translate to Brazilian Portuguese| 03/03/2012 |Curitiba/Paraná/Brasil.|www.ttcasolucoes.com.br
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Organizações',
'LBL_MODULE_TITLE'=>'Organizações: Home',
'LBL_SEARCH_FORM_TITLE'=>'Pesquisar Organizações',
'LBL_LIST_FORM_TITLE'=>'Listar Organizações',
'LBL_NEW_FORM_TITLE'=>'Nova Organização',
'LBL_MEMBER_ORG_FORM_TITLE'=>'Organizações Membro',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'Minhas Principais Organizações',
'LBL_TOP_AMOUNT'=>'Quantidade',
'LBL_LIST_ACCOUNT_NAME'=>'Nome Organização',
'LBL_LIST_CITY'=>'Cidade',
'LBL_LIST_WEBSITE'=>'Website',
'LBL_LIST_STATE'=>'Estado',
'LBL_LIST_PHONE'=>'Telefone',
'LBL_LIST_EMAIL_ADDRESS'=>'Endereço Email',
'LBL_LIST_CONTACT_NAME'=>'Nome Contato',
'LBL_LIST_AMOUNT' => 'Total',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name' => 'LBL_LIST_ACCOUNT_NAME',
'db_website' => 'LBL_LIST_WEBSITE',
'db_billing_address_city' => 'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'Organização:',
'LBL_ACCOUNT_NAME'=>'Nome Organização:',
'LBL_PHONE'=>'Telefone:',
'LBL_WEBSITE'=>'Website:',
'LBL_FAX'=>'Fax:',
'LBL_TICKER_SYMBOL'=>'Cód. Bolsa:',
'LBL_OTHER_PHONE'=>'Telefone Alternativo:',
'LBL_ANY_PHONE'=>'Outro Telefone:',
'LBL_MEMBER_OF'=>'Membro de:',
'LBL_EMAIL'=>'Email:',
'LBL_EMPLOYEES'=>'Empregados:',
'LBL_OTHER_EMAIL_ADDRESS'=>'Email Alterntivo:',
'LBL_ANY_EMAIL'=>'Outro Email:',
'LBL_OWNERSHIP'=>'Proprietário:',
'LBL_RATING'=>'Avaliação:',
'LBL_INDUSTRY'=>'Atividade:',
'LBL_SIC_CODE'=>'Cod CNAE:',
'LBL_TYPE'=>'Tipo:',
'LBL_ANNUAL_REVENUE'=>'Receita Anual:',
'LBL_ADDRESS_INFORMATION'=>'Informação Endereço',
'LBL_ACCOUNT_INFORMATION'=>'Informação Organização',
'LBL_CUSTOM_INFORMATION'=>'Informação Customizada',
'LBL_BILLING_ADDRESS'=>'Endereço Faturamento:',
'LBL_SHIPPING_ADDRESS'=>'Endereço Entrega:',
'LBL_ANY_ADDRESS'=>'Endereço Alternativo:',
'LBL_CITY'=>'Cidade:',
'LBL_STATE'=>'Estado:',
'LBL_POSTAL_CODE'=>'CEP:',
'LBL_COUNTRY'=>'País:',
'LBL_DESCRIPTION_INFORMATION'=>'Descrição',
'LBL_DESCRIPTION'=>'Descrição:',
'NTC_COPY_BILLING_ADDRESS'=>'Copiar Endereço Faturamento',
'NTC_COPY_SHIPPING_ADDRESS'=>'Copiar Endereço Entrega',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'Você tem certeza que deseja remover este registro enquanto um membro da organização?',
'LBL_DUPLICATE'=>'Organizações com Possibilidade de Duplicação',
'MSG_DUPLICATE' => 'Criando esta vtiger_account poderá criar uma vtiger_potentialy Organização duplicada. Você pode também selecionar uma vtiger_account da lista abaixo ou clicar sobre Criar Nova Organização para continuar criando uma nova vtiger_account com os dados anteriores.',
'LBL_INVITEE'=>'Contatos',
'ERR_DELETE_RECORD'=>"Defina um registro para apagar vtiger_account.",
'LBL_SELECT_ACCOUNT'=>'Selecionar Organização',
'LBL_GENERAL_INFORMATION'=>'Informação Geral',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'Nova Oportunidade',
'LBL_POTENTIAL_TITLE'=>'Oportunidades',
'LBL_NEW_TASK'=>'Nova Tarefa',
'LBL_TASK_TITLE'=>'Tarefas',
'LBL_NEW_CALL'=>'Nova Chamada',
'LBL_CALL_TITLE'=>'Chamadas',
'LBL_NEW_MEETING'=>'Nova Reunião',
'LBL_MEETING_TITLE'=>'Reuniões',
'LBL_NEW_EMAIL'=>'Novo Email',
'LBL_EMAIL_TITLE'=>'Emails',
'LBL_NEW_CONTACT'=>'Novo Contato',
'LBL_CONTACT_TITLE'=>'Contatos',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'Todos',
'LBL_PROSPECT'=>'Prospect',
'LBL_INVESTOR'=>'Investidor',
'LBL_RESELLER'=>'Revendedor',
'LBL_PARTNER'=>'Parceiro',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'Ferramentas da Organização',
//Added for 4GA
'Account Name'=>'Nome Organização',
'Phone'=>'Telefone',
'Website'=>'Website',
'Fax'=>'Fax',
'Ticker Symbol'=>'Cod. Bolsa',
'Other Phone'=>'Telefone Alternativo',
'Member Of'=>'Membro de',
'Email'=>'Email',
'Employees'=>'Empregados',
'Other Email'=>'Email Alternativo',
'Ownership'=>'Propriedade',
'Rating'=>'Avaliação',
'industry'=>'Atividade',
'SIC Code'=>'Cod CNAE',
'Type'=>'Tipo',
'Annual Revenue'=>'Receita Anual',
'Assigned To'=>'Responsável',
'Billing Address'=>'Endereço Faturamento',
'Shipping Address'=>'Endereço Entrega',
'Billing City'=>'Cidade Faturamento',
'Shipping City'=>'Cidade Entrega',
'Billing State'=>'Estado Faturamento',
'Shipping State'=>'Estado Entrega',
'Billing Code'=>'CEP Faturamento',
'Shipping Code'=>'CEP Entrega',
'Billing Country'=>'País Faturamento',
'Shipping Country'=>'País Entrega',
'Created Time'=>'Hora Criação',
'Modified Time'=>'Hora Modificação',
'Description'=>'Descrição',
'Shipping Po Box'=>'Cx Postal Entrega',
'Billing Po Box'=>'Cx Postal Faturamento',
//Added after 4.2 patch 2
'Email Opt Out'=>'Rejeita Email',
'LBL_EMAIL_OPT_OUT'=>'Rejeita Email:',
//Added after 5Alpha5
'Notify Owner'=>'Notificar Proprietário',
//Added for existing picklist entries
'--None--'=>'--Nada--',
'Acquired'=>'Aquirido',
'Active'=>'Ativo',
'Market Failed'=>'Venda não realizada',
'Project Cancelled'=>'Projeto Cancelado',
'Shutdown'=>'Encerrado',
'Apparel'=>'Vestuário',
'Banking'=>'Bancos',
'Biotechnology'=>'Biotecnologia',
'Chemicals'=>'Química',
'Communications'=>'Comunicações',
'Construction'=>'Construção',
'Consulting'=>'Consultoria',
'Education'=>'Educação',
'Electronics'=>'Eletrônica',
'Energy'=>'Energia',
'Engineering'=>'Engenharia',
'Entertainment'=>'Entretenimento',
'Environmental'=>'Meio Ambiente',
'Finance'=>'Finanças',
'Food & Beverage'=>'Alimentos & Bebidas',
'Government'=>'Governo',
'Healthcare'=>'Saúde',
'Hospitality'=>'Hotéis',
'Insurance'=>'Seguros',
'Machinery'=>'Máquinas',
'Manufacturing'=>'Indústria',
'Media'=>'Mídia',
'Not For Profit'=>'ONG',
'Recreation'=>'Recreação',
'Retail'=>'Comércio',
'Shipping'=>'Transporte Marítimo',
'Technology'=>'Tecnologia',
'Telecommunications'=>'Telecomunicações',
'Transportation'=>'Transportes',
'Utilities'=>'Serviço Público',
'Other'=>'Outro',
'Analyst'=>'Analista',
'Competitor'=>'Concorrente',
'Customer'=>'Cliente',
'Integrator'=>'Integrador',
'Investor'=>'Investidor',
'Partner'=>'Parceiro',
'Press'=>'Imprensa',
'Prospect'=>'Prospect',
'Reseller'=>'Revendedor',
'LBL_START_DATE' => 'Data Inicial',
'LBL_END_DATE' => 'Data Final',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST' => 'O Nome da Organização já Existe!',
// mailer export
'LBL_MAILER_EXPORT' => 'Exportar',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'Selecione Contatos:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'Os Contatos também podem ser selecionados a partir dos "Campos Customizados" e através de qualquer campo padrão.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'Selecione o tipo de Exportação:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'Os dados serão obtidos a partir das Organizações e seus Contatos, que retornarem
a partir da pesquisa realizada.',
'LBL_EXPORT_RESULTS_EMAIL' => 'Exportar Contato e E-mail',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'Exportar Contatos e E-mails, utilizando o "E-mail da Empresa" se o "E-mail" do Contato estiver vazio',
'LBL_EXPORT_RESULTS_FULL'=>'Exportar dados com Contatos, E-mail, Organização, Endereço, Telefone, etc.',
'LBL_EXPORT_RESULTS_GO'=>'Executar Exportação',
'LBL_MAILER_EXPORT_IGNORE' => '--ignorar--',
'LBL_MAILER_EXPORT_CHECKED' =>'Checado',
'LBL_MAILER_EXPORT_NOTCHECKED' => 'Não Checado',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'Cód. Organização',
// END
// Organization Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY' => 'Mostrar Hierarquia da Organização',
'Accounts ID' => 'ID Organizações',
);
?>

View File

@ -0,0 +1,248 @@
<?php
/**
* Copyright (C) 2006-2012 YUCHENG HU
*
* ---------------------------------------------------------
* OSSEZ (中国) 信息技术有限公司
* http://www.ossez.com
* http://src.ossez.com
*
* CONTACT
* huyuchengus@gmail.com / yucheng.hu@ossez.com
*
* ---------------------------------------------------------
* [A] GNU GENERAL PUBLIC LICENSE GNU/LGPL
* [B] Apache License, Version 2.0
*
* ---------------------------------------------------------
* NOTE
* 1. 所有的语言配置文件必须采用无 BOM UTF-8 编码
* 2. 本语言文件为 ossez-5.4.0 分支,适用于 vTiger 5.4.0
* ---------------------------------------------------------
*/
$mod_strings=Array(
'LBL_MODULE_NAME'=>'客户',
'LBL_MODULE_TITLE'=>'客户:首页',
'LBL_SEARCH_FORM_TITLE'=>'搜寻客户',
'LBL_LIST_FORM_TITLE'=>'客户列表',
'LBL_NEW_FORM_TITLE'=>'新增客户',
'LBL_MEMBER_ORG_FORM_TITLE'=>'成员组织性质',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'我的重要客户',
'LBL_TOP_AMOUNT'=>'金额',
'LBL_LIST_ACCOUNT_NAME'=>'客户名称',
'LBL_LIST_CITY'=>'乡镇市区',
'LBL_LIST_WEBSITE'=>'网站',
'LBL_LIST_STATE'=>'县市',
'LBL_LIST_PHONE'=>'电话',
'LBL_LIST_EMAIL_ADDRESS'=>'电子邮件地址',
'LBL_LIST_CONTACT_NAME'=>'联系人姓名',
'LBL_LIST_AMOUNT'=>'机会总计',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name'=>'LBL_LIST_ACCOUNT_NAME',
'db_website'=>'LBL_LIST_WEBSITE',
'db_billing_address_city'=>'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'客户:',
'LBL_ACCOUNT_NAME'=>'客户名称:',
'LBL_PHONE'=>'电话:',
'LBL_WEBSITE'=>'网站:',
'LBL_FAX'=>'传真:',
'LBL_TICKER_SYMBOL'=>'传票符号:',
'LBL_OTHER_PHONE'=>'其它电话:',
'LBL_ANY_PHONE'=>'其它电话:',
'LBL_MEMBER_OF'=>'成员:',
'LBL_EMAIL'=>'电子邮件:',
'LBL_EMPLOYEES'=>'员工:',
'LBL_OTHER_EMAIL_ADDRESS'=>'其它电子邮件:',
'LBL_ANY_EMAIL'=>'其它电子邮件:',
'LBL_OWNERSHIP'=>'所有者:',
'LBL_RATING'=>'评价:',
'LBL_INDUSTRY'=>'行业类别:',
'LBL_SIC_CODE'=>'营业执照编号',
'LBL_TYPE'=>'类型:',
'LBL_ANNUAL_REVENUE'=>'年营业额:',
'LBL_ADDRESS_INFORMATION'=>'地址信息',
'LBL_ACCOUNT_INFORMATION'=>'账号信息',
'LBL_CUSTOM_INFORMATION'=>'客户信息',
'LBL_BILLING_ADDRESS'=>'账单地址:',
'LBL_SHIPPING_ADDRESS'=>'送货地址:',
'LBL_ANY_ADDRESS'=>'其它地址:',
'LBL_CITY'=>'乡镇市区:',
'LBL_STATE'=>'县市:',
'LBL_POSTAL_CODE'=>'邮政编码:',
'LBL_COUNTRY'=>'国家:',
'LBL_DESCRIPTION_INFORMATION'=>'描述信息',
'LBL_DESCRIPTION'=>'描述:',
'NTC_COPY_BILLING_ADDRESS'=>'复制账单地址内容到送货地址',
'NTC_COPY_SHIPPING_ADDRESS'=>'复制送货地址内容到账单地址',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'您确定要删除这笔成员/组织的记录吗?',
'LBL_DUPLICATE'=>'复制潜在案件客户',
'MSG_DUPLICATE'=>'由潜在案件客户中复制建立新客户,您可以点选客户列表中的客户以复制建立新的客户,并且继承它的相关数据。',
'LBL_INVITEE'=>'联系人',
'ERR_DELETE_RECORD'=>'要删除账号您必须指定一笔记录编号.',
'LBL_SELECT_ACCOUNT'=>'选择客户',
'LBL_GENERAL_INFORMATION'=>'主要信息',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'新增潜在案件',
'LBL_POTENTIAL_TITLE'=>'潜在案件',
'LBL_NEW_TASK'=>'新增任务',
'LBL_TASK_TITLE'=>'任务',
'LBL_NEW_CALL'=>'新增电话记录',
'LBL_CALL_TITLE'=>'电话记录',
'LBL_NEW_MEETING'=>'新增会议记录',
'LBL_MEETING_TITLE'=>'会议',
'LBL_NEW_EMAIL'=>'新增电子邮件',
'LBL_EMAIL_TITLE'=>'邮件',
'LBL_NEW_CONTACT'=>'新增联系人',
'LBL_CONTACT_TITLE'=>'联系人',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'全部',
'LBL_PROSPECT'=>'期望',
'LBL_INVESTOR'=>'投资者',
'LBL_RESELLER'=>'转售人',
'LBL_PARTNER'=>'伙伴',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'客户工具',
//Added for 4GA
'Account Name'=>'客户名称',
'Phone'=>'电话',
'Website'=>'网址',
'Fax'=>'传真',
'Ticker Symbol'=>'股票代码',
'Other Phone'=>'其它电话',
'Member Of'=>'成员',
'Email'=>'电子邮件',
'Employees'=>'员工',
'Other Email'=>'其它电子邮件',
'Ownership'=>'拥有者',
'Rating'=>'评价',
'industry'=>'行业类别',
'SIC Code'=>'营业执照编号',
'Type'=>'类型',
'Annual Revenue'=>'年营业额',
'Assigned To'=>'负责人',
'Billing Address'=>'账单地址',
'Shipping Address'=>'送货地址',
'Billing City'=>'城市及区',
'Shipping City'=>'城市及区',
'Billing State'=>'省、直辖市',
'Shipping State'=>'省、直辖市',
'Billing Code'=>'邮政编码',
'Shipping Code'=>'邮政编码',
'Billing Country'=>'国家',
'Shipping Country'=>'国家',
'Created Time'=>'建立时间',
'Modified Time'=>'修改时间',
'Description'=>'描述',
'Shipping Po Box'=>'邮政信箱',
'Billing Po Box'=>'邮政信箱',
//Added after 4.2 patch 2
'Email Opt Out'=>'拒绝电子邮件打扰',
'LBL_EMAIL_OPT_OUT'=>'拒绝电子邮件打扰:',
//Added after 5Alpha5
'Notify Owner'=>'提醒负责人',
//Added for existing picklist entries
'--None--'=>'--无--',
'Acquired'=>'取得',
'Active'=>'启用',
'Market Failed'=>'市场失利',
'Project Cancelled'=>'项目取消',
'Shutdown'=>'关闭',
'Apparel'=>'服装',
'Banking'=>'银行',
'Biotechnology'=>'生物科技',
'Chemicals'=>'化学',
'Communications'=>'交通',
'Construction'=>'建筑',
'Consulting'=>'顾问',
'Education'=>'教育',
'Electronics'=>'电子',
'Energy'=>'能源',
'Engineering'=>'工程',
'Entertainment'=>'娱乐',
'Environmental'=>'环境',
'Finance'=>'财务',
'Food & Beverage'=>'饮食',
'Government'=>'政府',
'Healthcare'=>'健康照护',
'Hospitality'=>'医院',
'Insurance'=>'保险',
'Machinery'=>'机械',
'Manufacturing'=>'工厂',
'Media'=>'媒体',
'Not For Profit'=>'非营利',
'Recreation'=>'娱乐中心',
'Retail'=>'零售',
'Shipping'=>'运输',
'Technology'=>'科技',
'Telecommunications'=>'通讯',
'Transportation'=>'传输',
'Utilities'=>'工具',
'Real Estate'=>'房地产公司',
'State-owned Enterprises'=>'国有企业',
'Private Enterprise'=>'民营企业',
'Construction Company'=>'建筑公司',
'LED Manufacturer'=>'LED 工程公司',
'LED Lighting Company'=>'LED 照明公司',
'Other'=>'其它',
'Analyst'=>'分析师',
'Competitor'=>'竞争者',
'Customer'=>'客户',
'Integrator'=>'整合者',
'Investor'=>'投资者',
'Partner'=>'伙伴',
'Press'=>'新闻',
'Prospect'=>'潜在客户',
'Reseller'=>'盘商',
'LBL_START_DATE'=>'开始日期',
'LBL_END_DATE'=>'结束日期',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST'=>'帐户名称已存在!',
// mailer export
'LBL_MAILER_EXPORT'=>'邮寄导出',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'选择通讯录:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'联络可能被选择通过"自定义字段"和一些标准字段。.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'选择导出类型:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'聚集从账户及其联系人的数据,还给前次搜索.',
'LBL_EXPORT_RESULTS_EMAIL'=>'导出邮件联系人数据',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'导出邮件数据,如果联系人"电邮"为空则用"公司电邮"',
'LBL_EXPORT_RESULTS_FULL'=>'导出联系人数据,电子邮件帐户名称,地址,电话等.',
'LBL_EXPORT_RESULTS_GO'=>'导出',
'LBL_MAILER_EXPORT_IGNORE'=>'--忽略--',
'LBL_MAILER_EXPORT_CHECKED'=>'检查',
'LBL_MAILER_EXPORT_NOTCHECKED'=>'不进行检查',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'帐号',
//END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY'=>'查看账号级别',
);
?>

View File

@ -0,0 +1,248 @@
<?php
/**
* Copyright (C) 2006-2013 YUCHENG HU
*
* ---------------------------------------------------------
* OSSEZ (中國) 信息技術有限公司
* http://www.ossez.com
* http://src.ossez.com
*
* CONTACT
* huyuchengus@gmail.com / yucheng.hu@ossez.com
*
* ---------------------------------------------------------
* [A] GNU GENERAL PUBLIC LICENSE GNU/LGPL
* [B] Apache License, Version 2.0
*
* ---------------------------------------------------------
* NOTE
* 1. 所有的語言配置文件必須采用無 BOM UTF-8 編碼
* 2. 本語言文件為 ossez-5.4.0 分支,適用於 vTiger 5.4.0
* ---------------------------------------------------------
*/
$mod_strings=Array(
'LBL_MODULE_NAME'=>'客戶',
'LBL_MODULE_TITLE'=>'客戶:首頁',
'LBL_SEARCH_FORM_TITLE'=>'搜尋客戶',
'LBL_LIST_FORM_TITLE'=>'客戶列表',
'LBL_NEW_FORM_TITLE'=>'新增客戶',
'LBL_MEMBER_ORG_FORM_TITLE'=>'成員組織性質',
// Label for Top Accounts in Home Page, added for 4.2 GA
'LBL_TOP_ACCOUNTS'=>'我的重要客戶',
'LBL_TOP_AMOUNT'=>'金額',
'LBL_LIST_ACCOUNT_NAME'=>'客戶名稱',
'LBL_LIST_CITY'=>'鄉鎮市區',
'LBL_LIST_WEBSITE'=>'網站',
'LBL_LIST_STATE'=>'縣市',
'LBL_LIST_PHONE'=>'電話',
'LBL_LIST_EMAIL_ADDRESS'=>'電子郵件地址',
'LBL_LIST_CONTACT_NAME'=>'聯系人姓名',
'LBL_LIST_AMOUNT'=>'機會總計',
//DON'T CONVERT THESE THEY ARE MAPPINGS
'db_name'=>'LBL_LIST_ACCOUNT_NAME',
'db_website'=>'LBL_LIST_WEBSITE',
'db_billing_address_city'=>'LBL_LIST_CITY',
//END DON'T CONVERT
'LBL_ACCOUNT'=>'客戶:',
'LBL_ACCOUNT_NAME'=>'客戶名稱:',
'LBL_PHONE'=>'電話:',
'LBL_WEBSITE'=>'網站:',
'LBL_FAX'=>'傳真:',
'LBL_TICKER_SYMBOL'=>'傳票符號:',
'LBL_OTHER_PHONE'=>'其它電話:',
'LBL_ANY_PHONE'=>'其它電話:',
'LBL_MEMBER_OF'=>'成員:',
'LBL_EMAIL'=>'電子郵件:',
'LBL_EMPLOYEES'=>'員工:',
'LBL_OTHER_EMAIL_ADDRESS'=>'其它電子郵件:',
'LBL_ANY_EMAIL'=>'其它電子郵件:',
'LBL_OWNERSHIP'=>'所有者:',
'LBL_RATING'=>'評價:',
'LBL_INDUSTRY'=>'行業類別:',
'LBL_SIC_CODE'=>'統一編號:',
'LBL_TYPE'=>'類型:',
'LBL_ANNUAL_REVENUE'=>'年營業額:',
'LBL_ADDRESS_INFORMATION'=>'地址信息',
'LBL_ACCOUNT_INFORMATION'=>'賬號信息',
'LBL_CUSTOM_INFORMATION'=>'客戶信息',
'LBL_BILLING_ADDRESS'=>'賬單地址:',
'LBL_SHIPPING_ADDRESS'=>'送貨地址:',
'LBL_ANY_ADDRESS'=>'其它地址:',
'LBL_CITY'=>'鄉鎮市區:',
'LBL_STATE'=>'縣市:',
'LBL_POSTAL_CODE'=>'郵政編碼:',
'LBL_COUNTRY'=>'國家:',
'LBL_DESCRIPTION_INFORMATION'=>'描述信息',
'LBL_DESCRIPTION'=>'描述:',
'NTC_COPY_BILLING_ADDRESS'=>'復制賬單地址內容到送貨地址',
'NTC_COPY_SHIPPING_ADDRESS'=>'復制送貨地址內容到賬單地址',
'NTC_REMOVE_MEMBER_ORG_CONFIRMATION'=>'您確定要刪除這筆成員/組織的記錄嗎?',
'LBL_DUPLICATE'=>'復制潛在案件客戶',
'MSG_DUPLICATE'=>'由潛在案件客戶中復制建立新客戶,您可以點選客戶列表中的客戶以復制建立新的客戶,並且繼承它的相關數據。',
'LBL_INVITEE'=>'聯系人',
'ERR_DELETE_RECORD'=>'要刪除賬號您必須指定一筆記錄編號.',
'LBL_SELECT_ACCOUNT'=>'選擇客戶',
'LBL_GENERAL_INFORMATION'=>'主要信息',
//for v4 release added
'LBL_NEW_POTENTIAL'=>'新增潛在案件',
'LBL_POTENTIAL_TITLE'=>'潛在案件',
'LBL_NEW_TASK'=>'新增任務',
'LBL_TASK_TITLE'=>'任務',
'LBL_NEW_CALL'=>'新增電話記錄',
'LBL_CALL_TITLE'=>'電話記錄',
'LBL_NEW_MEETING'=>'新增會議記錄',
'LBL_MEETING_TITLE'=>'會議',
'LBL_NEW_EMAIL'=>'新增電子郵件',
'LBL_EMAIL_TITLE'=>'郵件',
'LBL_NEW_CONTACT'=>'新增聯系人',
'LBL_CONTACT_TITLE'=>'聯系人',
//Added vtiger_fields after RC1 - Release
'LBL_ALL'=>'全部',
'LBL_PROSPECT'=>'期望',
'LBL_INVESTOR'=>'投資者',
'LBL_RESELLER'=>'轉售人',
'LBL_PARTNER'=>'夥伴',
// Added for 4GA
'LBL_TOOL_FORM_TITLE'=>'客戶工具',
//Added for 4GA
'Account Name'=>'客戶名稱',
'Phone'=>'電話',
'Website'=>'網址',
'Fax'=>'傳真',
'Ticker Symbol'=>'股票代碼',
'Other Phone'=>'其它電話',
'Member Of'=>'成員',
'Email'=>'電子郵件',
'Employees'=>'員工',
'Other Email'=>'其它電子郵件',
'Ownership'=>'擁有者',
'Rating'=>'評價',
'industry'=>'行業類別',
'SIC Code'=>'統一編號',
'Type'=>'類型',
'Annual Revenue'=>'年營業額',
'Assigned To'=>'負責人',
'Billing Address'=>'賬單地址',
'Shipping Address'=>'送貨地址',
'Billing City'=>'城市及區',
'Shipping City'=>'城市及區',
'Billing State'=>'省、直轄市',
'Shipping State'=>'省、直轄市',
'Billing Code'=>'郵政編碼',
'Shipping Code'=>'郵政編碼',
'Billing Country'=>'國家',
'Shipping Country'=>'國家',
'Created Time'=>'建立時間',
'Modified Time'=>'修改時間',
'Description'=>'描述',
'Shipping Po Box'=>'郵政信箱',
'Billing Po Box'=>'郵政信箱',
//Added after 4.2 patch 2
'Email Opt Out'=>'拒絕電子郵件打擾',
'LBL_EMAIL_OPT_OUT'=>'拒絕電子郵件打擾:',
//Added after 5Alpha5
'Notify Owner'=>'提醒負責人',
//Added for existing picklist entries
'--None--'=>'--無--',
'Acquired'=>'取得',
'Active'=>'啟用',
'Market Failed'=>'市場失利',
'Project Cancelled'=>'項目取消',
'Shutdown'=>'關閉',
'Apparel'=>'服裝',
'Banking'=>'銀行',
'Biotechnology'=>'生物科技',
'Chemicals'=>'化學',
'Communications'=>'交通',
'Construction'=>'建築',
'Consulting'=>'顧問',
'Education'=>'教育',
'Electronics'=>'電子',
'Energy'=>'能源',
'Engineering'=>'工程',
'Entertainment'=>'娛樂',
'Environmental'=>'環境',
'Finance'=>'財務',
'Food & Beverage'=>'飲食',
'Government'=>'政府',
'Healthcare'=>'健康照護',
'Hospitality'=>'醫院',
'Insurance'=>'保險',
'Machinery'=>'機械',
'Manufacturing'=>'工廠',
'Media'=>'媒體',
'Not For Profit'=>'非營利',
'Recreation'=>'娛樂中心',
'Retail'=>'零售',
'Shipping'=>'運輸',
'Technology'=>'科技',
'Telecommunications'=>'通訊',
'Transportation'=>'傳輸',
'Utilities'=>'工具',
'Real Estate'=>'房地產公司',
'State-owned Enterprises'=>'國有企業',
'Private Enterprise'=>'民營企業',
'Construction Company'=>'建築公司',
'LED Manufacturer'=>'LED 工程公司',
'LED Lighting Company'=>'LED 照明公司',
'Other'=>'其它',
'Analyst'=>'分析師',
'Competitor'=>'競爭者',
'Customer'=>'客戶',
'Integrator'=>'整合者',
'Investor'=>'投資者',
'Partner'=>'夥伴',
'Press'=>'新聞',
'Prospect'=>'潛在客戶',
'Reseller'=>'盤商',
'LBL_START_DATE'=>'開始日期',
'LBL_END_DATE'=>'結束日期',
// Added/Updated for vtiger CRM 5.0.4
//added to fix the issue #4081
'LBL_ACCOUNT_EXIST'=>'帳戶名稱已存在!',
// mailer export
'LBL_MAILER_EXPORT'=>'郵寄導出',
'LBL_MAILER_EXPORT_CONTACTS_TYPE'=>'選擇通訊錄:',
'LBL_MAILER_EXPORT_CONTACTS_DESCR'=>'聯絡可能被選擇通過"自定義字段"和一些標準字段。.',
'LBL_MAILER_EXPORT_RESULTS_TYPE'=>'選擇導出類型:',
'LBL_MAILER_EXPORT_RESULTS_DESCR'=>'聚集從賬戶及其聯系人的數據,還給前次搜索.',
'LBL_EXPORT_RESULTS_EMAIL'=>'導出郵件聯系人數據',
'LBL_EXPORT_RESULTS_EMAIL_CORP'=>'導出郵件數據,如果聯系人"電郵"為空則用"公司電郵"',
'LBL_EXPORT_RESULTS_FULL'=>'導出聯系人數據,電子郵件帳戶名稱,地址,電話等.',
'LBL_EXPORT_RESULTS_GO'=>'導出',
'LBL_MAILER_EXPORT_IGNORE'=>'--忽略--',
'LBL_MAILER_EXPORT_CHECKED'=>'檢查',
'LBL_MAILER_EXPORT_NOTCHECKED'=>'不進行檢查',
// Added after 5.0.4 GA
//Module Sequence Numbering
'Account No'=>'帳號',
//END
// Account Hierarchy
'LBL_SHOW_ACCOUNT_HIERARCHY'=>'查看賬號級別',
);
?>

View File

@ -0,0 +1,40 @@
<?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/database/PearDatabase.php');
require_once('user_privileges/default_module_view.php');
global $singlepane_view, $currentModule;
$idlist = vtlib_purify($_REQUEST['idlist']);
$dest_mod = vtlib_purify($_REQUEST['destination_module']);
$parenttab = getParentTab();
$forCRMRecord = vtlib_purify($_REQUEST['parentid']);
if($singlepane_view == 'true')
$action = "DetailView";
else
$action = "CallRelatedList";
$storearray = array();
if(!empty($_REQUEST['idlist'])) {
// Split the string of ids
$storearray = explode (";",trim($idlist,";"));
} else if(!empty($_REQUEST['entityid'])){
$storearray = array($_REQUEST['entityid']);
}
$focus = CRMEntity::getInstance($currentModule);
if(!empty($storearray)) {
relateEntities($focus, $currentModule, $forCRMRecord, $dest_mod, $storearray);
}
header("Location: index.php?action=$action&module=$currentModule&record=".$forCRMRecord."&parenttab=".$parenttab);
?>

View File

@ -0,0 +1,24 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Administration/Forms.php,v 1.2 2004/10/06 09:02:05 jack Exp $
* Description: Contains a variety of utility functions specific to this module.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
?>

View File

@ -0,0 +1,23 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Administration/index.php,v 1.1 2004/08/17 15:03:27 gjayakrishnan Exp $
* Description: TODO: To be written.
********************************************************************************/
$currentModule = 'Users';
include("modules/Users/ListView.php");
?>

View File

@ -0,0 +1,23 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME' => 'Administration',
'LBL_MODULE_TITLE' => 'Administration: Home',
'LBL_NEW_FORM_TITLE' => 'neuer Benutzer',
'ERR_DELETE_RECORD' => 'Zum Löschen muss mindestens ein Benutzer ausgewählt werden.',
);
?>

View File

@ -0,0 +1,17 @@
<?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.
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Administration',
'LBL_MODULE_TITLE' => 'Administration: Home',
'LBL_NEW_FORM_TITLE' => 'New Organisation',
'ERR_DELETE_RECORD' => 'A record number must be specified to delete the Organisation'
);
?>

View File

@ -0,0 +1,28 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Administration/language/en_us.lang.php,v 1.3 2005/01/25 05:54:44 jack Exp $
* Description: Defines the English language pack for the Administration module.
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Administration',
'LBL_MODULE_TITLE'=>'Administration: Home',
'LBL_NEW_FORM_TITLE'=>'New Organization',
'ERR_DELETE_RECORD'=>"A record number must be specified to delete the organization.",
);
?>

View File

@ -0,0 +1,27 @@
<?php
/***********************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
********************************************************************************
* Module : Administration
* Language : Español
* Version : 504
* Created Date : 2007-03-30 Last change : 2007-10-10
* Author : Rafael Soler
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Administración',
'LBL_MODULE_TITLE'=>'Administración: Inicio',
'LBL_NEW_FORM_TITLE' => 'Nueva Cuenta',
'ERR_DELETE_RECORD' => 'Debe especificar un registro para eliminar la cuenta.',
);
?>

View File

@ -0,0 +1,28 @@
<?php
/***********************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
********************************************************************************
* Module : Administration
* Language : Español
* Version : 504
* Created Date : 2007-03-30 Last change : 2007-10-10
* Author : Rafael Soler
* Author : Francisco Hernandez Odin Consultores www.odin.mx
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Administración',
'LBL_MODULE_TITLE'=>'Administración: Inicio',
'LBL_NEW_FORM_TITLE' => 'Nueva Cuenta',
'ERR_DELETE_RECORD' => 'Debe especificar un registro para eliminar la cuenta.',
);
?>

View File

@ -0,0 +1,18 @@
<?php
/***********************************************************
* Module : Administration
* Language : French
* Version : 5.4.0
* License : GPL
* Author : ABOnline solutions http://www.vtiger-crm.fr
***********************************************************/
$mod_strings = array (
'LBL_MODULE_NAME' => 'Administration',
'LBL_MODULE_TITLE' => 'Administration : ',
'LBL_NEW_FORM_TITLE' => 'Nouveau compte',
'ERR_DELETE_RECORD' => 'Un numéro d\'enregistrement doit être renseigné pour supprimer le compte.',
);
$mod_list_strings = array (
);
?>

View File

@ -0,0 +1,28 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************
* $Header: \modules\Administration\language\hu_hu.lang.php - 9:42 2011.11.11. $
* Description: Defines the Hungarian language pack for the Administration module vtiger 5.3.x
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): Istvan Holbok, e-mail: holbok@gmail.com , mobil: +3670-3420900 , Skype: holboki
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Adminisztráció',
'LBL_MODULE_TITLE' => 'Adminisztráció: Kezdőlap',
'LBL_NEW_FORM_TITLE' => 'Új Cég',
'ERR_DELETE_RECORD' => 'Adj meg egy rekord azonosítót a Cég törléséhez'
);
?>

View File

@ -0,0 +1,42 @@
<?php
/*******************************************************************************
* The contents of this file are subject to the following licences:
* - SugarCRM Public License Version 1.1.2 http://www.sugarcrm.com/SPL
* - vtiger CRM Public License Version 1.0
* You may not use this file except in compliance with the License
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* Portions created by vtiger are Copyright (C) vtiger.
* Portions created by Vicus are Copyright (C) Vicus.
* All Rights Reserved.
* Feel free to use / redistribute these languagefiles under the VPL 1.0.
* This translations is based on earlier work of:
* - IT-Online.nl <www.it-online.nl>
* - Weltevree.org <www.Weltevree.org>
********************************************************************************/
/*******************************************************************************
* Vicus eBusiness Solutions Version Control
* @package NL-Dutch
* Description Dutch language pack for vtiger CRM version 5.3.x
* @author $Author: luuk $
* @version $Revision: 1.2 $ $Date: 2011/11/14 17:07:26 $
* @source $Source: /var/lib/cvs/vtiger530/Dutch/modules/Administration/language/nl_nl.lang.php,v $
* @copyright Copyright (c)2005-2011 Vicus eBusiness Solutions bv <info@vicus.nl>
* @license vtiger CRM Public License Version 1.0 (by definition)
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Administratie',
'LBL_MODULE_TITLE'=>'Administratie: Home',
'LBL_NEW_FORM_TITLE'=>'Nieuw Account',
'ERR_DELETE_RECORD'=>"U moet een veld specificeren om het Account te verwijderen.",
);
?>

View File

@ -0,0 +1,28 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): Valmir Carlos Trindade/Translate to Brazilian Portuguese| 03/03/2012 |Curitiba/Paraná/Brasil.|www.ttcasolucoes.com.br
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Administration/language/en_us.lang.php,v 1.3 2005/01/25 05:54:44 jack Exp $
* Description: Defines the English language pack for the Administration module.
********************************************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Administração',
'LBL_MODULE_TITLE'=>'Administracão: Principal',
'LBL_NEW_FORM_TITLE'=>'Nova Organização',
'ERR_DELETE_RECORD'=>"Defina um registro para apagar a Organização.",
);
?>

View File

@ -0,0 +1,32 @@
<?php
/**
* Copyright (C) 2006-2012 YUCHENG HU
*
* ---------------------------------------------------------
* OSSEZ (中国) 信息技术有限公司
* http://www.ossez.com
* http://src.ossez.com
*
* CONTACT
* huyuchengus@gmail.com / yucheng.hu@ossez.com
*
* ---------------------------------------------------------
* [A] GNU GENERAL PUBLIC LICENSE GNU/LGPL
* [B] Apache License, Version 2.0
*
* ---------------------------------------------------------
* NOTE
* 1. 所有的语言配置文件必须采用无 BOM UTF-8 编码
* 2. 本语言文件为 ossez-5.4.0 分支,适用于 vTiger 5.4.0
* ---------------------------------------------------------
*/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'系统管理',
'LBL_MODULE_TITLE'=>'系统管理:首页',
'LBL_NEW_FORM_TITLE'=>'新增用户',
'ERR_DELETE_RECORD'=>'必须指定纪录编号才能删除客户。',
);
?>

View File

@ -0,0 +1,32 @@
<?php
/**
* Copyright (C) 2006-2013 YUCHENG HU
*
* ---------------------------------------------------------
* OSSEZ (中國) 信息技術有限公司
* http://www.ossez.com
* http://src.ossez.com
*
* CONTACT
* huyuchengus@gmail.com / yucheng.hu@ossez.com
*
* ---------------------------------------------------------
* [A] GNU GENERAL PUBLIC LICENSE GNU/LGPL
* [B] Apache License, Version 2.0
*
* ---------------------------------------------------------
* NOTE
* 1. 所有的語言配置文件必須采用無 BOM UTF-8 編碼
* 2. 本語言文件為 ossez-5.4.0 分支,適用於 vTiger 5.4.0
* ---------------------------------------------------------
*/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'系統管理',
'LBL_MODULE_TITLE'=>'系統管理:首頁',
'LBL_NEW_FORM_TITLE'=>'新增用戶',
'ERR_DELETE_RECORD'=>'必須指定紀錄編號才能刪除客戶。',
);
?>

341
modules/Assets/Assets.js Normal file
View File

@ -0,0 +1,341 @@
/*+**********************************************************************************
* 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.
************************************************************************************/
document.write("<script type='text/javascript' src='modules/Products/multifile.js'></"+"script>");
document.write("<script type='text/javascript' src='include/js/Merge.js'></"+"script>");
function updateListPrice(unitprice,fieldname, oSelect)
{
if(oSelect.checked == true)
{
document.getElementById(fieldname).style.visibility = 'visible';
document.getElementById(fieldname).value = unitprice;
}else
{
document.getElementById(fieldname).style.visibility = 'hidden';
}
}
function check4null(form)
{
var isError = false;
var errorMessage = "";
if (trim(form.productname.value) =='') {
isError = true;
errorMessage += "\n Product Name";
form.productname.focus();
}
if (isError == true) {
alert(alert_arr.MISSING_REQUIRED_FIELDS + errorMessage);
return false;
}
return true;
}
function set_return(product_id, product_name) {
if(document.getElementById('from_link').value != '') {
window.opener.document.QcEditView.parent_name.value = product_name;
window.opener.document.QcEditView.parent_id.value = product_id;
} else {
window.opener.document.EditView.parent_name.value = product_name;
window.opener.document.EditView.parent_id.value = product_id;
}
}
function set_return_specific(product_id, product_name) {
//getOpenerObj used for DetailView
if(document.getElementById('from_link').value != '')
{
var fldName = window.opener.document.QcEditView.product_name;
var fldId = window.opener.document.QcEditView.product_id;
}else if(typeof(window.opener.document.DetailView) != 'undefined')
{
var fldName = window.opener.document.DetailView.product_name;
var fldId = window.opener.document.DetailView.product_id;
}else
{
var fldName = window.opener.document.EditView.product_name;
var fldId = window.opener.document.EditView.product_id;
}
fldName.value = product_name;
fldId.value = product_id;
}
function set_return_formname_specific(formname,product_id, product_name) {
window.opener.document.EditView1.product_name.value = product_name;
window.opener.document.EditView1.product_id.value = product_id;
}
function add_data_to_relatedlist(entity_id,recordid) {
opener.document.location.href="index.php?module={RETURN_MODULE}&action=updateRelations&smodule={SMODULE}&destination_module=Products&entityid="+entity_id+"&parentid="+recordid;
}
function set_return_inventory(product_id,product_name,unitprice,taxstr,curr_row,desc) {
window.opener.document.EditView.elements["productName"+curr_row].value = product_name;
window.opener.document.EditView.elements["hdnProductId"+curr_row].value = product_id;
window.opener.document.EditView.elements["listPrice"+curr_row].value = unitprice;
window.opener.document.EditView.elements["comment"+curr_row].value = desc;
// Apply decimal round-off to value
if(!isNaN(parseFloat(unitprice))) unitprice = roundPriceValue(unitprice);
window.opener.document.EditView.elements["listPrice"+curr_row].value = unitprice;
var tax_array = new Array();
var tax_details = new Array();
tax_array = taxstr.split(',');
for(var i=0;i<tax_array.length;i++)
{
tax_details = tax_array[i].split('=');
}
window.opener.document.EditView.elements["qty"+curr_row].focus()
}
function set_return_inventory_po(product_id,product_name,unitprice,taxstr,curr_row,desc) {
window.opener.document.EditView.elements["productName"+curr_row].value = product_name;
window.opener.document.EditView.elements["hdnProductId"+curr_row].value = product_id;
window.opener.document.EditView.elements["listPrice"+curr_row].value = unitprice;
window.opener.document.EditView.elements["comment"+curr_row].value = desc;
//getOpenerObj("unitPrice"+curr_row).innerHTML = unitprice;
// Apply decimal round-off to value
if(!isNaN(parseFloat(unitprice))) unitprice = roundPriceValue(unitprice);
window.opener.document.EditView.elements["listPrice"+curr_row].value = unitprice;
var tax_array = new Array();
var tax_details = new Array();
tax_array = taxstr.split(',');
for(var i=0;i<tax_array.length;i++)
{
tax_details = tax_array[i].split('=');
}
window.opener.document.EditView.elements["qty"+curr_row].focus()
}
function InventorySelectAllServices(mod,z,image_pth)
{
if(document.selectall.selected_id != undefined)
{
var x = document.selectall.selected_id.length;
var y=0;
idstring = "";
namestr = "";
var action_str="";
if ( x == undefined) {
if (document.selectall.selected_id.checked) {
idstring = document.selectall.selected_id.value;
c = document.selectall.selected_id.value;
var prod_array = JSON.parse($('popup_product_'+c).attributes['vt_prod_arr'].nodeValue);
var prod_id = prod_array['entityid'];
var prod_name = prod_array['prodname'];
var unit_price = prod_array['unitprice'];
var taxstring = prod_array['taxstring'];
var desc = prod_array['desc'];
var row_id = prod_array['rowid'];
set_return_inventory(prod_id,prod_name,unit_price,taxstring,parseInt(row_id),desc);
y=1;
} else {
alert(alert_arr.SELECT);
return false;
}
} else {
y=0;
for(i = 0; i < x ; i++) {
if(document.selectall.selected_id[i].checked) {
idstring = document.selectall.selected_id[i].value+";"+idstring;
c = document.selectall.selected_id[i].value;
var prod_array = JSON.parse($('popup_product_'+c).attributes['vt_prod_arr'].nodeValue);
var prod_id = prod_array['entityid'];
var prod_name = prod_array['prodname'];
var unit_price = prod_array['unitprice'];
var taxstring = prod_array['taxstring'];
var desc = prod_array['desc'];
if(y>0) {
var row_id = window.opener.fnAddProductRow(mod,image_pth);
} else {
var row_id = prod_array['rowid'];
}
set_return_inventory(prod_id,prod_name,unit_price,taxstring,parseInt(row_id),desc);
y=y+1;
}
}
}
if (y != 0) {
document.selectall.idlist.value=idstring;
return true;
} else {
alert(alert_arr.SELECT);
return false;
}
}
}
function set_return_product(product_id, product_name) {
if(document.getElementById('from_link').value != '') {
window.opener.document.QcEditView.parent_name.value = product_name;
window.opener.document.QcEditView.parent_id.value = product_id;
} else {
window.opener.document.EditView.product_name.value = product_name;
window.opener.document.EditView.product_id.value = product_id;
}
}
function getImageListBody() {
if (browser_ie) {
var ImageListBody=getObj("ImageList")
} else if (browser_nn4 || browser_nn6) {
if (getObj("ImageList").childNodes.item(0).tagName=="TABLE") {
var ImageListBody=getObj("ImageList")
} else {
var ImageListBody=getObj("ImageList")
}
}
return ImageListBody;
}
// Function to Round off the Price Value
function roundPriceValue(val) {
val = parseFloat(val);
val = Math.round(val*100)/100;
val = val.toString();
if (val.indexOf(".")<0) {
val+=".00"
} else {
var dec=val.substring(val.indexOf(".")+1,val.length)
if (dec.length>2)
val=val.substring(0,val.indexOf("."))+"."+dec.substring(0,2)
else if (dec.length==1)
val=val+"0"
}
return val;
}
// End
function fnAddServiceRow(module,image_path){
rowCnt++;
var tableName = document.getElementById('proTab');
var prev = tableName.rows.length;
var count = eval(prev)-1;//As the table has two headers, we should reduce the count
var row = tableName.insertRow(prev);
row.id = "row"+count;
row.style.verticalAlign = "top";
var colone = row.insertCell(0);
var coltwo = row.insertCell(1);
if(module == "PurchaseOrder"){
var colfour = row.insertCell(2);
var colfive = row.insertCell(3);
var colsix = row.insertCell(4);
var colseven = row.insertCell(5);
}
else{
var colthree = row.insertCell(2);
var colfour = row.insertCell(3);
var colfive = row.insertCell(4);
var colsix = row.insertCell(5);
var colseven = row.insertCell(6);
}
/* Product Re-Ordering Feature Code Addition Starts */
iMax = tableName.rows.length;
for(iCount=1;iCount<=iMax-3;iCount++)
{
if(document.getElementById("row"+iCount) && document.getElementById("row"+iCount).style.display != 'none')
{
iPrevRowIndex = iCount;
}
}
iPrevCount = eval(iPrevRowIndex);
var oPrevRow = tableName.rows[iPrevRowIndex+1];
var delete_row_count=count;
/* Product Re-Ordering Feature Code Addition ends */
//Delete link
colone.className = "crmTableRow small";
colone.id = row.id+"_col1";
colone.innerHTML='<img src="themes/images/delete.gif" border="0" onclick="deleteRow(\''+module+'\','+count+',\''+image_path+'\')"><input id="deleted'+count+'" name="deleted'+count+'" type="hidden" value="0"><br/><br/>&nbsp;<a href="javascript:moveUpDown(\'UP\',\''+module+'\','+count+')" title="Move Upward"><img src="themes/images/up_layout.gif" border="0"></a>';
/* Product Re-Ordering Feature Code Addition Starts */
if(iPrevCount != 1)
{
oPrevRow.cells[0].innerHTML = '<img src="themes/images/delete.gif" border="0" onclick="deleteRow(\''+module+'\','+iPrevCount+')"><input id="deleted'+iPrevCount+'" name="deleted'+iPrevCount+'" type="hidden" value="0"><br/><br/>&nbsp;<a href="javascript:moveUpDown(\'UP\',\''+module+'\','+iPrevCount+')" title="Move Upward"><img src="themes/images/up_layout.gif" border="0"></a>&nbsp;&nbsp;<a href="javascript:moveUpDown(\'DOWN\',\''+module+'\','+iPrevCount+')" title="Move Downward"><img src="themes/images/down_layout.gif" border="0"></a>';
}
else
{
oPrevRow.cells[0].innerHTML = '<input id="deleted'+iPrevCount+'" name="deleted'+iPrevCount+'" type="hidden" value="0"><br/><br/><a href="javascript:moveUpDown(\'DOWN\',\''+module+'\','+iPrevCount+')" title="Move Downward"><img src="themes/images/down_layout.gif" border="0"></a>';
}
/* Product Re-Ordering Feature Code Addition ends */
//Product Name with Popup image to select product
coltwo.className = "crmTableRow small"
coltwo.innerHTML= '<table border="0" cellpadding="1" cellspacing="0" width="100%"><tr><td class="small"><input id="productName'+count+'" name="productName'+count+'" class="small" style="width: 70%;" value="" readonly="readonly" type="text" />'+
'<input id="hdnProductId'+count+'" name="hdnProductId'+count+'" value="" type="hidden" /><input type="hidden" id="lineItemType'+count+'" name="lineItemType'+count+'" value="Services" />'+
'&nbsp;<img id="searchIcon'+count+'" title="Services" src="themes/images/services.gif" style="cursor: pointer;" onclick="servicePickList(this,\''+module+'\','+count+')" align="absmiddle">'+
'</td></tr><tr><td class="small"><input type="hidden" value="" id="subproduct_ids'+count+'" name="subproduct_ids'+count+'" /><span id="subprod_names'+count+'" name="subprod_names'+count+'" style="color:#C0C0C0;font-style:italic;"> </span>'+
'</td></tr><tr><td class="small" id="setComment'+count+'"><textarea id="comment'+count+'" name="comment'+count+'" class=small style="width:70%;height:40px"></textarea><img src="themes/images/clear_field.gif" onClick="getObj(\'comment'+count+'\').value=\'\'"; style="cursor:pointer;" /></td></tr></tbody></table>';
//Quantity In Stock - only for SO, Quotes and Invoice
if(module != "PurchaseOrder"){
colthree.className = "crmTableRow small"
colthree.innerHTML='<span id="qtyInStock'+count+'">NA</span>';
}
//Quantity
var temp='';
colfour.className = "crmTableRow small"
temp='<input id="qty'+count+'" name="qty'+count+'" type="text" class="small " style="width:50px" onfocus="this.className=\'detailedViewTextBoxOn\'" onBlur="settotalnoofrows(); calcTotal(); loadTaxes_Ajax('+count+');';
temp+='" onChange="setDiscount(this,'+count+')" value=""/><br>';
colfour.innerHTML=temp;
//List Price with Discount, Total after Discount and Tax labels
colfive.className = "crmTableRow small"
colfive.innerHTML='<table width="100%" cellpadding="0" cellspacing="0"><tr><td align="right"><input id="listPrice'+count+'" name="listPrice'+count+'" value="0.00" type="text" class="small " style="width:70px" onBlur="calcTotal();setDiscount(this,'+count+');callTaxCalc('+count+'); calcTotal();"/>&nbsp;<img src="themes/images/pricebook.gif" onclick="priceBookPickList(this,'+count+')"></td></tr><tr><td align="right" style="padding:5px;" nowrap> (-)&nbsp;<b><a href="javascript:doNothing();" onClick="displayCoords(this,\'discount_div'+count+'\',\'discount\','+count+')" >'+product_labelarr.DISCOUNT+'</a> : </b><div class=\"discountUI\" id=\"discount_div'+count+'"><input type="hidden" id="discount_type'+count+'" name="discount_type'+count+'" value=""><table width="100%" border="0" cellpadding="5" cellspacing="0" class="small"><tr><td id="discount_div_title'+count+'" nowrap align="left" ></td><td align="right"><img src="themes/images/close.gif" border="0" onClick="fnHidePopDiv(\'discount_div'+count+'\')" style="cursor:pointer;"></td></tr><tr><td align="left" class="lineOnTop"><input type="radio" name="discount'+count+'" checked onclick="setDiscount(this,'+count+'); callTaxCalc('+count+');calcTotal();">&nbsp; '+product_labelarr.ZERO_DISCOUNT+'</td><td class="lineOnTop">&nbsp;</td></tr><tr><td align="left"><input type="radio" name="discount'+count+'" onclick="setDiscount(this,'+count+'); callTaxCalc('+count+');calcTotal();">&nbsp; % '+product_labelarr.PERCENT_OF_PRICE+' </td><td align="right"><input type="text" class="small" size="2" id="discount_percentage'+count+'" name="discount_percentage'+count+'" value="0" style="visibility:hidden" onBlur="setDiscount(this,'+count+'); callTaxCalc('+count+');calcTotal();">&nbsp;%</td></tr><tr><td align="left" nowrap><input type="radio" name="discount'+count+'" onclick="setDiscount(this,'+count+'); callTaxCalc('+count+');calcTotal();">&nbsp; '+product_labelarr.DIRECT_PRICE_REDUCTION+'</td><td align="right"><input type="text" id="discount_amount'+count+'" name="discount_amount'+count+'" size="5" value="0" style="visibility:hidden" onBlur="setDiscount(this,'+count+'); callTaxCalc('+count+');calcTotal();"></td></tr></table></div></td></tr><tr> <td align="right" style="padding:5px;" nowrap><b>'+product_labelarr.TOTAL_AFTER_DISCOUNT+' :</b></td></tr><tr id="individual_tax_row'+count+'" class="TaxShow"><td align="right" style="padding:5px;" nowrap>(+)&nbsp;<b><a href="javascript:doNothing();" onClick="displayCoords(this,\'tax_div'+count+'\',\'tax\','+count+')" >'+product_labelarr.TAX+' </a> : </b><div class="discountUI" id="tax_div'+count+'"></div></td></tr></table> ';
//Total and Discount, Total after Discount and Tax details
colsix.className = "crmTableRow small"
colsix.innerHTML = '<table width="100%" cellpadding="5" cellspacing="0"><tr><td id="productTotal'+count+'" align="right">&nbsp;</td></tr><tr><td id="discountTotal'+count+'" align="right">0.00</td></tr><tr><td id="totalAfterDiscount'+count+'" align="right">&nbsp;</td></tr><tr><td id="taxTotal'+count+'" align="right">0.00</td></tr></table>';
//Net Price
colseven.className = "crmTableRow small";
colseven.align = "right";
colseven.style.verticalAlign = "bottom";
colseven.innerHTML = '<span id="netPrice'+count+'"><b>&nbsp;</b></span>';
//This is to show or hide the individual or group tax
decideTaxDiv();
calcTotal();
return count;
}
function servicePickList(currObj,module, row_no) {
var trObj=currObj.parentNode.parentNode
var rowId = row_no;
var currentRowId = parseInt(currObj.id.match(/([0-9]+)$/)[1]);
// If we have mismatching rowId and currentRowId, it is due swapping of rows
if(rowId != currentRowId) {
rowId = currentRowId;
}
var currencyid = document.getElementById("inventory_currency").value;
popuptype = 'inventory_service';
var record_id = '';
if(document.getElementsByName("account_id").length != 0)
record_id= document.EditView.account_id.value;
if(record_id != '')
window.open("index.php?module=Services&action=Popup&html=Popup_picker&select=enable&form=HelpDeskEditView&popuptype="+popuptype+"&curr_row="+rowId+"&relmod_id="+record_id+"&parent_module=Accounts&return_module="+module+"&currencyid="+currencyid,"productWin","width=640,height=600,resizable=0,scrollbars=0,status=1,top=150,left=200");
else
window.open("index.php?module=Services&action=Popup&html=Popup_picker&select=enable&form=HelpDeskEditView&popuptype="+popuptype+"&curr_row="+rowId+"&return_module="+module+"&currencyid="+currencyid,"productWin","width=640,height=600,resizable=0,scrollbars=0,status=1,top=150,left=200");
}

422
modules/Assets/Assets.php Normal file
View File

@ -0,0 +1,422 @@
<?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('data/CRMEntity.php');
require_once('data/Tracker.php');
class Assets extends CRMEntity {
var $db, $log; // Used in class functions of CRMEntity
var $table_name = 'vtiger_assets';
var $table_index= 'assetsid';
var $column_fields = Array();
/** Indicator if this is a custom module or standard module */
var $IsCustomModule = true;
/**
* Mandatory table for supporting custom fields.
*/
var $customFieldTable = Array('vtiger_assetscf', 'assetsid');
/**
* Mandatory for Saving, Include tables related to this module.
*/
var $tab_name = Array('vtiger_crmentity','vtiger_assets','vtiger_assetscf');
/**
* Mandatory for Saving, Include tablename and tablekey columnname here.
*/
var $tab_name_index = Array(
'vtiger_crmentity'=>'crmid',
'vtiger_assets'=>'assetsid',
'vtiger_assetscf'=>'assetsid');
/**
* Mandatory for Listing (Related listview)
*/
var $list_fields = Array(
/* Format: Field Label => Array(tablename, columnname) */
// tablename should not have prefix 'vtiger_'
'Asset No'=>Array('assets'=>'asset_no'),
'Asset Name'=>Array('assets'=>'assetname'),
'Customer Name'=>Array('account'=>'account'),
'Product Name'=>Array('products'=>'product'),
);
var $list_fields_name = Array(
/* Format: Field Label => fieldname */
'Asset No'=>'asset_no',
'Asset Name'=>'assetname',
'Customer Name'=>'account',
'Product Name'=>'product',
);
// Make the field link to detail view
var $list_link_field= 'assetname';
// For Popup listview and UI type support
var $search_fields = Array(
/* Format: Field Label => Array(tablename, columnname) */
// tablename should not have prefix 'vtiger_'
'Asset No'=>Array('assets'=>'asset_no'),
'Asset Name'=>Array('assets'=>'assetname'),
'Customer Name'=>Array('account'=>'account'),
'Product Name'=>Array('products'=>'product')
);
var $search_fields_name = Array(
/* Format: Field Label => fieldname */
'Asset No'=>'asset_no',
'Asset Name'=>'assetname',
'Customer Name'=>'account',
'Product Name'=>'product'
);
// For Popup window record selection
var $popup_fields = Array ('assetname','account','product');
// Placeholder for sort fields - All the fields will be initialized for Sorting through initSortFields
var $sortby_fields = Array();
// For Alphabetical search
var $def_basicsearch_col = 'assetname';
// Required Information for enabling Import feature
var $required_fields = Array('assetname'=>1);
// Used when enabling/disabling the mandatory fields for the module.
// Refers to vtiger_field.fieldname values.
var $mandatory_fields = Array('assetname', 'product');
// Callback function list during Importing
var $special_functions = Array('set_import_assigned_user');
var $default_order_by = 'assetname';
var $default_sort_order='ASC';
var $unit_price;
/** Constructor which will set the column_fields in this object
*/
function __construct() {
global $log;
$this->column_fields = getColumnFields('Assets');
$this->db = PearDatabase::getInstance();
$this->log = $log;
}
function save_module($module){
//module specific save
}
/**
* Return query to use based on given modulename, fieldname
* Useful to handle specific case handling for Popup
*/
function getQueryByModuleField($module, $fieldname, $srcrecord) {
// $srcrecord could be empty
}
/**
* Get list view query.
*/
function getListQuery($module, $where='') {
$query = "SELECT vtiger_crmentity.*, $this->table_name.*";
// Select Custom Field Table Columns if present
if(!empty($this->customFieldTable)) $query .= ", " . $this->customFieldTable[0] . ".* ";
$query .= " FROM $this->table_name";
$query .= " INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid = $this->table_name.$this->table_index";
// Consider custom table join as well.
if(!empty($this->customFieldTable)) {
$query .= " INNER JOIN ".$this->customFieldTable[0]." ON ".$this->customFieldTable[0].'.'.$this->customFieldTable[1] .
" = $this->table_name.$this->table_index";
}
$query .= " LEFT JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smownerid";
$query .= " LEFT JOIN vtiger_groups ON vtiger_groups.groupid = vtiger_crmentity.smownerid";
$linkedModulesQuery = $this->db->pquery("SELECT distinct fieldname, columnname, relmodule FROM vtiger_field" .
" INNER JOIN vtiger_fieldmodulerel ON vtiger_fieldmodulerel.fieldid = vtiger_field.fieldid" .
" WHERE uitype='10' AND vtiger_fieldmodulerel.module=?", array($module));
$linkedFieldsCount = $this->db->num_rows($linkedModulesQuery);
for($i=0; $i<$linkedFieldsCount; $i++) {
$related_module = $this->db->query_result($linkedModulesQuery, $i, 'relmodule');
$fieldname = $this->db->query_result($linkedModulesQuery, $i, 'fieldname');
$columnname = $this->db->query_result($linkedModulesQuery, $i, 'columnname');
$other = CRMEntity::getInstance($related_module);
vtlib_setup_modulevars($related_module, $other);
$query .= " LEFT JOIN $other->table_name ON $other->table_name.$other->table_index = $this->table_name.$columnname";
}
$query .= " WHERE vtiger_crmentity.deleted = 0 ".$where;
$query .= $this->getListViewSecurityParameter($module);
return $query;
}
/**
* Apply security restriction (sharing privilege) query part for List view.
*/
function getListViewSecurityParameter($module) {
global $current_user;
require('user_privileges/user_privileges_'.$current_user->id.'.php');
require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
$sec_query = '';
$tabid = getTabid($module);
if($is_admin==false && $profileGlobalPermission[1] == 1 && $profileGlobalPermission[2] == 1
&& $defaultOrgSharingPermission[$tabid] == 3) {
$sec_query .= " AND (vtiger_crmentity.smownerid in($current_user->id) OR vtiger_crmentity.smownerid IN
(
SELECT vtiger_user2role.userid FROM vtiger_user2role
INNER JOIN vtiger_users ON vtiger_users.id=vtiger_user2role.userid
INNER JOIN vtiger_role ON vtiger_role.roleid=vtiger_user2role.roleid
WHERE vtiger_role.parentrole LIKE '".$current_user_parent_role_seq."::%'
)
OR vtiger_crmentity.smownerid IN
(
SELECT shareduserid FROM vtiger_tmp_read_user_sharing_per
WHERE userid=".$current_user->id." AND tabid=".$tabid."
)
OR
(";
// Build the query based on the group association of current user.
if(sizeof($current_user_groups) > 0) {
$sec_query .= " vtiger_groups.groupid IN (". implode(",", $current_user_groups) .") OR ";
}
$sec_query .= " vtiger_groups.groupid IN
(
SELECT vtiger_tmp_read_group_sharing_per.sharedgroupid
FROM vtiger_tmp_read_group_sharing_per
WHERE userid=".$current_user->id." and tabid=".$tabid."
)";
$sec_query .= ")
)";
}
return $sec_query;
}
/**
* Create query to export the records.
*/
function create_export_query($where)
{
global $current_user;
$thismodule = $_REQUEST['module'];
include("include/utils/ExportUtils.php");
//To get the Permitted fields query and the permitted fields list
$sql = getPermittedFieldsQuery($thismodule, "detail_view");
$fields_list = getFieldsListFromQuery($sql);
$query = "SELECT $fields_list, vtiger_users.user_name AS user_name
FROM vtiger_crmentity INNER JOIN $this->table_name ON vtiger_crmentity.crmid=$this->table_name.$this->table_index";
if(!empty($this->customFieldTable)) {
$query .= " INNER JOIN ".$this->customFieldTable[0]." ON ".$this->customFieldTable[0].'.'.$this->customFieldTable[1] .
" = $this->table_name.$this->table_index";
}
$query .= " LEFT JOIN vtiger_groups ON vtiger_groups.groupid = vtiger_crmentity.smownerid";
$query .= " LEFT JOIN vtiger_users ON vtiger_crmentity.smownerid = vtiger_users.id and vtiger_users.status='Active'";
$where_auto = " vtiger_crmentity.deleted=0";
if($where != '') $query .= " WHERE ($where) AND $where_auto";
else $query .= " WHERE $where_auto";
require('user_privileges/user_privileges_'.$current_user->id.'.php');
require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
// Security Check for Field Access
if($is_admin==false && $profileGlobalPermission[1] == 1 && $profileGlobalPermission[2] == 1 && $defaultOrgSharingPermission[getTabid('Assets')] == 3)
{
//Added security check to get the permitted records only
$query = $query." ".getListViewSecurityParameter($thismodule);
}
return $query;
}
/**
* Transform the value while exporting
*/
function transform_export_value($key, $value) {
if($key == 'owner') return getOwnerName($value);
return parent::transform_export_value($key, $value);
}
/**
* Function which will give the basic query to find duplicates
*/
function getDuplicatesQuery($module,$table_cols,$field_values,$ui_type_arr,$select_cols='') {
$select_clause = "SELECT ". $this->table_name .".".$this->table_index ." AS recordid, vtiger_users_last_import.deleted,".$table_cols;
// Select Custom Field Table Columns if present
if(isset($this->customFieldTable)) $query .= ", " . $this->customFieldTable[0] . ".* ";
$from_clause = " FROM $this->table_name";
$from_clause .= " INNER JOIN vtiger_crmentity ON vtiger_crmentity.crmid = $this->table_name.$this->table_index";
// Consider custom table join as well.
if(isset($this->customFieldTable)) {
$from_clause .= " INNER JOIN ".$this->customFieldTable[0]." ON ".$this->customFieldTable[0].'.'.$this->customFieldTable[1] .
" = $this->table_name.$this->table_index";
}
$from_clause .= " LEFT JOIN vtiger_users ON vtiger_users.id = vtiger_crmentity.smownerid
LEFT JOIN vtiger_groups ON vtiger_groups.groupid = vtiger_crmentity.smownerid";
$where_clause = " WHERE vtiger_crmentity.deleted = 0";
$where_clause .= $this->getListViewSecurityParameter($module);
if (isset($select_cols) && trim($select_cols) != '') {
$sub_query = "SELECT $select_cols FROM $this->table_name AS t " .
" INNER JOIN vtiger_crmentity AS crm ON crm.crmid = t.".$this->table_index;
// Consider custom table join as well.
if(isset($this->customFieldTable)) {
$sub_query .= " INNER JOIN ".$this->customFieldTable[0]." tcf ON tcf.".$this->customFieldTable[1]." = t.$this->table_index";
}
$sub_query .= " WHERE crm.deleted=0 GROUP BY $select_cols HAVING COUNT(*)>1";
} else {
$sub_query = "SELECT $table_cols $from_clause $where_clause GROUP BY $table_cols HAVING COUNT(*)>1";
}
$query = $select_clause . $from_clause .
" LEFT JOIN vtiger_users_last_import ON vtiger_users_last_import.bean_id=" . $this->table_name .".".$this->table_index .
" INNER JOIN (" . $sub_query . ") AS temp ON ".get_on_clause($field_values,$ui_type_arr,$module) .
$where_clause .
" ORDER BY $table_cols,". $this->table_name .".".$this->table_index ." ASC";
return $query;
}
/**
* Handle saving related module information.
* NOTE: This function has been added to CRMEntity (base class).
* You can override the behavior by re-defining it here.
*/
// function save_related_module($module, $crmid, $with_module, $with_crmid) { }
/**
* Handle deleting related module information.
* NOTE: This function has been added to CRMEntity (base class).
* You can override the behavior by re-defining it here.
*/
//function delete_related_module($module, $crmid, $with_module, $with_crmid) { }
/**
* Handle getting related list information.
* NOTE: This function has been added to CRMEntity (base class).
* You can override the behavior by re-defining it here.
*/
//function get_related_list($id, $cur_tab_id, $rel_tab_id, $actions=false) { }
/*
* Function to get the primary query part of a report
* @param - $module primary module name
* returns the query string formed on fetching the related data for report for secondary module
*/
// function generateReportsQuery($module){ }
/*
* Function to get the secondary query part of a report
* @param - $module primary module name
* @param - $secmodule secondary module name
* returns the query string formed on fetching the related data for report for secondary module
*/
// function generateReportsSecQuery($module,$secmodule){ }
// Function to unlink all the dependent entities of the given Entity by Id
function unlinkDependencies($module, $id) {
global $log;
parent::unlinkDependencies($module, $id);
}
/**
* Invoked when special actions are performed on the module.
* @param String Module name
* @param String Event Type
*/
function vtlib_handler($moduleName, $eventType) {
require_once('include/utils/utils.php');
global $adb;
if($eventType == 'module.postinstall') {
//Add Assets Module to Customer Portal
global $adb;
$this->addModuleToCustomerPortal();
include_once('vtlib/Vtiger/Module.php');
// Mark the module as Standard module
$adb->pquery('UPDATE vtiger_tab SET customized=0 WHERE name=?', array($moduleName));
//adds sharing accsess
$AssetsModule = Vtiger_Module::getInstance('Assets');
Vtiger_Access::setDefaultSharing($AssetsModule);
//Showing Assets module in the related modules in the More Information Tab
$assetInstance = Vtiger_Module::getInstance('Assets');
$assetLabel = 'Assets';
$accountInstance = Vtiger_Module::getInstance('Accounts');
$accountInstance->setRelatedlist($assetInstance,$assetLabel,array(ADD),'get_dependents_list');
$productInstance = Vtiger_Module::getInstance('Products');
$productInstance->setRelatedlist($assetInstance,$assetLabel,array(ADD),'get_dependents_list');
$InvoiceInstance = Vtiger_Module::getInstance('Invoice');
$InvoiceInstance->setRelatedlist($assetInstance,$assetLabel,array(ADD),'get_dependents_list');
} else if($eventType == 'module.disabled') {
// TODO Handle actions when this module is disabled.
} else if($eventType == 'module.enabled') {
// TODO Handle actions when this module is enabled.
} else if($eventType == 'module.preuninstall') {
// TODO Handle actions when this module is about to be deleted.
} else if($eventType == 'module.preupdate') {
// TODO Handle actions before this module is updated.
} else if($eventType == 'module.postupdate') {
$this->addModuleToCustomerPortal();
}
}
function addModuleToCustomerPortal() {
$adb = PearDatabase::getInstance();
$assetsResult = $adb->pquery('SELECT tabid FROM vtiger_tab WHERE name=?', array('Assets'));
$assetsTabId = $adb->query_result($assetsResult, 0, 'tabid');
if(getTabid('CustomerPortal') && $assetsTabId) {
$checkAlreadyExists = $adb->pquery('SELECT 1 FROM vtiger_customerportal_tabs WHERE tabid=?', array($assetsTabId));
if($checkAlreadyExists && $adb->num_rows($checkAlreadyExists) < 1) {
$maxSequenceQuery = $adb->query("SELECT max(sequence) as maxsequence FROM vtiger_customerportal_tabs");
$maxSequence = $adb->query_result($maxSequenceQuery, 0, 'maxsequence');
$nextSequence = $maxSequence+1;
$adb->query("INSERT INTO vtiger_customerportal_tabs(tabid,visible,sequence) VALUES ($assetsTabId,1,$nextSequence)");
}
$checkAlreadyExists = $adb->pquery('SELECT 1 FROM vtiger_customerportal_prefs WHERE tabid=?', array($assetsTabId));
if($checkAlreadyExists && $adb->num_rows($checkAlreadyExists) < 1) {
$adb->query("INSERT INTO vtiger_customerportal_prefs(tabid,prefkey,prefvalue) VALUES ($assetsTabId,'showrelatedinfo',1)");
}
}
}
}
?>

BIN
modules/Assets/Assets.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@ -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');
?>

View File

@ -0,0 +1,85 @@
<?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']);
if($singlepane_view == 'true' && $action == 'CallRelatedList') {
header("Location:index.php?action=DetailView&module=$currentModule&record=$record&parenttab=$category");
} 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');
}
?>

View File

@ -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');
?>

32
modules/Assets/Delete.php Normal file
View File

@ -0,0 +1,32 @@
<?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']);
$parenttab = getParentTab();
//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);
?>

View File

@ -0,0 +1,29 @@
<?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=delpbprorel&record=".$return_id);
?>

View File

@ -0,0 +1,110 @@
<?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
$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('DetailView.tpl');
?>

View File

@ -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';
}
?>

View File

@ -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;
?>

View File

@ -0,0 +1,15 @@
<?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/Vtiger/EditView.php';
$smarty->display('salesEditView.tpl');
?>

View File

@ -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');
?>

View File

@ -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.
********************************************************************************/
require_once 'modules/Vtiger/FindDuplicateRecords.php';
?>

12
modules/Assets/Import.php Normal file
View File

@ -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');
?>

View File

@ -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;
?>

View File

@ -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>&nbsp;</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();">&nbsp;%
<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;
?>

View File

@ -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.
************************************************************************************/
require_once('modules/Vtiger/ListView.php');
?>

View File

@ -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';
?>

View File

@ -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.
************************************************************************************/
require_once('modules/Vtiger/MassEdit.php');
?>

View File

@ -0,0 +1,65 @@
<?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($fieldname == 'assigned_user_id'){
if($_REQUEST['assigntype'] == 'U') {
$value = $_REQUEST['assigned_user_id'];
} elseif($_REQUEST['assigntype'] == 'T') {
$value = $_REQUEST['assigned_group_id'];
}
} else {
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");
?>

11
modules/Assets/Popup.php Normal file
View File

@ -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');
?>

View File

@ -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");
}
?>

View File

@ -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');
?>

59
modules/Assets/Save.php Normal file
View File

@ -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;
checkFileAccessForInclusion("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);
?>

View File

@ -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');
?>

View File

@ -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');
?>

View File

@ -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';
?>

View File

@ -0,0 +1,24 @@
<?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;
$log->debug("Going to update the ListPrice in (modules/Products/UpdateListPrice.php).");
$record = vtlib_purify($_REQUEST['record']);
$pricebook_id = vtlib_purify($_REQUEST['pricebook_id']);
$product_id = vtlib_purify($_REQUEST['product_id']);
$listprice = vtlib_purify($_REQUEST['list_price']);
$return_action = vtlib_purify($_REQUEST['return_action']);
$return_module = vtlib_purify($_REQUEST['return_module']);
$query = "update vtiger_pricebookproductrel set listprice=? where pricebookid=? and productid=?";
$adb->pquery($query, array($listprice, $pricebook_id, $product_id));
header("Location: index.php?module=$return_module&action=".$return_module."Ajax&file=$return_action&ajax=updatelistprice&record=$record");
?>

15
modules/Assets/index.php Normal file
View File

@ -0,0 +1,15 @@
<?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;
checkFileAccessForInclusion("modules/$currentModule/ListView.php");
include_once("modules/$currentModule/ListView.php");
?>

View File

@ -0,0 +1,45 @@
<?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.
* Portions created by Different Solutions GmbH are Copyright (C) Different Solutions GmbH
* All Rights Reserved.
************************************************************************************/
//ds@em91n - German language file for new module "Assets" -> translation is based on "Inventory Management"
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'Bestandsverwaltung',
'SINGLE_Assets'=>'Bestandsverwaltung',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'Bestandsverwaltung Information',
'LBL_CUSTOM_INFORMATION'=>'Custom Information',
'LBL_DESCRIPTION_INFORMATION'=>'Beschreibung',
/*fields for the module*/
'Assets'=>'Bestandsverwaltung',
'Asset Name' => 'Titel Bestandsverwaltung',
'Customer Name'=>'Organisation',
'Product Name'=>'Produkt',
'Serial Number'=>'Seriennummer',
'Asset No'=>'Bestandsverwaltung Nr',
'Date Sold'=>'Verkaufsdatum',
'Date in Service'=>'Servicedatum',
'Status'=>'Status',
'Shipping Method'=>'Versandmethode',
'Shipping Tracking Number'=>'Sendungsverfolgungsnummer',
'Tag Number'=>'Tag-Nummer',
'Notes'=>'Beschreibung',
'Invoice Name'=>'Rechnung',
/*picklist values*/
'--none--'=>'--ohne--',
'In Service'=>'unterstützt',
'Out-of-service'=>'wird nicht mehr unterstützt',
/* additional related lists */
);
?>

View File

@ -0,0 +1,35 @@
<?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.
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Assets',
'SINGLE_Assets' => 'Asset',
'LBL_ASSET_INFORMATION' => 'Asset Information',
'LBL_CUSTOM_INFORMATION' => 'Custom Information',
'LBL_DESCRIPTION_INFORMATION' => 'Notes',
'Assets' => 'Assets',
'Asset Name' => 'Asset Name',
'Customer Name' => 'Customer Name',
'Product Name' => 'Product Name',
'Serial Number' => 'Serial Number',
'Asset No' => 'Asset No.',
'Date Sold' => 'Date Sold',
'Date in Service' => 'Date in Service',
'Status' => 'Status',
'Shipping Method' => 'Shipping Method',
'Shipping Tracking Number' => 'Tracking Number',
'Tag Number' => 'Tag Number',
'Notes' => 'Notes',
'Invoice Name' => 'Invoice Name',
'In Service' => 'In Service',
'Out-of-service' => 'Out-of-service',
'Assets ID' => 'Assets ID',
);
?>

View File

@ -0,0 +1,43 @@
<?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.
************************************************************************************/
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'Assets',
'SINGLE_Assets'=>'Asset',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'Asset Information',
'LBL_CUSTOM_INFORMATION'=>'Custom Information',
'LBL_DESCRIPTION_INFORMATION'=>'Notes',
/*fields for the module*/
'Assets'=>'Assets',
'Asset Name' => 'Asset Name',
'Customer Name'=>'Customer Name',
'Product Name'=>'Product Name',
'Serial Number'=>'Serial Number',
'Asset No'=>'Asset No',
'Date Sold'=>'Date Sold',
'Date in Service'=>'Date in Service',
'Status'=>'Status',
'Shipping Method'=>'Shipping Method',
'Shipping Tracking Number'=>'Shipping Tracking Number',
'Tag Number'=>'Tag Number',
'Notes'=>'Notes',
'Invoice Name'=>'Invoice Name',
/*picklist values*/
'In Service'=>'In Service',
'Out-of-service'=>'Out-of-service',
'Assets ID'=>'Assets ID',
);
?>

View File

@ -0,0 +1,50 @@
<?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.
*
* ***********************************************************
* Module : Assets
* Language : ES Spanish
* Version : vt5.4.0
* Created Date : 2012-02-27
* Author : JPL TSolucio, S.L.
* License : MPL 1.1
************************************************************************************/
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'Recursos',
'SINGLE_Assets'=>'Recurso',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'Información Recurso',
'LBL_CUSTOM_INFORMATION'=>'Información Personalizada',
'LBL_DESCRIPTION_INFORMATION'=>'Notas',
/*fields for the module*/
'Assets'=>'Recursos',
'Asset Name'=>'Nombre Recurso',
'Customer Name'=>'Instalado en',
'Product Name'=>'Producto',
'Serial Number'=>'Número serie',
'Asset No'=>'Número recurso',
'Date Sold'=>'Fecha venta',
'Date in Service'=>'Fecha instalación',
'Status'=>'Estado',
'Shipping Method'=>'Forma de envío',
'Shipping Tracking Number'=>'Número seguimiento envío',
'Tag Number'=>'Etiquetado',
'Notes'=>'Notas',
'Invoice Name'=>'Ref. Factura',
/*picklist values*/
'In Service'=>'En Servicio',
'Out-of-service'=>'Fuera de servicio',
'Assets ID'=>'Id Recurso',
);
?>

View File

@ -0,0 +1,51 @@
<?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.
* Translated to mexican spanish by Francisco Hernandez Odin Consultores Odin.mx
* All Rights Reserved.
*
* ***********************************************************
* Module : Assets
* Language : ES Mexico
* Version : vt5.4.0
* Created Date : 2012-02-27
* Author : Odin Consultores S de R.L. de C.V.
* License : MPL 1.1
************************************************************************************/
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'Activos',
'SINGLE_Assets'=>'Activo',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'Información de Activo',
'LBL_CUSTOM_INFORMATION'=>'Información Personalizada',
'LBL_DESCRIPTION_INFORMATION'=>'Descripción Adicional',
/*fields for the module*/
'Assets'=>'Activos',
'Asset Name'=>'Nombre Activo',
'Customer Name'=>'Instalado en',
'Product Name'=>'Producto',
'Serial Number'=>'Número serie',
'Asset No'=>'Número Activo',
'Date Sold'=>'Fecha venta',
'Date in Service'=>'Fecha instalación',
'Status'=>'Estado',
'Shipping Method'=>'Forma de envío',
'Shipping Tracking Number'=>'Número seguimiento envío',
'Tag Number'=>'Etiquetado',
'Notes'=>'Notas',
'Invoice Name'=>'Ref. Factura',
/*picklist values*/
'In Service'=>'En Servicio',
'Out-of-service'=>'Fuera de servicio',
'Assets ID'=>'Id de Activo',
);
?>

View File

@ -0,0 +1,35 @@
<?php
/***********************************************************
* Module : Assets
* Language : French
* Version : 5.4.0
* License : GPL
* Author : ABOnline solutions http://www.vtiger-crm.fr
***********************************************************/
$mod_strings = Array(
'LBL_MODULE_NAME'=>'Liaison',
'SINGLE_Assets'=>'Liaison',
'LBL_ASSET_INFORMATION'=>'Information de liaison',
'LBL_CUSTOM_INFORMATION'=>'Informations personnalisées',
'LBL_DESCRIPTION_INFORMATION'=>'Notes',
'Assets'=>'Liaison',
'Customer Name'=>'Nom de Compte',
'Product Name'=>'Produit',
'Serial Number'=>'Numéro de série',
'Asset No'=>'Liaison N°',
'Date Sold'=>'Date de vente',
'Date in Service'=>'Date de mise en service',
'Status'=>'Statut',
'Shipping Method'=>'Livraison via',
'Shipping Tracking Number'=>'Numéro de suivi d\'expédition',
'Tag Number'=>'Tag',
'Notes'=>'Notes',
'In Service'=>'En Service',
'Out-of-service'=>'Hors service',
'Assets ID'=>'Liaison ID',
'Asset Name' => 'Nom de liaison',
'Invoice Name' => 'Facture liée',
);
?>

View File

@ -0,0 +1,42 @@
<?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.
* $Header: \modules\Assets\language\hu_hu.lang.php - 19:16 2011.11.11. $
* Description: Defines the Hungarian language pack for the Assets module vtiger 5.3.x
* Contributor(s): Istvan Holbok, e-mail: holbok@gmail.com , mobil: +3670-3420900 , Skype: holboki
********************************************************************************/
$mod_strings = array(
'LBL_MODULE_NAME' => 'Vagyontárgyak',
'SINGLE_Assets' => 'Vagyontárgy',
'LBL_ASSET_INFORMATION' => 'Vagyontárgy adatok',
'LBL_CUSTOM_INFORMATION' => 'Egyéb adatok',
'LBL_DESCRIPTION_INFORMATION' => 'Leírás',
'Assets' => 'Vagyontárgyak',
'Asset Name' => 'Vagyontárgy neve',
'Customer Name' => 'Vásárló neve ',
'Product Name' => 'Termék neve ',
'Serial Number' => 'Gyári sorozat szám',
'Asset No' => 'Vagyontárgy No.',
'Date Sold' => 'Értékesítés dátuma',
'Date in Service' => 'Karbantartás kezdő dátuma',
'Status' => 'Állapot',
'Shipping Method' => 'Szállítási mód',
'Shipping Tracking Number' => 'Szállítási azonosító szám',
'Tag Number' => 'Címke száma',
'Notes' => 'Leírás:',
'Invoice Name' => 'Számla/Díjbekérő megnevezése ',
'In Service' => 'Karbantartás alatt',
'Out-of-service' => 'Üzemképes',
'Assets ID' => 'Vagyontárgy AZ',
'--none--' => '--Nincs--',
'Serial Nummer' => 'Sorozatszám',
'Shipping Tracking Nummer' => 'Szállítási követő szám',
'Tag Nummer' => 'Címke szám'
);
?>

View File

@ -0,0 +1,66 @@
<?php
/*******************************************************************************
* The contents of this file are subject to the following licences:
* - SugarCRM Public License Version 1.1.2 http://www.sugarcrm.com/SPL
* - vtiger CRM Public License Version 1.0
* You may not use this file except in compliance with the License
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* Portions created by vtiger are Copyright (C) vtiger.
* Portions created by Vicus are Copyright (C) Vicus.
* All Rights Reserved.
* Feel free to use / redistribute these languagefiles under the VPL 1.0.
* This translations is based on earlier work of:
* - IT-Online.nl <www.it-online.nl>
* - Weltevree.org <www.Weltevree.org>
********************************************************************************/
/*******************************************************************************
* Vicus eBusiness Solutions Version Control
* @package NL-Dutch
* Description Dutch language pack for vtiger CRM version 5.3.x
* @author $Author: luuk $
* @version $Revision: 1.2 $ $Date: 2011/11/14 17:07:26 $
* @source $Source: /var/lib/cvs/vtiger530/Dutch/modules/Assets/language/nl_nl.lang.php,v $
* @copyright Copyright (c)2005-2011 Vicus eBusiness Solutions bv <info@vicus.nl>
* @license vtiger CRM Public License Version 1.0 (by definition)
********************************************************************************/
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'Activa',
'SINGLE_Assets'=>'Activa',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'Activa Informatie',
'LBL_CUSTOM_INFORMATION'=>'Maatwerk Informatie',
'LBL_DESCRIPTION_INFORMATION'=>'Notities',
/*fields for the module*/
'Assets'=>'Activa',
'Asset Name' => 'Activa Naam',
'Customer Name'=>'Klant Naam',
'Product Name'=>'Product Naam',
'Serial Nummer'=>'Serienummer',
'Asset No'=>'Activa nummer',
'Date Sold'=>'Datum Verkocht',
'Date in Service'=>'Datum in Service',
'Status'=>'Status',
'Shipping Method'=>'Transport Methode',
'Shipping Tracking Nummer'=>'Transport Tracking Nummer',
'Tag Nummer'=>'Tag Nummer',
'Notes'=>'Notities',
'Invoice Name'=>'Factuur Naam', // if you want this empty include space as label is picked from include/en_us.lang.php otherwise
/*picklist values*/
'In Service'=>'In Service',
'Out-of-service'=>'Uit Service',
);
?>

View File

@ -0,0 +1,56 @@
<?php
/**
* Copyright (C) 2006-2012 YUCHENG HU
*
* ---------------------------------------------------------
* OSSEZ (中国) 信息技术有限公司
* http://www.ossez.com
* http://src.ossez.com
*
* CONTACT
* huyuchengus@gmail.com / yucheng.hu@ossez.com
*
* ---------------------------------------------------------
* [A] GNU GENERAL PUBLIC LICENSE GNU/LGPL
* [B] Apache License, Version 2.0
*
* ---------------------------------------------------------
* NOTE
* 1. 所有的语言配置文件必须采用无 BOM UTF-8 编码
* 2. 本语言文件为 ossez-5.4.0 分支,适用于 vTiger 5.4.0
* ---------------------------------------------------------
*/
$mod_strings = Array(
/*some general information*/
'LBL_MODULE_NAME'=>'资产',
'SINGLE_Assets'=>'资产',
/*blocks for the module*/
'LBL_ASSET_INFORMATION'=>'资产信息',
'LBL_CUSTOM_INFORMATION'=>'自定义信息',
'LBL_DESCRIPTION_INFORMATION'=>'备注',
/*fields for the module*/
'Assets'=>'资产',
'Asset Name' => '资产名称',
'Customer Name'=>'客户名称',
'Product Name'=>'产品名称',
'Serial Number'=>'序列号',
'Asset No'=>'资产编号',
'Date Sold'=>'销售日期',
'Date in Service'=>'服务日期',
'Status'=>'状态',
'Shipping Method'=>'快递方法',
'Shipping Tracking Number'=>'快递跟踪号',
'Tag Number'=>'标签号',
'Notes'=>'备注',
'Invoice Name'=>'发货单',
/*picklist values*/
'In Service'=>'正在提供服务',
'Out-of-service'=>'已不提供服务',
'Assets ID'=>'资产序号',
);
?>

32
modules/Assets/schema.xml Normal file
View File

@ -0,0 +1,32 @@
<?xml version='1.0'?>
<schema>
<tables>
<table>
<name>vtiger_assets</name>
<sql><![CDATA[CREATE TABLE `vtiger_assets` (
`assetsid` int(11) NOT NULL,
`asset_no` varchar(30) NOT NULL,
`account` int(19) NOT NULL,
`product` int(19) NOT NULL,
`serialnumber` varchar(200) NOT NULL,
`datesold` date NOT NULL,
`dateinservice` date NOT NULL,
`assetstatus` varchar(200) default 'In Service',
`tagnumber` varchar(300) default NULL,
`invoiceid` int(19) default NULL,
`shippingmethod` varchar(200) default NULL,
`shippingtrackingnumber` varchar(200) default NULL,
`assetname` varchar(100) default NULL,
PRIMARY KEY (`assetsid`),
CONSTRAINT `fk_1_vtiger_assets` FOREIGN KEY (`assetsid`) REFERENCES `vtiger_crmentity` (`crmid`) ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8]]></sql>
</table>
<table>
<name>vtiger_assetscf</name>
<sql><![CDATA[CREATE TABLE `vtiger_assetscf` (
`assetsid` int(19) NOT NULL,
PRIMARY KEY (`assetsid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8]]></sql>
</table>
</tables>
</schema>

View File

@ -0,0 +1,53 @@
<?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/database/PearDatabase.php');
@include_once('user_privileges/default_module_view.php');
global $singlepane_view, $currentModule;
$idlist = vtlib_purify($_REQUEST['idlist']);
$destinationModule = vtlib_purify($_REQUEST['destination_module']);
$parenttab = getParentTab();
$forCRMRecord = vtlib_purify($_REQUEST['parentid']);
$mode = $_REQUEST['mode'];
if($singlepane_view == 'true')
$action = "DetailView";
else
$action = "CallRelatedList";
$storearray = array();
if(!empty($_REQUEST['idlist'])) {
// Split the string of ids
$storearray = explode (";",trim($idlist,";"));
} else if(!empty($_REQUEST['entityid'])){
$storearray = array($_REQUEST['entityid']);
}
$focus = CRMEntity::getInstance($currentModule);
if($mode == 'delete') {
// Split the string of ids
$ids = explode (";",$idlist);
if(!empty($ids)) {
$focus->delete_related_module($currentModule, $forCRMRecord, $destinationModule, $ids);
}
} else {
if(!empty($_REQUEST['idlist'])) {
// Split the string of ids
$ids = explode (";",trim($idlist,";"));
} else if(!empty($_REQUEST['entityid'])){
$ids = $_REQUEST['entityid'];
}
if(!empty($ids)) {
relateEntities($focus, $currentModule, $forCRMRecord, $destinationModule, $ids);
}
}
header("Location: index.php?module=$currentModule&record=$forCRMRecord&action=$action&parenttab=$parenttab");
?>

View File

@ -0,0 +1,994 @@
<?php
/*********************************************************************************
* The contents of this file are subject to the SugarCRM Public License Version 1.1.2
* ("License"); You may not use this file except in compliance with the
* License. You may obtain a copy of the License at http://www.sugarcrm.com/SPL
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for
* the specific language governing rights and limitations under the License.
* The Original Code is: SugarCRM Open Source
* The Initial Developer of the Original Code is SugarCRM, Inc.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.;
* All Rights Reserved.
* Contributor(s): ______________________________________.
********************************************************************************/
/*********************************************************************************
* $Header: /advent/projects/wesat/vtiger_crm/sugarcrm/modules/Activities/Activity.php,v 1.26 2005/03/26 10:42:13 rank Exp $
* Description: TODO: To be written.
* Portions created by SugarCRM are Copyright (C) SugarCRM, Inc.
* All Rights Reserved.
* Contributor(s): ______________________________________..
********************************************************************************/
include_once('config.php');
require_once('include/logging.php');
require_once('include/database/PearDatabase.php');
require_once('modules/Calendar/RenderRelatedListUI.php');
require_once('data/CRMEntity.php');
require_once('modules/Calendar/CalendarCommon.php');
// Task is used to store customer information.
class Activity extends CRMEntity {
var $log;
var $db;
var $table_name = "vtiger_activity";
var $table_index= 'activityid';
var $reminder_table = 'vtiger_activity_reminder';
var $tab_name = Array('vtiger_crmentity','vtiger_activity','vtiger_activitycf');
var $tab_name_index = Array('vtiger_crmentity'=>'crmid','vtiger_activity'=>'activityid','vtiger_seactivityrel'=>'activityid','vtiger_cntactivityrel'=>'activityid','vtiger_salesmanactivityrel'=>'activityid','vtiger_activity_reminder'=>'activity_id','vtiger_recurringevents'=>'activityid','vtiger_activitycf'=>'activityid');
var $column_fields = Array();
var $sortby_fields = Array('subject','due_date','date_start','smownerid','activitytype','lastname'); //Sorting is added for due date and start date
// This is used to retrieve related vtiger_fields from form posts.
var $additional_column_fields = Array('assigned_user_name', 'assigned_user_id', 'contactname', 'contact_phone', 'contact_email', 'parent_name');
/**
* Mandatory table for supporting custom fields.
*/
var $customFieldTable = Array('vtiger_activitycf', 'activityid');
// This is the list of vtiger_fields that are in the lists.
var $list_fields = Array(
'Close'=>Array('activity'=>'status'),
'Type'=>Array('activity'=>'activitytype'),
'Subject'=>Array('activity'=>'subject'),
'Related to'=>Array('seactivityrel'=>'parent_id'),
'Start Date'=>Array('activity'=>'date_start'),
'Start Time'=>Array('activity','time_start'),
'End Date'=>Array('activity'=>'due_date'),
'End Time'=>Array('activity','time_end'),
'Recurring Type'=>Array('recurringevents'=>'recurringtype'),
'Assigned To'=>Array('crmentity'=>'smownerid'),
'Contact Name'=>Array('contactdetails'=>'lastname')
);
var $range_fields = Array(
'name',
'date_modified',
'start_date',
'id',
'status',
'date_due',
'time_start',
'description',
'contact_name',
'priority',
'duehours',
'dueminutes',
'location'
);
var $list_fields_name = Array(
'Close'=>'status',
'Type'=>'activitytype',
'Subject'=>'subject',
'Contact Name'=>'lastname',
'Related to'=>'parent_id',
'Start Date & Time'=>'date_start',
'End Date & Time'=>'due_date',
'Recurring Type'=>'recurringtype',
'Assigned To'=>'assigned_user_id',
'Start Date'=>'date_start',
'Start Time'=>'time_start',
'End Date'=>'due_date',
'End Time'=>'time_end');
var $list_link_field= 'subject';
//Added these variables which are used as default order by and sortorder in ListView
var $default_order_by = 'due_date';
var $default_sort_order = 'ASC';
//var $groupTable = Array('vtiger_activitygrouprelation','activityid');
function Activity() {
$this->log = LoggerManager::getLogger('Calendar');
$this->db = PearDatabase::getInstance();
$this->column_fields = getColumnFields('Calendar');
}
function save_module($module)
{
global $adb;
//Handling module specific save
//Insert into seactivity rel
if(isset($this->column_fields['parent_id']) && $this->column_fields['parent_id'] != '')
{
$this->insertIntoEntityTable("vtiger_seactivityrel", $module);
}
elseif($this->column_fields['parent_id']=='' && $insertion_mode=="edit")
{
$this->deleteRelation("vtiger_seactivityrel");
}
//Insert into cntactivity rel
if(isset($this->column_fields['contact_id']) && $this->column_fields['contact_id'] != '')
{
$this->insertIntoEntityTable('vtiger_cntactivityrel', $module);
}
elseif($this->column_fields['contact_id'] =='' && $insertion_mode=="edit")
{
$this->deleteRelation('vtiger_cntactivityrel');
}
$recur_type='';
if(($recur_type == "--None--" || $recur_type == '') && $this->mode == "edit")
{
$sql = 'delete from vtiger_recurringevents where activityid=?';
$adb->pquery($sql, array($this->id));
}
//Handling for recurring type
//Insert into vtiger_recurring event table
if(isset($this->column_fields['recurringtype']) && $this->column_fields['recurringtype']!='' && $this->column_fields['recurringtype']!='--None--')
{
$recur_type = trim($this->column_fields['recurringtype']);
$recur_data = getrecurringObjValue();
if(is_object($recur_data))
$this->insertIntoRecurringTable($recur_data);
}
//Insert into vtiger_activity_remainder table
$this->insertIntoReminderTable('vtiger_activity_reminder',$module,"");
//Handling for invitees
$selected_users_string = $_REQUEST['inviteesid'];
$invitees_array = explode(';',$selected_users_string);
$this->insertIntoInviteeTable($module,$invitees_array);
//Inserting into sales man activity rel
$this->insertIntoSmActivityRel($module);
$this->insertIntoActivityReminderPopup($module);
}
/** Function to insert values in vtiger_activity_reminder_popup table for the specified module
* @param $cbmodule -- module:: Type varchar
*/
function insertIntoActivityReminderPopup($cbmodule) {
global $adb;
$cbrecord = $this->id;
unset($_SESSION['next_reminder_time']);
if(isset($cbmodule) && isset($cbrecord)) {
$cbdate = getValidDBInsertDateValue($this->column_fields['date_start']);
$cbtime = $this->column_fields['time_start'];
$reminder_query = "SELECT reminderid FROM vtiger_activity_reminder_popup WHERE semodule = ? and recordid = ?";
$reminder_params = array($cbmodule, $cbrecord);
$reminderidres = $adb->pquery($reminder_query, $reminder_params);
$reminderid = null;
if($adb->num_rows($reminderidres) > 0) {
$reminderid = $adb->query_result($reminderidres, 0, "reminderid");
}
if(isset($reminderid)) {
$callback_query = "UPDATE vtiger_activity_reminder_popup set status = 0, date_start = ?, time_start = ? WHERE reminderid = ?";
$callback_params = array($cbdate, $cbtime, $reminderid);
} else {
$callback_query = "INSERT INTO vtiger_activity_reminder_popup (recordid, semodule, date_start, time_start) VALUES (?,?,?,?)";
$callback_params = array($cbrecord, $cbmodule, $cbdate, $cbtime);
}
$adb->pquery($callback_query, $callback_params);
}
}
/** Function to insert values in vtiger_activity_remainder table for the specified module,
* @param $table_name -- table name:: Type varchar
* @param $module -- module:: Type varchar
*/
function insertIntoReminderTable($table_name,$module,$recurid)
{
global $log;
$log->info("in insertIntoReminderTable ".$table_name." module is ".$module);
if($_REQUEST['set_reminder'] == 'Yes')
{
unset($_SESSION['next_reminder_time']);
$log->debug("set reminder is set");
$rem_days = $_REQUEST['remdays'];
$log->debug("rem_days is ".$rem_days);
$rem_hrs = $_REQUEST['remhrs'];
$log->debug("rem_hrs is ".$rem_hrs);
$rem_min = $_REQUEST['remmin'];
$log->debug("rem_minutes is ".$rem_min);
$reminder_time = $rem_days * 24 * 60 + $rem_hrs * 60 + $rem_min;
$log->debug("reminder_time is ".$reminder_time);
if ($recurid == "")
{
if($_REQUEST['mode'] == 'edit')
{
$this->activity_reminder($this->id,$reminder_time,0,$recurid,'edit');
}
else
{
$this->activity_reminder($this->id,$reminder_time,0,$recurid,'');
}
}
else
{
$this->activity_reminder($this->id,$reminder_time,0,$recurid,'');
}
}
elseif($_REQUEST['set_reminder'] == 'No')
{
$this->activity_reminder($this->id,'0',0,$recurid,'delete');
}
}
// Code included by Jaguar - starts
/** Function to insert values in vtiger_recurringevents table for the specified tablename,module
* @param $recurObj -- Recurring Object:: Type varchar
*/
function insertIntoRecurringTable(& $recurObj)
{
global $log,$adb;
$log->info("in insertIntoRecurringTable ");
$st_date = $recurObj->startdate->get_DB_formatted_date();
$log->debug("st_date ".$st_date);
$end_date = $recurObj->enddate->get_DB_formatted_date();
$log->debug("end_date is set ".$end_date);
$type = $recurObj->getRecurringType();
$log->debug("type is ".$type);
$flag="true";
if($_REQUEST['mode'] == 'edit')
{
$activity_id=$this->id;
$sql='select min(recurringdate) AS min_date,max(recurringdate) AS max_date, recurringtype, activityid from vtiger_recurringevents where activityid=? group by activityid, recurringtype';
$result = $adb->pquery($sql, array($activity_id));
$noofrows = $adb->num_rows($result);
for($i=0; $i<$noofrows; $i++)
{
$recur_type_b4_edit = $adb->query_result($result,$i,"recurringtype");
$date_start_b4edit = $adb->query_result($result,$i,"min_date");
$end_date_b4edit = $adb->query_result($result,$i,"max_date");
}
if(($st_date == $date_start_b4edit) && ($end_date==$end_date_b4edit) && ($type == $recur_type_b4_edit))
{
if($_REQUEST['set_reminder'] == 'Yes')
{
$sql = 'delete from vtiger_activity_reminder where activity_id=?';
$adb->pquery($sql, array($activity_id));
$sql = 'delete from vtiger_recurringevents where activityid=?';
$adb->pquery($sql, array($activity_id));
$flag="true";
}
elseif($_REQUEST['set_reminder'] == 'No')
{
$sql = 'delete from vtiger_activity_reminder where activity_id=?';
$adb->pquery($sql, array($activity_id));
$flag="false";
}
else
$flag="false";
}
else
{
$sql = 'delete from vtiger_activity_reminder where activity_id=?';
$adb->pquery($sql, array($activity_id));
$sql = 'delete from vtiger_recurringevents where activityid=?';
$adb->pquery($sql, array($activity_id));
}
}
$recur_freq = $recurObj->getRecurringFrequency();
$recurringinfo = $recurObj->getDBRecurringInfoString();
if($flag=="true") {
$max_recurid_qry = 'select max(recurringid) AS recurid from vtiger_recurringevents;';
$result = $adb->pquery($max_recurid_qry, array());
$noofrows = $adb->num_rows($result);
$recur_id = 0;
if($noofrows > 0) {
$recur_id = $adb->query_result($result,0,"recurid");
}
$current_id =$recur_id+1;
$recurring_insert = "insert into vtiger_recurringevents values (?,?,?,?,?,?)";
$rec_params = array($current_id, $this->id, $st_date, $type, $recur_freq, $recurringinfo);
$adb->pquery($recurring_insert, $rec_params);
unset($_SESSION['next_reminder_time']);
if($_REQUEST['set_reminder'] == 'Yes') {
$this->insertIntoReminderTable("vtiger_activity_reminder",$module,$current_id,'');
}
}
}
/** Function to insert values in vtiger_invitees table for the specified module,tablename ,invitees_array
* @param $table_name -- table name:: Type varchar
* @param $module -- module:: Type varchar
* @param $invitees_array Array
*/
function insertIntoInviteeTable($module,$invitees_array)
{
global $log,$adb;
$log->debug("Entering insertIntoInviteeTable(".$module.",".$invitees_array.") method ...");
if($this->mode == 'edit'){
$sql = "delete from vtiger_invitees where activityid=?";
$adb->pquery($sql, array($this->id));
}
foreach($invitees_array as $inviteeid)
{
if($inviteeid != '')
{
$query="insert into vtiger_invitees values(?,?)";
$adb->pquery($query, array($this->id, $inviteeid));
}
}
$log->debug("Exiting insertIntoInviteeTable method ...");
}
/** Function to insert values in vtiger_salesmanactivityrel table for the specified module
* @param $module -- module:: Type varchar
*/
function insertIntoSmActivityRel($module)
{
global $adb;
global $current_user;
if($this->mode == 'edit'){
$sql = "delete from vtiger_salesmanactivityrel where activityid=?";
$adb->pquery($sql, array($this->id));
}
$user_sql = $adb->pquery("select count(*) as count from vtiger_users where id=?", array($this->column_fields['assigned_user_id']));
if($adb->query_result($user_sql, 0, 'count') != 0) {
$sql_qry = "insert into vtiger_salesmanactivityrel (smid,activityid) values(?,?)";
$adb->pquery($sql_qry, array($this->column_fields['assigned_user_id'], $this->id));
if(isset($_REQUEST['inviteesid']) && $_REQUEST['inviteesid']!='')
{
$selected_users_string = $_REQUEST['inviteesid'];
$invitees_array = explode(';',$selected_users_string);
foreach($invitees_array as $inviteeid)
{
if($inviteeid != '')
{
$resultcheck = $adb->pquery("select * from vtiger_salesmanactivityrel where activityid=? and smid=?",array($this->id,$inviteeid));
if($adb->num_rows($resultcheck) != 1){
$query="insert into vtiger_salesmanactivityrel values(?,?)";
$adb->pquery($query, array($inviteeid, $this->id));
}
}
}
}
}
}
/**
*
* @param String $tableName
* @return String
*/
public function getJoinClause($tableName) {
if($tableName == "vtiger_activity_reminder")
return 'LEFT JOIN';
return parent::getJoinClause($tableName);
}
// Mike Crowe Mod --------------------------------------------------------Default ordering for us
/**
* Function to get sort order
* return string $sorder - sortorder string either 'ASC' or 'DESC'
*/
function getSortOrder()
{
global $log;
$log->debug("Entering getSortOrder() method ...");
if(isset($_REQUEST['sorder']))
$sorder = $this->db->sql_escape_string($_REQUEST['sorder']);
else
$sorder = (($_SESSION['ACTIVITIES_SORT_ORDER'] != '')?($_SESSION['ACTIVITIES_SORT_ORDER']):($this->default_sort_order));
$log->debug("Exiting getSortOrder method ...");
return $sorder;
}
/**
* Function to get order by
* return string $order_by - fieldname(eg: 'subject')
*/
function getOrderBy()
{
global $log;
$log->debug("Entering getOrderBy() method ...");
$use_default_order_by = '';
if(PerformancePrefs::getBoolean('LISTVIEW_DEFAULT_SORTING', true)) {
$use_default_order_by = $this->default_order_by;
}
if (isset($_REQUEST['order_by']))
$order_by = $this->db->sql_escape_string($_REQUEST['order_by']);
else
$order_by = (($_SESSION['ACTIVITIES_ORDER_BY'] != '')?($_SESSION['ACTIVITIES_ORDER_BY']):($use_default_order_by));
$log->debug("Exiting getOrderBy method ...");
return $order_by;
}
// Mike Crowe Mod --------------------------------------------------------
//Function Call for Related List -- Start
/**
* Function to get Activity related Contacts
* @param integer $id - activityid
* returns related Contacts record in array format
*/
function get_contacts($id, $cur_tab_id, $rel_tab_id, $actions=false) {
global $log, $singlepane_view,$currentModule,$current_user;
$log->debug("Entering get_contacts(".$id.") method ...");
$this_module = $currentModule;
$related_module = vtlib_getModuleNameById($rel_tab_id);
require_once("modules/$related_module/$related_module.php");
$other = new $related_module();
vtlib_setup_modulevars($related_module, $other);
$singular_modname = vtlib_toSingular($related_module);
$parenttab = getParentTab();
$returnset = '&return_module='.$this_module.'&return_action=DetailView&activity_mode=Events&return_id='.$id;
$search_string = '';
$button = '';
if($actions) {
if(is_string($actions)) $actions = explode(',', strtoupper($actions));
if(in_array('SELECT', $actions) && isPermitted($related_module,4, '') == 'yes') {
$button .= "<input title='".getTranslatedString('LBL_SELECT')." ". getTranslatedString($related_module). "' class='crmbutton small edit' type='button' onclick=\"return window.open('index.php?module=$related_module&return_module=$currentModule&action=Popup&popuptype=detailview&select=enable&form=EditView&form_submit=false&recordid=$id&parenttab=$parenttab$search_string','test','width=640,height=602,resizable=0,scrollbars=0');\" value='". getTranslatedString('LBL_SELECT'). " " . getTranslatedString($related_module) ."'>&nbsp;";
}
}
$query = 'select vtiger_users.user_name,vtiger_contactdetails.accountid,vtiger_contactdetails.contactid, vtiger_contactdetails.firstname,vtiger_contactdetails.lastname, vtiger_contactdetails.department, vtiger_contactdetails.title, vtiger_contactdetails.email, vtiger_contactdetails.phone, vtiger_crmentity.crmid, vtiger_crmentity.smownerid, vtiger_crmentity.modifiedtime from vtiger_contactdetails inner join vtiger_cntactivityrel on vtiger_cntactivityrel.contactid=vtiger_contactdetails.contactid inner join vtiger_crmentity on vtiger_crmentity.crmid = vtiger_contactdetails.contactid left join vtiger_users on vtiger_users.id = vtiger_crmentity.smownerid left join vtiger_groups on vtiger_groups.groupid = vtiger_crmentity.smownerid where vtiger_cntactivityrel.activityid='.$id.' and vtiger_crmentity.deleted=0';
$return_value = GetRelatedList($this_module, $related_module, $other, $query, $button, $returnset);
if($return_value == null) $return_value = Array();
$return_value['CUSTOM_BUTTON'] = $button;
$log->debug("Exiting get_contacts method ...");
return $return_value;
}
/**
* Function to get Activity related Users
* @param integer $id - activityid
* returns related Users record in array format
*/
function get_users($id) {
global $log;
$log->debug("Entering get_contacts(".$id.") method ...");
global $app_strings;
$focus = new Users();
$button = '<input title="Change" accessKey="" tabindex="2" type="button" class="crmbutton small edit"
value="'.getTranslatedString('LBL_SELECT_USER_BUTTON_LABEL').'" name="button" LANGUAGE=javascript
onclick=\'return window.open("index.php?module=Users&return_module=Calendar&return_action={$return_modname}&activity_mode=Events&action=Popup&popuptype=detailview&form=EditView&form_submit=true&select=enable&return_id='.$id.'&recordid='.$id.'","test","width=640,height=525,resizable=0,scrollbars=0")\';>';
$returnset = '&return_module=Calendar&return_action=CallRelatedList&return_id='.$id;
$query = 'SELECT vtiger_users.id, vtiger_users.first_name,vtiger_users.last_name, vtiger_users.user_name, vtiger_users.email1, vtiger_users.email2, vtiger_users.status, vtiger_users.is_admin, vtiger_user2role.roleid, vtiger_users.secondaryemail, vtiger_users.phone_home, vtiger_users.phone_work, vtiger_users.phone_mobile, vtiger_users.phone_other, vtiger_users.phone_fax,vtiger_activity.date_start,vtiger_activity.due_date,vtiger_activity.time_start,vtiger_activity.duration_hours,vtiger_activity.duration_minutes from vtiger_users inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.smid=vtiger_users.id inner join vtiger_activity on vtiger_activity.activityid=vtiger_salesmanactivityrel.activityid inner join vtiger_user2role on vtiger_user2role.userid=vtiger_users.id where vtiger_activity.activityid='.$id;
$return_data = GetRelatedList('Calendar','Users',$focus,$query,$button,$returnset);
if($return_data == null) $return_data = Array();
$return_data['CUSTOM_BUTTON'] = $button;
$log->debug("Exiting get_users method ...");
return $return_data;
}
/**
* Function to get activities for given criteria
* @param string $criteria - query string
* returns activity records in array format($list) or null value
*/
function get_full_list($criteria) {
global $log;
$log->debug("Entering get_full_list(".$criteria.") method ...");
$query = "select vtiger_crmentity.crmid,vtiger_crmentity.smownerid,vtiger_crmentity.setype, vtiger_activity.*,
vtiger_contactdetails.lastname, vtiger_contactdetails.firstname, vtiger_contactdetails.contactid
from vtiger_activity
inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid
left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid= vtiger_activity.activityid
left join vtiger_contactdetails on vtiger_contactdetails.contactid= vtiger_cntactivityrel.contactid
left join vtiger_seactivityrel on vtiger_seactivityrel.activityid = vtiger_activity.activityid
WHERE vtiger_crmentity.deleted=0 ".$criteria;
$result =& $this->db->query($query);
if($this->db->getRowCount($result) > 0){
// We have some data.
while ($row = $this->db->fetchByAssoc($result)) {
foreach($this->list_fields_name as $field)
{
if (isset($row[$field])) {
$this->$field = $row[$field];
}
else {
$this->$field = '';
}
}
$list[] = $this;
}
}
if (isset($list))
{
$log->debug("Exiting get_full_list method ...");
return $list;
}
else
{
$log->debug("Exiting get_full_list method ...");
return null;
}
}
//calendarsync
/**
* Function to get meeting count
* @param string $user_name - User Name
* return integer $row["count(*)"] - count
*/
function getCount_Meeting($user_name)
{
global $log;
$log->debug("Entering getCount_Meeting(".$user_name.") method ...");
$query = "select count(*) from vtiger_activity inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.activityid=vtiger_activity.activityid inner join vtiger_users on vtiger_users.id=vtiger_salesmanactivityrel.smid where user_name=? and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Meeting'";
$result = $this->db->pquery($query, array($user_name),true,"Error retrieving contacts count");
$rows_found = $this->db->getRowCount($result);
$row = $this->db->fetchByAssoc($result, 0);
$log->debug("Exiting getCount_Meeting method ...");
return $row["count(*)"];
}
function get_calendars($user_name,$from_index,$offset)
{
global $log;
$log->debug("Entering get_calendars(".$user_name.",".$from_index.",".$offset.") method ...");
$query = "select vtiger_activity.location as location,vtiger_activity.duration_hours as duehours, vtiger_activity.duration_minutes as dueminutes,vtiger_activity.time_start as time_start, vtiger_activity.subject as name,vtiger_crmentity.modifiedtime as date_modified, vtiger_activity.date_start start_date,vtiger_activity.activityid as id,vtiger_activity.status as status, vtiger_crmentity.description as description, vtiger_activity.priority as vtiger_priority, vtiger_activity.due_date as date_due ,vtiger_contactdetails.firstname cfn, vtiger_contactdetails.lastname cln from vtiger_activity inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.activityid=vtiger_activity.activityid inner join vtiger_users on vtiger_users.id=vtiger_salesmanactivityrel.smid left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid=vtiger_activity.activityid left join vtiger_contactdetails on vtiger_contactdetails.contactid=vtiger_cntactivityrel.contactid inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid where user_name='" .$user_name ."' and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Meeting' limit " .$from_index ."," .$offset;
$log->debug("Exiting get_calendars method ...");
return $this->process_list_query1($query);
}
//calendarsync
/**
* Function to get task count
* @param string $user_name - User Name
* return integer $row["count(*)"] - count
*/
function getCount($user_name)
{
global $log;
$log->debug("Entering getCount(".$user_name.") method ...");
$query = "select count(*) from vtiger_activity inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.activityid=vtiger_activity.activityid inner join vtiger_users on vtiger_users.id=vtiger_salesmanactivityrel.smid where user_name=? and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Task'";
$result = $this->db->pquery($query,array($user_name), true,"Error retrieving contacts count");
$rows_found = $this->db->getRowCount($result);
$row = $this->db->fetchByAssoc($result, 0);
$log->debug("Exiting getCount method ...");
return $row["count(*)"];
}
/**
* Function to get list of task for user with given limit
* @param string $user_name - User Name
* @param string $from_index - query string
* @param string $offset - query string
* returns tasks in array format
*/
function get_tasks($user_name,$from_index,$offset)
{
global $log;
$log->debug("Entering get_tasks(".$user_name.",".$from_index.",".$offset.") method ...");
$query = "select vtiger_activity.subject as name,vtiger_crmentity.modifiedtime as date_modified, vtiger_activity.date_start start_date,vtiger_activity.activityid as id,vtiger_activity.status as status, vtiger_crmentity.description as description, vtiger_activity.priority as priority, vtiger_activity.due_date as date_due ,vtiger_contactdetails.firstname cfn, vtiger_contactdetails.lastname cln from vtiger_activity inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.activityid=vtiger_activity.activityid inner join vtiger_users on vtiger_users.id=vtiger_salesmanactivityrel.smid left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid=vtiger_activity.activityid left join vtiger_contactdetails on vtiger_contactdetails.contactid=vtiger_cntactivityrel.contactid inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid where user_name='" .$user_name ."' and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Task' limit " .$from_index ."," .$offset;
$log->debug("Exiting get_tasks method ...");
return $this->process_list_query1($query);
}
/**
* Function to process the activity list query
* @param string $query - query string
* return array $response - activity lists
*/
function process_list_query1($query)
{
global $log;
$log->debug("Entering process_list_query1(".$query.") method ...");
$result =& $this->db->query($query,true,"Error retrieving $this->object_name list: ");
$list = Array();
$rows_found = $this->db->getRowCount($result);
if($rows_found != 0)
{
$task = Array();
for($index = 0 , $row = $this->db->fetchByAssoc($result, $index); $row && $index <$rows_found;$index++, $row = $this->db->fetchByAssoc($result, $index))
{
foreach($this->range_fields as $columnName)
{
if (isset($row[$columnName])) {
if($columnName == 'time_start'){
$startDate = new DateTimeField($row['date_start'].' '.
$row[$columnName]);
$task[$columnName] = $startDate->getDBInsertTimeValue();
}else{
$task[$columnName] = $row[$columnName];
}
}
else
{
$task[$columnName] = "";
}
}
$task[contact_name] = return_name($row, 'cfn', 'cln');
$list[] = $task;
}
}
$response = Array();
$response['list'] = $list;
$response['row_count'] = $rows_found;
$response['next_offset'] = $next_offset;
$response['previous_offset'] = $previous_offset;
$log->debug("Exiting process_list_query1 method ...");
return $response;
}
/**
* Function to get reminder for activity
* @param integer $activity_id - activity id
* @param string $reminder_time - reminder time
* @param integer $reminder_sent - 0 or 1
* @param integer $recurid - recuring eventid
* @param string $remindermode - string like 'edit'
*/
function activity_reminder($activity_id,$reminder_time,$reminder_sent=0,$recurid,$remindermode='')
{
global $log;
$log->debug("Entering vtiger_activity_reminder(".$activity_id.",".$reminder_time.",".$reminder_sent.",".$recurid.",".$remindermode.") method ...");
//Check for vtiger_activityid already present in the reminder_table
$query_exist = "SELECT activity_id FROM ".$this->reminder_table." WHERE activity_id = ?";
$result_exist = $this->db->pquery($query_exist, array($activity_id));
if($remindermode == 'edit')
{
if($this->db->num_rows($result_exist) > 0)
{
$query = "UPDATE ".$this->reminder_table." SET";
$query .=" reminder_sent = ?, reminder_time = ? WHERE activity_id =?";
$params = array($reminder_sent, $reminder_time, $activity_id);
}
else
{
$query = "INSERT INTO ".$this->reminder_table." VALUES (?,?,?,?)";
$params = array($activity_id, $reminder_time, 0, $recurid);
}
}
elseif(($remindermode == 'delete') && ($this->db->num_rows($result_exist) > 0))
{
$query = "DELETE FROM ".$this->reminder_table." WHERE activity_id = ?";
$params = array($activity_id);
}
else
{
$query = "INSERT INTO ".$this->reminder_table." VALUES (?,?,?,?)";
$params = array($activity_id, $reminder_time, 0, $recurid);
}
$this->db->pquery($query,$params,true,"Error in processing vtiger_table $this->reminder_table");
$log->debug("Exiting vtiger_activity_reminder method ...");
}
//Used for vtigerCRM Outlook Add-In
/**
* Function to get tasks to display in outlookplugin
* @param string $username - User name
* return string $query - sql query
*/
function get_tasksforol($username)
{
global $log,$adb;
$log->debug("Entering get_tasksforol(".$username.") method ...");
global $current_user;
require_once("modules/Users/Users.php");
$seed_user=new Users();
$user_id=$seed_user->retrieve_user_id($username);
$current_user=$seed_user;
$current_user->retrieve_entity_info($user_id, 'Users');
require('user_privileges/user_privileges_'.$current_user->id.'.php');
require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
if($is_admin == true || $profileGlobalPermission[1] == 0 || $profileGlobalPermission[2] == 0)
{
$sql1 = "select tablename,columnname from vtiger_field where tabid=9 and tablename <> 'vtiger_recurringevents' and tablename <> 'vtiger_activity_reminder' and vtiger_field.presence in (0,2)";
$params1 = array();
}else
{
$profileList = getCurrentUserProfileList();
$sql1 = "select tablename,columnname from vtiger_field inner join vtiger_profile2field on vtiger_profile2field.fieldid=vtiger_field.fieldid inner join vtiger_def_org_field on vtiger_def_org_field.fieldid=vtiger_field.fieldid where vtiger_field.tabid=9 and tablename <> 'vtiger_recurringevents' and tablename <> 'vtiger_activity_reminder' and vtiger_field.displaytype in (1,2,4,3) and vtiger_profile2field.visible=0 and vtiger_def_org_field.visible=0 and vtiger_field.presence in (0,2)";
$params1 = array();
if (count($profileList) > 0) {
$sql1 .= " and vtiger_profile2field.profileid in (". generateQuestionMarks($profileList) .")";
array_push($params1, $profileList);
}
}
$result1 = $adb->pquery($sql1,$params1);
for($i=0;$i < $adb->num_rows($result1);$i++)
{
$permitted_lists[] = $adb->query_result($result1,$i,'tablename');
$permitted_lists[] = $adb->query_result($result1,$i,'columnname');
/*if($adb->query_result($result1,$i,'columnname') == "parentid")
{
$permitted_lists[] = 'vtiger_account';
$permitted_lists[] = 'accountname';
}*/
}
$permitted_lists = array_chunk($permitted_lists,2);
$column_table_lists = array();
for($i=0;$i < count($permitted_lists);$i++)
{
$column_table_lists[] = implode(".",$permitted_lists[$i]);
}
$query = "select vtiger_activity.activityid as taskid, ".implode(',',$column_table_lists)." from vtiger_activity inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid
inner join vtiger_users on vtiger_users.id = vtiger_crmentity.smownerid
left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid=vtiger_activity.activityid
left join vtiger_contactdetails on vtiger_contactdetails.contactid=vtiger_cntactivityrel.contactid
left join vtiger_seactivityrel on vtiger_seactivityrel.activityid = vtiger_activity.activityid
where vtiger_users.user_name='".$username."' and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Task'";
$log->debug("Exiting get_tasksforol method ...");
return $query;
}
/**
* Function to get calendar query for outlookplugin
* @param string $username - User name * return string $query - sql query */
function get_calendarsforol($user_name)
{
global $log,$adb;
$log->debug("Entering get_calendarsforol(".$user_name.") method ...");
global $current_user;
require_once("modules/Users/Users.php");
$seed_user=new Users();
$user_id=$seed_user->retrieve_user_id($user_name);
$current_user=$seed_user;
$current_user->retrieve_entity_info($user_id, 'Users');
require('user_privileges/user_privileges_'.$current_user->id.'.php');
require('user_privileges/sharing_privileges_'.$current_user->id.'.php');
if($is_admin == true || $profileGlobalPermission[1] == 0 || $profileGlobalPermission[2] == 0)
{
$sql1 = "select tablename,columnname from vtiger_field where tabid=9 and tablename <> 'vtiger_recurringevents' and tablename <> 'vtiger_activity_reminder' and vtiger_field.presence in (0,2)";
$params1 = array();
}else
{
$profileList = getCurrentUserProfileList();
$sql1 = "select tablename,columnname from vtiger_field inner join vtiger_profile2field on vtiger_profile2field.fieldid=vtiger_field.fieldid inner join vtiger_def_org_field on vtiger_def_org_field.fieldid=vtiger_field.fieldid where vtiger_field.tabid=9 and tablename <> 'vtiger_recurringevents' and tablename <> 'vtiger_activity_reminder' and vtiger_field.displaytype in (1,2,4,3) and vtiger_profile2field.visible=0 and vtiger_def_org_field.visible=0 and vtiger_field.presence in (0,2)";
$params1 = array();
if (count($profileList) > 0) {
$sql1 .= " and vtiger_profile2field.profileid in (". generateQuestionMarks($profileList) .")";
array_push($params1,$profileList);
}
}
$result1 = $adb->pquery($sql1, $params1);
for($i=0;$i < $adb->num_rows($result1);$i++)
{
$permitted_lists[] = $adb->query_result($result1,$i,'tablename');
$permitted_lists[] = $adb->query_result($result1,$i,'columnname');
if($adb->query_result($result1,$i,'columnname') == "date_start")
{
$permitted_lists[] = 'vtiger_activity';
$permitted_lists[] = 'time_start';
}
if($adb->query_result($result1,$i,'columnname') == "due_date")
{
$permitted_lists[] = 'vtiger_activity';
$permitted_lists[] = 'time_end';
}
}
$permitted_lists = array_chunk($permitted_lists,2);
$column_table_lists = array();
for($i=0;$i < count($permitted_lists);$i++)
{
$column_table_lists[] = implode(".",$permitted_lists[$i]);
}
$query = "select vtiger_activity.activityid as clndrid, ".implode(',',$column_table_lists)." from vtiger_activity
inner join vtiger_salesmanactivityrel on vtiger_salesmanactivityrel.activityid=vtiger_activity.activityid
inner join vtiger_users on vtiger_users.id=vtiger_salesmanactivityrel.smid
left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid=vtiger_activity.activityid
left join vtiger_contactdetails on vtiger_contactdetails.contactid=vtiger_cntactivityrel.contactid
left join vtiger_seactivityrel on vtiger_seactivityrel.activityid = vtiger_activity.activityid
inner join vtiger_crmentity on vtiger_crmentity.crmid=vtiger_activity.activityid
where vtiger_users.user_name='".$user_name."' and vtiger_crmentity.deleted=0 and vtiger_activity.activitytype='Meeting'";
$log->debug("Exiting get_calendarsforol method ...");
return $query;
}
// Function to unlink all the dependent entities of the given Entity by Id
function unlinkDependencies($module, $id) {
global $log;
$sql = 'DELETE FROM vtiger_activity_reminder WHERE activity_id=?';
$this->db->pquery($sql, array($id));
$sql = 'DELETE FROM vtiger_recurringevents WHERE activityid=?';
$this->db->pquery($sql, array($id));
$sql = 'DELETE FROM vtiger_cntactivityrel WHERE activityid = ?';
$this->db->pquery($sql, array($id));
parent::unlinkDependencies($module, $id);
}
// Function to unlink an entity with given Id from another entity
function unlinkRelationship($id, $return_module, $return_id) {
global $log;
if(empty($return_module) || empty($return_id)) return;
if($return_module == 'Contacts') {
$sql = 'DELETE FROM vtiger_cntactivityrel WHERE contactid = ? AND activityid = ?';
$this->db->pquery($sql, array($return_id, $id));
} elseif($return_module == 'HelpDesk') {
$sql = 'DELETE FROM vtiger_seactivityrel WHERE crmid = ? AND activityid = ?';
$this->db->pquery($sql, array($return_id, $id));
} else {
$sql='DELETE FROM vtiger_seactivityrel WHERE activityid=?';
$this->db->pquery($sql, array($id));
$sql = 'DELETE FROM vtiger_crmentityrel WHERE (crmid=? AND relmodule=? AND relcrmid=?) OR (relcrmid=? AND module=? AND crmid=?)';
$params = array($id, $return_module, $return_id, $id, $return_module, $return_id);
$this->db->pquery($sql, $params);
}
}
/**
* this function sets the status flag of activity to true or false depending on the status passed to it
* @param string $status - the status of the activity flag to set
* @return:: true if successful; false otherwise
*/
function setActivityReminder($status){
global $adb;
if($status == "on"){
$flag = 0;
}elseif($status == "off"){
$flag = 1;
}else{
return false;
}
$sql = "update vtiger_activity_reminder_popup set status=1 where recordid=?";
$adb->pquery($sql, array($this->id));
return true;
}
/*
* Function to get the relation tables for related modules
* @param - $secmodule secondary module name
* returns the array with table names and fieldnames storing relations between module and this module
*/
function setRelationTables($secmodule){
$rel_tables = array (
"Contacts" => array("vtiger_cntactivityrel"=>array("activityid","contactid"),"vtiger_activity"=>"activityid"),
"Leads" => array("vtiger_seactivityrel"=>array("activityid","crmid"),"vtiger_activity"=>"activityid"),
"Accounts" => array("vtiger_seactivityrel"=>array("activityid","crmid"),"vtiger_activity"=>"activityid"),
"Potentials" => array("vtiger_seactivityrel"=>array("activityid","crmid"),"vtiger_activity"=>"activityid"),
);
return $rel_tables[$secmodule];
}
/*
* Function to get the secondary query part of a report
* @param - $module primary module name
* @param - $secmodule secondary module name
* returns the query string formed on fetching the related data for report for secondary module
*/
function generateReportsSecQuery($module,$secmodule){
$query = $this->getRelationQuery($module,$secmodule,"vtiger_activity","activityid");
$query .=" left join vtiger_crmentity as vtiger_crmentityCalendar on vtiger_crmentityCalendar.crmid=vtiger_activity.activityid and vtiger_crmentityCalendar.deleted=0
left join vtiger_cntactivityrel on vtiger_cntactivityrel.activityid= vtiger_activity.activityid
left join vtiger_contactdetails as vtiger_contactdetailsCalendar on vtiger_contactdetailsCalendar.contactid= vtiger_cntactivityrel.contactid
left join vtiger_activitycf on vtiger_activitycf.activityid = vtiger_activity.activityid
left join vtiger_seactivityrel on vtiger_seactivityrel.activityid = vtiger_activity.activityid
left join vtiger_activity_reminder on vtiger_activity_reminder.activity_id = vtiger_activity.activityid
left join vtiger_recurringevents on vtiger_recurringevents.activityid = vtiger_activity.activityid
left join vtiger_crmentity as vtiger_crmentityRelCalendar on vtiger_crmentityRelCalendar.crmid = vtiger_seactivityrel.crmid and vtiger_crmentityRelCalendar.deleted=0
left join vtiger_account as vtiger_accountRelCalendar on vtiger_accountRelCalendar.accountid=vtiger_crmentityRelCalendar.crmid
left join vtiger_leaddetails as vtiger_leaddetailsRelCalendar on vtiger_leaddetailsRelCalendar.leadid = vtiger_crmentityRelCalendar.crmid
left join vtiger_potential as vtiger_potentialRelCalendar on vtiger_potentialRelCalendar.potentialid = vtiger_crmentityRelCalendar.crmid
left join vtiger_quotes as vtiger_quotesRelCalendar on vtiger_quotesRelCalendar.quoteid = vtiger_crmentityRelCalendar.crmid
left join vtiger_purchaseorder as vtiger_purchaseorderRelCalendar on vtiger_purchaseorderRelCalendar.purchaseorderid = vtiger_crmentityRelCalendar.crmid
left join vtiger_invoice as vtiger_invoiceRelCalendar on vtiger_invoiceRelCalendar.invoiceid = vtiger_crmentityRelCalendar.crmid
left join vtiger_salesorder as vtiger_salesorderRelCalendar on vtiger_salesorderRelCalendar.salesorderid = vtiger_crmentityRelCalendar.crmid
left join vtiger_troubletickets as vtiger_troubleticketsRelCalendar on vtiger_troubleticketsRelCalendar.ticketid = vtiger_crmentityRelCalendar.crmid
left join vtiger_campaign as vtiger_campaignRelCalendar on vtiger_campaignRelCalendar.campaignid = vtiger_crmentityRelCalendar.crmid
left join vtiger_groups as vtiger_groupsCalendar on vtiger_groupsCalendar.groupid = vtiger_crmentityCalendar.smownerid
left join vtiger_users as vtiger_usersCalendar on vtiger_usersCalendar.id = vtiger_crmentityCalendar.smownerid
left join vtiger_users as vtiger_lastModifiedByCalendar on vtiger_lastModifiedByCalendar.id = vtiger_crmentityCalendar.modifiedby ";
return $query;
}
public function getNonAdminAccessControlQuery($module, $user,$scope='') {
require('user_privileges/user_privileges_'.$user->id.'.php');
require('user_privileges/sharing_privileges_'.$user->id.'.php');
$query = ' ';
$tabId = getTabid($module);
if($is_admin==false && $profileGlobalPermission[1] == 1 && $profileGlobalPermission[2]
== 1 && $defaultOrgSharingPermission[$tabId] == 3) {
$tableName = 'vt_tmp_u'.$user->id.'_t'.$tabId;
$sharingRuleInfoVariable = $module.'_share_read_permission';
$sharingRuleInfo = $$sharingRuleInfoVariable;
$sharedTabId = null;
$this->setupTemporaryTable($tableName, $sharedTabId, $user,
$current_user_parent_role_seq, $current_user_groups);
$query = " INNER JOIN $tableName $tableName$scope ON ($tableName$scope.id = ".
"vtiger_crmentity$scope.smownerid and $tableName$scope.shared=0) ";
$sharedIds = getSharedCalendarId($user->id);
if(!empty($sharedIds)){
$query .= "or ($tableName$scope.id = vtiger_crmentity$scope.smownerid AND ".
"$tableName$scope.shared=1 and vtiger_activity.visibility = 'Public') ";
}
}
return $query;
}
protected function setupTemporaryTable($tableName, $tabId, $user, $parentRole, $userGroups) {
$module = null;
if (!empty($tabId)) {
$module = getTabname($tabId);
}
$query = $this->getNonAdminAccessQuery($module, $user, $parentRole, $userGroups);
$query = "create temporary table IF NOT EXISTS $tableName(id int(11) primary key, shared ".
"int(1) default 0) ignore ".$query;
$db = PearDatabase::getInstance();
$result = $db->pquery($query, array());
if(is_object($result)) {
$query = "create temporary table IF NOT EXISTS $tableName(id int(11) primary key, shared ".
"int(1) default 0) replace select 1, userid as id from vtiger_sharedcalendar where ".
"sharedid = $user->id";
$result = $db->pquery($query, array());
if(is_object($result)) {
return true;
}
}
return false;
}
}
?>

View File

@ -0,0 +1,214 @@
<?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,$current_language,$currentModule,$current_user,$app_strings;
$theme_path = "themes/".$theme."/";
$image_path = $theme_path."images/";
require_once("modules/Calendar/calendarLayout.php");
require_once('include/utils/utils.php');
require_once("modules/Calendar/Calendar.php");
require_once('include/logging.php');
$cal_log =& LoggerManager::getLogger('calendar');
$cal_log->debug("In CalendarAjax file");
$mysel = vtlib_purify($_REQUEST['view']);
$calendar_arr = Array();
$calendar_arr['IMAGE_PATH'] = $image_path;
$date_data = array();
if ( isset($_REQUEST['day']))
{
$date_data['day'] = $_REQUEST['day'];
}
if ( isset($_REQUEST['month']))
{
$date_data['month'] = $_REQUEST['month'];
}
if ( isset($_REQUEST['week']))
{
$date_data['week'] = $_REQUEST['week'];
}
if ( isset($_REQUEST['year']))
{
if ($_REQUEST['year'] > 2037 || $_REQUEST['year'] < 1970)
{
print("<font color='red'>".$app_strings['LBL_CAL_LIMIT_MSG']."</font>");
exit;
}
$date_data['year'] = $_REQUEST['year'];
}
if((isset($_REQUEST['type']) && $_REQUEST['type'] !='') || (isset($_REQUEST['n_type']) && $_REQUEST['n_type'] !=''))
{
$type = $_REQUEST['type'];
$n_type = $_REQUEST['n_type'];
$cal_log->debug("type value is:".$type);
if($type == 'minical')
{
$cal_log->debug("going to get mini calendar");
$temp_module = $currentModule;
$mod_strings = return_module_language($current_language,'Calendar');
$currentModule = 'Calendar';
$calendar_arr['IMAGE_PATH'] = $image_path;
$calendar_arr['calendar'] = new Calendar('month',$date_data);
$calendar_arr['view'] = 'month';
$calendar_arr['size'] = 'small';
if($current_user->hour_format != '')
$calendar_arr['calendar']->hour_format=$current_user->hour_format;
$calendar_arr['calendar']->add_Activities($current_user);
calendar_layout($calendar_arr);
$mod_strings = return_module_language($current_language,$temp_module);
$currentModule = vtlib_purify($_REQUEST['module']);
}
elseif($type == 'settings')
{
$cal_log->debug("going to get calendar Settings");
require_once('modules/Calendar/calendar_share.php');
}
else
{
$subtab = vtlib_purify($_REQUEST['subtab']);
if(empty($mysel))
{
$mysel = 'day';
}
$calendar_arr['calendar'] = new Calendar($mysel,$date_data);
$calendar_arr['view'] = $mysel;
if($calendar_arr['calendar']->view == 'day')
$start_date = $end_date = $calendar_arr['calendar']->date_time->get_formatted_date();
elseif($calendar_arr['calendar']->view == 'week')
{
$start_date = $calendar_arr['calendar']->slices[0];
$end_date = $calendar_arr['calendar']->slices[6];
}
elseif($calendar_arr['calendar']->view == 'month')
{
$start_date = $calendar_arr['calendar']->date_time->getThismonthDaysbyIndex(0);
$end_date = $calendar_arr['calendar']->date_time->getThismonthDaysbyIndex($calendar_arr['calendar']->date_time->daysinmonth - 1);
$start_date = $start_date->get_formatted_date();
$end_date = $end_date->get_formatted_date();
}
elseif($calendar_arr['calendar']->view == 'year')
{
$start_date = $calendar_arr['calendar']->date_time->getThisyearMonthsbyIndex(0);
$end_date = $calendar_arr['calendar']->date_time->get_first_day_of_changed_year('increment');
$start_date = $start_date->get_formatted_date();
$end_date = $end_date->get_formatted_date();
}
else
{
die("view:".$calendar_arr['calendar']->view." is not defined");
}
if($type == 'change_owner' || $type == 'activity_delete' || $type == 'change_status' || $type == 'activity_postpone' || $n_type == 'nav')
{
if($current_user->hour_format != '')
$calendar_arr['calendar']->hour_format=$current_user->hour_format;
if($type == 'change_status')
{
$return_id = vtlib_purify($_REQUEST['record']);
if(isset($_REQUEST['status']))
{
$status = $_REQUEST['status'];
$activity_type = "Task";
}
elseif(isset($_REQUEST['eventstatus']))
{
$status = $_REQUEST['eventstatus'];
$activity_type = "Events";
}
ChangeStatus($status,$return_id,$activity_type);
$mail_data = getActivityMailInfo($return_id,$status,$activity_type);
$invitee_qry = "select * from vtiger_invitees where activityid=?";
$invitee_res = $adb->pquery($invitee_qry, array($return_id));
$count = $adb->num_rows($invitee_res);
if($count != 0)
{
for($j = 0; $j < $count; $j++)
{
$invitees_ids[]= $adb->query_result($invitee_res,$j,"inviteeid");
}
$invitees_ids_string = implode(';',$invitees_ids);
sendInvitation($invitees_ids_string,$activity_type,$mail_data['subject'],$mail_data);
}
}
if($type == 'activity_postpone')
{
}
if ($_REQUEST['viewOption'] == 'hourview' && ($mysel == 'day' || $mysel == 'week' || $mysel == 'month' || $mysel == 'year'))
{
$calendar_arr['calendar']->add_Activities($current_user);
}
if(isset($_REQUEST['viewOption']) && $_REQUEST['viewOption'] != null && $subtab == 'event')
{
if($_REQUEST['viewOption'] == 'hourview')
{
$cal_log->debug("going to get calendar Event HourView");
if($calendar_arr['view'] == 'day')
{
echo getDayViewLayout($calendar_arr)."####".getEventInfo($calendar_arr,'listcnt');
}
elseif($calendar_arr['view'] == 'week')
{
echo getWeekViewLayout($calendar_arr)."####".getEventInfo($calendar_arr,'listcnt');
}
elseif($calendar_arr['view'] == 'month')
{
echo getMonthViewLayout($calendar_arr)."####".getEventInfo($calendar_arr,'listcnt');
}
elseif($calendar_arr['view'] == 'year')
{
echo getYearViewLayout($calendar_arr)."####".getEventInfo($calendar_arr,'listcnt');
}
else
{
die("view:".$view['view']." is not defined");
}
}
elseif($_REQUEST['viewOption'] == 'listview')
{
$cal_log->debug("going to get calendar Event ListView");
//To get Events List
$activity_arr = getEventList($calendar_arr, $start_date, $end_date);
$activity_list = $activity_arr[0];
$navigation_arr = $activity_arr[1];
echo constructEventListView($calendar_arr,$activity_list,$navigation_arr)."####".getEventInfo($calendar_arr,'listcnt');
}
}
elseif($subtab == 'todo')
{
$cal_log->debug("going to get calendar Todo ListView");
//To get Todos List
$todo_arr = getTodoList($calendar_arr, $start_date, $end_date);
$todo_list = $todo_arr[0];
$navigation_arr = $todo_arr[1];
echo constructTodoListView($todo_list,$calendar_arr,$subtab,$navigation_arr)."####".getTodoInfo($calendar_arr,'listcnt');
}
}
elseif($type == 'view')
{
checkFileAccessForInclusion('modules/Calendar/'.$_REQUEST['file'].'.php');
require_once('modules/Calendar/'.$_REQUEST['file'].'.php');
}
else
{
die("View option is not defined");
}
}
}
else
{
require_once('include/Ajax/CommonAjax.php');
//die("type is not set");
}
?>

Some files were not shown because too many files have changed in this diff Show More