diff --git a/install/phpnuxbill.sql b/install/phpnuxbill.sql index 1df2848f..26202e3a 100644 --- a/install/phpnuxbill.sql +++ b/install/phpnuxbill.sql @@ -326,4 +326,5 @@ ALTER TABLE `tbl_user_recharges` ADD `admin_id` INT NOT NULL DEFAULT '1' AFTER ` ALTER TABLE `tbl_plans` CHANGE `allow_purchase` `prepaid` ENUM('yes','no') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT 'yes' COMMENT 'is prepaid'; ALTER TABLE `tbl_transactions` ADD `note` VARCHAR(256) NOT NULL DEFAULT '' COMMENT 'for note' AFTER `type`; ALTER TABLE `tbl_payment_gateway` ADD `trx_invoice` VARCHAR(25) NOT NULL DEFAULT '' COMMENT 'from tbl_transactions' AFTER `paid_date`; -ALTER TABLE `tbl_customers` ADD `status` ENUM('Active','Banned','Disabled') NOT NULL DEFAULT 'Active' AFTER `auto_renewal`; \ No newline at end of file +ALTER TABLE `tbl_customers` ADD `status` ENUM('Active','Banned','Disabled') NOT NULL DEFAULT 'Active' AFTER `auto_renewal`; +ALTER TABLE `tbl_customers` CHANGE `status` `status` ENUM('Active','Banned','Disabled','Inactive','Limited','Suspended') CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'Active'; \ No newline at end of file diff --git a/system/controllers/customers.php b/system/controllers/customers.php index 926aadb5..4a5d7052 100644 --- a/system/controllers/customers.php +++ b/system/controllers/customers.php @@ -315,6 +315,7 @@ switch ($action) { ->find_many(); if ($d) { $ui->assign('d', $d); + $ui->assign('statuses', ORM::for_table('tbl_customers')->getEnum("status")); $ui->assign('customFields', $customFields); $ui->assign('xheader', $leafletpickerHeader); $ui->display('customers-edit.tpl'); diff --git a/system/controllers/home.php b/system/controllers/home.php index 7bba5d1d..d1a24a9a 100644 --- a/system/controllers/home.php +++ b/system/controllers/home.php @@ -18,7 +18,7 @@ if (isset($_GET['renewal'])) { if (_post('send') == 'balance') { if ($config['enable_balance'] == 'yes' && $config['allow_balance_transfer'] == 'yes') { - if ($user['status'] == 'Disabled') { + if ($user['status'] == 'Active') { _alert(Lang::T('This account status') . ' : ' . Lang::T($user['status']), 'danger', ""); } $target = ORM::for_table('tbl_customers')->where('username', _post('username'))->find_one(); @@ -80,7 +80,7 @@ if (_post('send') == 'balance') { r2(U . 'home', 'd', Lang::T('Failed, balance is not available')); } } else if (_post('send') == 'plan') { - if ($user['status'] == 'Disabled') { + if ($user['status'] == 'Active') { _alert(Lang::T('This account status') . ' : ' . Lang::T($user['status']), 'danger', ""); } $actives = ORM::for_table('tbl_user_recharges') @@ -98,7 +98,7 @@ if (_post('send') == 'balance') { $ui->assign('_bills', User::_billing()); if (isset($_GET['recharge']) && !empty($_GET['recharge'])) { - if ($user['status'] == 'Disabled') { + if ($user['status'] == 'Active') { _alert(Lang::T('This account status') . ' : ' . Lang::T($user['status']), 'danger', ""); } if (!empty(App::getTokenValue(_get('stoken')))) { @@ -128,7 +128,7 @@ if (isset($_GET['recharge']) && !empty($_GET['recharge'])) { } } } else if (!empty(_get('extend'))) { - if ($user['status'] == 'Disabled') { + if ($user['status'] == 'Active') { _alert(Lang::T('This account status') . ' : ' . Lang::T($user['status']), 'danger', ""); } if (!$config['extend_expired']) { diff --git a/system/lan/english.json b/system/lan/english.json index 5f8ec277..fefadfc5 100644 --- a/system/lan/english.json +++ b/system/lan/english.json @@ -589,5 +589,7 @@ "Don_t_forget_to_deactivate_all_active_plan_too": "Don't forget to deactivate all active plan too", "Ascending": "Ascending", "Descending": "Descending", - "Created_Date": "Created Date" + "Created_Date": "Created Date", + "Inactive": "Inactive", + "Suspended": "Suspended" } \ No newline at end of file diff --git a/system/lan/indonesia.json b/system/lan/indonesia.json index 609fb862..f1ce7be2 100644 --- a/system/lan/indonesia.json +++ b/system/lan/indonesia.json @@ -474,5 +474,7 @@ "SMS_and_WhatsApp": "SMS dan WhatsApp", "The_method_which_OTP_will_be_sent_to_user": "Metode OTP yang akan dikirimkan ke pengguna", "Disabled": "Dinonaktifkan", - "Banned": "Banned" + "Banned": "Dicekal", + "Inactive": "Tidak Aktif", + "Suspended": "Disuspend" } diff --git a/system/orm.php b/system/orm.php index 2228d833..46fee905 100644 --- a/system/orm.php +++ b/system/orm.php @@ -939,6 +939,8 @@ class ORM implements ArrayAccess return $this->_add_result_column($column, $alias); } + ## ibnux add function + /** * Add a column to the list of columns returned by the SELECT * query. This defaults to '*'. The second optional argument is @@ -959,6 +961,14 @@ class ORM implements ArrayAccess return $this; } + public function getEnum($column){ + $result = $this->raw_query("SHOW COLUMNS FROM ".$this->_table_name." WHERE Field = '$column'")->findArray(); + preg_match("/^enum\(\'(.*)\'\)$/", $result[0]['Type'], $matches); + return explode("','", $matches[1]); + } + + ## END ibnux add function + /** * Add an unquoted expression to the list of columns returned * by the SELECT query. The second optional argument is diff --git a/ui/ui/customers-edit.tpl b/ui/ui/customers-edit.tpl index ea5da3ff..40fca4bd 100644 --- a/ui/ui/customers-edit.tpl +++ b/ui/ui/customers-edit.tpl @@ -112,14 +112,10 @@
{Lang::T('Banned')}: {Lang::T('Customer cannot login again')}.
diff --git a/ui/ui/customers.tpl b/ui/ui/customers.tpl index cd0f75c1..62c5a2e3 100644 --- a/ui/ui/customers.tpl +++ b/ui/ui/customers.tpl @@ -86,7 +86,7 @@ {foreach $d as $ds} - + {$ds['username']} {$ds['account_type']}