function register($email, $password, $passwordRe, $connection) { //test if user exists include_once 'functions.php'; $errors = check_validity($email, $password, $passwordRe, $connection); if (count($errors) > 0) { return $errors; } $k = 0; if ($stmt = mysqli_prepare($connection, "SELECT id FROM users WHERE email=?")) { $stmt->bind_param("s", $email); $stmt->execute(); $stmt->bind_result($col1); while ($stmt->fetch()) { $k++; } $stmt->close(); if ($k == 0) { include_once "functions.php"; $generatedToken = generate_token(); $sql = 'INSERT INTO users(email,password,date_registration,generated_token) VALUES(?,SHA(?),NOW(),?)'; $stmt = mysqli_prepare($connection, $sql); $stmt->bind_param("sss", $email, $password, $generatedToken); $stmt->execute(); if (mysqli_affected_rows($connection) == 0) { $errors[] = 'Unfortunately registration failed!'; return $errors; } $stmt->close(); } else { $errors[] = "E-mail already registered!"; return $errors; } } return $errors; }
function proc_attributes(&$a) { global $aaa_config; global $hotspot_user; global $hotspot_device; global $hotspot_code; $login_type = $a['Meta-Login']; $interval = $a['Meta-Interval']; $interval_value = $a['Meta-Interval-Value']; if ($interval_value == '') { $interval_value = 1; } $t = null; switch ($login_type) { case 'device': $obj = $hotspot_device; $t = db_table('devices'); if (!check_validity($t, $obj, $a)) { return false; } $sum = get_device_summary($obj); break; case 'user': $obj = $hotspot_user; $t = db_table('users'); if (!check_validity($t, $obj, $a)) { return false; } $sum = get_user_summary($obj); if ($obj['id'] != $hotspot_device['owner_id']) { $sql = 'UPDATE ' . db_table('devices') . ' SET owner_id = ' . $obj['id'] . ' WHERE id = ' . $hotspot_device['id']; db_query($sql, false); } break; case 'code': $t = db_table('codes'); $obj = $hotspot_code; if (!check_validity($t, $obj, $a)) { return false; } $sum = get_code_summary($obj); if ($obj['device_id'] != $hotspot_device['id']) { $sql = 'UPDATE ' . $t . ' SET device_id = ' . $hotspot_device['id'] . ' WHERE id = ' . $obj['id']; db_query($sql, false); } break; default: return false; } switch ($interval) { case 'minute': case 'hour': case 'day': case 'month': case 'year': if ($obj['valid_until'] == '') { db_query('UPDATE ' . $t . ' SET valid_until = DATE_ADD(valid_from, INTERVAL ' . $interval_value . ' ' . $interval . ')', false); } break; default: break; } $swap = $aaa_config['using_swapoctets']; # Down $n = 'CoovaChilli-Max-' . ($swap ? 'Out' : 'In') . 'put-Octets'; $v = $a[$n]; if (isset($v) && $v > 0 && $sum['bytes_down'] > 0) { $s = $v - $sum['bytes_down']; if ($s <= 0) { set_reply_message($a, 'Download data limit reached', false); return false; } $a[$n] = $s; } # Up $n = 'CoovaChilli-Max-' . ($swap ? 'In' : 'Out') . 'put-Octets'; $v = $a[$n]; if (isset($v) && $v > 0 && $sum['bytes_up'] > 0) { $s = $v - $sum['bytes_up']; if ($s <= 0) { set_reply_message($a, 'Upload data limit reached', false); return false; } $a[$n] = $s; } # Total $n = 'CoovaChilli-Max-Total-Octets'; $v = $a[$n]; if (isset($v) && $v > 0 && ($sum['bytes_up'] > 0 || $sum['bytes_down'] > 0)) { $s = $v; if ($sum['bytes_up'] > 0) { $s -= $sum['bytes_up']; } if ($sum['bytes_down'] > 0) { $s -= $sum['bytes_down']; } if ($s <= 0) { set_reply_message($a, 'Total data limit reached', false); return false; } $a[$n] = $s; } $ses_time = $a['Acct-Session-Time']; if (isset($ses_time) && $ses_time > 0) { $ses_time -= $sum['seconds']; if ($ses_time <= 0) { set_reply_message($a, 'Time expired', false); return false; } set_session_timeout($a, $ses_time, true); unset($a['Acct-Session-Time']); } return true; }