83 lines
3.0 KiB
PHP
83 lines
3.0 KiB
PHP
<?php
|
|
ob_start();
|
|
session_start();
|
|
require_once 'core/config.php';
|
|
if($maintenance && $pagename !== "Maintenance") {
|
|
header("Location: /maintenance"
|
|
); }
|
|
?>
|
|
<!DOCTYPE html>
|
|
<html data-bs-theme="dark">
|
|
<head>
|
|
<?php
|
|
|
|
$placeprice = 10;
|
|
|
|
require_once 'core/classes.php';
|
|
require_once 'core/classes/user.php';
|
|
if(isset($_SESSION['user'])) {
|
|
$user = new User($con, $_SESSION['user']);
|
|
$loggedIn = true;
|
|
} else {
|
|
$loggedIn = false;
|
|
}
|
|
$getitstarted = new PartyStarter;
|
|
$getitstarted->header();
|
|
|
|
if($loggedIn == true) {
|
|
if($_POST['submit'] ?? "No" == "Create place" && isset($_FILES['userfile']['name']) && isset($_POST['name']) || isset($_POST['description']) && isset($_POST['playerlimit']) && $_POST['playerlimit'] >= 1 ) {
|
|
if($user->getMoney('false') >= $placeprice) {
|
|
$q = $con->prepare("UPDATE users SET money=money-:price WHERE id=:id");
|
|
$q->bindParam(':id',$_SESSION['user'],PDO::PARAM_INT);
|
|
$q->bindParam(':price',$placeprice,PDO::PARAM_INT);
|
|
$q->execute();
|
|
|
|
$q = $con->prepare("INSERT INTO games (name, description, creator, players, state) VALUES (:name, :description, :creator, :playerlimit, 'pending')");
|
|
$q->bindParam(':name',$_POST['name']);
|
|
$q->bindParam(':description',$_POST['description']);
|
|
$q->bindParam(':playerlimit',$_POST['playerlimit']);
|
|
$q->bindParam(':creator',$_SESSION['user'],PDO::PARAM_INT);
|
|
$q->execute();
|
|
}
|
|
}
|
|
}
|
|
|
|
?>
|
|
</head>
|
|
<title><?php echo $pagename; ?> | <?php echo $sitename; ?></title>
|
|
<body>
|
|
<main class="container">
|
|
<br><br>
|
|
|
|
<div class="card">
|
|
<h5 class="card-header">Create a place</h5>
|
|
<div class="card-body">
|
|
<form action="" method="post">
|
|
<div class="mb-3">
|
|
<label for="formFile" class="form-label">Roblox Place File <small>(Must be .rbxl, since .rbxlx is in xml therefore larger by default)</small></label>
|
|
<input class="form-control" type="file" name="file" id="formFile" required="">
|
|
</div>
|
|
|
|
<div class="input-group mb-3">
|
|
<span class="input-group-text" id="basic-addon1">Place name</span>
|
|
<input type="text" class="form-control" name="name" placeholder="Lorem ipsum dolor sit amet." aria-describedby="basic-addon1" required="">
|
|
</div>
|
|
|
|
<div class="input-group mb-3">
|
|
<span class="input-group-text">Description</span>
|
|
<textarea class="form-control" style="height: 6rem" required="" name="description" placeholder="Lorem ipsum dolor sit amet, consectetur adipiscing elit. Maecenas sed mauris quis enim efficitur feugiat in sodales odio. Cras vehicula consectetur tellus. Nulla aliquet nulla a libero ultricies dignissim. Nullam sollicitudin orci eu massa dignissim eleifend. Maecenas hendrerit ex odio, quis euismod arcu egestas et. Duis nibh eros, volutpat ac purus non, sodales rutrum leo. Donec tempus erat sit amet blandit accumsan. Donec vel laoreet tellus." ></textarea>
|
|
</div>
|
|
|
|
<div class="input-group flex-nowrap mb-3">
|
|
<span class="input-group-text" id="addon-wrapping">Player limit</span>
|
|
<input type="number" class="form-control" placeholder="1 to 50 players" name="playerlimit" required="">
|
|
</div>
|
|
<input type="submit" name="submit" class="btn btn-success" value="Create place">
|
|
</form>
|
|
|
|
</div>
|
|
</div>
|
|
</main>
|
|
</body>
|
|
</html>
|