Skip to content
This repository was archived by the owner on Aug 26, 2025. It is now read-only.

Commit d281b85

Browse files
rskrzypczakmariuszkrzaczkowski
authored andcommitted
Fixed export records
1 parent 926fc9a commit d281b85

File tree

1 file changed

+35
-0
lines changed

1 file changed

+35
-0
lines changed

modules/Vtiger/actions/ExportData.php

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,39 @@ public function process(\App\Request $request)
4444
$exportModel->sendHttpHeader();
4545
$exportModel->exportData();
4646
}
47+
48+
/**
49+
* {@inheritdoc}
50+
*/
51+
public static function getQuery(\App\Request $request)
52+
{
53+
$cvId = $request->isEmpty('viewname') ? '' : $request->getByType('viewname', 2);
54+
$moduleName = $request->getByType('source_module', 'Alnum');
55+
if (!empty($cvId) && $cvId === 'undefined' && $moduleName !== 'Users') {
56+
$sourceModule = $request->getByType('sourceModule', 2);
57+
$cvId = CustomView_Record_Model::getAllFilterByModule($sourceModule)->getId();
58+
}
59+
$customViewModel = CustomView_Record_Model::getInstanceById($cvId);
60+
if (!$customViewModel) {
61+
return false;
62+
}
63+
$selectedIds = $request->getArray('selected_ids', 2);
64+
if ($selectedIds && $selectedIds[0] !== 'all') {
65+
$queryGenerator = new App\QueryGenerator($moduleName);
66+
$queryGenerator->setFields(['id']);
67+
$queryGenerator->addCondition('id', $selectedIds, 'e');
68+
$queryGenerator->setStateCondition($request->getByType('entityState'));
69+
return $queryGenerator;
70+
}
71+
if (!$request->isEmpty('operator')) {
72+
$operator = $request->getByType('operator');
73+
$searchKey = $request->getByType('search_key', 'Alnum');
74+
$customViewModel->set('operator', $operator);
75+
$customViewModel->set('search_key', $searchKey);
76+
$customViewModel->set('search_value', App\Condition::validSearchValue($request->getByType('search_value', 'Text'), $moduleName, $searchKey, $operator));
77+
}
78+
$customViewModel->set('search_params', App\Condition::validSearchParams($moduleName, $request->getArray('search_params')));
79+
$customViewModel->set('entityState', $request->getByType('entityState'));
80+
return $customViewModel->getRecordsListQuery($request->getArray('excluded_ids', 2), $moduleName);
81+
}
4782
}

0 commit comments

Comments
 (0)