ea13a30a41973a9711d6ce8c25cb711853288a70
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php     1) <?php
modules/handles/include/handles.php     2) /*
modules/handles/include/handles.php     3) This file belongs to the Webinterface of schokokeks.org Hosting
modules/handles/include/handles.php     4) 
Bernd Wurst Copyright year update

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php     5) Written 2008-2018 by schokokeks.org Hosting, namely
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php     6)   Bernd Wurst <bernd@schokokeks.org>
modules/handles/include/handles.php     7)   Hanno Böck <hanno@schokokeks.org>
modules/handles/include/handles.php     8) 
modules/handles/include/handles.php     9) To the extent possible under law, the author(s) have dedicated all copyright and related and neighboring rights to this software to the public domain worldwide. This software is distributed without any warranty.
modules/handles/include/handles.php    10) 
modules/handles/include/handles.php    11) You should have received a copy of the CC0 Public Domain Dedication along with this software. If not, see 
modules/handles/include/handles.php    12) http://creativecommons.org/publicdomain/zero/1.0/
modules/handles/include/handles.php    13) 
modules/handles/include/handles.php    14) Nevertheless, in case you use a significant part of this code, we ask (but not require, see the license) that you keep the authors' names in place and return your changes to the public. We would be especially happy if you tell us what you're going to do with this code.
modules/handles/include/handles.php    15) */
modules/handles/include/handles.php    16) 
modules/handles/include/handles.php    17) require_once('inc/debug.php');
modules/handles/include/handles.php    18) require_role(array(ROLE_CUSTOMER));
modules/handles/include/handles.php    19) 
Bernd Wurst $usage ist ein array

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    20) /*
Bernd Wurst Kontakt kopieren

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  21) Todo:
modules/contacts/include/contacts.php  22)     - Wenn ein Domain-Handle aktualisiert wird, das beim Provider ändern
modules/contacts/include/contacts.php  23)     - "separate Rechnungsadresse einrichten" / "Zusätzliche Adresse für den Notfall"
modules/contacts/include/contacts.php  24)     - Domaininhaber festlegen    
Bernd Wurst $usage ist ein array

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    25) */
modules/handles/include/handles.php    26) 
modules/handles/include/handles.php    27) 
Bernd Wurst Vorbereitung für edit/new

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  28) function new_contact() {
modules/contacts/include/contacts.php  29)     return array("id" => NULL,
modules/contacts/include/contacts.php  30)         "state" => NULL,
modules/contacts/include/contacts.php  31)         "lastchange" => time(),
modules/contacts/include/contacts.php  32)         "nic_handle" => NULL,
modules/contacts/include/contacts.php  33)         "nic_id" => NULL,
modules/contacts/include/contacts.php  34)         "company" => NULL,
modules/contacts/include/contacts.php  35)         "name" => NULL,
modules/contacts/include/contacts.php  36)         "address" => NULL,
modules/contacts/include/contacts.php  37)         "zip" => NULL,
modules/contacts/include/contacts.php  38)         "city" => NULL,
modules/contacts/include/contacts.php  39)         "country" => "DE",
modules/contacts/include/contacts.php  40)         "phone" => NULL,
modules/contacts/include/contacts.php  41)         "mobile" => NULL,
modules/contacts/include/contacts.php  42)         "fax" => NULL,
modules/contacts/include/contacts.php  43)         "email" => NULL,
modules/contacts/include/contacts.php  44)         "pgp_id" => NULL,
modules/contacts/include/contacts.php  45)         "pgp_key" => NULL,
modules/contacts/include/contacts.php  46)         "customer" => $_SESSION['customerinfo']['customerno']);
modules/contacts/include/contacts.php  47) }
modules/contacts/include/contacts.php  48) 
modules/contacts/include/contacts.php  49) 
modules/contacts/include/contacts.php  50) function get_contact($id)
modules/contacts/include/contacts.php  51) {
modules/contacts/include/contacts.php  52)     $args = array(
modules/contacts/include/contacts.php  53)         "cid" => (int) $_SESSION['customerinfo']['customerno'],
modules/contacts/include/contacts.php  54)         "id" => (int) $id);
modules/contacts/include/contacts.php  55)     $result = db_query("SELECT id, state, lastchange, nic_id, nic_handle, company, name, address, zip, city, country, phone, mobile, fax, email, pgp_id, pgp_key FROM kundendaten.contacts WHERE id=:id AND customer=:cid", $args);
modules/contacts/include/contacts.php  56)     if ($result->rowCount() == 0) {
modules/contacts/include/contacts.php  57)         system_failure("Kontakt nicht gefunden oder gehört nicht diesem Kunden");
modules/contacts/include/contacts.php  58)     }
Bernd Wurst Zeige bestehende Daten in d...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  59)     $contact = $result->fetch();
Bernd Wurst Vorbereitung für edit/new

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  60)     return $contact;
modules/contacts/include/contacts.php  61) }
modules/contacts/include/contacts.php  62) 
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  63) function get_contacts() {
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    64)     $cid = (int) $_SESSION['customerinfo']['customerno'];
Bernd Wurst Vorbereitung für edit/new

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  65)     $result = db_query("SELECT id, state, lastchange, nic_id, nic_handle, company, name, address, zip, city, country, phone, mobile, fax, email, pgp_id, pgp_key FROM kundendaten.contacts WHERE customer=? ORDER BY id", array($cid));
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    66)     $ret = array();
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  67)     while ($contact = $result->fetch()) {
modules/contacts/include/contacts.php  68)         $ret[$contact['id']] = $contact;
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    69)     }
modules/handles/include/handles.php    70)     DEBUG($ret);
modules/handles/include/handles.php    71)     return $ret;
modules/handles/include/handles.php    72) }
modules/handles/include/handles.php    73) 
Bernd Wurst Speichern der Änderungen mö...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  74) function have_mailaddress($email) 
modules/contacts/include/contacts.php  75) {
modules/contacts/include/contacts.php  76)     $cid = (int) $_SESSION['customerinfo']['customerno'];
modules/contacts/include/contacts.php  77)     $result = db_query("SELECT id FROM kundendaten.contacts WHERE customer=? AND email=?", array($cid, $email));
modules/contacts/include/contacts.php  78)     if ($result->rowCount() > 0) {
modules/contacts/include/contacts.php  79)         return true;
modules/contacts/include/contacts.php  80)     }
modules/contacts/include/contacts.php  81)     return false;
modules/contacts/include/contacts.php  82) }
modules/contacts/include/contacts.php  83) 
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    84) 
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  85) function get_kundenkontakte() {
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    86)     $cid = (int) $_SESSION['customerinfo']['customerno'];
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  87)     $result = db_query("SELECT contact_kunde, contact_extern, contact_rechnung FROM kundendaten.kunden WHERE id=?", array($cid));
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    88)     $res = $result->fetch();
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  89)     $ret = array("kunde" => $res['contact_kunde'],
modules/contacts/include/contacts.php  90)                  "extern" => $res['contact_extern'],
modules/contacts/include/contacts.php  91)                  "rechnung" => $res['contact_rechnung']);
Bernd Wurst In neues Modul ausgelagert

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php    92)     return $ret;
modules/handles/include/handles.php    93) }
modules/handles/include/handles.php    94) 
Bernd Wurst Speichern der Änderungen mö...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  95) function save_emailaddress($id, $email) 
modules/contacts/include/contacts.php  96) {
Bernd Wurst Speichere E-Mail-Adresse oh...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php  97)     // Speichert eine E-Mail-Adresse direkt, z.B. wenn diese schonmal geprüt wurde
modules/contacts/include/contacts.php  98)     $args = array("cid" => (int) $_SESSION['customerinfo']['customerno'],
modules/contacts/include/contacts.php  99)         "id" => (int) $id,
modules/contacts/include/contacts.php 100)         "email" => $email);
modules/contacts/include/contacts.php 101)     db_query("UPDATE kundendaten.contacts SET email=:email WHERE id=:id AND customer=:cid", $args);    
Bernd Wurst Speichern der Änderungen mö...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php 102) }
modules/contacts/include/contacts.php 103) 
modules/contacts/include/contacts.php 104) function save_contact($c)
modules/contacts/include/contacts.php 105) {
modules/contacts/include/contacts.php 106)     for ($i=0;array_key_exists($i, $c);$i++) {
modules/contacts/include/contacts.php 107)         unset($c[$i]);
modules/contacts/include/contacts.php 108)     }
modules/contacts/include/contacts.php 109)     unset($c['state']);
modules/contacts/include/contacts.php 110)     unset($c['lastchange']);
modules/contacts/include/contacts.php 111)     unset($c['nic_id']);
modules/contacts/include/contacts.php 112)     unset($c['nic_handle']);
modules/contacts/include/contacts.php 113)     unset($c['email']);
modules/contacts/include/contacts.php 114)     $c['customer'] = (int) $_SESSION['customerinfo']['customerno'];
modules/contacts/include/contacts.php 115)     if ($c['id']) {
modules/contacts/include/contacts.php 116)         // Kontakt bestaht schon, Update
modules/contacts/include/contacts.php 117)         db_query("UPDATE kundendaten.contacts SET company=:company, name=:name, address=:address, zip=:zip, city=:city, country=:country, phone=:phone, mobile=:mobile, fax=:fax, pgp_id=:pgp_id, pgp_key=:pgp_key WHERE id=:id AND customer=:customer", $c);
modules/contacts/include/contacts.php 118)     } else {
modules/contacts/include/contacts.php 119)         unset($c['id']);
modules/contacts/include/contacts.php 120)         // Neu anlegen
modules/contacts/include/contacts.php 121)         db_query("INSERT INTO kundendaten.contacts (customer, company, name, address, zip, city, country, phone, mobile, fax, pgp_id, pgp_key) VALUES (:customer, :company, :name, :address, :zip, :city, :country, :phone, :mobile, :fax, :pgp_id, :pgp_key)", $c);
modules/contacts/include/contacts.php 122)         $c['id'] = db_insert_id();
modules/contacts/include/contacts.php 123)     }
modules/contacts/include/contacts.php 124)     return $c['id'];
modules/contacts/include/contacts.php 125) }
modules/contacts/include/contacts.php 126) 
modules/contacts/include/contacts.php 127) 
modules/contacts/include/contacts.php 128) function send_emailchange_token($id, $email)
modules/contacts/include/contacts.php 129) {
modules/contacts/include/contacts.php 130)     if (! check_emailaddr($email)) {
modules/contacts/include/contacts.php 131)         system_falure("Die E-Mail-Adresse scheint nicht gültig zu sein.");
modules/contacts/include/contacts.php 132)     }
modules/contacts/include/contacts.php 133)     $args = array("id" => (int) $id,
modules/contacts/include/contacts.php 134)         "email" => $email,
modules/contacts/include/contacts.php 135)         "token" => random_string(20));
modules/contacts/include/contacts.php 136) 
modules/contacts/include/contacts.php 137)     db_query("INSERT INTO kundendaten.mailaddress_token (token, expire, contact, email) VALUES (:token, NOW() + INTERVAL 1 DAY, :id, :email)" , $args);
modules/contacts/include/contacts.php 138)     DEBUG('Token erzeugt: '.print_r($args, true));
modules/contacts/include/contacts.php 139)     $message = 'Diese E-Mail-Adresse wurde angegeben als möglicher Domaininhaber oder Kundenkontakt bei schokokeks.org Hosting.
modules/contacts/include/contacts.php 140) 
modules/contacts/include/contacts.php 141) Bitte bestätigen Sie mit einem Klick auf den nachfolgenden Link, dass diese E-Mail-Adresse funktioniert und verwendet werden soll:
modules/contacts/include/contacts.php 142) 
modules/contacts/include/contacts.php 143)     '.config('webinterface_url').'/verify'.$args['token'].'
modules/contacts/include/contacts.php 144) 
modules/contacts/include/contacts.php 145) Wenn Sie diesen Link nicht innerhalb von 24 Stunden abrufen, wird Ihre Adresse gelöscht und nicht verwendet.
modules/contacts/include/contacts.php 146) Sollten Sie mit der Verwendung Ihrer E-Mail-Adresse nicht einverstanden sein, so ignorieren Sie daher bitte diese Nachricht oder teilen Sie uns dies mit.
modules/contacts/include/contacts.php 147) 
modules/contacts/include/contacts.php 148) -- 
modules/contacts/include/contacts.php 149) schokokeks.org GbR, Bernd Wurst, Johannes Böck
modules/contacts/include/contacts.php 150) Köchersberg 32, 71540 Murrhardt
modules/contacts/include/contacts.php 151) 
modules/contacts/include/contacts.php 152) https://schokokeks.org
modules/contacts/include/contacts.php 153) ';
modules/contacts/include/contacts.php 154)     # send welcome message
modules/contacts/include/contacts.php 155)     mail($email, '=?UTF-8?Q?Best=C3=A4tigung_Ihrer_E-Mail-Adresse?=', $message, "X-schokokeks-org-message: verify\nFrom: ".config('company_name').' <'.config('adminmail').">\nMIME-Version: 1.0\nContent-Type: text/plain; charset=UTF-8\n");
modules/contacts/include/contacts.php 156)  
modules/contacts/include/contacts.php 157) }
Bernd Wurst E-Mail-Adresse verifizieren...

Bernd Wurst authored 6 years ago

modules/handles/include/handles.php   158) 
Bernd Wurst Umbenennung Datenbank handl...

Bernd Wurst authored 6 years ago

modules/contacts/include/contacts.php 159) function update_pending($contactid) {
modules/contacts/include/contacts.php 160)     $contactid = (int) $contactid;
modules/contacts/include/contacts.php 161)     $result = db_query("SELECT email FROM kundendaten.mailaddress_token WHERE contact=?", array($contactid));