From 44cd78785e5ee3a7e783e427a119545e4fa0de40 Mon Sep 17 00:00:00 2001 From: Daniel Weipert Date: Sun, 29 Oct 2023 13:25:50 +0100 Subject: initial commit --- cf7-to-webling.php | 67 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 cf7-to-webling.php (limited to 'cf7-to-webling.php') diff --git a/cf7-to-webling.php b/cf7-to-webling.php new file mode 100644 index 0000000..3b72467 --- /dev/null +++ b/cf7-to-webling.php @@ -0,0 +1,67 @@ +id() !== $formId) { + return; + } + + // @see https://stackoverflow.com/questions/42807833/how-to-capture-post-data-with-contact-form7/56655271#56655271 + $submission = WPCF7_Submission::get_instance(); + $data = $submission->get_posted_data(); + + #var_dump($data); + $memberData = [ + 'properties' => [ + 'Anrede' => $data['Anrede'][0] ?? '', + 'Geschlecht' => $data['Geschlecht'][0] ?? '', + 'Firma' => $data['Firma'], + 'Geburtsdatum' => $data['Geburtsdatum'], + #'Geburtsdatum' => date('Y-m-d', strtotime($data['Geburtsdatum'])), + 'Vorname' => $data['Vorname'], + 'Nachname' => $data['Nachname'], + 'Strasse / Hausnummer' => $data['Strasse'], + 'PLZ' => $data['PLZ'], + 'Ort' => $data['Ort'], + 'E-Mail' => $data['email'], + 'Telefon' => $data['Telefonnummer'], + 'Jahresbeitrag' => $data['Jahresbeitrag'], + 'Zahlungsart' => $data['Zahlungsart'][0] ?? '', + 'Abweichender Kontoinhaber' => empty($data['AbweichenderKontoinhaber'][0]) ? false : true, + 'Vorname Kontoinhaber' => $data['name-kontoinhaber'], + 'Nachname Kontoinhaber' => $data['nachname-kontoinhaber'], + 'Straße / Hausnummer Kontoinhaber' => $data['Strasse-kontoinhaber'], + 'PLZ/Ort Kontoinhaber' => $data['Ort-kontoinhaber'], + 'Kreditinstitut' => $data['Kreditinstitut'], + 'IBAN' => $data['IBAN'], + 'BIC' => $data['BIC'], + 'SEPA-Lastschriftmandat' => empty($data['ZustimmungSEPA'][0]) ? false : true, + 'Nachricht' => $data['Nachricht'], + 'Satzung Akzeptiert' => !! $data['Satzung'], + 'Datenschutz Akzeptiert' => !! $data['Datenschutz'], + 'Korrektheit Akzeptiert' => !! $data['Korrektheit'], + 'Kontaktaufnahme Akzeptiert' => !! $data['Kontakt'], + ], + + 'parents' => [$memberGroupId], + ]; + + // @see http://demo.webling.ch/api/1/#header-php + $response = wp_remote_post("$apiUrl/member", [ + 'headers' => [ + 'apikey' => $apiKey, + ], + 'body' => json_encode($memberData), + ]); + + #var_dump($response);exit; +}); -- cgit v1.2.3