Пример #1
0
 /**
  * Create a team
  * @param $name
  * @param $tag
  */
 public function CreateTeam()
 {
     //Anonymous users cannot register.
     if (streq($this->owner, "0")) {
         return "Anonymous users cannot register teams!";
     }
     //Validate against team name being in use.
     $test = new Lan_timetable_teams();
     $test->name = $this->name;
     $test->tag = $this->tag;
     $test->timetable_id = $this->timetable_id;
     if ($test->count() != 0) {
         return "A team with this name already exists!";
     }
     //Validate against the captain already being in a team
     $tm = new Lan_timetable_team_members();
     $tm->user_id = $this->owner;
     $test = new Lan_timetable_teams();
     $test->joinAdd($tm, "CENTER");
     if ($test->count() != 0) {
         return "You cannot create a team whilst you are in a team!";
     }
     //Check that teams are being used
     $tt = new Lan_timetable();
     $tt->id = $this->timetable_id;
     $tt->teambased = 1;
     if ($tt->find() != 1) {
         return "This event is not team based!";
     }
     $tt->fetch();
     $test = new Lan_timetable_teams();
     $test->timetable_id = $this->timetable_id;
     if (!streq("0", $tt->maxplayers) && $tt->maxplayers < $test->count() + 1) {
         return "Max team count reached for this event.";
     }
     //All is ok, so insert the team
     if (0 == $this->insert()) {
         return "Team creation failed!";
     }
     //Add the captain as a member
     $tm = new Lan_timetable_team_members();
     $tm->team_id = $this->team_id;
     $tm->user_id = $this->owner;
     if (0 == $tm->insert()) {
         return "Error adding captain as team member!";
     }
     //If the player is a PUG player then remove them from the list.
     $signup = new Lan_timetable_signups();
     $signup->timetable_id = $this->timetable_id;
     $signup->user_id = $this->owner;
     while ($signup->fetch()) {
         $signup->delete();
     }
     return false;
 }
 public function JoinTeam($ttid)
 {
     //Check not anonymous
     if ($this->user_id == 0) {
         return "Anonymous users cannot join teams!";
     }
     if (null == $ttid) {
         return "Programming error: No timetable ID passed!";
     }
     //Check allow signup
     $timetable = new Lan_timetable();
     $timetable->id = $ttid;
     //$timetable->allowsignups = 1;
     $timetable->teambased = 1;
     if (1 != $timetable->find()) {
         return "This event does not allow joining teams.";
     }
     //Check not already in a team
     $team = new Lan_timetable_teams();
     $member = new Lan_timetable_team_members();
     $member->user_id = $this->user_id;
     $team->timetable_id = $ttid;
     $team->joinAdd($member);
     if ($team->count() != 0) {
         return "This user cannot join a team twice!";
     }
     //Check max team size
     $timetable->fetch();
     $team->team_id = $this->team_id;
     $team->PopulateMembers();
     $teamsize = count($team->members);
     if (!streq($teamsize, "0") && $timetable->teamsize < $teamsize + 1) {
         return "Max team size reached!";
     }
     //Join team
     if ($this->insert() == 0) {
         return "This user is already in a team for this event!";
     }
     //Remove pug if needed.
     $signup = new Lan_timetable_signups();
     $signup->timetable_id = $ttid;
     $signup->user_id = $this->user_id;
     while ($signup->fetch()) {
         $signup->delete();
     }
     return false;
 }
Пример #3
0
<?php

include 'foodrun.logic.php';
$biggame = new Lan_timetable();
$biggame->type = "food";
if (isset($_GET["tid"])) {
    $user = new Lan_users();
    $biggame->joinAdd($user, "LEFT");
    if ($biggame->get($biggame->escape($_GET["tid"]))) {
        $biggame->fetch();
        //Find sign ups
        $tts = new Lan_timetable_signups();
        $user = new Lan_users();
        $tts->joinAdd($user);
        $tts->timetable_id = $biggame->id;
        $list = array();
        $tts->find();
        $currentUserSignedUp = false;
        $signups = 0;
        while ($tts->fetch()) {
            if (streq($tts->user_id, getCurrentUID())) {
                $currentUserSignedUp = true;
            }
            $list[] = clone $tts;
            $signups++;
        }
        $biggame->signups = $signups;
        $game = new Lan_games();
        if (1 == $game->get($biggame->game)) {
            $master->Smarty->assign("image", "images/games/" . $game->picture);
            $master->Smarty->assign("gamename", $game->name);
Пример #4
0
        if (!$swapped) {
            return $data;
        }
    }
}
$lan = new Lan_events();
$lanid = $lan->escape(getCurrentLID());
$success = $lan->get($lanid);
if ($success) {
    $start = new Lan_timetable();
    $start->when = date("D jS M H:i", strtotime($lan->start));
    $start->type = 'start';
    $start->diff = getDiffDateTime(strtotime($lan->start));
    $start->datetime = strtotime($lan->start);
    $events[] = $start;
    $event = new Lan_timetable();
    $event->lan_id = getCurrentLID();
    $event->orderBy('"when" ASC');
    $game = new Lan_games();
    $event->selectAs($game, "game_%s");
    $event->joinAdd($game, "LEFT");
    $event->find();
    while ($event->fetch()) {
        $event->diff = getDiffDateTime(strtotime($event->occurs));
        //Remove old events
        if (strlen($event->diff) == 0) {
            continue;
        }
        $users = new Lan_timetable_signups();
        $users->timetable_id = $event->id;
        $event->signups = $users->count();
Пример #5
0
<?php

if (isset($_GET["action"])) {
    switch ($_GET["action"]) {
        case "signup":
            if (getCurrentUID() == 0) {
                $error = "Anonymous users cannot sign up!";
            } else {
                if (isset($_GET["tid"])) {
                    $biggame = new Lan_timetable();
                    $biggame->type = "tournament";
                    $biggame->id = $biggame->escape($_GET["tid"]);
                    if ($biggame->count() == 1) {
                        $signup = new Lan_timetable_signups();
                        $signup->timetable_id = $biggame->id;
                        $signup->user_id = getCurrentUID();
                        if ($signup->count() == 0) {
                            $signup->insert();
                        } else {
                            $error = "You are already signed up to this event!";
                        }
                    } else {
                        $error = "Unknown big game?";
                    }
                } else {
                    $error = "No event id set?";
                }
            }
            break;
        case "remsignup":
            if (isset($_GET["tid"])) {
Пример #6
0
<?php

$eventlist = array();
$event = new Lan_timetable();
$event->lan_id = getCurrentLID();
$game = new Lan_games();
$event->selectAs($game, "game_%s");
$event->joinAdd($game, "LEFT");
$event->orderBy("occurs");
$event->find();
while ($event->fetch()) {
    $eventlist[] = clone $event;
}
$master->Smarty->assign("events", $eventlist);
Пример #7
0
function parseForm($id = null)
{
    global $master;
    $titem = new Lan_timetable();
    if ($id != null) {
        $titem->get($titem->escape($id));
    }
    if (isset($_POST["game"])) {
        $titem->game = $titem->escape($_POST["game"]);
        if (strlen($_POST["othergame"]) != 0) {
            $titem->game = 0;
        }
    }
    $titem->lan_id = getCurrentLID();
    //$titem->owner
    $titem->type = $titem->escape($_POST["eventtype"]);
    $titem->occurs = strftime("%Y-%m-%d %H:%M:00", getLanTime("when"));
    // "2010-06-05 19:41:54";//$titem->escape($_POST["when"]);
    //var_dump($titem->occurs);
    //die();
    if (isset($_POST["eventname"])) {
        $titem->eventname = $titem->escape($_POST["eventname"]);
    }
    if (isset($_POST["othergame"])) {
        $titem->othergame = $titem->escape($_POST["othergame"]);
    }
    if (isset($_POST["maxplayers"])) {
        $titem->maxplayers = $titem->escape($_POST["maxplayers"]);
    }
    if (isset($_POST["minplayers"])) {
        $titem->minplayers = $titem->escape($_POST["minplayers"]);
    }
    if (isset($_POST["details"])) {
        $titem->details = addslashes($_POST["details"]);
    }
    if ($master->checkUserIsAdmin() && isset($_POST["official"])) {
        $titem->userevent = 0;
    } else {
        $titem->userevent = 1;
    }
    if (isset($_POST["usesignups"])) {
        $titem->allowsignups = 1;
    } else {
        $titem->allowsignups = 0;
    }
    if (isset($_POST["maxmembers"])) {
        $titem->teamsize = $titem->escape($_POST["maxmembers"]);
    } else {
        $titem->teamsize = 0;
    }
    if (isset($_POST["teams"]) && streq("yes", $_POST["teams"])) {
        $titem->teambased = 1;
    } else {
        $titem->teambased = 0;
    }
    if ($master->checkUserIsAdmin() && isset($_POST["organiser"])) {
        $titem->owner = $titem->escape($_POST["organiser"]);
    } else {
        $titem->owner = getCurrentUID();
    }
    return $titem;
}
Пример #8
0
<?php

include 'biggame.logic.php';
$biggame = new Lan_timetable();
$biggame->type = "biggame";
if (isset($_GET["tid"])) {
    if ($biggame->get($biggame->escape($_GET["tid"]))) {
        $biggame->fetch();
        //Find sign ups
        $tts = new Lan_timetable_signups();
        $user = new Lan_users();
        $tts->joinAdd($user, "LEFT");
        //$tgame = new Lan_games;
        //$tts->joinAdd($tgame, "LEFT");
        $tts->timetable_id = $biggame->id;
        $list = array();
        $tts->find();
        $currentUserSignedUp = "no";
        while ($tts->fetch()) {
            if (streq($tts->user_id, getCurrentUID())) {
                $currentUserSignedUp = "signup";
            }
            $list[] = clone $tts;
        }
        $master->Smarty->assign("signups", $list);
        $game = new Lan_games();
        if (1 == $game->get($biggame->game)) {
            $master->Smarty->assign("image", "images/games/" . $game->picture);
            $master->Smarty->assign("gamename", $game->name);
            if (!streq($biggame->game, "0")) {
                $link = "http://apps.metacritic.com/search/process?ty=3&ts=" . $game->name . "&tfs=game_title&sb=0&game_platform=PC&x=11&y=6&release_date_s=";
Пример #9
0
<?php

if (isset($_GET["action"])) {
    switch ($_GET["action"]) {
        case "signup":
            if (getCurrentUID() == 0) {
                $error = "Anonymous users cannot sign up!";
            } else {
                if (isset($_GET["tid"])) {
                    $biggame = new Lan_timetable();
                    $biggame->type = "other";
                    if (1 == $biggame->get($biggame->escape($_GET["tid"]))) {
                        $maxsignups = $biggame->maxplayers;
                        $signupcount = new Lan_timetable_signups();
                        $signupcount->timetable_id = $biggame->id;
                        $signupcount->find();
                        if ($signupcount->count() < $maxsignups) {
                            $signup = new Lan_timetable_signups();
                            $signup->timetable_id = $biggame->id;
                            $signup->user_id = getCurrentUID();
                            if ($signup->count() == 0) {
                                $signup->insert();
                            } else {
                                $error = "You are already signed up to this event!";
                            }
                        } else {
                            $error = "This event has already reached its maximum signups!";
                        }
                    } else {
                        $error = "Unknown food run?";
                    }
Пример #10
0
<?php

include 'ttedit.logic.php';
$gamelist = array();
$game = new Lan_games();
$game->orderBy('name');
$game->find();
while ($game->fetch()) {
    $gamelist[] = clone $game;
}
$master->Smarty->assign("gamelist", $gamelist);
if (isset($_GET["tid"])) {
    $tt = new Lan_timetable();
    if (1 == $tt->get($tt->escape($_GET["tid"]))) {
        if (!($master->checkUserIsAdmin() || streq($tt->owner, getCurrentUID()) || streq($tt->owner, ""))) {
            $error = "You don't have permission to edit this event!";
        }
        if ($master->checkUserIsAdmin()) {
            $master->Smarty->assign("userIsAdmin", "1");
        }
        $userlist = array();
        $user = new Lan_users();
        $attendees = new Lan_attendees();
        $lanid = getCurrentLID();
        $user->query("SELECT user_id,username FROM {$user->__table}  WHERE {$user->__table}.user_id IN (SELECT user_id FROM {$attendees->__table} WHERE `lan_id` = '{$lanid}') ORDER BY user_id");
        while ($user->fetch()) {
            $userlist[] = clone $user;
        }
        $master->Smarty->assign("userlist", $userlist);
        $tt->details = stripslashes($tt->details);
        $master->Smarty->assign("event", $tt);