3 require_once 'plc_login.php'; // Require login
4 require_once 'plc_session.php'; // Get session and API handles
5 global $plc, $api, $adm;
8 require_once 'plc_drupal.php';
10 include 'plc_header.php';
13 require_once 'plc_functions.php';
14 include 'plc_objects.php';
17 class Confirm extends Controller {
20 function stage7_firstcontact($pcu_id, $site_id, $node_id)
23 $this->load->helper(array('form', 'url'));
24 $this->load->helper('download');
25 $this->load->library('validation');
27 $this->validation->set_error_delimiters('<span class="error">', '</span>');
28 $person = new Person($plc->person);
31 $data['pcu_id'] = intval($pcu_id);
32 $data['node_id'] = intval($node_id);
33 $data['site_id'] = intval($site_id);
35 $data = $this->get_stage7_data($person, $data);
36 /*print "RESULT: ".$result . "<br>";*/
37 /*print $this->validation->error_string . "<br>";*/
38 $this->load->view('header', $data);
39 $this->load->view('debug', $data);
40 $this->load->view('stage7_firstcontact', $data);
41 $this->load->view('footer', $data);
44 function getnode($node_id)
47 $plc_node_list = $api->GetNodes(array('node_id' => intval($node_id) ));
48 return $plc_node_list[0];
50 function getsite($site_id)
53 $site_info = $api->GetSites($site_id, array( "name", "site_id", "login_base" ) );
57 function get_stage7_data($person, $data=NULL)
63 $data['node'] = $this->getnode($data['node_id']);
64 $data['site'] = $this->getsite($data['node']['site_id']);
65 if( $data['node']['last_contact'] != NULL && $data['node']['last_contact'] != '' ) {
66 $last_contact = $data['node']['last_contact'];
70 if( $last_contact != NULL ) {
71 $last_contact_str = timeDiff($last_contact);
73 $last_contact_str = "Never";
75 $data['last_contact_str'] = $last_contact_str;
79 function stage8_rebootpcu($pcu_id, $site_id, $node_id)
82 $this->load->helper(array('form', 'url'));
83 $this->load->helper('download');
84 $this->load->library('validation');
86 $this->validation->set_error_delimiters('<span class="error">', '</span>');
87 $person = new Person($plc->person);
90 $data['pcu_id'] = intval($pcu_id);
91 $data['node_id'] = intval($node_id);
92 $data['site_id'] = intval($site_id);
94 $data = $this->get_stage8_data($person, $data);
95 $this->load->view('header', $data);
96 $this->load->view('debug', $data);
97 $this->load->view('stage8_rebootpcu', $data);
98 $this->load->view('footer', $data);
101 function reboot($site_id, $pcu_id, $node_id)
104 $this->load->helper(array('form', 'url'));
105 $this->load->helper('download');
106 $this->load->library('validation');
107 $person = new Person($plc->person);
110 $data['site_id'] = intval($site_id);
111 $data['node_id'] = intval($node_id);
112 $data['pcu_id'] = intval($pcu_id);
114 $this->reboot_node($data);
115 $data = $this->get_stage8_data($person, $data);
117 $this->load->view('header', $data);
118 $this->load->view('debug', $data);
119 $this->load->view('stage8_rebootpcu', $data);
120 $this->load->view('footer', $data);
123 function complete($site_id, $pcu_id, $node_id)
126 $this->load->helper(array('form', 'url'));
127 $this->load->helper('download');
128 $this->load->library('validation');
131 $data['site_id'] = $site_id;
134 $this->load->view('header', $data);
135 $this->load->view('debug', $data);
136 $this->load->view('stage9_complete', $data);
137 $this->load->view('footer', $data);
140 function get_stage8_data($person, $data=NULL)
143 if ( $data == NULL ){
146 $data['node'] = $this->getnode($data['node_id']);
147 $data['site'] = $this->getsite($data['node']['site_id']);
148 if( $data['node']['last_contact'] != NULL && $data['node']['last_contact'] != '' ) {
149 $last_contact = $data['node']['last_contact'];
151 $last_contact = NULL;
153 if( $last_contact != NULL ) {
154 $last_contact_str = timeDiff($last_contact);
156 $last_contact_str = "Never";
158 $data['last_contact_str'] = $last_contact_str;
162 function reboot_node(&$data)
165 $hostname = $data['node_id'];
166 $api->UpdateNode( $hostname, array( "boot_state" => 'reinstall') );
167 $ret = $api->RebootNodeWithPCU( $hostname );
168 if ( "$ret" != "0" ) {
169 $data['error'] = $api->error();
171 $data['error'] = $ret;