fix addressbook 100%

This commit is contained in:
unknown
2012-06-14 15:23:03 +03:00
parent 8a37f1501f
commit d63a84e745
4 changed files with 92 additions and 5 deletions
+21
View File
@@ -3100,6 +3100,27 @@
$q = "UPDATE " . TB_PREFIX . "users SET $column = 0 WHERE id = $uid";
return mysql_query($q, $this->connection);
}
function checkFriends($uid) {
$user = $this->getUserArray($uid, 1);
for($i=0;$i<=19;$i++) {
if($user['friend'.$i] == 0 && $user['friend'.$i.'wait'] == 0){
for($j=$i+1;$j<=19;$j++) {
$k = $j-1;
if($user['friend'.$j] != 0){
$friend = $this->getUserField($uid, "friend".$j, 0);
$this->addFriend($uid,"friend".$k,$friend);
$this->deleteFriend($uid,"friend".$j);
}
if($user['friend'.$j.'wait'] == 0){
$friendwait = $this->getUserField($uid, "friend".$j."wait", 0);
$this->addFriend($sessionuid,"friend".$k."wait",$friendwait);
$this->deleteFriend($uid,"friend".$j."wait");
}
}
}
}
}
}
;
+14 -3
View File
@@ -418,22 +418,33 @@
public function addFriends($post) {
global $database;
for($i=0;$i<19;$i++) {
for($i=0;$i<=19;$i++) {
if($post['addfriends'.$i] != ""){
$uid = $database->getUserField($post['addfriends'.$i], "id", 1);
$added = 0;
for($j=0;$j<=$i;$j++) {
if($added == 0){
$user = $database->getUserField($post['myid'], "friend".$j, 0);
$userwait = $database->getUserField($post['myid'], "friend".$j."wait", 0);
$exist = 0;
for($k=0;$k<=19;$k++){
$user1 = $database->getUserField($post['myid'], "friend".$k, 0);
if($user1 == $uid or $user1 == $post['myid']){
if($user1 == $uid or $uid == $post['myid']){
$exist = 1;
}
}
if($user == 0 && $exist == 0){
if($user == 0 && $userwait == 0 && $exist == 0){
$added1 = 0;
for($l=0;$l<=19;$l++){
$user2 = $database->getUserField($uid, "friend".$l, 0);
$userwait2 = $database->getUserField($uid, "friend".$l."wait", 0);
if($user2 == 0 && $userwait2 == 0 && $added1 == 0){
$database->addFriend($uid,"friend".$l."wait",$post['myid']);
$added1 = 1;
}
}
$database->addFriend($post['myid'],"friend".$j,$uid);
$database->addFriend($post['myid'],"friend".$j."wait",$uid);
$added = 1;
}
}
+28 -2
View File
@@ -103,12 +103,12 @@ Reply:
<input type="hidden" name="myid" value="<?php echo $session->uid; ?>" />
<table cellpadding="1" cellspacing="1" id="friendlist">
<?php for($i=0;$i<20;$i++) {
if($user['friend'.$i] == 0){
if($user['friend'.$i] == 0 && $user['friend'.$i.'wait'] == 0){
if(is_int($i/2)){ echo "<tr>"; } ?><td class="end"></td>
<td class="pla">
<input class="text" type="text" name="addfriends<?php echo $i; ?>" value="" maxlength="15" />
</td>
<td class="on"></td><?php if(!is_int($i/2)){ echo "</tr>"; }else{ echo "<td></td>";}}else{
<td class="on"></td><?php if(!is_int($i/2)){ echo "</tr>"; }else{ echo "<td></td>";}}else if($user['friend'.$i.'wait'] == 0){
if(is_int($i/2)){ echo "<tr>"; } ?><td class="end"><a href="nachrichten.php?delfriend=<?php echo $i; ?>"><img class="del" src="img/x.gif" alt="delete" title="delete"></td>
<td class="pla">
<?php echo "<a href=\"spieler.php?uid=".$user['friend'.$i]."\">".$database->getUserField($user['friend'.$i],"username",0)."</a>"; ?>
@@ -127,6 +127,32 @@ if(is_int($i/2)){ echo "<tr>"; } ?><td class="end"><a href="nachrichten.php?delf
echo " <td class=on><img class=online5 src=img/x.gif title=now online alt=now online /></td>";
}
if(!is_int($i/2)){ echo "</tr>"; }else{ echo "<td></td>";}
}else{
$friend = $database->getUserArray($user['friend'.$i.'wait'], 1);
$friendwait = 0;
for($j=0;$j<20;$j++) {
if($friend['friend'.$j.'wait'] == $session->uid){
$wait = $friend['friend'.$j];
$friendwait = $friend['id'];
}
}
if($wait == 0){
if(is_int($i/2)){ echo "<tr>"; } ?><td class="end"><a href="nachrichten.php?delfriend=<?php echo $i; ?>"><img class="del" src="img/x.gif" alt="delete" title="delete"></td>
<td class="pla">
<?php echo "<img src=\"../../".GP_LOCATE."img/a/clock-inactive.gif\" alt=\"wait for confirm\" title=\"wait for confirm\"><a href=\"spieler.php?uid=".$user['friend'.$i]."\"> ".$database->getUserField($user['friend'.$i],"username",0)."</a>"; ?>
</td>
<?php
echo "<td class=on></td>";
if(!is_int($i/2)){ echo "</tr>"; }else{ echo "<td></td>";}
}else{
if(is_int($i/2)){ echo "<tr>"; } ?><td class="end"><a href="nachrichten.php?delfriend=<?php echo $i; ?>"><img class="del" src="img/x.gif" alt="delete" title="delete"></td>
<td class="pla">
<?php echo "<a href=\"spieler.php?uid=".$friendwait."\">".$database->getUserField($friendwait,"username",0)."</a>"; ?>
</td>
<td class="on"><a href="nachrichten.php?confirm=<?php echo $i; ?>"><img src="../../<?php echo GP_LOCATE; ?>img/a/online6.gif" alt="confirm" title="confirm"></a></td>
<?php
if(!is_int($i/2)){ echo "</tr>"; }else{ echo "<td></td>";}
}
}} ?>
</tr></table>
<p class="btn">
+29
View File
@@ -28,7 +28,36 @@ if(isset($_GET['t'])) {
}
}
if(isset($_GET['delfriend']) && is_numeric($_GET['delfriend'])){
$friend = $database->getUserField($session->uid, "friend".$_GET['delfriend'], 0);
for($i=0;$i<=19;$i++) {
$friend1 = $database->getUserField($friend, "friend".$i, 0);
if($friend1 == $session->uid){
$database->deleteFriend($friend,"friend".$i);
}
$friendwait1 = $database->getUserField($friend, "friend".$i."wait", 0);
if($friendwait1 == $session->uid){
$database->deleteFriend($friend,"friend".$i."wait");
}
$database->checkFriends($friend);
}
$database->deleteFriend($session->uid,"friend".$_GET['delfriend']);
$database->deleteFriend($session->uid,"friend".$_GET['delfriend']."wait");
$database->checkFriends($session->uid);
header("Location: ".$_SERVER['PHP_SELF']."?t=1");
}
if(isset($_GET['confirm']) && is_numeric($_GET['confirm'])){
$myid = $database->getUserArray($session->uid, 1);
$wait = $database->getUserArray($myid['friend'.$_GET['confirm'].'wait'], 1);
$added = 0;
for($i=0;$i<20;$i++) {
$user = $database->getUserField($wait['id'], "friend".$i, 0);
if($user == $session->uid && $added == 0){
$database->addFriend($wait['id'],"friend".$i."wait",0);
$added = 1;
}
}
$database->addFriend($session->uid,"friend".$_GET['confirm'],$wait['id']);
$database->addFriend($session->uid,"friend".$_GET['confirm']."wait",0);
header("Location: ".$_SERVER['PHP_SELF']."?t=1");
}
?>