示例#1
0
 $availableTemplates = $documents->getTemplates();
 $templatePath = $documents::TEMPLATES_PATH;
 $documentsSavePath = $documents::DOCUMENTS_PATH;
 $templateFile = $availableTemplates[$docId]['path'];
 $templateName = $availableTemplates[$docId]['name'];
 $fullPath = $templatePath . $templateFile;
 $saveFileName = $documents->getLogin() . '_' . $docId . '_' . zb_rand_string(8) . '.docx';
 $saveFullPath = $documentsSavePath . $saveFileName;
 $documents->loadAllUserData();
 $templateData = $documents->getUserData();
 $userAgentData = $documents->getUserAgentData();
 $templateData = array_merge($templateData, $userAgentData);
 if (wf_checkget(array('custom'))) {
     show_window(__('Custom template fields'), $documents->customDocumentFieldsForm());
     if (wf_CheckPost(array('customfields'))) {
         $documents->setCustomFields();
         $templateData = array_merge($templateData, $documents->getCustomFields());
         //parse document template
         $docx = new DOCXTemplate($fullPath);
         $docx->set($templateData);
         $docx->saveAs($saveFullPath);
         //registering generated custom fields document
         $documents->registerDocument($documents->getLogin(), $docId, $saveFileName);
         //output
         zb_DownloadFile($saveFullPath, 'docx');
     }
 } else {
     //parse document template
     $docx = new DOCXTemplate($fullPath);
     $docx->set($templateData);
     $docx->saveAs($saveFullPath);