Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- class Core {
- private $db;
- public function __construct($db)
- {
- $this->db = $db;
- }
- /*
- This function checks if user is logged in
- */
- public function verifySession()
- {
- if(!isset($_SESSION['permitted'])) return false;
- if($_SESSION['permitted'] != true) return false;
- if((time() - $_SESSION['sess_time']) > 7200) return false;
- if($_SESSION['sess_ip'] != $_SERVER['REMOTE_ADDR']) return false;
- $_SESSION['sess_time'] = time();
- return true;
- }
- /*
- This function creates a session
- */
- public function createSession($mail)
- {
- global $db;
- $q = $db->q("SELECT * FROM users WHERE mail=?", array($mail));
- $data = $q->fetch();
- // Basic session details
- $_SESSION['permitted'] = true;
- $_SESSION['sess_time'] = time();
- $_SESSION['sess_ip'] = $_SERVER['REMOTE_ADDR'];
- $_SESSION['_token'] = sha1(base64_encode(openssl_random_pseudo_bytes(50) .md5(microtime()) .openssl_random_pseudo_bytes(5)));
- // Details
- $_SESSION['user'] = array();
- $_SESSION['user']['id'] = htmlspecialchars($data['id']);
- $_SESSION['user']['mail'] = htmlspecialchars($data['mail']);
- $_SESSION['user']['firstname'] = htmlspecialchars($data['firstname']);
- $_SESSION['user']['lastname'] = htmlspecialchars($data['lastname']);
- $_SESSION['user']['country'] = htmlspecialchars($data['country']);
- $_SESSION['user']['state'] = htmlspecialchars($data['state']);
- $_SESSION['user']['city'] = htmlspecialchars($data['city']);
- $_SESSION['user']['street'] = htmlspecialchars($data['street']);
- $_SESSION['user']['zip'] = htmlspecialchars($data['zip']);
- $_SESSION['user']['chamberofcommerce'] = htmlspecialchars($data['chamberofcommerce']);
- $_SESSION['user']['VATNum'] = htmlspecialchars($data['VATNum']);
- }
- /*
- This function checks if the user is logged in
- */
- public function requireLoggedinUser()
- {
- if(!$this->verifySession())
- {
- header("Location: ./login.php");
- exit;
- }
- }
- /*
- This function sends an e-mail
- */
- public function sendStyledMail($target, $subject, $message)
- {
- $mail = new PHPMailer();
- $mail->isSMTP();
- $mail->Host = 'smtp.sendgrid.net';
- $mail->SMTPAuth = true;
- $mail->Username = 'RienBijl';
- $mail->Password = 'RienBijl2001';
- $mail->Port = 25;
- $mail->AddAddress($target);
- $mail->Subject = $subject;
- $mail->setFrom('rbijl@enterpriseweb.nl', 'EnterpriseWEB');
- $mail->Body = "
- <!DOCTYPE html>
- <html>
- <div style='background-color: #F1F1F1; padding: 5em;'>
- <div style='background-color: white; border: 1px solid lightgrey; padding: 20px;'>
- <img src='http://enterpriseweb.nl/dist/logo-png.png' style='max-width: 25em;'>
- </div>
- <br><br>
- <div style='background-color: white; border: 1px solid lightgrey; padding: 20px;'>
- " .$message ."
- </div>
- <br><br>
- <div style='background-color: white; border: 1px solid lightgrey; padding: 20px;'>
- <small>
- De inhoud van dit bericht is alleen bestemd voor de geadresseerde en kan vertrouwelijke of persoonlijke informatie bevatten.
- Als u dit bericht onbedoeld heeft ontvangen verzoeken wij u het te vernietigen en de afzender te informeren.
- Het is niet toegestaan om een bericht dat niet voor u bestemd is te vermenigvuldigen dan wel te verspreiden.
- Aan dit bericht inclusief de bijlagen kunnen geen rechten ontleend worden, tenzij schriftelijk anders wordt overeengekomen.
- EnterpriseWEB aanvaardt geen enkele aansprakelijkheid voor schade en/of kosten die voortvloeien uit onvolledige en/of foutieve informatie in e-mailberichten.
- </small>
- </div>
- </div>
- </html>
- ";
- $mail->isHTML(true);
- if(!$mail->Send())
- {
- echo "Error sending: " . $mail->ErrorInfo;;
- }
- else
- {
- }
- }
- }
- ?>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement