File: /home/awaldron/www/archive/demo/content_edit_access.php
<?php
session_start();
?>
<html>
<head>
<title>Vocollect Inc. : Edit Content Access</title>
</head>
<link rel="stylesheet" type="text/css" href="default.css">
<body style="margin:15px;">
<?php
include("_functions.php");
dbconnect();
if (!authorize(get_owners($_GET["p"]))) { // CHECK IF USER ATTEMPTING THE EDIT IS AUTHORIZED TO EDIT
echo "<br><br><br>".error("You do not have the proper privileges to edit this content.")."<br><br><br>";
} else {
if (isset($_POST["formsubmit"]) && zero($_POST["group"]) && zero($_POST["indiv"]) && zero($_POST["emponly"])) {
unset($_POST);
$_POST["clearall"] = 1;
}
$sql = "SELECT * FROM tbl_pages WHERE page_id=".$_GET["p"];
$result = mysql_query($sql);
$p = mysql_fetch_array($result);
// CLEAR ALL ACCESS RESTRICTIONS
if (isset($_POST["clearall"])) {
// DELETE PGROUP DEFINITIONS
$del1 = quickUPDATE("DELETE FROM tbl_pgroup_user WHERE pgroup_id=".$p["page_access"]);
$del2 = quickUPDATE("DELETE FROM tbl_pgroup_orggroup WHERE pgroup_id=".$p["page_access"]);
$del3 = quickUPDATE("DELETE FROM tbl_pgroup WHERE pgroup_id=".$p["page_access"]);
$upd1 = quickUPDATE("UPDATE tbl_pages SET page_access=0 WHERE page_id=".$_GET["p"]);
}
$sql = "SELECT * FROM tbl_pages WHERE page_id=".$_GET["p"];
$result = mysql_query($sql);
$p = mysql_fetch_array($result);
// SUBMIT THE FORM
if (isset($_POST["formsubmit"])) {
if (zero($p["page_access"])) { // CREATE A NEW PGROUP FOR THIS PAGE
// BUILD NEW PGROUP ROW
$sql = "INSERT INTO tbl_pgroup (pgroup_name, pgroup_mod, pgroup_desc, pgroup_status, pgroup_edit, pgroup_emponly) VALUES (";
$sql .= "'Permissions for Page ID: ".$_GET["p"]."',";
$sql .= "'".$_SESSION["auth_user"]."',";
$sql .= "'Permissions Group that controlls access for Page ID: ".$_GET["p"]." (".addslashes($p["page_title"]).")',";
$sql .= "0,1,";
$sql .= (isset($_POST["emponly"])?"1":"0");
$sql .= ")";
//echo $sql."<P>";
$res = quickUPDATE($sql);
// GET THE NEW PGROUP_ID
$pgid = quickSQL("SELECT MAX(pgroup_id) FROM tbl_pgroup WHERE 1");
//echo $pgid."<P>";
// BUILD INDIVIDUALS LIST
if (is_array($_POST["indiv"])) for ($i=0; $i < count($_POST["indiv"]); $i++ ) quickUPDATE("INSERT INTO tbl_pgroup_user (pgroup_id,username) VALUES (".$pgid.",'".$_POST["indiv"][$i]."')");
// BUILD WORK GROUP LIST
if (is_array($_POST["group"])) for ($i=0; $i < count($_POST["group"]); $i++ ) quickUPDATE("INSERT INTO tbl_pgroup_orggroup (pgroup_id,group_id) VALUES (".$pgid.",'".$_POST["group"][$i]."')");
// UPDATE PAGE ROW: ADD PGROUP_ID
$pud = quickUPDATE("UPDATE tbl_pages SET page_access=".$pgid." WHERE page_id=".$_GET["p"]);
} else { // UPDATE EXISTING PGROUP
// DELETE PREVIOUS PGROUP DEFINITIONS
$del1 = quickUPDATE("DELETE FROM tbl_pgroup_user WHERE pgroup_id=".$p["page_access"]);
$del2 = quickUPDATE("DELETE FROM tbl_pgroup_orggroup WHERE pgroup_id=".$p["page_access"]);
// UPDATE PGROUP ROW
$upd1 = quickUPDATE("UPDATE tbl_pgroup SET pgroup_emponly=".(isset($_POST["emponly"])?"1":"0")." WHERE pgroup_id=".$p["page_access"]);
// BUILD INDIVIDUALS LIST
if (is_array($_POST["indiv"])) for ($i=0; $i < count($_POST["indiv"]); $i++ ) quickUPDATE("INSERT INTO tbl_pgroup_user (pgroup_id,username) VALUES (".$p["page_access"].",'".$_POST["indiv"][$i]."')");
// BUILD WORK GROUP LIST
if (is_array($_POST["group"])) for ($i=0; $i < count($_POST["group"]); $i++ ) quickUPDATE("INSERT INTO tbl_pgroup_orggroup (pgroup_id,group_id) VALUES (".$p["page_access"].",'".$_POST["group"][$i]."')");
}
// GRAB PAGE INFO AGAIN
$sql = "SELECT * FROM tbl_pages WHERE page_id=".$_GET["p"];
$result = mysql_query($sql);
$p = mysql_fetch_array($result);
}
if (!zero($p["page_access"])) {
$users = build_pgroup($p["page_access"],$_GET["p"]);
$parts = build_pgroup_parts($p["page_access"]);
$emponly = quickSQL("SELECT pgroup_emponly FROM tbl_pgroup WHERE pgroup_id=".$p["page_access"]);
}
echo "<P><span id=\"subblue\">".$p["page_title"]."</span>\n";
echo "<P>Select the groups and/or individuals who will have access to this page.\n";
echo "<br><li> Hold CTRL+Click to select multiple options.\n";
echo "<P><table border=0><tr>\n";
echo "<form name=\"pgroup\" action=\"".self()."\" method=\"post\">\n";
echo "<td valign=\"top\"><div id=\"heading\">Individuals</div>\n";
echo "<div id=\"box\"><SELECT name=\"indiv[]\" size=15 MULTIPLE>\n";
employee_select($parts["users"]);
echo "</SELECT></div></td>\n";
echo "<td valign=\"top\"><div id=\"heading\">Departments</div>\n";
echo "<div id=\"box\"><SELECT name=\"group[]\" size=15 MULTIPLE>\n";
group_select(0,0,$parts["groups"]);
echo "</SELECT></div></td>\n";
echo "<td valign=\"top\" width=100%><div id=\"heading\">Filters</div>\n";
echo "<div id=\"box\">\n";
echo "<input type=\"checkbox\" name=\"emponly\"".($emponly==1?" CHECKED":"")."> Exclude Contractors\n";
echo "</div><br><br><br><center><input type=\"submit\" value=\"Submit\" name=\"formsubmit\" class=\"btn\"></center></td>\n";
echo "</form></tr></table>\n";
if (!zero($p["page_access"])) echo "<center><form name=\"clearall\" action=\"".self()."\" method=\"post\"><input type=\"submit\" name=\"clearall\" value=\"Remove all access restrictions for this page.\" class=\"btn\"></form></center>\n";
echo "<P><b><u>Users who currently have access to this page:</u></b><br>\n";
if (!$users && $emponly) echo "Everyone except contractors may view this page.\n";
else if (!$users) echo "Everyone may view this page.\n";
else {
for ($i=0; $i < count($users); $i++) {
if (!zero($users[$i])) { if ($i > 0) echo ", "; echo $users[$i]; }
}
}
}
?>
</body>
</html>