exposeMethod('save'); $this->exposeMethod('delete'); } public function checkPermission(Vtiger_Request $request) { $currentUserModel = Users_Record_Model::getCurrentUserModel(); if (!$currentUserModel->isAdminUser()) { throw new AppException(vtranslate('LBL_PERMISSION_DENIED', 'Vtiger')); } } /** * @param Vtiger_Request $request */ public function process(Vtiger_Request $request) { $mode = $request->getMode(); if (!empty($mode) && $this->isMethodExposed($mode)) { $this->invokeExposedMethod($mode, $request); } if($request->isAjax()) { $response = new Vtiger_Response(); $response->setResult(['success' => true]); $response->emit(); } else { header('location:index.php?module=PDFMaker&view=Signatures'); } } public function delete(Vtiger_Request $request) { $record = (int)$request->get('record'); if($record) { $signature = PDFMaker_Signatures_Model::getInstanceById($record); $signature->delete(); } } public function save(Vtiger_Request $request) { $_FILES = Vtiger_Util_Helper::transformUploadedFiles($_FILES, true); $record = (int)$request->get('record'); if ($record) { $signature = PDFMaker_Signatures_Model::getInstanceById($record); } else { $signature = PDFMaker_Signatures_Model::getCleanInstance(); } $signature->set('type', $request->get('type')); $signature->set('width', $request->get('width')); $signature->set('height', $request->get('height')); $signature->set('name', $request->get('name')); $signature->saveFile($_FILES['image']); $signature->save(); } }