updateQuery("UPDATE `mailboxes` SET `server`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'port': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `port`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'protocol': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `protocol`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'use-ssl': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `use_ssl`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'no-valid-cert': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `valid_ssl`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'username': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `username`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'password': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailboxes` SET `password`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; default: header("Status: 400 Wrong Field"); echo 'error'; break; } break; case 'updateMailfolder': switch($_POST['name']) { case 'mailaccount': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailbox-folders` SET `mailbox_id`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; case 'mailfolder': header("Status: 200 OK"); $db->updateQuery("UPDATE `mailbox-folders` SET `folder_name`='" . $_POST['value'] . "' WHERE id=" . $_POST['pk'] . ";"); break; default: header("Status: 400 Wrong Field"); echo 'error'; break; } break; case 'addDefaultMailaccount': header("Status: 200 OK"); $db->insertQuery("INSERT INTO `mailboxes` (`user_id`) VALUES (" . $_POST['user-id'] . ");"); break; case 'addDefaultMailfolder': header("Status: 200 OK"); $db->insertQuery("INSERT INTO `mailbox-folders` (`label_id`) VALUES (" . $_POST['label-id'] . ");"); break; case 'removeMailaccount': header("Status: 200 OK"); $db->removeQuery("DELETE FROM `mailboxes` WHERE `id` = " . $_POST['id'] . ";"); break; case 'removeMailboxFolder': header("Status: 200 OK"); $db->removeQuery("DELETE FROM `mailbox-folders` WHERE `id` = " . $_POST['id'] . ";"); break; case 'manageMailboxFolder': header("Status: 200 OK"); $editBox = array( "options" => array( array( "type" => "select", "name" => "account", "value" => Mailbox::getMailboxNameFromMailaccountId($_GET['mbId']) ), array( "type" => "text", "name" => "folder", "value" => MailboxFolder::getMailboxFolderNameFromId($_GET['mfId']) ) ), "title" => "Mailkonto bearbeiten" ); echo json_encode($editBox); break; case 'getMailAccountsByUid': header("Status: 200 OK"); $mailboxes = Mailbox::getMailboxesByUserId($_REQUEST['uId']); $mbArray = array(); foreach($mailboxes as $mailbox) { $mbArray[$mailbox->getId()] = $mailbox->getUsername(); } echo json_encode($mbArray); break; case 'getNewDocumentBox': header("Status: 200 OK"); // TODO: add reload on draft change // TODO: add draft-fields as options, depends on ^ $editBox = array( "options" => array( array( "type" => "select", "name" => "vorlage", "value" => Document::getDefaultDraft()->filename, "values" => Document::getAllDrafts() ), array( "type" => "text", "name" => "filename", "value" => str_replace(".docx", "", Document::getDefaultDraft()->filename) . "_" . date("d_m_Y") . ".docx" // TODO: get value based on draft ) ), "title" => "Neues Dokument" ); echo json_encode($editBox); break; case 'getDraftVars': header("Status: 200 OK"); // TODO: handle no draft given $documentHandle = new \PhpOffice\PhpWord\TemplateProcessor('drafts/' . $_REQUEST['draft']); $templateVars = $documentHandle->getVariables(); echo json_encode(array_values($templateVars)); break; case 'getMailboxStatus': $mailbox = Mailbox::getMailboxById($_REQUEST['mailboxId'], true); $mailboxStatus = array( "connected" => $mailbox->getConnected() ); echo json_encode($mailboxStatus); break; case 'saveNewDocument': header("Status: 200 OK"); $newDocument = new DocumentHandler(Label::getLabelById($_REQUEST['labelId'])->getPath() . '/' . $_REQUEST['filename'], $_REQUEST['draft']); foreach($_REQUEST['draftVars'] as $key => $draftVar) { $newDocument->setVal($key, htmlspecialchars($draftVar)); } $newDocument->saveFile(); echo json_encode($_REQUEST); //pa($_REQUEST); break; case 'debugTest': // for testing single methods etc. pa(Document::getDefaultDraft()); break; default: header("Status: 400 No Action Defined"); echo 'error'; break; } //pa($_POST); // Debug ?>