Skip to content
Snippets Groups Projects
user-attribute-change.php 5.21 KiB
Newer Older
Nigel Kukard's avatar
Nigel Kukard committed
# Radius User Attribute Change
# Copyright (C) 2007-2009, AllWorldIT
# 
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.



include_once("includes/header.php");
include_once("includes/footer.php");
include_once("includes/db.php");
include_once("includes/tooltips.php");



$db = connect_db();



printHeader(array(
		"Tabs" => array(
Robert Anderson's avatar
Robert Anderson committed
			"Back to user list" => "user-main.php",
Robert Anderson's avatar
Robert Anderson committed
if (isset($_POST['frmaction']) && $_POST['frmaction'] == "change") {
	# Check an attribute was selected
	if (isset($_POST['attr_id'])) {
		# Prepare statement
Robert Anderson's avatar
Robert Anderson committed
		$sql = "SELECT ID, Name, Operator, Value, Disabled FROM ${DB_TABLE_PREFIX}user_attributes WHERE ID = ".$db->quote($_POST['attr_id']);
		$res = $db->query($sql); 
		$row = $res->fetchObject();
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

		<p class="pageheader">Update User</p>

Robert Anderson's avatar
Robert Anderson committed
		<form action="user-attribute-change.php" method="post">
			<div>
				<input type="hidden" name="frmaction" value="change2" />
				<input type="hidden" name="attr_id" value="<?php echo $_POST['attr_id']; ?>" />
			</div>
			<table class="entry" style="width: 75%;">
				<tr>
					<td></td>
					<td class="entrytitle textcenter">Old Value</td>
					<td class="entrytitle textcenter">New Value</td>
				</tr>
				<tr>
					<td class="entrytitle texttop">
						Name
						<?php tooltip('user_attributes_name'); ?>
					</td>
Robert Anderson's avatar
Robert Anderson committed
					<td class="oldval texttop"><?php echo $row->name; ?></td>
Robert Anderson's avatar
Robert Anderson committed
					<td><textarea name="user_attributes_name" cols="40" rows="1"></textarea></td>
				</tr>
				<tr>
					<td class="entrytitle texttop">
						Operator
					</td>
Robert Anderson's avatar
Robert Anderson committed
					<td class="oldval texttop"><?php echo $row->operator; ?></td>
Robert Anderson's avatar
Robert Anderson committed
					<td>
						<select name="user_attributes_operator">
							<option value="=">=</option>
							<option value="==">==</option>
							<option value=":=">:=</option>
							<option value="+=">+=</option>
							<option value="!=">!=</option>
Robert Anderson's avatar
Robert Anderson committed
							<option value=">">&gt;</option>
							<option value="<">&lt;</option>
							<option value=">=">&gt;=</option>
							<option value="<=">&lt;=</option>
Robert Anderson's avatar
Robert Anderson committed
							<option value="=~">=~</option>
							<option value="!~">!~</option>
							<option value="=*">=*</option>
							<option value="!*">!*</option>
							<option value="||=">||=</option>
							<option value="||==">||==</option>
Robert Anderson's avatar
Robert Anderson committed
						</select>
Robert Anderson's avatar
Robert Anderson committed
					</td>
				</tr>
				<tr>
					<td class="entrytitle texttop">Value</td>
Robert Anderson's avatar
Robert Anderson committed
					<td class="oldval texttop"><?php echo $row->value; ?></td>
					<td><textarea name="user_attributes_value" cols="40" rows="5"></textarea></td>
				</tr>
				<tr>
					<td class="entrytitle">Disabled</td>
Robert Anderson's avatar
Robert Anderson committed
					<td class="oldval"><?php echo $row->disabled ? 'yes' : 'no'; ?></td>
Robert Anderson's avatar
Robert Anderson committed
						<select name="user_attributes_disabled">
							<option value="">--</option>
							<option value="0">No</option>
							<option value="1">Yes</option>
Robert Anderson's avatar
Robert Anderson committed
						</select>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

			<div class="textcenter">
				<input type="submit" />
			</div>
		</form>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

	$res->closeCursor();
	} else {
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed
		<div class="warning">No attribute selected</div>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed
<?php
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed
	}
Robert Anderson's avatar
Robert Anderson committed
} elseif (isset($_POST['frmaction']) && $_POST['frmaction'] == "change2") {

Robert Anderson's avatar
Robert Anderson committed

	<p class="pageheader">Attribute Update Results</p>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

	# Check an attribute was selected
	if (isset($_POST['attr_id'])) {
Robert Anderson's avatar
Robert Anderson committed

		$updates = array();

		if (!empty($_POST['user_attributes_name'])) {
			array_push($updates,"Name = ".$db->quote($_POST['user_attributes_name']));
		}
		if (isset($_POST['user_attributes_operator']) && $_POST['user_attributes_operator'] != "") {
			array_push($updates,"Operator = ".$db->quote($_POST['user_attributes_operator']));
		}
		if (!empty($_POST['user_attributes_value'])) {
			array_push($updates,"Value = ".$db->quote($_POST['user_attributes_value']));
		}
		if (isset($_POST['user_attributes_disabled']) && $_POST['user_attributes_disabled'] != "") {
			array_push($updates ,"Disabled = ".$db->quote($_POST['user_attributes_disabled']));
		}

		# Check if we have updates
		if (sizeof($updates) > 0) {
			$updateStr = implode(', ',$updates);
Robert Anderson's avatar
Robert Anderson committed

			$res = $db->exec("UPDATE ${DB_TABLE_PREFIX}user_attributes SET $updateStr WHERE ID = ".$db->quote($_POST['attr_id']));
			if ($res) {
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

				<div class="notice">Attribute updated</div>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

				<div class="warning">Error updating attribute</div>
				<div class="warning"><?php print_r($db->errorInfo()) ?></div>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed
			}
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

			<div class="warning">No attribute updates</div>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed
		}
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

		<div class="error">No attribute data available</div>

Robert Anderson's avatar
Robert Anderson committed
<?php
Robert Anderson's avatar
Robert Anderson committed
	}
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed

	<div class="warning">Invalid invocation</div>
Robert Anderson's avatar
Robert Anderson committed

Robert Anderson's avatar
Robert Anderson committed