Skip to content
This repository was archived by the owner on Sep 13, 2024. It is now read-only.

Commit 7081514

Browse files
Merge pull request #2101 from YetiForceCompany/master
Master
2 parents bbc5068 + 61953b4 commit 7081514

File tree

56 files changed

+530
-410
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+530
-410
lines changed

config/config.db.php

+36-24
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,37 @@
11
<?php
2-
/*+*******************************************************************************
3-
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
4-
* ("License"); You may not use this file except in compliance with the License
5-
* The Original Code is: vtiger CRM Open Source
6-
* The Initial Developer of the Original Code is vtiger.
7-
* Portions created by vtiger are Copyright (C) vtiger.
8-
* All Rights Reserved.
9-
********************************************************************************/
10-
$dbconfig['db_server'] = '_DBC_SERVER_';
11-
$dbconfig['db_port'] = '_DBC_PORT_';
12-
$dbconfig['db_sockpath'] = '_DBC_SOCKPATH_';
13-
$dbconfig['db_username'] = '_DBC_USER_';
14-
$dbconfig['db_password'] = '_DBC_PASS_';
15-
$dbconfig['db_name'] = '_DBC_NAME_';
16-
$dbconfig['db_type'] = '_DBC_TYPE_';
17-
$dbconfig['db_bundled'] = '_DBC_BUNDLED_';
18-
$vtconfig['adminPwd'] = '_ADMIN_PASS_';
19-
$vtconfig['standarduserPwd'] ='_STANDARDUSER_PASS_';
20-
$vtconfig['adminEmail'] = '_ADMIN_EMAIL_';
21-
$vtconfig['standarduserEmail'] = '_STANDARDUSER_EMAIL_';
22-
$vtconfig['demoData'] = '_DEMO_DATA_';
23-
$vtconfig['currencyName'] = '_CURRENCY_NAME_';
24-
$vtconfig['quickbuild'] = '_QUICKBUILD_';
25-
?>
2+
require('config/config.inc.php');
3+
if (file_exists('config/config_override.php')) {
4+
require('config/config_override.php');
5+
}
6+
$dbConfig['base'] = [
7+
'db_server' => $dbconfig['db_server'],
8+
'db_port' => $dbconfig['db_port'],
9+
'db_username' => $dbconfig['db_username'],
10+
'db_password' => $dbconfig['db_password'],
11+
'db_name' => $dbconfig['db_name'],
12+
'db_type' => $dbconfig['db_type'],
13+
];
14+
$dbConfig['admin'] = [
15+
'db_server' => '_SERVER_',
16+
'db_port' => '_PORT_',
17+
'db_username' => '_USERNAME_',
18+
'db_password' => '_PASSWORD_',
19+
'db_name' => '_NAME_',
20+
'db_type' => '_TYPE_',
21+
];
22+
$dbConfig['log'] = [
23+
'db_server' => '_SERVER_',
24+
'db_port' => '_PORT_',
25+
'db_username' => '_USERNAME_',
26+
'db_password' => '_PASSWORD_',
27+
'db_name' => '_NAME_',
28+
'db_type' => '_TYPE_',
29+
];
30+
$dbConfig['portal'] = [
31+
'db_server' => '_SERVER_',
32+
'db_port' => '_PORT_',
33+
'db_username' => '_USERNAME_',
34+
'db_password' => '_PASSWORD_',
35+
'db_name' => '_NAME_',
36+
'db_type' => '_TYPE_',
37+
];

config/config.template.php

+3
Original file line numberDiff line numberDiff line change
@@ -254,3 +254,6 @@
254254

255255
// System's language selection in the login window (true/false).
256256
$langInLoginView = false;
257+
258+
// Set the default layout
259+
$defaultLayout = 'vlayout';

config/version.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,6 @@
88
* All Rights Reserved.
99
* Contributor(s): YetiForce.com
1010
* ****************************************************************************** */
11-
$patch_version = '20151014';
12-
$YetiForce_current_version = '2.3.16';
11+
$patch_version = '20151019';
12+
$YetiForce_current_version = '2.3.49';
1313
$_SESSION['yetiforce_version'] = $YetiForce_current_version;

cron/MultiReference.service

+46-17
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
* @license licenses/License.html
66
* @author Mariusz Krzaczkowski <[email protected]>
77
*/
8+
include_once 'include/Webservices/Relation.php';
89
include_once 'include/main/WebUI.php';
910
$current_user = Users::getActiveAdminUser();
1011

@@ -13,27 +14,55 @@ $log = vglobal('log');
1314
$log = &LoggerManager::getLogger('MultiReferenceValue');
1415
$log->info('Cron MultiReferenceValue - Start');
1516

17+
$executed = [];
1618
$result = $db->pquery('SELECT * FROM s_yf_multireference');
1719
while ($multireference = $db->fetch_array($result)) {
18-
$entity = CRMEntity::getInstance($multireference['source_module']);
19-
$queryGenerator = new QueryGenerator($multireference['source_module'], $current_user);
20-
$queryGenerator->setFields(['id']);
21-
$queryGenerator->addCustomWere(['column' => $entity->table_index, 'operator' => '>', 'value' => $multireference['lastid'], 'glue' => 'AND']);
22-
$query = $queryGenerator->getQuery();
23-
$query .= ' ORDER BY ' . $entity->table_index . ' ASC';
24-
$recordsResult = $db->query($query);
20+
if ($multireference['type'] == 0) {
21+
$entity = CRMEntity::getInstance($multireference['source_module']);
22+
$queryGenerator = new QueryGenerator($multireference['source_module'], $current_user);
23+
$queryGenerator->setFields(['id']);
24+
$queryGenerator->addCustomWere(['column' => $entity->table_index, 'operator' => '>', 'value' => $multireference['lastid'], 'glue' => 'AND']);
25+
$query = $queryGenerator->getQuery();
26+
$query .= ' ORDER BY ' . $entity->table_index . ' ASC';
27+
$recordsResult = $db->query($query);
2528

26-
$fields = Vtiger_MultiReferenceValue_UIType::getMultiReferenceValueFields($multireference['source_module'], $multireference['dest_module']);
27-
while ($id = $db->getSingleValue($recordsResult)) {
28-
foreach ($fields as $field) {
29-
$fieldModel = new Vtiger_Field_Model();
30-
$fieldModel->initialize($field);
31-
$UITypeModel = $fieldModel->getUITypeModel();
32-
$UITypeModel->reloadValue($multireference['source_module'], $id);
29+
$fields = Vtiger_MultiReferenceValue_UIType::getFieldsByModules($multireference['source_module'], $multireference['dest_module']);
30+
while ($id = $db->getSingleValue($recordsResult)) {
31+
foreach ($fields as $field) {
32+
$fieldModel = new Vtiger_Field_Model ();
33+
$fieldModel->initialize($field);
34+
$UITypeModel = $fieldModel->getUITypeModel();
35+
$UITypeModel->reloadValue($multireference['source_module'], $id);
36+
}
37+
$db->update('s_yf_multireference', ['lastid' => $id], 'source_module = ? AND dest_module = ?', [$multireference['source_module'], $multireference['dest_module']]);
38+
}
39+
} else {
40+
vglobal('currentModule', $multireference['dest_module']);
41+
$sourceRecordModel = Vtiger_Record_Model::getInstanceById($multireference['lastid'], $multireference['dest_module']);
42+
$targetModel = Vtiger_RelationListView_Model::getInstance($sourceRecordModel, $multireference['source_module']);
43+
$relationModel = $targetModel->getRelationModel();
44+
if (!$targetModel->getRelationModel()) {
45+
continue;
46+
}
47+
$query = $targetModel->getRelationQuery();
48+
$explodedQuery = explode('FROM', $query, 2);
49+
$relationQuery = 'SELECT vtiger_crmentity.crmid FROM' . $explodedQuery[1];
50+
51+
$result2 = $db->query($relationQuery);
52+
while ($crmid = $db->getSingleValue($result2)) {
53+
if (in_array($crmid, $executed)) {
54+
continue;
55+
}
56+
$fields = Vtiger_MultiReferenceValue_UIType::getFieldsByModules($multireference['source_module'], $multireference['dest_module']);
57+
foreach ($fields as $field) {
58+
$fieldModel = new Vtiger_Field_Model();
59+
$fieldModel->initialize($field);
60+
$UITypeModel = $fieldModel->getUITypeModel();
61+
$UITypeModel->reloadValue($multireference['source_module'], $crmid);
62+
}
63+
$executed[] = $crmid;
3364
}
34-
$db->update('s_yf_multireference', ['lastid' => $id], 'source_module = ? AND dest_module = ?', [$multireference['source_module'], $multireference['dest_module']]);
3565
}
36-
$db->delete('s_yf_multireference', 'source_module = ? AND dest_module = ?', [$multireference['source_module'], $multireference['dest_module']]);
66+
$db->delete('s_yf_multireference', 'source_module = ? AND dest_module = ? AND type = ?', [$multireference['source_module'], $multireference['dest_module'], $multireference['type']]);
3767
}
38-
3968
$log->info('Cron MultiReferenceValue - End');

cron/vtigercron.php

+1
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
/**
1212
* Start the cron services configured.
1313
*/
14+
include_once 'include/Webservices/Relation.php';
1415
include_once 'include/main/WebUI.php';
1516
require_once('vtlib/Vtiger/Cron.php');
1617
require_once('modules/Emails/mail.php');

include/ListView/ListViewController.php

+5
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,13 @@ function getListViewRecords($focus, $module, $result)
464464
$value = Vtiger_Functions::textLength($value);
465465
}
466466
} elseif ($field->getFieldDataType() == 'multiReferenceValue') {
467+
$params = $field->getFieldParams();
468+
$fieldModel = Vtiger_Field_Model::getInstanceFromFieldId($params['field']);
467469
$valueTmp = trim($value, '|#|');
468470
$valueTmp = ($valueTmp != "") ? explode('|#|', $valueTmp) : [];
471+
foreach ($valueTmp as $index => $tmp) {
472+
$valueTmp[$index] = $fieldModel->getUITypeModel()->getDisplayValue($tmp);
473+
}
469474
$value = implode(', ', $valueTmp);
470475
$value = Vtiger_Functions::textLength($value);
471476
} elseif (in_array($uitype, array(7, 9, 90))) {

include/Webservices/ConvertLead.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,8 @@ function vtws_convertlead($entityvalues, $user)
5353
}
5454
$rowCount = $adb->num_rows($result);
5555
if ($rowCount > 0) {
56-
$log->error('Error converting a lead: Lead is already converted');
57-
throw new WebServiceException(WebServiceErrorCode::$LEAD_ALREADY_CONVERTED, "Lead is already converted");
56+
$log->error('Error converting a lead: ' . vtws_getWebserviceTranslatedString('LBL_' . WebServiceErrorCode::$LEAD_ALREADY_CONVERTED));
57+
throw new WebServiceException(WebServiceErrorCode::$LEAD_ALREADY_CONVERTED, vtws_getWebserviceTranslatedString('LBL_' . WebServiceErrorCode::$LEAD_ALREADY_CONVERTED));
5858
}
5959

6060
require_once("include/events/include.inc");

include/Webservices/WebserviceField.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ public function getUIType()
192192

193193
public function getFieldParams()
194194
{
195-
return $this->fieldparams;
195+
return Zend_Json::decode($this->fieldparams);
196196
}
197197

198198
public function isReadOnly()

0 commit comments

Comments
 (0)