diff --git a/webgui/include/ajax/functions/AdminGroupAttributes.php b/webgui/include/ajax/functions/AdminGroupAttributes.php
index 1ba948b0dc1ee70ca66fbcf63ea9868e94ef9500..ca2b05dfa0f72478b110d169782095b562cb7f3d 100644
--- a/webgui/include/ajax/functions/AdminGroupAttributes.php
+++ b/webgui/include/ajax/functions/AdminGroupAttributes.php
@@ -2,7 +2,7 @@
 
 include_once("include/db.php");
 
-# Add user attribute
+# Add group attribute
 function addAdminGroupAttribute($params) {
 
 	$res = DBDo("
@@ -24,7 +24,7 @@ function addAdminGroupAttribute($params) {
 	return NULL;
 }
 
-# Remove user attribute
+# Remove group attribute
 function removeAdminGroupAttribute($params) {
 
 	$res = DBDo("DELETE FROM group_attributes WHERE ID = ?",array($params[0]));
@@ -35,7 +35,7 @@ function removeAdminGroupAttribute($params) {
 	return NULL;
 }
 
-# Edit attribute
+# Edit group attribute
 function updateAdminGroupAttribute($params) {
 
 	$res = DBDo("UPDATE group_attributes SET Name = ?, Operator = ?, Value = ?, Disabled = ? WHERE ID = ?",
@@ -86,6 +86,7 @@ function getAdminGroupAttributes($params) {
 		'Disabled' => 'group_attributes.Disabled'
 	);
 
+	# Fetch attributes
 	$res = DBSelectSearch("
 			SELECT 
 				ID, Name, Operator, Value, Disabled 
@@ -103,7 +104,7 @@ function getAdminGroupAttributes($params) {
 
 	$resultArray = array();
 
-	# loop through rows
+	# Loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -113,10 +114,11 @@ function getAdminGroupAttributes($params) {
 		$item['Value'] = $row->value;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminGroupMembers.php b/webgui/include/ajax/functions/AdminGroupMembers.php
index 4fb739035784ce662d819bb7c524ab81437cf2db..f848c126ed959129ff94861564b7396d4b8676d5 100644
--- a/webgui/include/ajax/functions/AdminGroupMembers.php
+++ b/webgui/include/ajax/functions/AdminGroupMembers.php
@@ -23,6 +23,7 @@ function getAdminGroupMembers($params) {
 		'Disabled' => 'group_attributes.Disabled'
 	);
 
+	# Fetch members
 	$res = DBSelectSearch("
 			SELECT 
 				users_to_groups.ID, users.Username, users.Disabled 
@@ -35,14 +36,15 @@ function getAdminGroupMembers($params) {
 		",$params[1],$filtersorts,$filtersorts);
 
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
-	$resultArray = array();
 
-	# loop through rows
+	# Loop through rows
+	$resultArray = array();
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -50,7 +52,7 @@ function getAdminGroupMembers($params) {
 		$item['Username'] = $row->username;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
diff --git a/webgui/include/ajax/functions/AdminGroups.php b/webgui/include/ajax/functions/AdminGroups.php
index 1870a45bfc0a107368f065d43f9db9c7f90376dd..c7711d2c59714e1ab81b7db87e14d34ae9fa99f3 100644
--- a/webgui/include/ajax/functions/AdminGroups.php
+++ b/webgui/include/ajax/functions/AdminGroups.php
@@ -15,16 +15,17 @@ function getAdminGroups($params) {
 		'Comment' => 'groups.Comment'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("SELECT ID, Name, Priority, Disabled, Comment FROM groups",$params[1],$filtersorts,$filtersorts);
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -34,23 +35,27 @@ function getAdminGroups($params) {
 		$item['Disabled'] = $row->disabled;
 		$item['Comment'] = $row->comment;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
 # Return specific group row
 function getAdminGroup($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Name, Priority, Disabled, Comment FROM groups WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
@@ -59,6 +64,7 @@ function getAdminGroup($params) {
 	$resultArray['Disabled'] = $row->disabled;
 	$resultArray['Comment'] = $row->comment;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -96,7 +102,10 @@ function removeAdminGroup($params) {
 # Add admin group
 function createAdminGroup($params) {
 
+	# Perform query
 	$res = DBDo("INSERT INTO groups (Name) VALUES (?)",array($params[0]['Name']));
+
+	# Return error if failed
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -107,7 +116,10 @@ function createAdminGroup($params) {
 # Edit admin group
 function updateAdminGroup($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE groups SET Name = ? WHERE ID = ?",array($params[0]['Name'],$params[0]['ID']));
+
+	# Return error if failed
 	if (!is_numeric($res)) {
 		return $res;
 	}
diff --git a/webgui/include/ajax/functions/AdminRealmAttributes.php b/webgui/include/ajax/functions/AdminRealmAttributes.php
index 5dfcefaf88102ed0f7dd44399bb3eda1bfd79b35..bd97b2ccb15a3a7c1b1029dd974f201f319bb55d 100644
--- a/webgui/include/ajax/functions/AdminRealmAttributes.php
+++ b/webgui/include/ajax/functions/AdminRealmAttributes.php
@@ -2,9 +2,10 @@
 
 include_once("include/db.php");
 
-# Add user attribute
+# Add realm attribute
 function addAdminRealmAttribute($params) {
 
+	# Perform query
 	$res = DBDo("
 				INSERT INTO 
 						realm_attributes (RealmID,Name,Operator,Value,Disabled) 
@@ -17,6 +18,7 @@ function addAdminRealmAttribute($params) {
 						$params[0]['Disabled'])
 	);
 
+	# Return error if failed
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -24,10 +26,13 @@ function addAdminRealmAttribute($params) {
 	return NULL;
 }
 
-# Remove user attribute
+# Remove realm attribute
 function removeAdminRealmAttribute($params) {
 
+	# Perform query
 	$res = DBDo("DELETE FROM realm_attributes WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -35,9 +40,10 @@ function removeAdminRealmAttribute($params) {
 	return NULL;
 }
 
-# Edit attribute
+# Edit realm attribute
 function updateAdminRealmAttribute($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE realm_attributes SET Name = ?, Operator = ?, Value = ?, Disabled = ? WHERE ID = ?",
 				array($params[0]['Name'],
 				$params[0]['Operator'],
@@ -46,6 +52,7 @@ function updateAdminRealmAttribute($params) {
 				$params[0]['ID'])
 	);
 
+	# Return error if failed
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -56,13 +63,16 @@ function updateAdminRealmAttribute($params) {
 # Return specific attribute row
 function getAdminRealmAttribute($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Name, Operator, Value, Disabled FROM realm_attributes WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
@@ -71,6 +81,7 @@ function getAdminRealmAttribute($params) {
 	$resultArray['Value'] = $row->value;
 	$resultArray['Disabled'] = $row->disabled;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -86,6 +97,7 @@ function getAdminRealmAttributes($params) {
 		'Disabled' => 'realm_attributes.Disabled'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				ID, Name, Operator, Value, Disabled 
@@ -94,16 +106,15 @@ function getAdminRealmAttributes($params) {
 			WHERE 
 				RealmID = ".DBQuote($params[0])."
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -113,10 +124,11 @@ function getAdminRealmAttributes($params) {
 		$item['Value'] = $row->value;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminRealms.php b/webgui/include/ajax/functions/AdminRealms.php
index d78d0392e8760118f04cf74fd26d61257fb302dc..2912c6951d28932468181a98605d4c80e81727a8 100644
--- a/webgui/include/ajax/functions/AdminRealms.php
+++ b/webgui/include/ajax/functions/AdminRealms.php
@@ -13,16 +13,17 @@ function getAdminRealms($params) {
 		'Disabled' => 'realms.Disabled'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("SELECT ID, Name, Disabled FROM realms",$params[1],$filtersorts,$filtersorts);
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -30,29 +31,34 @@ function getAdminRealms($params) {
 		$item['Name'] = $row->name;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
 # Return specific realm row
 function getAdminRealm($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Name, Disabled FROM realms WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
 	$resultArray['Name'] = $row->name;
 	$resultArray['Disabled'] = $row->disabled;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -62,9 +68,10 @@ function removeAdminRealm($params) {
 	# Begin transaction
 	DBBegin();
 
-	# Delete user attribtues
+	# Perform query
 	$res = DBDo("DELETE FROM realm_attributes WHERE RealmID = ?",array($params[0]));
 
+	# Perform next query if successful
 	if ($res !== FALSE) {
 		$res = DBDo("DELETE FROM realms WHERE ID = ?",array($params[0]));
 	}
@@ -84,7 +91,10 @@ function removeAdminRealm($params) {
 # Add admin realm
 function createAdminRealm($params) {
 
+	# Perform query
 	$res = DBDo("INSERT INTO realms (Name) VALUES (?)",array($params[0]['Name']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -95,7 +105,10 @@ function createAdminRealm($params) {
 # Edit admin realm
 function updateAdminRealm($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE realms SET Name = ? WHERE ID = ?",array($params[0]['Name'],$params[0]['ID']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
diff --git a/webgui/include/ajax/functions/AdminUserAttributes.php b/webgui/include/ajax/functions/AdminUserAttributes.php
index 2f5f32fd4a8d23a7a0e19bd003dff51a7e8ba2bc..47d1834960634535fd1d376ad5a49d1afece3a15 100644
--- a/webgui/include/ajax/functions/AdminUserAttributes.php
+++ b/webgui/include/ajax/functions/AdminUserAttributes.php
@@ -5,6 +5,7 @@ include_once("include/db.php");
 # Add user attribute
 function addAdminUserAttribute($params) {
 
+	# Perform query
 	$res = DBDo("
 				INSERT INTO 
 						user_attributes (UserID,Name,Operator,Value,Disabled) 
@@ -17,6 +18,7 @@ function addAdminUserAttribute($params) {
 						$params[0]['Disabled'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -27,7 +29,10 @@ function addAdminUserAttribute($params) {
 # Remove user attribute
 function removeAdminUserAttribute($params) {
 
+	# Perform query
 	$res = DBDo("DELETE FROM user_attributes WHERE ID = ?",array($params[0]));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -38,6 +43,7 @@ function removeAdminUserAttribute($params) {
 # Edit attribute
 function updateAdminUserAttribute($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE user_attributes SET Name = ?, Operator = ?, Value = ?, Disabled = ? WHERE ID = ?",
 				array($params[0]['Name'],
 				$params[0]['Operator'],
@@ -46,6 +52,7 @@ function updateAdminUserAttribute($params) {
 				$params[0]['ID'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -56,13 +63,16 @@ function updateAdminUserAttribute($params) {
 # Return specific attribute row
 function getAdminUserAttribute($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Name, Operator, Value, Disabled FROM user_attributes WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
@@ -71,6 +81,7 @@ function getAdminUserAttribute($params) {
 	$resultArray['Value'] = $row->value;
 	$resultArray['Disabled'] = $row->disabled;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -86,6 +97,7 @@ function getAdminUserAttributes($params) {
 		'Disabled' => 'user_attributes.Disabled'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				ID, Name, Operator, Value, Disabled 
@@ -94,16 +106,15 @@ function getAdminUserAttributes($params) {
 			WHERE 
 				UserID = ".DBQuote($params[0])."
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
@@ -113,10 +124,11 @@ function getAdminUserAttributes($params) {
 		$item['Value'] = $row->value;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminUserGroups.php b/webgui/include/ajax/functions/AdminUserGroups.php
index f043c6afd95cacefa2c47b58997c7c208a099132..3a9a3499f3ace39a1ab2a0bd23554b385cdb3fa6 100644
--- a/webgui/include/ajax/functions/AdminUserGroups.php
+++ b/webgui/include/ajax/functions/AdminUserGroups.php
@@ -6,7 +6,10 @@ include_once("include/db.php");
 # Link user to group
 function addAdminUserGroup($params) {
 
+	# Perform query
 	$res = DBDo("INSERT INTO users_to_groups (UserID,GroupID) VALUES (?,?)",array($params[0]['UserID'],$params[0]['GroupID']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -17,7 +20,10 @@ function addAdminUserGroup($params) {
 # Unlink user from group
 function removeAdminUserGroup($params) {
 
+	# Perform query
 	$res = DBDo("DELETE FROM users_to_groups WHERE ID = ?",array($params[0]));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -34,6 +40,7 @@ function getAdminUserGroups($params) {
 		'Name' => 'groups.Name'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				users_to_groups.ID, groups.Name 
@@ -43,26 +50,26 @@ function getAdminUserGroups($params) {
 				users_to_groups.GroupID = groups.ID
 				AND users_to_groups.UserID = ".DBQuote($params[0])."
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Name'] = $row->name;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminUserLogs.php b/webgui/include/ajax/functions/AdminUserLogs.php
index 0ca9dd495678feb823653017f453e2706203dc4e..e38a71866a0c0dcce4601d30895ca6bd1ebec9f1 100644
--- a/webgui/include/ajax/functions/AdminUserLogs.php
+++ b/webgui/include/ajax/functions/AdminUserLogs.php
@@ -3,7 +3,7 @@
 include_once("include/db.php");
 
 
-# Return list of users
+# Return list of user logs
 function getAdminUserLogs($params) {
 
 	# Filters and sorts are the same here
@@ -21,6 +21,7 @@ function getAdminUserLogs($params) {
 		'FramedIPAddress' => 'accounting.FramedIPAddress',
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 				SELECT
 					accounting.ID,
@@ -46,16 +47,15 @@ function getAdminUserLogs($params) {
 				AND
 					users.ID = ".DBQuote($params[0])."
 					",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 
 		# Input
@@ -79,15 +79,14 @@ function getAdminUserLogs($params) {
 			$acctOutputMbyte += ($row->acctoutputgigawords * 4096);
 		}
 
+		# Build array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
-
 		# Convert to ISO format	
 		$date = new DateTime($row->eventtimestamp);
 		$value = $date->format("Y-m-d H:i:s");
 		$item['EventTimestamp'] = $value;
-
 		$item['AcctStatusType'] = $row->acctstatustype;
 		$item['ServiceType'] = $row->servicetype;
 		$item['FramedProtocol'] = $row->framedprotocol;
@@ -101,10 +100,11 @@ function getAdminUserLogs($params) {
 		$item['AcctOutputMbyte'] = $acctOutputMbyte;
 		$item['ConnectTermReason'] = strRadiusTermCode($row->servicetype);
 
-		# push this row onto array
+		# Push this row onto main array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminUserTopups.php b/webgui/include/ajax/functions/AdminUserTopups.php
index 103a4a15d4bac3a940ce5407ae47972e0d086d71..a22ea0b430bb2f16064c7e6f1f62677c93b79a94 100644
--- a/webgui/include/ajax/functions/AdminUserTopups.php
+++ b/webgui/include/ajax/functions/AdminUserTopups.php
@@ -6,12 +6,16 @@ include_once("include/db.php");
 # Add new topup
 function createAdminUserTopup($params) {
 
+	# Get today's date
 	$timestamp = date('Y-m-d H:i:s');
+
+	# Perform query
 	$res = DBDo("INSERT INTO topups (UserID,Timestamp,Type,Value,ValidFrom,ValidTo) VALUES (?,?,?,?,?,?)",
 			array($params[0]['UserID'],$timestamp,$params[0]['Type'],$params[0]['Value'],$params[0]['ValidFrom'],
 					$params[0]['ValidTo'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -22,6 +26,7 @@ function createAdminUserTopup($params) {
 # Edit topup
 function updateAdminUserTopup($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE topups SET Value = ?, Type = ?, ValidFrom = ?, ValidTo = ? WHERE ID = ?",
 				array($params[0]['Value'],
 				$params[0]['Type'],
@@ -30,6 +35,7 @@ function updateAdminUserTopup($params) {
 				$params[0]['ID'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -40,7 +46,10 @@ function updateAdminUserTopup($params) {
 # Delete user topup
 function removeAdminUserTopup($params) {
 
+	# Perform query
 	$res = DBDo("DELETE FROM topups WHERE ID = ?",array($params[0]));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -51,29 +60,31 @@ function removeAdminUserTopup($params) {
 # Return specific topup row
 function getAdminUserTopup($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Type, Value, ValidFrom, ValidTo FROM topups WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
 	$resultArray['Type'] = $row->type;
 	$resultArray['Value'] = $row->value;
-
 	# Convert to ISO format
 	$date = new DateTime($row->validfrom);
 	$value = $date->format("Y-m-d");
 	$resultArray['ValidFrom'] = $value;
-
 	# Convert to ISO format
 	$date = new DateTime($row->validto);
 	$value = $date->format("Y-m-d");
 	$resultArray['ValidTo'] = $value;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -89,6 +100,7 @@ function getAdminUserTopups($params) {
 		'ValidTo' => 'topups.ValidTo'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				ID, Timestamp, Type, Value, ValidFrom, ValidTo
@@ -102,38 +114,38 @@ function getAdminUserTopups($params) {
 				Timestamp
 			DESC
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Timestamp'] = $row->timestamp;
 		$item['Type'] = $row->type;
 		$item['Value'] = $row->value;
-
 		# Convert to ISO format
 		$date = new DateTime($row->validfrom);
 		$value = $date->format("Y-m-d");
 		$item['ValidFrom'] = $value;
-
 		# Convert to ISO format
 		$date = new DateTime($row->validto);
 		$value = $date->format("Y-m-d");
 		$item['ValidTo'] = $value;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/AdminUsers.php b/webgui/include/ajax/functions/AdminUsers.php
index 20482af6659552c27643ab2ba03d4abdaa55cde0..29496488302ac92969969114a72334c1469073f1 100644
--- a/webgui/include/ajax/functions/AdminUsers.php
+++ b/webgui/include/ajax/functions/AdminUsers.php
@@ -13,50 +13,58 @@ function getAdminUsers($params) {
 		'Disabled' => 'users.Disabled',
 	);
 
+	# Perform query
 	$res = DBSelectSearch("SELECT ID, Username, Disabled FROM users",$params[1],$filtersorts,$filtersorts);
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Username'] = $row->username;
 		$item['Disabled'] = $row->disabled;
 
-		# push this row onto array
+		# Push this row onto main array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
-# Return specific group row
+# Return specific user
 function getAdminUser($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Username, Disabled FROM users WHERE ID = ?",array($params[0]));
+
+	# Return error if failed
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
 	$resultArray['Username'] = $row->username;
 	$resultArray['Disabled'] = $row->disabled;
 
+	# Return results
 	return $resultArray;
 }
 
-# Remove admin group
+# Remove admin user
 function removeAdminUser($params) {
 
 	# Begin transaction
@@ -92,10 +100,13 @@ function removeAdminUser($params) {
 	return NULL;
 }
 
-# Add admin group
+# Add admin user
 function createAdminUser($params) {
 
+	# Perform query
 	$res = DBDo("INSERT INTO users (Username) VALUES (?)",array($params[0]['Username']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -103,10 +114,13 @@ function createAdminUser($params) {
 	return NULL;
 }
 
-# Edit admin group
+# Edit admin user
 function updateAdminUser($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE users SET Username = ? WHERE ID = ?",array($params[0]['Username'],$params[0]['ID']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
diff --git a/webgui/include/ajax/functions/WiSPLocationMembers.php b/webgui/include/ajax/functions/WiSPLocationMembers.php
index 06b80efbdf89e3e4b215e11002969a5e5a6bcb22..b9f69d1f46bbccaf86a9a5f843968acbc4e04120 100644
--- a/webgui/include/ajax/functions/WiSPLocationMembers.php
+++ b/webgui/include/ajax/functions/WiSPLocationMembers.php
@@ -2,10 +2,13 @@
 
 include_once("include/db.php");
 
-# Remove group attribute
+# Remove location member
 function removeWiSPLocationMember($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE wisp_userdata SET LocationID = NULL WHERE UserID = ?",array($params[0]));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -13,7 +16,7 @@ function removeWiSPLocationMember($params) {
 	return NULL;
 }
 
-# Return list of attributes
+# Return list of location members
 function getWiSPLocationMembers($params) {
 
 	# Filters and sorts are the same here
@@ -22,6 +25,7 @@ function getWiSPLocationMembers($params) {
 		'Username' => 'users.Username'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				users.ID, users.Username 
@@ -32,26 +36,28 @@ function getWiSPLocationMembers($params) {
 			AND
 				users.ID = wisp_userdata.UserID 
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Build array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Username'] = $row->username;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/WiSPLocations.php b/webgui/include/ajax/functions/WiSPLocations.php
index 104ea54620054c99a6524849beec02f56242d2d2..07f5110e089d478647f3ef6d42f864256c3de196 100644
--- a/webgui/include/ajax/functions/WiSPLocations.php
+++ b/webgui/include/ajax/functions/WiSPLocations.php
@@ -12,48 +12,56 @@ function getWiSPLocations($params) {
 		'Name' => 'wisp_locations.Name'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("SELECT ID, Name FROM wisp_locations",$params[1],$filtersorts,$filtersorts);
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Build array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Name'] = $row->name;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
 # Return specific location row
 function getWiSPLocation($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Name FROM wisp_locations WHERE ID = ?",array($params[0]));
+
+	# Return if error or nothing to return
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
 	$resultArray['Name'] = $row->name;
 
+	# Return results
 	return $resultArray;
 }
 
-# Remove admin group
+# Remove wisp location
 function removeWiSPLocation($params) {
 
 	# Begin transaction
@@ -79,10 +87,13 @@ function removeWiSPLocation($params) {
 	return NULL;
 }
 
-# Add admin group
+# Add wisp location
 function createWiSPLocation($params) {
 
+	# Perform query
 	$res = DBDo("INSERT INTO wisp_locations (Name) VALUES (?)",array($params[0]['Name']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -90,10 +101,13 @@ function createWiSPLocation($params) {
 	return NULL;
 }
 
-# Edit admin group
+# Edit wisp location
 function updateWiSPLocation($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE wisp_locations SET Name = ? WHERE ID = ?",array($params[0]['Name'],$params[0]['ID']));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
diff --git a/webgui/include/ajax/functions/WiSPUserLogs.php b/webgui/include/ajax/functions/WiSPUserLogs.php
index d8919a4027512e3348fcadd728c2348a014f9ec1..bf1f0874506c5911e0628634e9484b1159fd2161 100644
--- a/webgui/include/ajax/functions/WiSPUserLogs.php
+++ b/webgui/include/ajax/functions/WiSPUserLogs.php
@@ -3,7 +3,7 @@
 include_once("include/db.php");
 
 
-# Return list of users
+# Return list of user logs
 function getWiSPUserLogs($params) {
 
 	# Filters and sorts are the same here
@@ -21,6 +21,7 @@ function getWiSPUserLogs($params) {
 		'FramedIPAddress' => 'accounting.FramedIPAddress',
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 				SELECT
 					accounting.ID,
@@ -46,16 +47,15 @@ function getWiSPUserLogs($params) {
 				AND
 					users.ID = ".DBQuote($params[0])."
 					",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
 
 		# Input
@@ -68,7 +68,6 @@ function getWiSPUserLogs($params) {
 			$acctInputMbyte += ($row->acctinputgigawords * 4096);
 		}
 
-
 		# Output
 		$acctOutputMbyte = 0;
 
@@ -79,15 +78,14 @@ function getWiSPUserLogs($params) {
 			$acctOutputMbyte += ($row->acctoutputgigawords * 4096);
 		}
 
+		# Build array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
-
 		# Convert to ISO format
 		$date = new DateTime($row->eventtimestamp);
 		$value = $date->format("Y-m-d H:i:s");
 		$item['EventTimestamp'] = $value;
-
 		$item['AcctStatusType'] = $row->acctstatustype;
 		$item['ServiceType'] = $row->servicetype;
 		$item['FramedProtocol'] = $row->framedprotocol;
@@ -101,10 +99,11 @@ function getWiSPUserLogs($params) {
 		$item['AcctOutputMbyte'] = $acctOutputMbyte;
 		$item['ConnectTermReason'] = strRadiusTermCode($row->servicetype);
 
-		# push this row onto array
+		# Push this row onto main array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/WiSPUserTopups.php b/webgui/include/ajax/functions/WiSPUserTopups.php
index 5cea80521abdf934b7d404d6757c37762e18da76..16dbb625025fb343ec985e08b18e0b723c9c4230 100644
--- a/webgui/include/ajax/functions/WiSPUserTopups.php
+++ b/webgui/include/ajax/functions/WiSPUserTopups.php
@@ -6,12 +6,16 @@ include_once("include/db.php");
 # Add new topup
 function createWiSPUserTopup($params) {
 
+	# Current datetime
 	$timestamp = date('Y-m-d H:i:s');
+
+	# Perform query
 	$res = DBDo("INSERT INTO topups (UserID,Timestamp,Type,Value,ValidFrom,ValidTo) VALUES (?,?,?,?,?,?)",
 			array($params[0]['UserID'],$timestamp,$params[0]['Type'],$params[0]['Value'],$params[0]['ValidFrom'],
 					$params[0]['ValidTo'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -22,6 +26,7 @@ function createWiSPUserTopup($params) {
 # Edit topup
 function updateWiSPUserTopup($params) {
 
+	# Perform query
 	$res = DBDo("UPDATE topups SET Value = ?, Type = ?, ValidFrom = ?, ValidTo = ? WHERE ID = ?",
 				array($params[0]['Value'],
 				$params[0]['Type'],
@@ -30,6 +35,7 @@ function updateWiSPUserTopup($params) {
 				$params[0]['ID'])
 	);
 
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -40,7 +46,10 @@ function updateWiSPUserTopup($params) {
 # Delete user topup
 function removeWiSPUserTopup($params) {
 
+	# Perform query
 	$res = DBDo("DELETE FROM topups WHERE ID = ?",array($params[0]));
+
+	# Return result
 	if (!is_numeric($res)) {
 		return $res;
 	}
@@ -51,29 +60,31 @@ function removeWiSPUserTopup($params) {
 # Return specific topup row
 function getWiSPUserTopup($params) {
 
+	# Perform query
 	$res = DBSelect("SELECT ID, Type, Value, ValidFrom, ValidTo FROM topups WHERE ID = ?",array($params[0]));
+
+	# Return if error or no result
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	$resultArray['ID'] = $row->id;
 	$resultArray['Type'] = $row->type;
 	$resultArray['Value'] = $row->value;
-
 	# Convert to ISO format
 	$date = new DateTime($row->validfrom);
 	$value = $date->format("Y-m-d");
 	$resultArray['ValidFrom'] = $value;
-
 	# Convert to ISO format
 	$date = new DateTime($row->validto);
 	$value = $date->format("Y-m-d");
 	$resultArray['ValidTo'] = $value;
 
+	# Return results
 	return $resultArray;
 }
 
@@ -89,6 +100,7 @@ function getWiSPUserTopups($params) {
 		'ValidTo' => 'topups.ValidTo'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 			SELECT 
 				ID, Timestamp, Type, Value, ValidFrom, ValidTo
@@ -102,38 +114,38 @@ function getWiSPUserTopups($params) {
 				Timestamp
 			DESC
 		",$params[1],$filtersorts,$filtersorts);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Array for this row
 		$item = array();
 
 		$item['ID'] = $row->id;
 		$item['Timestamp'] = $row->timestamp;
 		$item['Type'] = $row->type;
 		$item['Value'] = $row->value;
-
 		# Convert to ISO format
 		$date = new DateTime($row->validfrom);
 		$value = $date->format("Y-m-d");
 		$item['ValidFrom'] = $value;
-
 		# Convert to ISO format
 		$date = new DateTime($row->validto);
 		$value = $date->format("Y-m-d");
 		$item['ValidTo'] = $value;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
diff --git a/webgui/include/ajax/functions/WiSPUsers.php b/webgui/include/ajax/functions/WiSPUsers.php
index 92c2cab31fd56f289703cc14756377b68584ac09..73af46380d34b1c980fc308097193ea8a533f516 100644
--- a/webgui/include/ajax/functions/WiSPUsers.php
+++ b/webgui/include/ajax/functions/WiSPUsers.php
@@ -17,6 +17,7 @@ function getWiSPUsers($params) {
 		'Phone' => 'wisp_userdata.Phone'
 	);
 
+	# Perform query
 	$res = DBSelectSearch("
 		SELECT 
 			users.Username, 
@@ -32,17 +33,18 @@ function getWiSPUsers($params) {
 			wisp_userdata.UserID = users.ID
 		",$params[1],$filtersorts,$filtersorts
 	);
-
 	$sth = $res[0]; $numResults = $res[1];
+
 	# If STH is blank, return the error back to whoever requested the data
 	if (!isset($sth)) {
 		return $res;
 	}
 
+	# Loop through rows
 	$resultArray = array();
-
-	# loop through rows
 	while ($row = $sth->fetchObject()) {
+
+		# Array for this row
 		$item = array();
 
 		$item['ID'] = $row->userid;
@@ -53,10 +55,11 @@ function getWiSPUsers($params) {
 		$item['Email'] = $row->email;
 		$item['Phone'] = $row->phone;
 
-		# push this row onto array
+		# Push this row onto array
 		array_push($resultArray,$item);
 	}
 
+	# Return results
 	return array($resultArray,$numResults);
 }
 
@@ -82,12 +85,13 @@ function getWiSPUser($params) {
 					",array($params[0])
 	);
 
+	# Return if error
 	if (!is_object($res)) {
 		return $res;
 	}
 
+	# Build array of results
 	$resultArray = array();
-
 	$row = $res->fetchObject();
 
 	# Set userdata fields
@@ -113,6 +117,7 @@ function getWiSPUser($params) {
 					",array($params[0])
 	);
 
+	# Return if error
 	if (!is_object($res)) {
 		return $res;
 	}
@@ -135,12 +140,13 @@ function getWiSPUser($params) {
 					",array($params[0])
 	);
 
+	# Return if error
 	if (!is_object($res)) {
 		return $res;
 	}
 
-	$i = 0;
 	# Array for multiple attributes
+	$i = 0;
 	while ($row = $res->fetchObject()) {
 		$resultsArray['Attributes'][$i]['ID'] = $row->id;
 		$resultsArray['Attributes'][$i]['Name'] = $row->name;
@@ -149,7 +155,10 @@ function getWiSPUser($params) {
 		$i++;
 	}
 
+	# Get number of results
 	$numResults = $res->rowCount();
+
+	# Return results
 	return array($resultArray,$numResults);
 }
 
@@ -191,9 +200,12 @@ function removeWiSPUser($params) {
 
 # Add wisp user
 function createWiSPUser($params) {
+	# We need this to send notification
 	global $adminEmails;
 
+	# Begin transaction
 	DBBegin();
+	# Perform first query
 	$res = "Username & Password required for single user. For adding multiple users an integer is required.";
 	# If we adding single user
 	if (empty($params[0]['Number']) && !empty($params[0]['Password']) && !empty($params[0]['Username'])) {
@@ -494,10 +506,13 @@ function createWiSPUser($params) {
 function updateWiSPUser($params) {
 
 	DBBegin();
+	# Perform query
 	$res = DBDo("UPDATE users SET Username = ? WHERE ID = ?",array($params[0]['Username'],$params[0]['ID']));
+	# If successful, continue
 	if ($res !== FALSE) {
 		$res = DBDo("UPDATE user_attributes SET User-Password = ? WHERE UserID = ?",array($params[0]['Username'],$params[0]['ID']));
 	}
+	# If successful, continue
 	if ($res !== FALSE) {
 		$res = DBDo("
 				UPDATE