function PuppetGetList($method_parameters) { global $event; $parameter_array = explode(',', $method_parameters); $mode = $parameter_array[0]; $username = $parameter_array[1]; $password = $parameter_array[2]; // check all user input for ($i = 0; $i <= 2; $i++) { if (!$this->check_param($parameter_array[$i])) { $event->log("cloudsoap->PuppetGetList", $_SERVER['REQUEST_TIME'], 2, "cloud-soap-server.php", "Not allowing user-intput with special-characters : {$parameter_array[$i]}", "", "", 0, 0, 0); return; } } // check parameter count $parameter_count = count($parameter_array); if ($parameter_count != 3) { $event->log("cloudsoap->PuppetGetList", $_SERVER['REQUEST_TIME'], 2, "cloud-soap-server.php", "Wrong parameter count {$parameter_count} ! Exiting.", "", "", 0, 0, 0); return; } // check authentication if (!$this->check_user($mode, $username, $password)) { $event->log("cloudsoap->PuppetGetList", $_SERVER['REQUEST_TIME'], 2, "cloud-soap-server.php", "User authentication failed (mode {$mode})", "", "", 0, 0, 0); return; } $event->log("cloudsoap->PuppetGetList", $_SERVER['REQUEST_TIME'], 5, "cloud-soap-server.php", "Providing list of available applications", "", "", 0, 0, 0); $application_name_list = array(); $cloudapplication = new cloudapplication(); $cloud_application_array = $cloudapplication->get_application_list(); $cc_conf = new cloudconfig(); $cloudselector = new cloudselector(); $cloud_selector_enabled = $cc_conf->get_value(22); // cloudselector foreach ($cloud_application_array as $application) { if (!strcmp($cloud_selector_enabled, "true")) { if ($cloudselector->product_exists_enabled("application", $application)) { $application_name_list[] = $application; } } else { $application_name_list[] = $application; } } return $application_name_list; }