Fix redirect and check user in database

This commit is contained in:
Ibnu Maksum 2023-06-15 17:06:22 +07:00
parent a9d10d330f
commit 12e06a51e4
No known key found for this signature in database
GPG Key ID: 7FC82848810579E5
4 changed files with 78 additions and 76 deletions

View File

@ -10,6 +10,10 @@ class User
{
$id = $_SESSION['uid'];
$d = ORM::for_table('tbl_customers')->find_one($id);
if(empty($d['username'])){
r2(U . 'logout', 'd', '');
}
return $d;
}

View File

@ -1,7 +1,8 @@
<?php
/**
* PHP Mikrotik Billing (https://github.com/hotspotbilling/phpnuxbill/)
**/
* PHP Mikrotik Billing (https://github.com/hotspotbilling/phpnuxbill/)
**/
_auth();
$ui->assign('_title', $_L['My_Account']);
$ui->assign('_system_menu', 'accounts');
@ -11,6 +12,7 @@ $user = User::_info();
$ui->assign('_user', $user);
use PEAR2\Net\RouterOS;
require_once 'system/autoload/PEAR2/Autoload.php';
switch ($action) {
@ -23,83 +25,79 @@ switch ($action) {
case 'change-password-post':
$password = _post('password');
run_hook('customer_change_password'); #HOOK
if($password != ''){
$d = ORM::for_table('tbl_customers')->where('username',$user['username'])->find_one();
if($d){
if ($password != '') {
$d = ORM::for_table('tbl_customers')->where('username', $user['username'])->find_one();
if ($d) {
$d_pass = $d['password'];
$npass = _post('npass');
$npass = _post('npass');
$cnpass = _post('cnpass');
if(Password::_uverify($password,$d_pass) == true){
if(!Validator::Length($npass,15,2)){
r2(U.'accounts/change-password','e','New Password must be 3 to 14 character');
if (Password::_uverify($password, $d_pass) == true) {
if (!Validator::Length($npass, 15, 2)) {
r2(U . 'accounts/change-password', 'e', 'New Password must be 3 to 14 character');
}
if($npass != $cnpass){
r2(U.'accounts/change-password','e','Both Password should be same');
if ($npass != $cnpass) {
r2(U . 'accounts/change-password', 'e', 'Both Password should be same');
}
$c = ORM::for_table('tbl_user_recharges')->where('username',$user['username'])->find_one();
if ($c){
$mikrotik = Mikrotik::info($c['routers']);
if($c['type'] == 'Hotspot'){
if(!$config['radius_mode']){
$c = ORM::for_table('tbl_user_recharges')->where('username', $user['username'])->find_one();
if ($c) {
$mikrotik = Mikrotik::info($c['routers']);
if ($c['type'] == 'Hotspot') {
if (!$config['radius_mode']) {
$client = Mikrotik::getClient($mikrotik['ip_address'], $mikrotik['username'], $mikrotik['password']);
Mikrotik::setHotspotUser($client,$c['username'],$npass);
Mikrotik::removeHotspotActiveUser($client,$user['username']);
Mikrotik::setHotspotUser($client, $c['username'], $npass);
Mikrotik::removeHotspotActiveUser($client, $user['username']);
}
$d->password = $npass;
$d->save();
$d->password = $npass;
$d->save();
_msglog('s',$_L['Password_Changed_Successfully']);
_log('['.$user['username'].']: Password changed successfully','User',$user['id']);
_msglog('s', $_L['Password_Changed_Successfully']);
_log('[' . $user['username'] . ']: Password changed successfully', 'User', $user['id']);
r2(U.'login');
}else{
if(!$config['radius_mode']){
r2(U . 'login');
} else {
if (!$config['radius_mode']) {
$client = Mikrotik::getClient($mikrotik['ip_address'], $mikrotik['username'], $mikrotik['password']);
Mikrotik::setPpoeUser($client,$c['username'],$npass);
Mikrotik::removePpoeActive($client,$user['username']);
Mikrotik::setPpoeUser($client, $c['username'], $npass);
Mikrotik::removePpoeActive($client, $user['username']);
}
$d->password = $npass;
$d->save();
$d->password = $npass;
$d->save();
_msglog('s',$_L['Password_Changed_Successfully']);
_log('['.$user['username'].']: Password changed successfully','User',$user['id']);
_msglog('s', $_L['Password_Changed_Successfully']);
_log('[' . $user['username'] . ']: Password changed successfully', 'User', $user['id']);
r2(U.'login');
}
}else{
$d->password = $npass;
$d->save();
r2(U . 'login');
}
} else {
$d->password = $npass;
$d->save();
_msglog('s',$_L['Password_Changed_Successfully']);
_log('['.$user['username'].']: Password changed successfully','User',$user['id']);
_msglog('s', $_L['Password_Changed_Successfully']);
_log('[' . $user['username'] . ']: Password changed successfully', 'User', $user['id']);
r2(U.'login');
}
}else{
r2(U.'accounts/change-password','e',$_L['Incorrect_Current_Password']);
r2(U . 'login');
}
} else {
r2(U . 'accounts/change-password', 'e', $_L['Incorrect_Current_Password']);
}
}else{
r2(U.'accounts/change-password','e',$_L['Incorrect_Current_Password']);
} else {
r2(U . 'accounts/change-password', 'e', $_L['Incorrect_Current_Password']);
}
}else{
r2(U.'accounts/change-password','e',$_L['Incorrect_Current_Password']);
} else {
r2(U . 'accounts/change-password', 'e', $_L['Incorrect_Current_Password']);
}
break;
case 'profile':
$id = $_SESSION['uid'];
$d = ORM::for_table('tbl_customers')->find_one($id);
if($d){
$d = ORM::for_table('tbl_customers')->find_one($user['id']);
if ($d) {
run_hook('customer_view_edit_profile'); #HOOK
$ui->assign('d',$d);
$ui->assign('d', $d);
$ui->display('user-profile.tpl');
}else{
r2(U . 'accounts/users', 'e', $_L['Account_Not_Found']);
} else {
r2(U . 'home', 'e', $_L['Account_Not_Found']);
}
break;
@ -110,34 +108,33 @@ switch ($action) {
$phonenumber = _post('phonenumber');
run_hook('customer_edit_profile'); #HOOK
$msg = '';
if(Validator::Length($fullname,31,2) == false){
$msg .= 'Full Name should be between 3 to 30 characters'. '<br>';
if (Validator::Length($fullname, 31, 2) == false) {
$msg .= 'Full Name should be between 3 to 30 characters' . '<br>';
}
if(Validator::UnsignedNumber($phonenumber) == false){
$msg .= 'Phone Number must be a number'. '<br>';
}
$id = _post('id');
$d = ORM::for_table('tbl_customers')->find_one($id);
if($d){
}else{
$msg .= $_L['Data_Not_Found']. '<br>';
if (Validator::UnsignedNumber($phonenumber) == false) {
$msg .= 'Phone Number must be a number' . '<br>';
}
if($msg == ''){
$d = ORM::for_table('tbl_customers')->find_one($user['id']);
if ($d) {
} else {
$msg .= $_L['Data_Not_Found'] . '<br>';
}
if ($msg == '') {
$d->fullname = $fullname;
$d->address = $address;
$d->email = $email;
$d->phonenumber = $phonenumber;
$d->address = $address;
$d->email = $email;
$d->phonenumber = $phonenumber;
$d->save();
_log('['.$user['username'].']: '.$_L['User_Updated_Successfully'],'User',$user['id']);
_log('[' . $user['username'] . ']: ' . $_L['User_Updated_Successfully'], 'User', $user['id']);
r2(U . 'accounts/profile', 's', $_L['User_Updated_Successfully']);
}else{
} else {
r2(U . 'accounts/profile', 'e', $msg);
}
break;
default:
echo 'action not defined';
}
}

View File

@ -9,6 +9,7 @@ $ui->assign('_title', $_L['Dashboard']);
$user = User::_info();
$ui->assign('_user', $user);
//Client Page
$bill = User::_billing();
$ui->assign('_bill', $bill);

View File

@ -22,13 +22,13 @@
</div>
{if isset($notify)}
<div class="row">
<div class="col-md-6 col-md-offset-3">
<div class="col-sm-6 col-sm-offset-3">
{$notify}
</div>
</div>
{/if}
<div class="row">
<div class="col-md-4 col-md-offset-2">
<div class="col-sm-6 col-sm-offset-1">
<div class="panel panel-info">
<div class="panel-heading">{$_L['Announcement']}</div>
<div class="panel-body">
@ -36,7 +36,7 @@
</div>
</div>
</div>
<div class="col-md-4">
<div class="col-sm-4">
<div class="panel panel-primary">
<div class="panel-heading">{$_L['Sign_In_Member']}</div>
<div class="panel-body">