Beispiel #1
0
            unset($idarray[$keyToDelete]);
        }
        //ID's deleted
        if (count($idarray) < 1) {
            echo "Error - all the people invited were duplicates";
        } else {
            if ($check && $groupexists->rowCount() > 0) {
                $currentarray = [];
                $currentarray[$profid] = $idarray;
                $current = serialize($currentarray);
                $postsql = $connectinfo->prepare("UPDATE Groups SET people_added = :current WHERE id = :groupid");
                $postsql->execute(array(':current' => $current, ':groupid' => $groupid));
                foreach ($idarray as $id) {
                    CreateNotification(1, $connectinfo, $id, $profid, $groupid);
                    //Send them a notification
                    $connection->AddtoList($connectinfo, 0, $groupid, "people_requested", $id);
                }
            } else {
                if ($check) {
                    echo "Error - group doesn't exist";
                } else {
                    echo "Error - original user was not a part of this group";
                }
            }
        }
    } else {
        echo "Error - authorization mismatch";
    }
} else {
    echo 'Error - invalid supplied post data (not enough info?). Alternatively, no people were added?';
}
}
if ($safe) {
    $authenticated = $connection->Verify($connectinfo, $profid, $token);
    if ($authenticated) {
        //Do only if user has notification
        $check = $connection->ListCheck($connectinfo, 1, $profid, "groups_pending", $groupid);
        $checkdeclined = $connection->ListCheck($connectinfo, 2, $profid, "groups_declined", $groupid);
        $checkleft = $connection->ListCheck($connectinfo, 2, $profid, "groups_left", $groupid);
        if ($check == true || $checkdeclined == true || $checkleft == true) {
            $targetvalues = $connection->GetValue($connectinfo, 0, $groupid, "people_added");
            $targetvaluesarray = unserialize($targetvalues);
            $targetid = ReturnTargetID($targetvaluesarray, $profid);
            $connection->RemoveItemfromList($connectinfo, 1, $profid, "groups_pending", "groupid:" . strval($groupid), "data");
            if ($accepted) {
                //Add on to people accepted
                $connection->AddtoList($connectinfo, 0, $groupid, "people_accepted", $profid);
                //Add to group list of accepted friends
                $connection->AddtoList($connectinfo, 2, $profid, "groups_accepted", $groupid);
                //Add to profile list of accepted groups
                //(Notify group inviter that a new user has accepted group request?
                if ($checkdeclined == false && $checkleft == false) {
                    CreateNotification(2, $connectinfo, $targetid, $profid, $groupid, TRUE);
                } else {
                    //Remove from list of left groups
                    if ($checkleft) {
                        $connection->RemovefromList($connectinfo, 2, $profid, "groups_left", $groupid);
                    }
                    if ($checkdeclined) {
                        $connection->RemovefromList($connectinfo, 2, $profid, "groups_declined", $groupid);
                    }
                }
Beispiel #3
0
    $token = filter_input(INPUT_POST, 'token');
} else {
    $safe = false;
}
if ($safe) {
    $authenticated = $connection->Verify($connectinfo, $profid, $token);
    if ($authenticated) {
        try {
            $starter = $idarray[0];
            $starterid = intval($starter);
            $prepsql = $connectinfo->prepare("INSERT INTO `Groups` (`name`, `people_requested`, `people_accepted`, `starter`) VALUES (:name,:idstring,:starter,:starterid)");
            $prepsql->execute(array(':name' => $name, ':idstring' => $idstring, 'starter' => $starter, ':starterid' => $starterid));
            $groupid = $connectinfo->lastInsertId();
            echo $groupid;
            //Add group to thread starter's list of groups
            $connection->AddtoList($connectinfo, 2, $starter, "groups_accepted", $groupid);
            //Notify users of new group
            array_shift($idarray);
            //Knock thread starter off!
            $added = array($starter => $idarray);
            //Setup added list
            $addedstring = serialize($added);
            $postsql = $connectinfo->prepare("UPDATE Groups SET people_added = :addedstring WHERE id = :groupid");
            $postsql->execute(array(':addedstring' => $addedstring, ':groupid' => $groupid));
            foreach ($idarray as $id) {
                $params = ["groupid" => $groupid, "sourceid" => $profid, "date" => time()];
                //Add to notifications for that particular id
                CreateNotification(1, $connectinfo, $id, $starter, $groupid);
            }
        } catch (PDOException $e) {
            echo 'Error ' . $e->GetMessage();