43 lines
1.4 KiB
TypeScript
43 lines
1.4 KiB
TypeScript
const view = require("../../html/sites/contactSite.html");
|
|
|
|
import {App} from "cordova-sites/dist/client/js/App";
|
|
import {Form} from "cordova-sites/dist/client/js/Form";
|
|
import {DataManager} from "cordova-sites/dist/client/js/DataManager";
|
|
import {Toast} from "cordova-sites/dist/client/js/Toast/Toast";
|
|
import {Translator} from "cordova-sites/dist/client/js/Translator";
|
|
import {MenuSite} from "cordova-sites/dist/client/js/Context/MenuSite";
|
|
|
|
export class ContactSite extends MenuSite {
|
|
constructor(siteManager) {
|
|
super(siteManager, view);
|
|
}
|
|
|
|
onViewLoaded() {
|
|
let res = super.onViewLoaded();
|
|
|
|
// @ts-ignore
|
|
this.findBy("#contactText").appendChild(Translator.makePersistentTranslation("contact text", [__CONTACT_EMAIL__]))
|
|
|
|
new Form(this.findBy("#contact-form"), async values => {
|
|
|
|
let result = await DataManager.send("contact", values);
|
|
if (result.success) {
|
|
new Toast("the message was sent").show();
|
|
this.finish();
|
|
} else {
|
|
if (result) {
|
|
new Toast(result.message).show();
|
|
} else {
|
|
new Toast("Es ist ein Fehler aufgetreten...").show();
|
|
}
|
|
}
|
|
});
|
|
|
|
return res;
|
|
}
|
|
}
|
|
|
|
App.addInitialization((app) => {
|
|
app.addDeepLink("contact", ContactSite);
|
|
});
|