| Server IP : 14.225.204.176 / Your IP : 216.73.216.252 Web Server : nginx/1.24.0 System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64 User : root ( 0) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/php/wit-crm/application/controllers/ |
Upload File : |
<?php
defined('BASEPATH') or exit('No direct script access allowed');
class Verification extends ClientsController
{
public function index()
{
if (is_contact_email_verified()) {
redirect(site_url('clients'));
}
$data['title'] = _l('email_verification_required');
$this->view('verification_required');
$this->data($data);
$this->layout();
}
public function verify($id, $key)
{
$contact = $this->clients_model->get_contact($id);
if (!$contact) {
show_404();
}
if (!is_null($contact->email_verified_at)) {
set_alert('info', _l('email_already_verified'));
redirect(site_url('clients'));
}
if ($contact->email_verification_key !== $key) {
show_error(_l('invalid_verification_key'));
}
$timestamp_now_minus_2_days = time() - (2 * 86400);
$contact_registered = strtotime($contact->email_verification_sent_at);
if ($timestamp_now_minus_2_days > $contact_registered) {
show_error(_l('verification_key_expired'));
}
$this->clients_model->mark_email_as_verified($contact->id);
// User not yet confirmed
// from option customers_register_require_confirmation
if (total_rows(db_prefix() . 'clients', ['userid' => $contact->userid, 'registration_confirmed' => 0]) > 0) {
set_alert('info', _l('email_successfully_verified_but_required_admin_confirmation'));
hooks()->do_action('contact_email_verified_but_requires_admin_confirmation', $contact);
} else {
set_alert('success', _l('email_successfully_verified'));
hooks()->do_action('contact_email_verified', $contact);
}
$redUri = is_client_logged_in() ? 'clients' : 'authentication';
redirect(site_url($redUri));
}
public function resend()
{
if (is_contact_email_verified() || !is_client_logged_in()) {
redirect(site_url('clients'));
}
if ($this->clients_model->send_verification_email(get_contact_user_id())) {
set_alert('success', _l('email_verification_mail_sent_successully'));
} else {
set_alert('danger', 'Failed to sent email verification mail, contact webmaster for more information.');
}
redirect(site_url('verification'));
}
}