$version); $loginoremail = ""; if (isset($_POST['loginoremail'])) { $loginoremail = getparam("loginoremail"); $torestore = is_valid_email($loginoremail) ? operator_by_email($loginoremail) : operator_by_login($loginoremail); if (!$torestore) { $errors[] = getlocal("no_such_operator"); } $email = $torestore['vcemail']; if (count($errors) == 0 && !is_valid_email($email)) { $errors[] = "Operator hasn't set his e-mail"; } if (count($errors) == 0) { $token = md5((time() + microtime()) . rand(0, 99999999)); $db = Database::getInstance(); $db->query( "update {chatoperator} set dtmrestore = :now, " . "vcrestoretoken = :token where operatorid = :operatorid", array( ':now' => time(), ':token' => $token, ':operatorid' => $torestore['operatorid'] ) ); $href = get_app_location(true, false) . "/operator/resetpwd.php?id=" . $torestore['operatorid'] . "&token=$token"; webim_mail($email, $email, getstring("restore.mailsubj"), getstring2("restore.mailtext", array(get_operator_name($torestore), $href))); $page['isdone'] = true; require('../view/restore.php'); exit; } } $page['formloginoremail'] = topage($loginoremail); $page['localeLinks'] = get_locale_links("$webimroot/operator/restore.php"); $page['isdone'] = false; start_html_output(); require('../view/restore.php'); ?>