UNPKG

flexbiz-server

Version:

Flexible Server

5 lines (4 loc) 1.36 kB
const model=global.getModel("email"),controller=require("../../controllers/controller"),emailService=require("../../libs/email"),htmlReport=require("../../libs/htmlReport"); module.exports=function($router$$){(new controller($router$$,model,"email",{sort:{date_created:-1},notNeedRight:!0,onFinding:function($user$$,$condition$$,$next$$){$next$$(null,$condition$$)},onView:function($user$$,$items$$,$next$$){$next$$(null,$items$$)},onCreating:async function($user$$,$item$$,$next$$){if(!$item$$.to||!$item$$.to.trim())return $next$$("Ch\u01b0a c\u00f3 ng\u01b0\u1eddi nh\u1eadn");const $to$$=$item$$.to.split(",").map($t$$=>({address:$t$$.trim()}));$item$$.attachments?.length|| ($item$$.attachments=$item$$.exfields?.__files__||[]);try{let $content$$=await htmlReport($item$$.content,{data:$item$$});emailService.sendHtml({to:$to$$,cc:$item$$.cc,bcc:$item$$.bcc,subject:$item$$.subject.replace(/<[^>]*>?/gm,""),html:$content$$,attachments:$item$$.attachments,app_info:$user$$.current_app_info},async $e$$=>{if($e$$)return $next$$($e$$.message||$e$$.error||$e$$);$item$$.sent=!0;$next$$(null,$item$$)})}catch($e$$){$next$$($e$$.message||$e$$.error||$e$$)}},onCreated:function($user$$, $item$$,$next$$){$next$$(null,$item$$)},onUpdating:function($user$$,$data$$,$item$$,$next$$){return $next$$("B\u1ea1n kh\u00f4ng th\u1ec3 c\u1eadp nh\u1eadt")}})).route()};