Game-Jaming/Backend/Controllers/FileHandler/upload.php

74 lines
2.8 KiB
PHP

<?php
require_once "../../../bootstrap.php";
require_once('../Group/Group.php');
require_once('FileHandler.php');
use Backend\Models\GameData;
use Backend\Models\GameJam;
use Backend\Models\Group;
date_default_timezone_set("Europe/Copenhagen");
$isImages = false;
if(isLogin()){
$group = groupViaToken($_SESSION['token']);
$gameJam = GameJam::find($group->game_jam_id);
$gameJamStartTime = strtotime($gameJam->start_time);
$gameJamEndTime = strtotime($gameJam->end_time);
$date = date('Y/m/d H:i:s', time());
$currentTime = strtotime($date);
if($gameJamStartTime <= $currentTime && $gameJamEndTime >= $currentTime){
if(!isset($group->game_data_id)){
if(isset($_POST['submitUpload'])){
//Get the data from the user form
$gameFile = $_FILES['gameFile'];
$desc = $_POST['description'];
$title = $_POST['gameTitle'];
$thumbnail = $_FILES['thumbnailFile'];
$isWebBased = isset( $_POST['isWebBased']);
$gameFileName = $_FILES['gameFile']['name'];//Game name
$gameFileTmp = $_FILES['gameFile']['tmp_name'];//Tmp location of the file
$gameFileError = $_FILES['gameFile']['error'];//File error
$thumbnailFileName = $_FILES['thumbnailFile']['name'];//Game name
$thumbnailFileTmp = $_FILES['thumbnailFile']['tmp_name'];//Tmp location of the file
$thumbnailFileError =$_FILES['thumbnailFile']['error'];//File error
if($gameFileError === 0){
$gameData = new GameData();
$gameData->game_name = $title;
$gameData->game_link = ZipFileHandler($gameFileName,$gameFileTmp);
$gameData->description = $desc;
if(isset($thumbnail) && $thumbnailFileError === 0){
$gameData->img = imagesFileHandler($thumbnailFileName,$thumbnailFileTmp);
}
$gameData->is_web_Based = $isWebBased;
$gameData->save();
$group->gameData()->associate($gameData);
$group->save();
header("location: ../../../Frontend/index.html?success=UploadedFile");
exit();
}
}else{
header("location: ../../../Frontend/group.php?error=UploadFail");
exit();
}
}else{
header("location: ../../../Frontend/group.php?error=TooManyUploads");
exit();
}
}else{
header("location: ../../../Frontend/group.php?error=GameJamHasNotBegun");
exit();
}
}else{
header("location: ../../../Main.php?error=NoLogin");
exit();
}