Files
crm.clientright.ru/modules/OnlyOfficeTemplates/views/GetTemplateActions.php
2026-02-16 09:27:19 +03:00

49 lines
1.8 KiB
PHP

<?php
/**
* Widget view: list OnlyOffice templates for the record's module and actions (Download / Save to Documents) with format (PDF/DOCX).
*/
class OnlyOfficeTemplates_GetTemplateActions_View extends Vtiger_BasicAjax_View
{
public function checkPermission(Vtiger_Request $request)
{
}
public function process(Vtiger_Request $request)
{
$module = false;
if ($request->has('source_module') && !$request->isEmpty('source_module')) {
$source_module = $request->get('source_module');
} elseif ($request->has('record') && !$request->isEmpty('record')) {
$source_module = $module = getSalesEntityType($request->get('record'));
}
$sourceModuleModel = Vtiger_Module_Model::getInstance($source_module);
if (!$sourceModuleModel || !$sourceModuleModel->isEntityModule()) {
return;
}
if (!$request->has('record') || $request->isEmpty('record')) {
return;
}
$record = $request->get('record');
if (!$module) {
$module = getSalesEntityType($record);
}
if ($module !== $source_module) {
return;
}
require_once dirname(__DIR__) . '/models/OnlyOfficeTemplates_Model.php';
$model = new OnlyOfficeTemplates_Model();
$templates = $model->getTemplatesByModule($module);
$viewer = $this->getViewer($request);
$viewer->assign('MODULE', $module);
$viewer->assign('ID', $record);
$viewer->assign('CRM_TEMPLATES', $templates);
$viewer->assign('CRM_TEMPLATES_EXIST', empty($templates) ? 1 : 0);
$viewer->assign('OOT_MOD', return_module_language(Vtiger_Language_Handler::getLanguage(), 'OnlyOfficeTemplates'));
$viewer->view('GetTemplateActions.tpl', 'OnlyOfficeTemplates');
}
}