MailtemplateDispatch Index and Form done

This commit is contained in:
Frank Schubert
2025-01-14 20:03:19 +01:00
parent ae7d565398
commit 255091212d
8 changed files with 964 additions and 1 deletions
@@ -284,4 +284,69 @@ class MailtemplateController extends mfBaseController {
}
protected function apiAction() {
if(!$this->me->is(["Admin"])) {
$this->redirect("Dashboard");
}
$do = $this->request->do;
$data = [];
switch($do) {
case "getMailtemplate":
$return = $this->getMailtemplateApi();
break;
default:
$return = false;
}
if(!is_array($return) || !count($return)) {
$data = ["status" => "error"];
$this->returnJson($data);
}
$data['status'] = "OK";
$data['result'] = $return;
$this->returnJson($data);
}
private function getMailtemplateApi() {
$mt_id = $this->request->id;
if(!$mt_id) {
$this->log->debug(__METHOD__.": mt_id invalid");
return false;
}
$template = new Mailtemplate($mt_id);
if(!$template->id) {
$this->log->debug(__METHOD__.": Mailtemplate not found");
return false;
}
$data = $template->data;
$data->is_include = boolval($data->is_include);
if($data->body_text) {
$data->body_text = $template->renderBody();
}
if($data->body_html) {
$data->body_html = $template->renderBody();
}
unset($data->create_by, $data->edit_by, $data->note);
$template_files = [];
if(is_array($template->files) && count($template->files)) {
foreach($template->files as $file) {
$template_files[] = [
"file_id" => $file->file_id,
"filename" => $file->filename
];
}
}
$data->files = $template_files;
return (array)$data;
}
}