summaryrefslogtreecommitdiffstats
path: root/static/contact/submit/index.php
diff options
context:
space:
mode:
authorrsiddharth <s@ricketyspace.net>2019-05-23 19:01:40 -0400
committerrsiddharth <s@ricketyspace.net>2019-05-23 19:01:40 -0400
commit3d7d9755ffce8930ea81ab3ce9497090781296ec (patch)
treee1c3fa4fe02bb4c211e4942ac72acfaa9c72afea /static/contact/submit/index.php
parent10a599234f258d4be7dc9922623363d726443f29 (diff)
static: Add contact/submit
Diffstat (limited to 'static/contact/submit/index.php')
-rw-r--r--static/contact/submit/index.php62
1 files changed, 62 insertions, 0 deletions
diff --git a/static/contact/submit/index.php b/static/contact/submit/index.php
new file mode 100644
index 0000000..b88bdea
--- /dev/null
+++ b/static/contact/submit/index.php
@@ -0,0 +1,62 @@
+<?php
+
+/**
+ *
+ * SPDX-License-Identifier: ISC
+ *
+ * Copyright © 2019 Free Software Foundation of India.
+ *
+ */
+
+function to() {
+ return 's@cygnus.ricketyspace.net';
+}
+
+function email_valid($e) {
+ if (preg_match('/([\w.-]+)@([\w.-]+)/', $e)) {
+ return true;
+ }
+ return false;
+}
+
+function send($n, $e, $m) {
+ $p = $n . ' <' . $e . '>';
+ return mail(to(),
+ $p . ' sent a message to FSF India',
+ 'Per says:' . PHP_EOL . PHP_EOL . $m
+ );
+}
+
+function em_fw($t) {
+ return preg_replace('/^(\w+)( .+)/', '<strong>$1</strong>$2', $t);
+}
+
+function post() {
+ $n = $_POST['name'];
+ $e = $_POST['email'];
+ $m = $_POST['msg'];
+
+ $errors = [];
+ if (!email_valid($e)) {
+ $errors[] = em_fw('Email is invalid');
+ }
+ if (empty($m)) {
+ $errors[] = em_fw('Message is required');
+ }
+
+ $sok = true;
+ if (empty($errors)) {
+ $sok = send($n, $e, $m);
+ }
+ if (!$sok) {
+ $errors[] = 'Unable to process your submission.';
+ }
+
+ return [
+ 'ok' => empty($errors) && $sok,
+ 'errors' => $errors
+ ];
+}
+
+$result = post();
+include(__DIR__ . '/submit.html');