diff --git a/app/Controllers/Home.php b/app/Controllers/Home.php index 8f801d5..a02e78f 100644 --- a/app/Controllers/Home.php +++ b/app/Controllers/Home.php @@ -10,31 +10,10 @@ class Home extends BaseController public function index(): string { - $template = array( - 'table_open' => "", - 'thead_open' => '', - 'thead_close' => '', - 'heading_row_start' => '', - 'heading_row_end' => '', - 'heading_cell_start' => '', - 'tbody_open' => '', - 'tbody_close' => '', - 'row_start' => '', - 'row_end' => '', - 'cell_start' => '', - 'row_alt_start' => '', - 'row_alt_end' => '', - 'cell_alt_start' => '', - 'table_close' => '
', - 'heading_cell_end' => '
', - 'cell_end' => '
', - 'cell_alt_end' => '
' - ); - //$this->load->library('table'); - // $this->table->set_template($template); - $data['label_env'] = $this->what_env(); - $data["hanging_list"] = $this->getProvisionList(20); + $data["hanging_list"] = $this->getProvisionList(15, 6); + $data["completed_list"] = $this->getProvisionList(15, 7); + $data["starting_list"] = $this->getProvisionList(15, 1); return view('welcome_message',$data); } @@ -45,8 +24,8 @@ class Home extends BaseController return $curr_env; } - private function getProvisionList($limit){ - $mysql ="SELECT * FROM members_products ORDER BY id DESC LIMIT $limit"; + private function getProvisionList($limit,$status){ + $mysql ="SELECT * FROM members_products WHERE status = $status ORDER BY id DESC LIMIT $limit"; $query = $this->db->query($mysql); return $query->getResult(); } diff --git a/app/Controllers/Provision.php b/app/Controllers/Provision.php index c5f0f95..8b8c728 100644 --- a/app/Controllers/Provision.php +++ b/app/Controllers/Provision.php @@ -537,6 +537,25 @@ class Provision extends BaseController $this->provisionActions($memberID, $provisionUID, "Allocating Provisioning Ports"); } + + //Now let us try fix hanging stuffs + $mysql = "SELECT id, member_id, uid, internal_url,product_id,status,provision_port,updated + FROM members_products + WHERE provision_port > 0 + AND status = 6 + AND added < now() - INTERVAL '5 minutes' + ORDER BY updated ASC LIMIT 1"; + + $query = $this->db->query($mysql); + $provision_list = $query->getResult(); + foreach ($provision_list as $pr) { + $memberID = $pr->member_id; + $productId = $pr->product_id; + $provisionUID = $pr->uid; + $mysql = "UPDATE members_products SET updated=now(), provision_status=0 WHERE uid::TEXT = '" . $provisionUID . "' AND provision_port > 0"; + $query = $this->db->query($mysql); + } + //SELECT * FROM members_products WHERE status = 6 AND added < now() - INTERVAL '5 minutes' LIMIT 1 } private function allocatePortNumber($productId) @@ -577,7 +596,7 @@ class Provision extends BaseController private function provisionServer($productId) { - $primaryServer =""; + $primaryServer = ""; switch ($productId) { case "A000001": case "A000002": @@ -611,7 +630,7 @@ class Provision extends BaseController [A000005_SERVER] 172.16.4.95 */ - private function updateToNow($provisionUID):void + private function updateToNow($provisionUID): void { try { $mysql = "UPDATE members_products SET updated=now(), diff --git a/app/Views/welcome_message.php b/app/Views/welcome_message.php index c05f6b9..3a15f73 100644 --- a/app/Views/welcome_message.php +++ b/app/Views/welcome_message.php @@ -44,7 +44,7 @@ id ?> @@ -69,6 +69,7 @@ Default URL Added Prov. Status + Action @@ -77,9 +78,12 @@ ?> id ?> - internal_url ?> + internal_url ?> +
PORT:provision_port ?> + added ?> status ?> + id ?> - internal_url ?> + internal_url ?> added ?> status ?> @@ -121,6 +125,27 @@ +