Portions created by the Initial Developer are Copyright (C) 2016 the Initial Developer. All Rights Reserved. Contributor(s): Mark J Crane */ //includes require_once "root.php"; require_once "resources/require.php"; //delete the group from the menu item if ($_REQUEST["a"] == "delete" && permission_exists("device_vendor_function_delete") && $_REQUEST["id"] != '') { //get the id $device_vendor_function_group_uuid = check_str($_REQUEST["id"]); $device_vendor_function_uuid = check_str($_REQUEST["device_vendor_function_uuid"]); $device_vendor_uuid = check_str($_REQUEST["device_vendor_uuid"]); //delete the group from the users $sql = "delete from v_device_vendor_function_groups "; $sql .= "where device_vendor_function_group_uuid = '".$device_vendor_function_group_uuid."' "; $db->exec(check_sql($sql)); //redirect the browser messages::add($text['message-delete']); header("Location: device_vendor_function_edit.php?id=".$device_vendor_function_uuid ."&device_vendor_uuid=".$device_vendor_uuid); return; } //check permissions require_once "resources/check_auth.php"; if (permission_exists('device_vendor_function_add') || permission_exists('device_vendor_function_edit')) { //access granted } else { echo "access denied"; exit; } //action add or update if (isset($_REQUEST["id"])) { $action = "update"; $device_vendor_function_uuid = check_str($_REQUEST["id"]); } else { $action = "add"; } //add multi-lingual support $language = new text; $text = $language->get(); //set the parent uuid if (strlen($_GET["device_vendor_uuid"]) > 0) { $device_vendor_uuid = check_str($_GET["device_vendor_uuid"]); } //get http post variables and set them to php variables if (count($_POST)>0) { //$label = check_str($_POST["label"]); $name = check_str($_POST["name"]); $value = check_str($_POST["value"]); $enabled = check_str($_POST["enabled"]); $description = check_str($_POST["description"]); } //process the http variables if (count($_POST) > 0 && strlen($_POST["persistformvar"]) == 0) { //get the uuid if ($action == "update") { $device_vendor_function_uuid = check_str($_POST["device_vendor_function_uuid"]); } //check for all required data $msg = ''; //if (strlen($label) == 0) { $msg .= $text['message-required']." ".$text['label-label']."
\n"; } if (strlen($name) == 0) { $msg .= $text['message-required']." ".$text['label-name']."
\n"; } if (strlen($value) == 0) { $msg .= $text['message-required']." ".$text['label-value']."
\n"; } if (strlen($enabled) == 0) { $msg .= $text['message-required']." ".$text['label-enabled']."
\n"; } //if (strlen($description) == 0) { $msg .= $text['message-required']." ".$text['label-description']."
\n"; } if (strlen($msg) > 0 && strlen($_POST["persistformvar"]) == 0) { require_once "resources/header.php"; require_once "resources/persist_form_var.php"; echo "
\n"; echo "
\n"; echo $msg."
"; echo "
\n"; persistformvar($_POST); echo "
\n"; require_once "resources/footer.php"; return; } //add or update the database if ($_POST["persistformvar"] != "true") { //add vendor functions if ($action == "add" && permission_exists('device_vendor_function_add')) { $device_vendor_function_uuid = uuid(); $sql = "insert into v_device_vendor_functions "; $sql .= "("; $sql .= "device_vendor_function_uuid, "; $sql .= "device_vendor_uuid, "; //$sql .= "label, "; $sql .= "name, "; $sql .= "value, "; $sql .= "enabled, "; $sql .= "description "; $sql .= ")"; $sql .= "values "; $sql .= "("; $sql .= "'".$device_vendor_function_uuid."', "; $sql .= "'$device_vendor_uuid', "; //$sql .= "'$label', "; $sql .= "'$name', "; $sql .= "'$value', "; $sql .= "'$enabled', "; $sql .= "'$description' "; $sql .= ")"; $db->exec(check_sql($sql)); unset($sql); } //if ($action == "add") //update vendor functions if ($action == "update" && permission_exists('device_vendor_function_edit')) { $sql = "update v_device_vendor_functions set "; $sql .= "device_vendor_uuid = '$device_vendor_uuid', "; //$sql .= "label = '$label', "; $sql .= "name = '$name', "; $sql .= "value = '$value', "; $sql .= "enabled = '$enabled', "; $sql .= "description = '$description' "; $sql .= "where device_vendor_function_uuid = '$device_vendor_function_uuid'"; $db->exec(check_sql($sql)); unset($sql); } //if ($action == "update") //add a group to the menu if (permission_exists('device_vendor_function_add') && $_REQUEST["group_uuid_name"] != '') { //get the group uuid and group_name $group_data = explode('|', check_str($_REQUEST["group_uuid_name"])); $group_uuid = $group_data[0]; $group_name = $group_data[1]; //add the group to the menu if (strlen($device_vendor_function_uuid) > 0) { $device_vendor_function_group_uuid = uuid(); $sql = "insert into v_device_vendor_function_groups "; $sql .= "("; $sql .= "device_vendor_function_group_uuid, "; $sql .= "device_vendor_function_uuid, "; $sql .= "device_vendor_uuid, "; $sql .= "group_name, "; $sql .= "group_uuid "; $sql .= ")"; $sql .= "values "; $sql .= "("; $sql .= "'".$device_vendor_function_group_uuid."', "; $sql .= "'".$device_vendor_function_uuid."', "; $sql .= "'".$device_vendor_uuid."', "; $sql .= "'".$group_name."', "; $sql .= "'".$group_uuid."' "; $sql .= ")"; $db->exec($sql); } } //redirect the user $_SESSION["message"] = $text['message-'.$action]; header("Location: device_vendor_function_edit.php?id=".$device_vendor_function_uuid ."&device_vendor_uuid=".$device_vendor_uuid); return; } //if ($_POST["persistformvar"] != "true") } //(count($_POST)>0 && strlen($_POST["persistformvar"]) == 0) //pre-populate the form if (count($_GET) > 0 && $_POST["persistformvar"] != "true") { $device_vendor_function_uuid = check_str($_GET["id"]); $sql = "select * from v_device_vendor_functions "; $sql .= "where device_vendor_function_uuid = '$device_vendor_function_uuid' "; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); $device_vendor_functions = $prep_statement->fetchAll(PDO::FETCH_NAMED); foreach ($device_vendor_functions as &$row) { //$label = $row["label"]; $name = $row["name"]; $value = $row["value"]; $enabled = $row["enabled"]; $description = $row["description"]; } unset ($prep_statement); } //group groups assigned $sql = "select "; $sql .= " fg.*, g.domain_uuid as group_domain_uuid "; $sql .= "from "; $sql .= " v_device_vendor_function_groups as fg, "; $sql .= " v_groups as g "; $sql .= "where "; $sql .= " fg.group_uuid = g.group_uuid "; $sql .= " and fg.device_vendor_uuid = :device_vendor_uuid "; //$sql .= " and fg.device_vendor_uuid = '$device_vendor_uuid' "; $sql .= " and fg.device_vendor_function_uuid = :device_vendor_function_uuid "; //$sql .= " and fg.device_vendor_function_uuid = '$device_vendor_function_uuid' "; $sql .= "order by "; $sql .= " g.domain_uuid desc, "; $sql .= " g.group_name asc "; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->bindParam(':device_vendor_uuid', $device_vendor_uuid); $prep_statement->bindParam(':device_vendor_function_uuid', $device_vendor_function_uuid); $prep_statement->execute(); $function_groups = $prep_statement->fetchAll(PDO::FETCH_NAMED); unset($sql, $prep_statement); //set the assigned_groups array if (is_array($menu_item_groups)) { foreach($menu_item_groups as $field) { if (strlen($field['group_name']) > 0) { $assigned_groups[] = $field['group_uuid']; } } } //get the groups $sql = "select * from v_groups "; if (sizeof($assigned_groups) > 0) { $sql .= "where group_uuid not in ('".implode("','",$assigned_groups)."') "; } $sql .= "order by domain_uuid desc, group_name asc "; $prep_statement = $db->prepare(check_sql($sql)); $prep_statement->execute(); $groups = $prep_statement->fetchAll(PDO::FETCH_NAMED); unset($sql, $prep_statement); //show the header require_once "resources/header.php"; //show the content echo "
\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; //echo "\n"; //echo "\n"; //echo "\n"; //echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; //echo "
\n";
	//print_r($function_groups);
	//echo "
\n"; echo " "; echo " "; echo " "; echo " "; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo "\n"; echo " \n"; echo " \n"; echo " "; echo "
".$text['title-device_vendor_function']."

\n"; echo " "; echo " "; echo "
\n"; //echo " ".$text['label-label']."\n"; //echo "\n"; //echo " \n"; //echo "
\n"; //echo $text['description-label']."\n"; //echo "
\n"; echo " ".$text['label-name']."\n"; echo "\n"; echo " \n"; echo "
\n"; echo $text['description-name']."\n"; echo "
\n"; echo " ".$text['label-value']."\n"; echo "\n"; echo " \n"; echo "
\n"; echo $text['description-value']."\n"; echo "
".$text['label-groups'].""; if (is_array($function_groups)) { echo "\n"; foreach($function_groups as $field) { if (strlen($field['group_name']) > 0) { echo "\n"; echo " \n"; if (permission_exists('group_member_delete') || if_group("superadmin")) { echo " "; } echo "\n"; } } echo "
"; echo $field['group_name'].(($field['group_domain_uuid'] != '') ? "@".$_SESSION['domains'][$field['group_domain_uuid']]['domain_name'] : null); echo " "; echo "".$v_link_label_delete.""; echo "
\n"; } if (is_array($groups)) { echo "
\n"; echo ""; echo "\n"; } echo "
\n"; echo " ".$text['label-enabled']."\n"; echo "\n"; echo " \n"; echo "
\n"; echo $text['description-enabled']."\n"; echo "
\n"; echo " ".$text['label-description']."\n"; echo "\n"; echo " \n"; echo "
\n"; echo $text['description-description']."\n"; echo "
\n"; echo " \n"; if ($action == "update") { echo " \n"; } echo " \n"; echo "
"; echo "
"; echo "

"; //include the footer require_once "resources/footer.php"; ?>