diff --git a/CHANGELOG.md b/CHANGELOG.md
index 586403e3..36258909 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,12 +2,20 @@
# CHANGELOG
-## 2023.9.15
+## 2023.9.21
+
+- Customer can extend Plan
+- Customer can Deactivate active plan
+- add variable nux-router to select only plan from that router
+- Show user expired until 30 items
+
+## 2023.9.20
- Fix Customer balance header
- Deactivate Customer active plan
- Sync Customer Plan to Mikrotik
- Recharge Customer from Customer Details
+- Add Privacy Policy and Terms and Conditions Pages
## 2023.9.13
diff --git a/index.php b/index.php
index d1eac444..cd76b6b8 100644
--- a/index.php
+++ b/index.php
@@ -11,6 +11,11 @@ if(isset($_GET['nux-mac']) && !empty($_GET['nux-mac'])){
if(isset($_GET['nux-ip']) && !empty($_GET['nux-ip'])){
$_SESSION['nux-ip'] = $_GET['nux-ip'];
}
+
+if(isset($_GET['nux-router']) && !empty($_GET['nux-router'])){
+ $_SESSION['nux-router'] = $_GET['nux-router'];
+}
+
require_once 'system/vendor/autoload.php';
require_once 'system/boot.php';
App::_run();
diff --git a/pages_template/Terms_of_Conditions.html b/pages_template/Terms_and_Conditions.html
similarity index 100%
rename from pages_template/Terms_of_Conditions.html
rename to pages_template/Terms_and_Conditions.html
diff --git a/qrcode/qrconfig.php b/qrcode/qrconfig.php
index 62e7f974..31469d09 100644
--- a/qrcode/qrconfig.php
+++ b/qrcode/qrconfig.php
@@ -4,14 +4,13 @@
*
* Config file, feel free to modify
*/
-
+
define('QR_CACHEABLE', true); // use cache - more disk reads but less CPU power, masks and format templates are stored there
define('QR_CACHE_DIR', dirname(__FILE__).DIRECTORY_SEPARATOR.'cache'.DIRECTORY_SEPARATOR); // used when QR_CACHEABLE === true
- define('QR_LOG_DIR', dirname(__FILE__).DIRECTORY_SEPARATOR); // default error logs dir
-
+ //define('QR_LOG_DIR', dirname(__FILE__).DIRECTORY_SEPARATOR); // default error logs dir
+
define('QR_FIND_BEST_MASK', true); // if true, estimates best mask (spec. default, but extremally slow; set to false to significant performance boost but (propably) worst quality code
define('QR_FIND_FROM_RANDOM', false); // if false, checks all masks available, otherwise value tells count of masks need to be checked, mask id are got randomly
define('QR_DEFAULT_MASK', 2); // when QR_FIND_BEST_MASK === false
-
+
define('QR_PNG_MAXIMUM_SIZE', 1024); // maximum allowed png image width (in pixels), tune to make sure GD and PHP can handle such big images
-
\ No newline at end of file
diff --git a/system/autoload/Lang.php b/system/autoload/Lang.php
index de8dca4c..ad91e02f 100644
--- a/system/autoload/Lang.php
+++ b/system/autoload/Lang.php
@@ -56,7 +56,11 @@ class Lang
}
public static function arrayCount($arr){
- return count($arr);
+ if(is_array($arr)){
+ return count($arr);
+ }else{
+ return 0;
+ }
}
public static function getNotifText($key){
diff --git a/system/autoload/Validator.php b/system/autoload/Validator.php
index e7d46039..996caea2 100644
--- a/system/autoload/Validator.php
+++ b/system/autoload/Validator.php
@@ -299,4 +299,23 @@ class Validator
return (bool)in_array($format, $formats);
}
+ public static function countRouterPlan($plans, $router){
+ $n = 0;
+ foreach ($plans as $plan){
+ if($plan['routers'] == $router){
+ $n++;
+ }
+ }
+ return $n;
+ }
+
+ public static function isRouterHasPlan($plans, $router){
+ foreach ($plans as $plan){
+ if($plan['routers'] == $router){
+ return true;
+ }
+ }
+ return false;
+ }
+
}
diff --git a/system/controllers/customers.php b/system/controllers/customers.php
index d454a3d7..b992b74e 100644
--- a/system/controllers/customers.php
+++ b/system/controllers/customers.php
@@ -75,6 +75,8 @@ switch ($action) {
$b->expiration = date('Y-m-d');
$b->time = date('H:i:s');
$b->save();
+ _log('Admin ' . $admin['username'] . ' Deactivate '.$b['namebp'].' for '.$b['username'], 'User', $b['customer_id']);
+ Message::sendTelegram('Admin ' . $admin['username'] . ' Deactivate '.$b['namebp'].' for u'.$b['username']);
r2(U . 'customers/view/' . $id_customer, 's', 'Success deactivate customer to Mikrotik');
}
r2(U . 'customers/view/' . $id_customer, 'e', 'Cannot find active plan');
diff --git a/system/controllers/dashboard.php b/system/controllers/dashboard.php
index f609c719..484eca7d 100644
--- a/system/controllers/dashboard.php
+++ b/system/controllers/dashboard.php
@@ -50,7 +50,7 @@ if (empty($c_all)) {
$ui->assign('c_all', $c_all);
//user expire
-$expire = ORM::for_table('tbl_user_recharges')->where('expiration', $mdate)->order_by_desc('id')->find_many();
+$expire = ORM::for_table('tbl_user_recharges')->whereLte('expiration', $mdate)->order_by_desc('id')->limit(30)->find_many();
$ui->assign('expire', $expire);
//activity log
diff --git a/system/controllers/home.php b/system/controllers/home.php
index c2eef6ce..be779bc4 100644
--- a/system/controllers/home.php
+++ b/system/controllers/home.php
@@ -90,6 +90,41 @@ if (_post('send') == 'balance') {
$bill = User::_billing();
$ui->assign('_bill', $bill);
+if(isset($_GET['recharge']) && $_GET['recharge'] == 1){
+ $router = ORM::for_table('tbl_routers')->where('name', $bill['routers'])->find_one();
+ if ($config['enable_balance'] == 'yes') {
+ $plan = ORM::for_table('tbl_plans')->find_one($bill['plan_id']);
+ if($user['balance']>$plan['price']){
+ r2(U . "order/pay/$router[id]/$bill[plan_id]", 'e', 'Order Plan');
+ }else{
+ r2(U . "order/buy/$router[id]/$bill[plan_id]", 'e', 'Order Plan');
+ }
+ }else{
+ r2(U . "order/buy/$router[id]/$bill[plan_id]", 'e', 'Order Plan');
+ }
+}else if(isset($_GET['deactivate']) && $_GET['deactivate'] == 1){
+ if ($bill) {
+ $mikrotik = Mikrotik::info($bill['routers']);
+ $client = Mikrotik::getClient($mikrotik['ip_address'], $mikrotik['username'], $mikrotik['password']);
+ if ($bill['type'] == 'Hotspot') {
+ Mikrotik::removeHotspotUser($client, $bill['username']);
+ Mikrotik::removeHotspotActiveUser($client, $bill['username']);
+ } else if ($bill['type'] == 'PPPOE') {
+ Mikrotik::removePpoeUser($client, $bill['username']);
+ Mikrotik::removePpoeActive($client, $bill['username']);
+ }
+ $bill->status = 'off';
+ $bill->expiration = date('Y-m-d');
+ $bill->time = date('H:i:s');
+ $bill->save();
+ _log('User ' . $bill['username'] . ' Deactivate '.$bill['namebp'], 'User', $bill['customer_id']);
+ Message::sendTelegram('User u' . $bill['username'] . ' Deactivate '.$bill['namebp']);
+ r2(U . 'home', 's', 'Success deactivate '.$bill['namebp']);
+ }else{
+ r2(U . 'home', 'e', 'No Active Plan');
+ }
+}
+
if (!empty($_SESSION['nux-mac']) && !empty($_SESSION['nux-ip'])) {
$ui->assign('nux_mac', $_SESSION['nux-mac']);
$ui->assign('nux_ip', $_SESSION['nux-ip']);
diff --git a/system/controllers/order.php b/system/controllers/order.php
index df5652ee..5460d791 100644
--- a/system/controllers/order.php
+++ b/system/controllers/order.php
@@ -35,9 +35,19 @@ switch ($action) {
}
$ui->assign('_title', 'Order Plan');
$ui->assign('_system_menu', 'package');
- $routers = ORM::for_table('tbl_routers')->find_many();
- $plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'PPPOE')->find_many();
- $plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'Hotspot')->find_many();
+ if(!empty($_SESSION['nux-router'])){
+ $routers = ORM::for_table('tbl_routers')->where('id',$_SESSION['nux-router'])->find_many();
+ $rs = [];
+ foreach($routers as $r){
+ $rs[] = $r['name'];
+ }
+ $plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('type', 'PPPOE')->find_many();
+ $plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where_in('routers', $rs)->where('type', 'Hotspot')->find_many();
+ }else{
+ $routers = ORM::for_table('tbl_routers')->find_many();
+ $plans_pppoe = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'PPPOE')->find_many();
+ $plans_hotspot = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'Hotspot')->find_many();
+ }
$plans_balance = ORM::for_table('tbl_plans')->where('enabled', '1')->where('type', 'Balance')->find_many();
$ui->assign('routers', $routers);
$ui->assign('plans_pppoe', $plans_pppoe);
diff --git a/system/controllers/pages.php b/system/controllers/pages.php
index 923002c2..86578eb6 100644
--- a/system/controllers/pages.php
+++ b/system/controllers/pages.php
@@ -15,7 +15,14 @@ if(strpos($action,"-post")===false){
//echo $path;
run_hook('view_edit_pages'); #HOOK
if(!file_exists($path)){
- touch($path);
+ $temp = "pages_template/".str_replace(".","",$action).".html";
+ if(file_exists($temp)){
+ if(!copy($temp, $path)){
+ touch($path);
+ }
+ }else{
+ touch($path);
+ }
}
if(file_exists($path)){
$html = file_get_contents($path);
diff --git a/system/controllers/prepaid.php b/system/controllers/prepaid.php
index 3aae837c..3fc4fed8 100644
--- a/system/controllers/prepaid.php
+++ b/system/controllers/prepaid.php
@@ -258,10 +258,10 @@ switch ($action) {
break;
case 'print-voucher':
- $from_id = _post('from_id') * 1;
- $planid = _post('planid') * 1;
- $pagebreak = _post('pagebreak') * 1;
- $limit = _post('limit') * 1;
+ $from_id = _post('from_id');
+ $planid = _post('planid');
+ $pagebreak = _post('pagebreak');
+ $limit = _post('limit');
if ($pagebreak < 1) $pagebreak = 6;
diff --git a/system/controllers/routers.php b/system/controllers/routers.php
index a798aec4..8f4ed11f 100644
--- a/system/controllers/routers.php
+++ b/system/controllers/routers.php
@@ -70,7 +70,7 @@ switch ($action) {
$username = _post('username');
$password = _post('password');
$description = _post('description');
- $enabled = _post('enabled')*1;
+ $enabled = _post('enabled');
$msg = '';
if(Validator::Length($name,30,4) == false){
@@ -113,7 +113,7 @@ switch ($action) {
$username = _post('username');
$password = _post('password');
$description = _post('description');
- $enabled = $_POST['enabled']*1;
+ $enabled = $_POST['enabled'];
$msg = '';
if(Validator::Length($name,30,4) == false){
$msg .= 'Name should be between 5 to 30 characters'. '
';
diff --git a/system/lan/english/common.lan.php b/system/lan/english/common.lan.php
index 71a9a4c1..e36701e1 100644
--- a/system/lan/english/common.lan.php
+++ b/system/lan/english/common.lan.php
@@ -310,7 +310,6 @@ $_L['Please_enter_your_email_address'] = 'Please enter your email address';
$_L['Failed_to_create_Paypal_transaction'] = 'Failed to create Paypal transaction.';
$_L['Plugin'] = 'Plugin';
$_L['Plugin_Manager'] = 'Plugin Manager';
-$_L['Plugin_Manager'] = 'Plugin Manager';
$_L['User_Notification'] = 'User Notification';
$_L['Expired_Notification'] = 'Expired Notification';
$_L['User_will_get_notification_when_package_expired'] = 'User will get notification when package expired';
@@ -386,7 +385,6 @@ $_L['Minimum_Balance_Transfer'] = 'Minimum Balance Transfer';
$_L['Minimum_Transfer'] = 'Minimum Transfer';
$_L['Company_Logo'] = 'Company Logo';
$_L['Expired_IP_Pool'] = 'Expired IP Pool';
-$_L['Expired_IP_Pool'] = 'Expired IP Pool';
$_L['Proxy'] = 'Proxy';
$_L['Proxy_Server'] = 'Proxy Server';
$_L['Proxy_Server_Login'] = 'Proxy Server Login';
@@ -400,5 +398,8 @@ $_L['Recharge_a_friend'] = 'Recharge a friend';
$_L['Buy_for_friend'] = 'Buy for friend';
$_L['Buy_this_for_friend_account'] = 'Buy this for friend account?';
$_L['Review_package_before_recharge'] = 'Review package before recharge';
+$_L['Activate'] = 'Activate';
$_L['Deactivate'] = 'Deactivate';
$_L['Sync'] = 'Sync';
+$_L['Failed_to_create_PaymeTrust_transaction'] = 'Failed to create PaymeTrust transaction.';
+$_L['Location'] = 'Location';
diff --git a/system/lan/indonesia/common.lan.php b/system/lan/indonesia/common.lan.php
index f789d5b7..96bb1a29 100644
--- a/system/lan/indonesia/common.lan.php
+++ b/system/lan/indonesia/common.lan.php
@@ -338,11 +338,63 @@ $_L['Country_Code_Phone'] = 'Kode Negara Telepon';
$_L['Voucher_activation_menu_will_be_hidden'] = 'Info Pembelian Voucher dan Redeem akan disembunyikan';
$_L['Customer_can_deposit_money_to_buy_voucher'] = 'Pelanggan dapat topup saldo untuk langganan Internet';
$_L['Allow_balance_transfer_between_customers'] = 'Bolehkan transfer saldo antar pelanggan';
-$_L['Refill_Balance'] = 'Refill Balance';
-$_L['Balance_Plans'] = 'Balance Plans';
-$_L['Expired_IP_Pool'] = 'Expired IP Pool';
-$_L['Company_Logo'] = 'Company Logo';
-$_L['Disable_Voucher'] = 'Disable Voucher';
-$_L['Minimum_Balance_Transfer'] = 'Minimum Balance Transfer';
-$_L['Reminder_Notification'] = 'Reminder Notification';
-$_L['Invoice_Footer'] = 'Invoice Footer';
+$_L['Refill_Balance'] = 'Refill Balance';
+$_L['Balance_Plans'] = 'Balance Plans';
+$_L['Expired_IP_Pool'] = 'Expired IP Pool';
+$_L['Company_Logo'] = 'Company Logo';
+$_L['Disable_Voucher'] = 'Disable Voucher';
+$_L['Minimum_Balance_Transfer'] = 'Minimum Balance Transfer';
+$_L['Reminder_Notification'] = 'Reminder Notification';
+$_L['Invoice_Footer'] = 'Invoice Footer';
+
+$_L['Reminder_7_days'] = 'Reminder 7 days';
+$_L['Reminder_3_days'] = 'Reminder 3 days';
+$_L['Reminder_1_day'] = 'Reminder 1 day';
+$_L['PPPOE_Password'] = 'PPPOE Password';
+$_L['User_Cannot_change_this_only_admin_if_it_Empty_it_will_use_user_password'] = 'User Cannot change this, only admin. if it Empty it will use user password';
+$_L['Invoice_Balance_Message'] = 'Invoice Balance Message';
+$_L['Invoice_Notification_Payment'] = 'Invoice Notification Payment';
+$_L['Balance_Notification_Payment'] = 'Balance Notification Payment';
+$_L['Buy_Balance'] = 'Buy Balance?';
+$_L['Price'] = 'Price';
+$_L['Validity'] = 'Validity';
+$_L['Disable_auto_renewal'] = 'Disable auto renewal?';
+$_L['Auto_Renewal_On'] = 'Auto Renewal On';
+$_L['Enable_auto_renewal'] = 'Enable auto renewal?';
+$_L['Auto_Renewal_Off'] = 'Auto Renewal Off';
+$_L['Pay_With_Balance'] = 'Pay With Balance';
+$_L['Pay_this_with_Balance_your_active_package_will_be_overwrite'] = 'Pay this with Balance? your active package will be overwrite';
+$_L['Success_to_buy_package'] = 'Success to buy package';
+$_L['Auto_Renewal'] = 'Auto Renewal';
+$_L['View'] = 'View';
+$_L['Back'] = 'Back';
+$_L['Active'] = 'Active';
+$_L['Transfer_Balance'] = 'Transfer Balance';
+$_L['Send_your_balance'] = 'Send your balance?';
+$_L['Send'] = 'Send';
+$_L['Cannot_send_to_yourself'] = 'Cannot send to yourself';
+$_L['Sending_balance_success'] = 'Sending balance success';
+$_L['From'] = 'From';
+$_L['To'] = 'To';
+$_L['insufficient_balance'] = 'insufficient balance';
+$_L['Send_Balance'] = 'Send Balance';
+$_L['Received_Balance'] = 'Received Balance';
+$_L['Minimum_Transfer'] = 'Minimum Transfer';
+$_L['Proxy'] = 'Proxy';
+$_L['Proxy_Server'] = 'Proxy Server';
+$_L['Proxy_Server_Login'] = 'Proxy Server Login';
+$_L['Hotspot_Plan'] = 'Hotspot Plan';
+$_L['PPPOE_Plan'] = 'PPPOE Plan';
+$_L['UNKNOWN'] = 'UNKNOWN';
+$_L['Are_You_Sure'] = 'Are You Sure?';
+$_L['Success_to_send_package'] = 'Success to send package';
+$_L['Target_has_active_plan_different_with_current_plant'] = 'Target has active plan, different with current plant.';
+$_L['Recharge_a_friend'] = 'Recharge a friend';
+$_L['Buy_for_friend'] = 'Buy for friend';
+$_L['Buy_this_for_friend_account'] = 'Buy this for friend account?';
+$_L['Review_package_before_recharge'] = 'Review package before recharge';
+$_L['Activate'] = 'Activate';
+$_L['Deactivate'] = 'Deactivate';
+$_L['Sync'] = 'Sync';
+$_L['Failed_to_create_PaymeTrust_transaction'] = 'Failed to create PaymeTrust transaction.';
+$_L['Location'] = 'Location';
diff --git a/system/lan/spanish/common.lan.php b/system/lan/spanish/common.lan.php
index c4ca672a..d9992672 100644
--- a/system/lan/spanish/common.lan.php
+++ b/system/lan/spanish/common.lan.php
@@ -149,7 +149,6 @@ $_L['Period_Reports'] = 'Informes del período';
$_L['All_Transactions'] = 'Todas las transacciones';
$_L['Total_Income'] = 'Ingresos totales';
$_L['All_Transactions_at_Date'] = 'Todas las transacciones en la fecha';
-$_L['Total_Income'] = 'Ingresos totales';
$_L['Export_for_Print'] = 'Exportar para imprimir';
$_L['Print'] = 'Impresión';
$_L['Export_to_PDF'] = 'Exportar a PDF';
@@ -310,7 +309,6 @@ $_L['Please_enter_your_email_address'] = 'Please enter your email address';
$_L['Failed_to_create_Paypal_transaction'] = 'Failed to create Paypal transaction.';
$_L['Plugin'] = 'Plugin';
$_L['Plugin_Manager'] = 'Plugin Manager';
-$_L['Plugin_Manager'] = 'Plugin Manager';
$_L['User_Notification'] = 'User Notification';
$_L['Expired_Notification'] = 'Expired Notification';
$_L['User_will_get_notification_when_package_expired'] = 'User will get notification when package expired';
@@ -342,3 +340,64 @@ $_L['Voucher_activation_menu_will_be_hidden'] = 'Voucher activation menu will be
$_L['Customer_can_deposit_money_to_buy_voucher'] = 'Customer can deposit money to buy voucher';
$_L['Allow_balance_transfer_between_customers'] = 'Allow balance transfer between customers';$_L['Refill_Balance'] = 'Refill Balance';
$_L['Balance_Plans'] = 'Balance Plans';
+
+$_L['Failed_to_create_transaction_'] = 'Failed to create transaction. ';
+$_L['Failed_to_check_status_transaction_'] = 'Failed to check status transaction. ';
+$_L['Disable_Voucher'] = 'Disable Voucher';
+$_L['Reminder_Notification'] = 'Reminder Notification';
+$_L['Reminder_Notification_Message'] = 'Reminder Notification Message';
+$_L['Reminder_7_days'] = 'Reminder 7 days';
+$_L['Reminder_3_days'] = 'Reminder 3 days';
+$_L['Reminder_1_day'] = 'Reminder 1 day';
+$_L['PPPOE_Password'] = 'PPPOE Password';
+$_L['User_Cannot_change_this_only_admin_if_it_Empty_it_will_use_user_password'] = 'User Cannot change this, only admin. if it Empty it will use user password';
+$_L['Invoice_Balance_Message'] = 'Invoice Balance Message';
+$_L['Invoice_Notification_Payment'] = 'Invoice Notification Payment';
+$_L['Balance_Notification_Payment'] = 'Balance Notification Payment';
+$_L['Buy_Balance'] = 'Buy Balance?';
+$_L['Price'] = 'Price';
+$_L['Validity'] = 'Validity';
+$_L['Disable_auto_renewal'] = 'Disable auto renewal?';
+$_L['Auto_Renewal_On'] = 'Auto Renewal On';
+$_L['Enable_auto_renewal'] = 'Enable auto renewal?';
+$_L['Auto_Renewal_Off'] = 'Auto Renewal Off';
+$_L['Invoice_Footer'] = 'Invoice Footer';
+$_L['Pay_With_Balance'] = 'Pay With Balance';
+$_L['Pay_this_with_Balance_your_active_package_will_be_overwrite'] = 'Pay this with Balance? your active package will be overwrite';
+$_L['Success_to_buy_package'] = 'Success to buy package';
+$_L['Auto_Renewal'] = 'Auto Renewal';
+$_L['View'] = 'View';
+$_L['Back'] = 'Back';
+$_L['Active'] = 'Active';
+$_L['Transfer_Balance'] = 'Transfer Balance';
+$_L['Send_your_balance'] = 'Send your balance?';
+$_L['Send'] = 'Send';
+$_L['Cannot_send_to_yourself'] = 'Cannot send to yourself';
+$_L['Sending_balance_success'] = 'Sending balance success';
+$_L['From'] = 'From';
+$_L['To'] = 'To';
+$_L['insufficient_balance'] = 'insufficient balance';
+$_L['Send_Balance'] = 'Send Balance';
+$_L['Received_Balance'] = 'Received Balance';
+$_L['Minimum_Balance_Transfer'] = 'Minimum Balance Transfer';
+$_L['Minimum_Transfer'] = 'Minimum Transfer';
+$_L['Company_Logo'] = 'Company Logo';
+$_L['Expired_IP_Pool'] = 'Expired IP Pool';
+$_L['Proxy'] = 'Proxy';
+$_L['Proxy_Server'] = 'Proxy Server';
+$_L['Proxy_Server_Login'] = 'Proxy Server Login';
+$_L['Hotspot_Plan'] = 'Hotspot Plan';
+$_L['PPPOE_Plan'] = 'PPPOE Plan';
+$_L['UNKNOWN'] = 'UNKNOWN';
+$_L['Are_You_Sure'] = 'Are You Sure?';
+$_L['Success_to_send_package'] = 'Success to send package';
+$_L['Target_has_active_plan_different_with_current_plant'] = 'Target has active plan, different with current plant.';
+$_L['Recharge_a_friend'] = 'Recharge a friend';
+$_L['Buy_for_friend'] = 'Buy for friend';
+$_L['Buy_this_for_friend_account'] = 'Buy this for friend account?';
+$_L['Review_package_before_recharge'] = 'Review package before recharge';
+$_L['Activate'] = 'Activate';
+$_L['Deactivate'] = 'Deactivate';
+$_L['Sync'] = 'Sync';
+$_L['Failed_to_create_PaymeTrust_transaction'] = 'Failed to create PaymeTrust transaction.';
+$_L['Location'] = 'Location';
diff --git a/system/lan/turkish/common.lan.php b/system/lan/turkish/common.lan.php
index c21d9b8b..6ac8f461 100755
--- a/system/lan/turkish/common.lan.php
+++ b/system/lan/turkish/common.lan.php
@@ -131,7 +131,6 @@ $_L['Period_Reports'] = 'Dönem Raporları';
$_L['All_Transactions'] = 'Tüm İşlemler';
$_L['Total_Income'] = 'Toplam gelir';
$_L['All_Transactions_at_Date'] = 'Tarihte Tüm İşlemler';
-$_L['Total_Income'] = 'Toplam gelir';
$_L['Export_for_Print'] = 'Baskı için İhracat';
$_L['Print'] = 'Baskı';
$_L['Export_to_PDF'] = 'PDF\'ye Aktar';
@@ -286,7 +285,6 @@ $_L['Please_enter_your_email_address'] = 'Please enter your email address';
$_L['Failed_to_create_Paypal_transaction'] = 'Failed to create Paypal transaction.';
$_L['Plugin'] = 'Plugin';
$_L['Plugin_Manager'] = 'Plugin Manager';
-$_L['Plugin_Manager'] = 'Plugin Manager';
$_L['User_Notification'] = 'User Notification';
$_L['Expired_Notification'] = 'Expired Notification';
$_L['User_will_get_notification_when_package_expired'] = 'User will get notification when package expired';
@@ -316,4 +314,67 @@ $_L['Invoice'] = 'Invoice';
$_L['Country_Code_Phone'] = 'Country Code Phone';
$_L['Voucher_activation_menu_will_be_hidden'] = 'Voucher activation menu will be hidden';
$_L['Customer_can_deposit_money_to_buy_voucher'] = 'Customer can deposit money to buy voucher';
-$_L['Allow_balance_transfer_between_customers'] = 'Allow balance transfer between customers';
\ No newline at end of file
+$_L['Allow_balance_transfer_between_customers'] = 'Allow balance transfer between customers';
+
+$_L['Failed_to_create_transaction_'] = 'Failed to create transaction. ';
+$_L['Failed_to_check_status_transaction_'] = 'Failed to check status transaction. ';
+$_L['Disable_Voucher'] = 'Disable Voucher';
+$_L['Reminder_Notification'] = 'Reminder Notification';
+$_L['Reminder_Notification_Message'] = 'Reminder Notification Message';
+$_L['Reminder_7_days'] = 'Reminder 7 days';
+$_L['Reminder_3_days'] = 'Reminder 3 days';
+$_L['Reminder_1_day'] = 'Reminder 1 day';
+$_L['PPPOE_Password'] = 'PPPOE Password';
+$_L['User_Cannot_change_this_only_admin_if_it_Empty_it_will_use_user_password'] = 'User Cannot change this, only admin. if it Empty it will use user password';
+$_L['Invoice_Balance_Message'] = 'Invoice Balance Message';
+$_L['Invoice_Notification_Payment'] = 'Invoice Notification Payment';
+$_L['Balance_Notification_Payment'] = 'Balance Notification Payment';
+$_L['Balance_Plans'] = 'Balance Plans';
+$_L['Buy_Balance'] = 'Buy Balance?';
+$_L['Price'] = 'Price';
+$_L['Validity'] = 'Validity';
+$_L['Disable_auto_renewal'] = 'Disable auto renewal?';
+$_L['Auto_Renewal_On'] = 'Auto Renewal On';
+$_L['Enable_auto_renewal'] = 'Enable auto renewal?';
+$_L['Auto_Renewal_Off'] = 'Auto Renewal Off';
+$_L['Refill_Balance'] = 'Refill Balance';
+$_L['Invoice_Footer'] = 'Invoice Footer';
+$_L['Pay_With_Balance'] = 'Pay With Balance';
+$_L['Pay_this_with_Balance_your_active_package_will_be_overwrite'] = 'Pay this with Balance? your active package will be overwrite';
+$_L['Success_to_buy_package'] = 'Success to buy package';
+$_L['Auto_Renewal'] = 'Auto Renewal';
+$_L['View'] = 'View';
+$_L['Back'] = 'Back';
+$_L['Active'] = 'Active';
+$_L['Transfer_Balance'] = 'Transfer Balance';
+$_L['Send_your_balance'] = 'Send your balance?';
+$_L['Send'] = 'Send';
+$_L['Cannot_send_to_yourself'] = 'Cannot send to yourself';
+$_L['Sending_balance_success'] = 'Sending balance success';
+$_L['From'] = 'From';
+$_L['To'] = 'To';
+$_L['insufficient_balance'] = 'insufficient balance';
+$_L['Send_Balance'] = 'Send Balance';
+$_L['Received_Balance'] = 'Received Balance';
+$_L['Minimum_Balance_Transfer'] = 'Minimum Balance Transfer';
+$_L['Minimum_Transfer'] = 'Minimum Transfer';
+$_L['Company_Logo'] = 'Company Logo';
+$_L['Expired_IP_Pool'] = 'Expired IP Pool';
+$_L['Proxy'] = 'Proxy';
+$_L['Proxy_Server'] = 'Proxy Server';
+$_L['Proxy_Server_Login'] = 'Proxy Server Login';
+$_L['Hotspot_Plan'] = 'Hotspot Plan';
+$_L['PPPOE_Plan'] = 'PPPOE Plan';
+$_L['UNKNOWN'] = 'UNKNOWN';
+$_L['Are_You_Sure'] = 'Are You Sure?';
+$_L['Success_to_send_package'] = 'Success to send package';
+$_L['Target_has_active_plan_different_with_current_plant'] = 'Target has active plan, different with current plant.';
+$_L['Recharge_a_friend'] = 'Recharge a friend';
+$_L['Buy_for_friend'] = 'Buy for friend';
+$_L['Buy_this_for_friend_account'] = 'Buy this for friend account?';
+$_L['Review_package_before_recharge'] = 'Review package before recharge';
+$_L['Activate'] = 'Activate';
+$_L['Deactivate'] = 'Deactivate';
+$_L['Sync'] = 'Sync';
+$_L['Failed_to_create_PaymeTrust_transaction'] = 'Failed to create PaymeTrust transaction.';
+$_L['Location'] = 'Location';
diff --git a/ui/ui/images/loading.gif b/ui/ui/images/loading.gif
new file mode 100644
index 00000000..c35d6583
Binary files /dev/null and b/ui/ui/images/loading.gif differ
diff --git a/ui/ui/page-edit.tpl b/ui/ui/page-edit.tpl
index 3eb0ce3c..de3f5c7d 100644
--- a/ui/ui/page-edit.tpl
+++ b/ui/ui/page-edit.tpl
@@ -10,7 +10,7 @@
SAVE
{$_L['Info_Page']}
- + {else} - diff --git a/ui/ui/register-otp.tpl b/ui/ui/register-otp.tpl index ab55baa0..4a0d167f 100644 --- a/ui/ui/register-otp.tpl +++ b/ui/ui/register-otp.tpl @@ -105,9 +105,9 @@