<?include_once(SERVER_ROOT.'/classes/class_text.php');// Text formatting class
functionlink_users($UserID,$TargetID){global$DB;authorize();if(!check_perms('users_mod')){error(403);}if(!is_number($UserID)||!is_number($TargetID)){error(403);}if($UserID==$TargetID){return;}$DB->query("SELECT 1 FROM users_main WHERE ID IN ($UserID, $TargetID)");if($DB->record_count()!=2){error(403);}$DB->query("SELECT GroupID FROM users_dupes WHERE UserID = $TargetID");list($TargetGroupID)=$DB->next_record();$DB->query("SELECT u.GroupID, d.Comments FROM users_dupes AS u JOIN dupe_groups AS d ON d.ID = u.GroupID WHERE UserID = $UserID");list($UserGroupID,$Comments)=$DB->next_record();if($TargetGroupID){if($TargetGroupID==$UserGroupID){return;}if($UserGroupID){$DB->query("UPDATE users_dupes SET GroupID = $TargetGroupID WHERE GroupID = $UserGroupID");$DB->query("UPDATE dupe_groups SET Comments = CONCAT('".db_string($Comments)."\n\n',Comments) WHERE ID = $TargetGroupID");$DB->query("DELETE FROM dupe_groups WHERE ID = $UserGroupID");}else{$DB->query("INSERT INTO users_dupes (UserID, GroupID) VALUES ($UserID, $TargetGroupID)");}}elseif($UserGroupID){$DB->query("INSERT INTO users_dupes (UserID, GroupID) VALUES ($TargetID, $UserGroupID)");}else{$DB->query("INSERT INTO dupe_groups () VALUES ()");$GroupID=$DB->inserted_id();$DB->query("INSERT INTO users_dupes (UserID, GroupID) VALUES ($TargetID, $GroupID)");$DB->query("INSERT INTO users_dupes (UserID, GroupID) VALUES ($UserID, $GroupID)");}}functionunlink_user($UserID){global$DB;authorize();if(!check_perms('users_mod')){error(403);}if(!is_number($UserID)){error(403);}$DB->query("DELETE FROM users_dupes WHERE UserID='$UserID'");$DB->query("DELETE g.* FROM dupe_groups AS g LEFT JOIN users_dupes AS u ON u.GroupID = g.ID WHERE u.GroupID IS NULL");}functiondelete_dupegroup($GroupID){global$DB;authorize();if(!check_perms('users_mod')){error(403);}if(!is_number($GroupID)){error(403);}$DB->query("DELETE FROM dupe_groups WHERE ID = '$GroupID'");}functiondupe_comments($GroupID,$Comments){global$DB,$Text;authorize();if(!check_perms('users_mod')){error(403);}if(!is_number($GroupID)){error(403);}$DB->query("UPDATE dupe_groups SET Comments = '".db_string($Comments)."' WHERE ID = '$GroupID'");}functionuser_dupes_table($UserID){global$DB,$LoggedUser;$Text=newTEXT;if(!check_perms('users_mod')){error(403);}if(!is_number($UserID)){error(403);}$DB->query("SELECT d.ID, d.Comments
FROM dupe_groups AS d
JOIN users_dupes AS u ON u.GroupID = d.ID
WHERE u.UserID = $UserID");if(list($GroupID,$Comments)=$DB->next_record()){$DB->query("SELECT m.ID
FROM users_main AS m
JOIN users_dupes AS d ON m.ID = d.UserID
WHERE d.GroupID = $GroupID ORDER BY m.ID = $UserID DESC");$DupeCount=$DB->record_count();$Dupes=$DB->to_array();}else{$DupeCount=0;$Dupes=array();}?> <div class="box">
<div class="head"><?=max($DupeCount - 1, 0)?> Linked Account<?=(($DupeCount == 2)?'':'s')?> <a href="#" onclick="$('.linkedaccounts').toggle(); return false;">(View)</a></div>
<?
if ($DupeCount > 0) {
?>
<table width="100%" class="hidden linkedaccounts">
<tr>
<?
$i = 0;
foreach ($Dupes as $Dupe) {
$i++;
list($DupeID) = $Dupe;
$DupeInfo = user_info($DupeID);
?>
<td align="left"><?=format_username($DupeID, $DupeInfo['Username'], $DupeInfo['Donor'], $DupeInfo['Warned'], $DupeInfo['Enabled'])?>
(<a href="user.php?action=dupes&dupeaction=remove&auth=<?=$LoggedUser['AuthKey']?>&userid=<?=$UserID?>&removeid=<?=$DupeID?>" onClick="return confirm('Are you sure you wish to remove <?=$DupeInfo['Username']?> from this group?');">x</a>)</td>
<?
if ($i == 5) {
$i = 0;
echo "</tr><tr>";
}
}
for ($j = $i; $j < 5; $j++) {
echo '<td> </td>';
}
?>
</tr>
<tr>