Compare commits

..

11 Commits

Author SHA1 Message Date
Ida Tiegel 62d7d64e32 Update 2021-04-22 10:04:45 +02:00
Jacob Søfeldt a59fcdca30 Merge branch 'main' of https://gitea.itskp-odense.dk/Game-jam-Devs/Game-Jaming 2021-04-21 10:51:32 +02:00
Jacob Søfeldt 3ca45e6453 minder admin side fix 2021-04-21 10:51:18 +02:00
jona345e 23a98a23cf Merge remote-tracking branch 'origin/main' into main 2021-04-21 10:27:06 +02:00
jona345e 48b9f532a4 registration controllers update 2021-04-21 10:26:04 +02:00
Jacob Søfeldt ebeb93e5fa Backdrop and logind fix 2021-04-21 09:03:40 +02:00
Jacob Søfeldt 995cec56b1 Update 2021-04-20 14:48:16 +02:00
Ida Tiegel 9dda1a4336 Update 2021-04-20 14:01:33 +02:00
jona345e 15262c9cc6 test 2021-04-20 08:54:31 +02:00
jona345e 47094283cb test 2021-04-20 08:51:48 +02:00
RundelhausCode ae719b9d68 Merge pull request #1 from RundelhausCode/new_database
new database
2021-04-19 12:28:17 +02:00
19 changed files with 2433 additions and 1679 deletions
+1
View File
@@ -116,3 +116,4 @@ composer.phar
*.sqlite *.sqlite
Backend/test.php Backend/test.php
config/database.json
+1
View File
@@ -19,4 +19,5 @@ function makeAdminLogin(string $userName)
'path' => '/' 'path' => '/'
]); ]);
} }
//test
+17 -1
View File
@@ -1,13 +1,29 @@
<?php <?php
use Backend\Models\GameData;
use Backend\Models\Vote; use Backend\Models\Vote;
use \Backend\Models\Registration;
require_once "../../../bootstrap.php"; require_once "../../../bootstrap.php";
require_once "../Group/Group.php"; require_once "../Group/Group.php";
if (isLogin()) { if (isLogin()) {
$gameDate = GameData::find($_GET[]);
if(!$gameDate){
http_response_code(400);
echo json_encode(["message" => "game data not found"]);
exit();
}
$reg = Registration::where("game_data_id", $gameDate->id)->first();
$group = groupViaToken($_SESSION['token']);
if($reg->group_id !== $group->id){
http_response_code(401);
echo json_encode(["message" => "group not own game data"]);
}
header('Content-Type: application/json;charset=UTF-8'); header('Content-Type: application/json;charset=UTF-8');
echo json_encode(array('data' => Vote::where('group_id', groupViaToken($_SESSION['token'])->id)->get()->jsonSerialize())); echo json_encode(array('data' => Vote::where('game_data_id',$gameDate->id)->get()->jsonSerialize()));
} else { } else {
http_response_code(401); http_response_code(401);
@@ -1 +1,32 @@
<?php <?php
require_once "../../../bootstrap.php";
require_once "../Group/Group.php";
use Backend\Models\Registration;
if(isLogin()){
if(isset($_POST['newReg'])){
$group = groupViaToken($_SESSION['token']);
$gameJam = \Backend\Models\GameJam::find($_POST["gameJamId"]);
if(Registration::where("group_id", $group->id)->where("game_jam_id", $gameJam->id)->count() === 0){
$reg = new Registration();
$reg->group_amount = $_POST["groupAmount"];
$reg->group()->associate($group);
$reg->gameJam()->associate($gameJam);
if($reg->save()){
http_response_code(201);
}else{
http_response_code(500);
}
}else {
http_response_code(400);
echo json_encode(["message" => "already registered"]);
}
}else {
http_response_code(400);
}
}else{
http_response_code(401);
echo json_encode(["message" => "is not login"]);
}
@@ -1 +1,27 @@
<?php <?php
require_once "../../../bootstrap.php";
require_once "../Group/Group.php";
use Backend\Models\Registration;
if(isLogin()){
if(isset($_POST['updateReg'])){
if($reg = Registration::where("group_id", $_POST["groupId"])->where("game_jam_id", $_POST["gameJamId"])->first()){
$reg->group_amount = $_POST["groupAmount"];
if($reg->save()){
http_response_code(200);
}else{
http_response_code(500);
}
}else{
http_response_code(400);
echo json_encode(["message" => "registration does not exits"]);
}
}else{
http_response_code(400);
}
}else{
http_response_code(401);
echo json_encode(["message" => "is not login"]);
}
+140 -70
View File
@@ -1,47 +1,71 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="en"> <html lang="en">
<head>
<head>
<!-- Default page settings --> <!-- Default page settings -->
<title>Admin Panel</title> <title>Admin Panel</title>
<meta charset="utf-8"> <meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1" />
<link rel="shortcut icon" href="../Images/UFO.png" /> <link rel="shortcut icon" href="../Images/UFO.png" />
<!-- Default page settings end --> <!-- Default page settings end -->
<!-- CSS --> <!-- CSS -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css" integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl" crossorigin="anonymous"> <link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/css/bootstrap.min.css"
integrity="sha384-BmbxuPwQa2lc/FVzBcNJ7UAyJxM6wuqIj61tLrc4wSX0szH/Ev+nYRRuWlolflfl"
crossorigin="anonymous"
/>
<link rel="stylesheet" href="../Styles/Index.css" /> <link rel="stylesheet" href="../Styles/Index.css" />
<link rel="stylesheet" href="../Styles/AdminPage.css" /> <link rel="stylesheet" href="../Styles/AdminPage.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" /> <link
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/overlayscrollbars/1.13.1/css/OverlayScrollbars.css" /> rel="stylesheet"
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" integrity="sha512-HK5fgLBL+xu6dm/Ii3z4xhlSUyZgTT9tuc/hSrtw6uzJOvgRr2a9jyxxT1ely+B+xFAmJKVSTbpM/CuL7qxO8w==" crossorigin="anonymous" /> href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css"
/>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/overlayscrollbars/1.13.1/css/OverlayScrollbars.css"
/>
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css"
integrity="sha512-HK5fgLBL+xu6dm/Ii3z4xhlSUyZgTT9tuc/hSrtw6uzJOvgRr2a9jyxxT1ely+B+xFAmJKVSTbpM/CuL7qxO8w=="
crossorigin="anonymous"
/>
<!-- CSS end --> <!-- CSS end -->
<!-- Header scripts --> <!-- Header scripts -->
<script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script> <script
src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"
></script>
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/moment@2.29.1/moment.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/moment@2.29.1/moment.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/inputmask@5.0.5/dist/jquery.inputmask.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/inputmask@5.0.5/dist/jquery.inputmask.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/overlayscrollbars/1.13.1/js/jquery.overlayScrollbars.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/overlayscrollbars/1.13.1/js/jquery.overlayScrollbars.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.6.0/dist/umd/popper.min.js" integrity="sha384-KsvD1yqQ1/1+IA7gi3P0tyJcT3vR+NdBTt13hSJ2lnve8agRGXTTyNaBYmCR/Nwi" crossorigin="anonymous"></script> <script
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.min.js" integrity="sha384-nsg8ua9HAw1y0W1btsyWgBklPnCUAFLuTMS2G72MMONqmOymq585AcH49TLBQObG" crossorigin="anonymous"></script> src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.6.0/dist/umd/popper.min.js"
integrity="sha384-KsvD1yqQ1/1+IA7gi3P0tyJcT3vR+NdBTt13hSJ2lnve8agRGXTTyNaBYmCR/Nwi"
crossorigin="anonymous"
></script>
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.0.0-beta2/dist/js/bootstrap.min.js"
integrity="sha384-nsg8ua9HAw1y0W1btsyWgBklPnCUAFLuTMS2G72MMONqmOymq585AcH49TLBQObG"
crossorigin="anonymous"
></script>
<!-- Header scripts end --> <!-- Header scripts end -->
</head> </head>
<body>
<body>
<div class="HeaderPanel" id="header"> <div class="HeaderPanel" id="header">
<div class="HeaderLeft"> <div class="HeaderLeft">
<a style="display: inline-block;" href="../Index.html"> <a style="display: inline-block" href="../Index.html">
<i class="fas fa-arrow-left"></i> <i class="fas fa-arrow-left"></i>
</a> </a>
</div> </div>
<div class="HeaderTitle"> <div class="HeaderTitle">
<h2 style="margin-bottom: 0px"> <h2 style="margin-bottom: 0px">Admin Panel</h2>
Admin Panel </div>
</h2>
</div>
</div> </div>
<!--Opret game jam--> <!--Opret game jam-->
@@ -52,70 +76,116 @@
<h5>Opret Game Jam</h5> <h5>Opret Game Jam</h5>
<div> <div>
<form id="createGameJam" method="POST"> <form id="createGameJam" method="POST">
<!-- <label for="nameOfGameJam">Indtast navn på Game Jam:</label> <!-- <label for="nameOfGameJam">Indtast navn på Game Jam:</label>
<input type="text" name="newGameJam" id="nameOfGameJam"> --> <input type="text" name="newGameJam" id="nameOfGameJam"> -->
<div class="FormField"> <div class="FormField">
<input type="text" class="FormFieldInput" placeholder="Gamejam title" name="newGameJam" id="GamejamTitle" required> <input
<label for="GamejamTitle" class="FormFieldLabel"> type="text"
Gamejam title class="FormFieldInput"
</label> placeholder="Gamejam title"
</div> name="newGameJam"
id="GamejamTitle"
required
/>
<label for="GamejamTitle" class="FormFieldLabel">
Gamejam title
</label>
</div>
<div class="FormField"> <div class="FormField">
<div id="Dates"> <div id="Dates">
<input type="date" class="FormFieldInput" placeholder="mm/dd/yyyy" name="startDate" id="startDate" required> <input
<label for="startDate" class="FormFieldLabel" id="startDateLabel"> type="date"
Start dato class="FormFieldInput"
</label> placeholder="mm/dd/yyyy"
name="startDate"
id="startDate"
required
/>
<label for="startDate" class="FormFieldLabel" id="startDateLabel">
Start dato
</label>
<input type="date" class="FormFieldInput" placeholder="mm/dd/yyyy" name="endDate" id="endDate" required> <input
<label for="endDate" class="FormFieldLabel" id="endDateLabel"> type="date"
Slut dato class="FormFieldInput"
</label> placeholder="mm/dd/yyyy"
</div> name="endDate"
id="endDate"
required
/>
<label for="endDate" class="FormFieldLabel" id="endDateLabel">
Slut dato
</label>
</div>
<div class="Times"> <div class="Times">
<input type="text" class="FormFieldInput" placeholder="hh:mm" name="startTime" id="startTime" required> <label for="startTime" class="FormFieldLabel" id="startTimeLabel">
<label for="startTime" class="FormFieldLabel" id="startTimeLabel"> Start
Start tidspunkt </label>
</label> <input
type="text"
class="FormFieldInput"
placeholder="hh:mm"
name="startTime"
id="startTime"
required
/>
<input type="text" class="FormFieldInput" placeholder="hh:mm" name="endTime" id="endTime" required> <input
type="text"
class="FormFieldInput"
placeholder="hh:mm"
name="endTime"
id="endTime"
required
/>
</div>
</div>
</div> <div class="FormField">
</div> <input
type="text"
class="FormFieldInput"
placeholder="Emne / Keywords (Ikke obligatorisk)"
name="keyWord"
id="keyWord"
required
/>
<label for="keyWord" class="FormFieldLabel" id="keyWordLabel">
Emne / Keywords (Ikke obligatorisk)
</label>
</div>
<div class="FormField"> <div class="FormField">
<input type="text" class="FormFieldInput" placeholder="Emne / Keywords (Ikke obligatorisk)" name="keyWord" id="keyWord" required> <textarea
<label for="keyWord" class="FormFieldLabel" id="keyWordLabel"> class="FormFieldInput"
Emne / Keywords (Ikke obligatorisk) placeholder="Beskrivelse"
</label> name="description"
</div> id="Beskrivelse"
required
></textarea>
<label for="keyWord" class="FormFieldLabel" id="keyWordLabel">
Beskrivelse
</label>
</div>
<div class="FormField"> <!-- <div class="form-floating">
<textarea class="FormFieldInput" placeholder="Beskrivelse" name="description" id="Beskrivelse" required></textarea>
<label for="keyWord" class="FormFieldLabel" id="keyWordLabel">
Beskrivelse
</label>
</div>
<!-- <div class="form-floating">
<textarea class="form-control" name="description" id="description" placeholder="Leave a comment here" id="floatingTextarea2" style="height: 100px"></textarea> <textarea class="form-control" name="description" id="description" placeholder="Leave a comment here" id="floatingTextarea2" style="height: 100px"></textarea>
<label for="floatingTextarea2">Beskrivelse</label> <label for="floatingTextarea2">Beskrivelse</label>
</div> --> </div> -->
<input type="submit" name="newGameJam" id="indsend" value="Indsend"> <input type="submit" name="newGameJam" id="indsend" value="Indsend" />
</form> </form>
</div> </div>
<!-- Opret game jam slut --> <!-- Opret game jam slut -->
<!-- Body scripts --> <!-- Body scripts -->
<script src="../Javascript/OverlayScrollbar.js"></script> <script src="../Javascript/OverlayScrollbar.js"></script>
<script src="../Javascript/AddEvent.js"></script> <!--<script src="../Javascript/AddEvent.js"></script>-->
<script src="../Javascript/AddGameJam.js"></script> <script src="../Javascript/AddGameJam.js"></script>
<!-- Body scripts end --> <!-- Body scripts end -->
</body> </body>
</html> </html>
+11 -10
View File
@@ -28,7 +28,9 @@
<div> <div>
<div class="row"> <div class="row">
<div class="col-sm" id="description"> <div class="col-sm" id="description">
Beskrivelse <b>Beskrivelse</b><br />
Yoooooooo my name is gert,
I love flowers.... HA what?
<br /> <br />
<button id="isWebBased">Play game online</button> <button id="isWebBased">Play game online</button>
<button id="gameFil">Download game</button> <button id="gameFil">Download game</button>
@@ -38,19 +40,18 @@
</div> </div>
</div> </div>
</div> </div>
<div id="suggestions"> <hr class="GradientDivider" />
<p>Hej dkjhhnsd hid hgndnf ghnd df</p>
</div>
<p>Måske vil du prøve...</p>
<div class="jcarousel-wrapper"> <div class="jcarousel-wrapper">
<div class="jcarousel" data-jcarousel="true"> <div class="jcarousel" data-jcarousel="true">
<ul style="left: 0px; top: 0px;"> <ul style="left: 0px; top: 0px;">
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 1"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 1"></a></li>
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 2"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 2"></a></li>
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 3"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 3"></a></li>
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 4"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 4"></a></li>
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 5"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 5"></a></li>
<li style="width: 200px;"><img src="../Images/spil.jpg" alt="Image 6"></li> <li style="width: 200px;"><a href="#link"><img src="../Images/spil.jpg" alt="Image 6"></a></li>
</ul> </ul>
</div> </div>
+85
View File
@@ -0,0 +1,85 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="icon" href="../Images/UFO.png" />
<title>GameJam</title>
<link
rel="stylesheet"
href="../../vendor/twbs/bootstrap/dist/css/bootstrap.min.css"
/>
<script src="../../vendor/twbs/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script
src="https://code.jquery.com/jquery-3.6.0.min.js"
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
crossorigin="anonymous"
></script>
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
</head>
<body>
<nav class="navbar navbar-expand-lg navbar-dark bg-dark">
<div class="container-fluid">
<a class="navbar-brand" href="#"
><img src="../Images/UFO.png" alt="" width="32" height="32" />
</a>
<button
class="navbar-toggler"
type="button"
data-bs-toggle="collapse"
data-bs-target="#navbarNav"
aria-controls="navbarNav"
aria-expanded="false"
aria-label="Toggle navigation"
>
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarNav">
<ul class="navbar-nav">
<li class="nav-item">
<a class="nav-link active" aria-current="page" href="#">Hjem</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Information</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#">Events</a>
</li>
<li class="nav-item dropdown">
<a
class="nav-link dropdown-toggle"
href="#"
id="navbarDropdownMenuLink"
role="button"
data-bs-toggle="dropdown"
aria-expanded="false"
>
Toggle Dropdown
</a>
<ul
class="dropdown-menu-dark"
aria-labelledby="navbarDropdownMenuLink"
>
<li>
<a class="dropdown-item" href="#">Spil</a>
</li>
<li>
<a class="dropdown-item" href="#">Upload fil</a>
</li>
<li>
<a class="dropdown-item" href="#">Stem</a>
</li>
<li>
<a class="dropdown-item" href="#">Lodtrækning</a>
</li>
</ul>
</li>
</ul>
</div>
</div>
</nav>
</body>
</html>
+1137 -614
View File
File diff suppressed because it is too large Load Diff
+27 -24
View File
@@ -1,32 +1,35 @@
$(document).ready(function() { $(document).ready(function () {
axios.defaults.baseURL = "http://localhost/Game-Jaming";
$('#createGameJam').submit(function(e) { $("#createGameJam").submit(function (e) {
let URL = 'https://ptsv2.com/t/tzztn-1616799712/post'; let URL = "/Backend/Controllers/GameJam/NewGameJam.php";
let form = $('#createGameJam')[0]; let form = $("#createGameJam")[0];
let formData = new FormData(form); let formData = new FormData(form);
let id = $('#indsend').attr('name'); let id = $("#indsend").attr("name");
let value = $('#indsend').val(); let value = $("#indsend").val();
let startTime = $("#startTime").text(); let startTime = $("#startTime").text();
let endTime = $("#endTime").text(); let endTime = $("#endTime").text();
formData.append(id, value); formData.append(id, value);
formData.set('startTime', startTime); formData.set("startTime", startTime);
formData.append('endTime', endTime); formData.append("endTime", endTime);
axios.post(URL, formData, { axios
header: 'multipart/form-data' .post(URL, formData, {
}).then(res => { header: "multipart/form-data",
if (res.status === 200) })
{ .then((res) => {
console.log('New Game Jam Created!'); if (res.status === 200) {
} console.log("New Game Jam Created!");
}).catch(error => { }
console.log(error.response); })
}); .catch((error) => {
console.log(error.response);
});
e.preventDefault(); e.preventDefault();
}); });
}); });
+2 -5
View File
@@ -42,7 +42,7 @@ const renderCalendar = () => {
"December", "December",
]; ];
document.querySelector(".date h1").innerHTML = months[date.getMonth()]; document.querySelector(".date h1").innerHTML = months[date.getMonth()] + " " + date.getFullYear();
document.querySelector(".date p").innerHTML = new Date().toLocaleDateString('da-DK', { document.querySelector(".date p").innerHTML = new Date().toLocaleDateString('da-DK', {
weekday: 'long', weekday: 'long',
@@ -58,10 +58,7 @@ const renderCalendar = () => {
} }
for (let i = 1; i <= lastDay; i++) { for (let i = 1; i <= lastDay; i++) {
if ( if (i === new Date().getDate() && date.getMonth() === new Date().getMonth() && date.getFullYear() === new Date().getFullYear()) {
i === new Date().getDate() &&
date.getMonth() === new Date().getMonth()
) {
days += `<div class="today" onClick="clickdate()">${i}</div>`; days += `<div class="today" onClick="clickdate()">${i}</div>`;
+319 -349
View File
@@ -1,363 +1,333 @@
$(document).ready(function () { $(document).ready(function () {
// Register Start // Register Start
let selectedGameJam; axios.defaults.baseURL = "http://localhost/Game-Jaming";
let isAdminLoggedIn = false;
let displayValue = 0;
let arr = [
{"id": "-1", "Gamejam": "Vælg aktivt GameJam"}
];
if (getCookie('userName') != null) let selectedGameJam;
{ let isAdminLoggedIn = false;
isAdminLoggedIn = true; let displayValue = 0;
SwitchNavInfo(true, true); let arr = [{ id: "-1", Gamejam: "Vælg aktivt GameJam" }];
}
else if (getCookie('groupName') != null)
{
isAdminLoggedIn = false;
SwitchNavInfo(true);
}
// Populate select with options from the database if (getCookie("userName") != null) {
axios.get('/Backend/Controllers/GameJam/GetGameJam.php') isAdminLoggedIn = true;
.then(function(res) { SwitchNavInfo(true, true);
let resArr = res.data.data; } else if (getCookie("groupName") != null) {
isAdminLoggedIn = false;
SwitchNavInfo(true);
}
for(let i = 0; i < res.data.data.length; i++) // Populate select with options from the database
{ axios
arr.push({ .get("/Backend/Controllers/GameJam/GetGameJam.php")
id: resArr[i].id, .then(function (res) {
Gamejam: resArr[i].name let resArr = res.data.data;
});
}
$.each(arr, function(i, data) { for (let i = 0; i < res.data.data.length; i++) {
if (i === 0) arr.push({
{ id: resArr[i].id,
$('#GameJamSelect').append('<option disabled selected value="' + data.id + '">' + data.Gamejam + '</option>'); Gamejam: resArr[i].name,
}
else
{
$('#GameJamSelect').append('<option value="' + data.id + '">' + data.Gamejam + '</option>');
}
}); });
}
$.each(arr, function (i, data) {
if (i === 0) {
$("#GameJamSelect").append(
'<option disabled selected value="' +
data.id +
'">' +
data.Gamejam +
"</option>"
);
} else {
$("#GameJamSelect").append(
'<option value="' + data.id + '">' + data.Gamejam + "</option>"
);
}
});
}) })
.catch(function(error) { .catch(function (error) {
console.log(error.response);
});
// Remove invalidInput if selected option has been changed
$("#GameJamSelect").change(function () {
selectedGameJam = $("#GameJamSelect").children("option:selected").val();
if (selectedGameJam >= 1) {
$("#GameJamSelect").removeClass("invalidInput");
}
});
// Remove invalidInput if change in group name has been detected
$("#username").on("input", function () {
if ($(this).hasClass("invalidInput")) {
$(this).removeClass("invalidInput");
}
});
GetGroupNames().then(function (res) {
let resArr = res.data;
let groupNameTaken = false;
$("#RegisterBtn").click(function () {
let groupName = $("#username").val();
for (let i = 0; i < resArr.length; i++) {
if (resArr[i].group_name.toUpperCase() === groupName.toUpperCase()) {
groupNameTaken = true;
break;
} else {
groupNameTaken = false;
}
}
});
// Check data before submitting
$("#RegisterForm").submit(function (e) {
if (!selectedGameJam >= 1) {
$("#GameJamSelect").addClass("invalidInput");
e.preventDefault();
return false;
} else {
$("#gameJamId").val($("#GameJamSelect option:selected").val());
}
if ($("#pass1").val().length === 0) {
$("#pass1").addClass("invalidInput");
e.preventDefault();
return;
}
if ($("#pass2").val().length === 0) {
$("#pass2").addClass("invalidInput");
e.preventDefault();
return;
}
if ($("#username").val().length === 0) {
$("#username").addClass("invalidInput");
e.preventDefault();
return;
}
if ($("#pass1").hasClass("invalidInput")) {
e.preventDefault();
return;
}
if ($("#pass2").hasClass("invalidInput")) {
e.preventDefault();
return;
}
if (!$.isNumeric($("#NUDDisplay").text())) {
$("#NUDDisplay").text("Ugyldigt antal!");
$("#NUDDisplay").css({ color: "red" });
e.preventDefault();
} else {
$("#groupAmount").val($("#NUDDisplay").text());
}
if (groupNameTaken) {
$("#username").addClass("invalidInput");
e.preventDefault();
return;
}
let URL = "/Backend/Controllers/Group/SigningUp.php";
let form = $("#RegisterForm")[0];
let formData = new FormData(form);
let id = $("#RegisterBtn").attr("name");
let value = $("#RegisterBtn").val();
formData.append(id, value);
axios
.post(URL, formData, {
header: "multipart/form-data",
})
.then((res) => {
if (res.status === 201) {
SwitchNavInfo(true);
}
})
.catch((error) => {
console.log(error.response);
});
e.preventDefault();
});
});
$("#NUDPlus").click(function () {
if ($("#NUDDisplay").css("color") === "rgb(255, 0, 0)") {
$("#NUDDisplay").css({ color: "rgba(255, 255, 255, .55)" });
}
displayValue++;
$("#NUDDisplay").text(displayValue);
});
$("#NUDMinus").click(function () {
if (displayValue <= 0) {
return;
} else if (displayValue <= 1) {
$("#NUDDisplay").text(1);
} else {
displayValue--;
$("#NUDDisplay").text(displayValue);
}
});
async function GetGroupNames() {
const res = await axios.get("/Backend/Controllers/Group/GetGroup.php");
return res.data;
}
// Register end
// Login start
$("#LoginForm").submit(function (e) {
let URL = "/Backend/Controllers/Group/Login.php";
let form = $("#LoginForm")[0];
let formData = new FormData(form);
let id = $("#LoginBtn").attr("name");
let value = $("#LoginBtn").val();
formData.append(id, value);
axios
.post(URL, formData, {
header: "multipart/form-data",
})
.then((res) => {
if (res.status === 200) {
isAdminLoggedIn = false;
SwitchNavInfo(true);
}
})
.catch((error) => {
if (error.response.status === 401) {
$("#loginUsername").css({ "border-color": "red" });
$("#loginPassword").css({ "border-color": "red" });
$("#ErrorText").css({ display: "block" });
} else {
console.log(error.response);
}
});
e.preventDefault();
});
$("#AdminLoginForm").submit(function (e) {
let URL = "/Backend/Controllers/Admin/AdminLogin.php";
let form = $("#AdminLoginForm")[0];
let formData = new FormData(form);
let id = $("#AdminLoginBtn").attr("name");
let value = $("#AdminLoginBtn").val();
formData.append(id, value);
axios
.post(URL, formData, {
header: "multipart/form-data",
})
.then((res) => {
if (res.status === 200) {
isAdminLoggedIn = true;
SwitchNavInfo(true, true);
}
})
.catch((error) => {
if (error.response.status === 401) {
$("#adminUsername").css({ "border-color": "red" });
$("#adminPassword").css({ "border-color": "red" });
$("#AdminErrorText").css({ display: "block" });
} else {
console.log(error.response);
}
});
e.preventDefault();
});
function SwitchNavInfo(isLoggedIn, isAdmin) {
if (isLoggedIn) {
$("#NavUser").css({ display: "block" });
$("#NavUser").text(
`Welcome, ${isAdmin ? getCookie("userName") : getCookie("groupName")}!`
);
$("#NavLogin").css({ display: "none" });
$("#NavLogout").css({ display: "block" });
$("#LoginModal").modal("hide");
} else {
$("#NavUser").css({ display: "none" });
$("#NavUser").text(``);
$("#NavLogin").css({ display: "block" });
$("#NavLogout").css({ display: "none" });
}
if (isAdmin === undefined) {
return;
} else {
if (isAdmin) {
if (isLoggedIn) {
$("#AdminPanel").css({ display: "block" });
console.log("Logged In As Admin!");
} else {
$("#AdminPanel").css({ display: "none" });
console.log("Logged Out As Admin!");
}
}
}
}
// Login end
// Logout start
$("#NavLogout").click(function () {
axios
.get("/Backend/Controllers/Group/Logout.php")
.then((res) => {
if (res.status == 200) {
SwitchNavInfo(false, isAdminLoggedIn);
isAdminLoggedIn = false;
}
})
.catch((error) => {
console.log(error.response); console.log(error.response);
}); });
});
// Logout end
// Remove invalidInput if selected option has been changed function getCookie(name) {
$('#GameJamSelect').change(function() { // Split cookie string and get all individual name=value pairs in an array
selectedGameJam = $('#GameJamSelect').children("option:selected").val(); var cookieArr = document.cookie.split(";");
if (selectedGameJam >= 1) // Loop through the array elements
{ for (var i = 0; i < cookieArr.length; i++) {
$('#GameJamSelect').removeClass('invalidInput'); var cookiePair = cookieArr[i].split("=");
}
});
// Remove invalidInput if change in group name has been detected /* Removing whitespace at the beginning of the cookie name
$('#username').on('input', function() {
if ($(this).hasClass('invalidInput'))
{
$(this).removeClass('invalidInput');
}
})
GetGroupNames().then(function(res) {
let resArr = res.data;
let groupNameTaken = false;
$('#RegisterBtn').click(function() {
let groupName = $('#username').val();
for(let i = 0; i < resArr.length; i++)
{
if (resArr[i].group_name.toUpperCase() === groupName.toUpperCase())
{
groupNameTaken = true;
break;
}
else
{
groupNameTaken = false;
}
}
});
// Check data before submitting
$('#RegisterForm').submit(function(e) {
if(!selectedGameJam >= 1)
{
$('#GameJamSelect').addClass('invalidInput');
e.preventDefault();
return false;
}
else
{
$('#gameJamId').val($('#GameJamSelect option:selected').val());
}
if($('#pass1').val().length === 0)
{
$('#pass1').addClass('invalidInput');
e.preventDefault();
return;
}
if($('#pass2').val().length === 0)
{
$('#pass2').addClass('invalidInput');
e.preventDefault();
return;
}
if($('#username').val().length === 0)
{
$('#username').addClass('invalidInput');
e.preventDefault();
return;
}
if($('#pass1').hasClass('invalidInput'))
{
e.preventDefault();
return;
}
if($('#pass2').hasClass('invalidInput'))
{
e.preventDefault();
return;
}
if(!$.isNumeric($('#NUDDisplay').text()))
{
$('#NUDDisplay').text('Ugyldigt antal!');
$('#NUDDisplay').css({"color": "red"});
e.preventDefault();
}
else
{
$('#groupAmount').val($('#NUDDisplay').text());
}
if (groupNameTaken)
{
$('#username').addClass('invalidInput');
e.preventDefault();
return;
}
let URL = "/Backend/Controllers/Group/SigningUp.php";
let form = $('#RegisterForm')[0];
let formData = new FormData(form);
let id = $('#RegisterBtn').attr('name');
let value = $('#RegisterBtn').val();
formData.append(id, value);
axios.post(URL, formData, {
header: 'multipart/form-data'
}).then(res => {
if (res.status === 201)
{
SwitchNavInfo(true);
}
}).catch(error => {
console.log(error.response);
});
e.preventDefault();
});
});
$('#NUDPlus').click(function() {
if($('#NUDDisplay').css('color') === 'rgb(255, 0, 0)')
{
$('#NUDDisplay').css({'color': 'rgba(255, 255, 255, .55)'});
}
displayValue++;
$('#NUDDisplay').text(displayValue);
});
$('#NUDMinus').click(function() {
if (displayValue <= 0)
{
return;
}
else if(displayValue <= 1)
{
$('#NUDDisplay').text(1);
}
else
{
displayValue--;
$('#NUDDisplay').text(displayValue);
}
});
async function GetGroupNames() {
const res = await axios.get('/Backend/Controllers/Group/GetGroup.php');
return res.data;
}
// Register end
// Login start
$('#LoginForm').submit(function(e) {
let URL = "/Backend/Controllers/Group/Login.php";
let form = $('#LoginForm')[0];
let formData = new FormData(form);
let id = $('#LoginBtn').attr('name');
let value = $('#LoginBtn').val();
formData.append(id, value);
axios.post(URL, formData, {
header: 'multipart/form-data'
}).then(res => {
if (res.status === 200)
{
isAdminLoggedIn = false;
SwitchNavInfo(true);
}
}).catch(error => {
if (error.response.status === 401)
{
$('#loginUsername').css({'border-color':'red'});
$('#loginPassword').css({'border-color':'red'});
$('#ErrorText').css({'display':'block'});
}
else
{
console.log(error.response);
}
});
e.preventDefault();
});
$('#AdminLoginForm').submit(function(e) {
let URL = "/Backend/Controllers/Admin/AdminLogin.php";
let form = $('#AdminLoginForm')[0];
let formData = new FormData(form);
let id = $('#AdminLoginBtn').attr('name');
let value = $('#AdminLoginBtn').val();
formData.append(id, value);
axios.post(URL, formData, {
header: 'multipart/form-data'
}).then(res => {
if (res.status === 200)
{
isAdminLoggedIn = true;
SwitchNavInfo(true, true);
}
}).catch(error => {
if (error.response.status === 401)
{
$('#adminUsername').css({'border-color':'red'});
$('#adminPassword').css({'border-color':'red'});
$('#AdminErrorText').css({'display':'block'});
}
else
{
console.log(error.response);
}
});
e.preventDefault();
});
function SwitchNavInfo(isLoggedIn, isAdmin) {
if (isLoggedIn)
{
$('#NavUser').css({'display':'block'});
$('#NavUser').text(`Welcome, ${isAdmin ? getCookie('userName') : getCookie('groupName')}!`);
$('#NavLogin').css({'display':'none'});
$('#NavLogout').css({'display':'block'});
$('#LoginModal').modal('hide');
}
else
{
$('#NavUser').css({'display':'none'});
$('#NavUser').text(``);
$('#NavLogin').css({'display':'block'});
$('#NavLogout').css({'display':'none'});
}
if (isAdmin === undefined)
{
return
}
else
{
if (isAdmin)
{
if (isLoggedIn)
{
$('#AdminPanel').css({'display':'block'});
console.log('Logged In As Admin!');
}
else
{
$('#AdminPanel').css({'display':'none'});
console.log('Logged Out As Admin!');
}
}
}
}
// Login end
// Logout start
$('#NavLogout').click(function() {
axios.get('/Backend/Controllers/Group/Logout.php').then(res => {
if (res.status == 200)
{
SwitchNavInfo(false, isAdminLoggedIn);
isAdminLoggedIn = false;
}
}).catch(error => {
console.log(error.response);
});
});
// Logout end
function getCookie(name) {
// Split cookie string and get all individual name=value pairs in an array
var cookieArr = document.cookie.split(";");
// Loop through the array elements
for(var i = 0; i < cookieArr.length; i++) {
var cookiePair = cookieArr[i].split("=");
/* Removing whitespace at the beginning of the cookie name
and compare it with the given string */ and compare it with the given string */
if(name == cookiePair[0].trim()) { if (name == cookiePair[0].trim()) {
// Decode the cookie value and return // Decode the cookie value and return
return decodeURIComponent(cookiePair[1]); return decodeURIComponent(cookiePair[1]);
} }
}
// Return null if not found
return null;
} }
// Return null if not found
return null;
}
}); });
+1
View File
@@ -0,0 +1 @@
// JavaScript source code
+475 -421
View File
File diff suppressed because it is too large Load Diff
+41 -127
View File
@@ -16,35 +16,51 @@ html {
margin-bottom: 10px; margin-bottom: 10px;
} }
#suggestions {
justify-content: center;
background-color: blue;
margin-top: 20px;
}
#isWebBased { #isWebBased {
border-radius: 15px; border: 0;
background: none;
display: block;
margin: 20px auto;
text-align: center;
border: 2px solid rgb(52, 152, 219);
padding: 10px 10px;
outline: none;
color: rgba(255, 255, 255, .55); color: rgba(255, 255, 255, .55);
background-color: rgb(18, 18, 18); border-radius: 24px;
border: double; transition: 0.25s;
height: 30px; position: static;
font-weight: bold; bottom: 45vh;
margin: 8px; display: inline;
left: 27vw;
} }
#gameFil { #gameFil {
border-radius: 15px; border: 0;
background: none;
display: block;
margin: 20px auto;
text-align: center;
border: 2px solid rgb(52, 152, 219);
padding: 10px 10px;
outline: none;
color: rgba(255, 255, 255, .55); color: rgba(255, 255, 255, .55);
background-color: rgb(18, 18, 18); border-radius: 24px;
border: double; transition: 0.25s;
height: 30px; position: static;
font-weight: bold; bottom: 45vh;
margin: 8px; display: inline;
} }
#thumbnailFile { #thumbnailFile {
max-width: 100%; max-width: 100%;
max-height: 100%; max-height: 100%;
}
#thumbnailFile img{
width: 100%;
height:100%;
} }
#description { #description {
@@ -60,114 +76,12 @@ html {
margin: 20px !important; margin: 20px !important;
} }
.jcarousel-wrapper { .GradientDivider {
margin: 20px auto; margin: 16px 0 16px 0;
position: relative;
/*border: 10px solid #fff;*/
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-box-shadow: 0 0 2px #999;
-moz-box-shadow: 0 0 2px #999;
box-shadow: 0 0 2px #999;
}
/** Carousel **/
.jcarousel {
position: relative;
overflow: hidden;
width: 100%;
}
.jcarousel ul {
width: 10000em;
position: relative;
list-style: none;
margin: 0;
padding: 0;
}
.jcarousel li {
width: 100%;
float: left;
border: 1px solid #fff;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.jcarousel img {
display: block; display: block;
max-width: 100%; border: none;
height: auto !important; height: 3px !important;
} background: rgb(0, 113, 185) !important;
background: linear-gradient(to right, rgb(18, 18, 18), rgb(0, 113, 185), rgb(38, 171, 255), rgb(0, 113, 185), rgb(18, 18, 18)) !important;
/** Carousel Controls **/
.jcarousel-control-prev,
.jcarousel-control-next {
position: absolute;
top: 50%;
margin-top: -15px;
width: 30px;
height: 30px;
text-align: center;
background: #4E443C;
color: #fff;
text-decoration: none;
text-shadow: 0 0 1px #000;
font: 24px/27px Arial, sans-serif;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
border-radius: 30px;
-webkit-box-shadow: 0 0 4px #F0EFE7;
-moz-box-shadow: 0 0 4px #F0EFE7;
box-shadow: 0 0 4px #F0EFE7;
}
.jcarousel-control-prev {
left: 15px;
}
.jcarousel-control-next {
right: 15px;
}
/** Carousel Pagination **/
.jcarousel-pagination {
position: absolute;
bottom: -40px;
left: 50%;
-webkit-transform: translate(-50%, 0);
-ms-transform: translate(-50%, 0);
transform: translate(-50%, 0);
margin: 0;
}
.jcarousel-pagination a {
text-decoration: none;
display: inline-block;
font-size: 11px;
height: 10px;
width: 10px;
line-height: 10px;
background: #fff;
color: #4E443C;
border-radius: 10px;
text-indent: -9999px;
margin-right: 7px;
-webkit-box-shadow: 0 0 2px #4E443C;
-moz-box-shadow: 0 0 2px #4E443C;
box-shadow: 0 0 2px #4E443C;
}
.jcarousel-pagination a.active {
background: #4E443C;
color: #fff;
opacity: 1; opacity: 1;
-webkit-box-shadow: 0 0 2px #F0EFE7;
-moz-box-shadow: 0 0 2px #F0EFE7;
box-shadow: 0 0 2px #F0EFE7;
} }
+2 -2
View File
@@ -7,7 +7,7 @@
border-radius: 5px; border-radius: 5px;
-webkit-box-shadow: 0 0 2px #999; -webkit-box-shadow: 0 0 2px #999;
-moz-box-shadow: 0 0 2px #999; -moz-box-shadow: 0 0 2px #999;
box-shadow: 0 0 2px #999; box-shadow: none !important;
} }
/** Carousel **/ /** Carousel **/
@@ -29,7 +29,7 @@
.jcarousel li { .jcarousel li {
width: 200px; width: 200px;
float: left; float: left;
border: 1px solid #fff; /* border: 1px solid #fff;*/
-moz-box-sizing: border-box; -moz-box-sizing: border-box;
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
+3 -1
View File
@@ -3,7 +3,9 @@
"illuminate/database": "^8.30", "illuminate/database": "^8.30",
"ext-mysqli": "*", "ext-mysqli": "*",
"ext-sqlite3": "*", "ext-sqlite3": "*",
"ext-fileinfo": "*" "ext-fileinfo": "*",
"ext-json": "*",
"twbs/bootstrap": "5.0.0-beta3"
}, },
"autoload": { "autoload": {
"classmap": [ "classmap": [
Generated
+95 -36
View File
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically" "This file is @generated automatically"
], ],
"content-hash": "f7278c3dc731961ed65f3f31bf2b49f0", "content-hash": "e0289598393b91834d5fbd72b92a029a",
"packages": [ "packages": [
{ {
"name": "doctrine/inflector", "name": "doctrine/inflector",
@@ -103,16 +103,16 @@
}, },
{ {
"name": "illuminate/collections", "name": "illuminate/collections",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/collections.git", "url": "https://github.com/illuminate/collections.git",
"reference": "591e31015a8b0731708c54411cb52d50a00b2bc3" "reference": "21690cd5591f2d42d792e5e4a687f9beba829f1d"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/illuminate/collections/zipball/591e31015a8b0731708c54411cb52d50a00b2bc3", "url": "https://api.github.com/repos/illuminate/collections/zipball/21690cd5591f2d42d792e5e4a687f9beba829f1d",
"reference": "591e31015a8b0731708c54411cb52d50a00b2bc3", "reference": "21690cd5591f2d42d792e5e4a687f9beba829f1d",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@@ -153,11 +153,11 @@
"issues": "https://github.com/laravel/framework/issues", "issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework" "source": "https://github.com/laravel/framework"
}, },
"time": "2021-04-01T13:26:52+00:00" "time": "2021-04-14T11:48:08+00:00"
}, },
{ {
"name": "illuminate/container", "name": "illuminate/container",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/container.git", "url": "https://github.com/illuminate/container.git",
@@ -208,7 +208,7 @@
}, },
{ {
"name": "illuminate/contracts", "name": "illuminate/contracts",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/contracts.git", "url": "https://github.com/illuminate/contracts.git",
@@ -256,16 +256,16 @@
}, },
{ {
"name": "illuminate/database", "name": "illuminate/database",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/database.git", "url": "https://github.com/illuminate/database.git",
"reference": "09a2d38e27f930a5d9b7ef3514b650a3dc4cdd55" "reference": "03c0525b693587f877f4d80dcc55597528c98fc0"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/illuminate/database/zipball/09a2d38e27f930a5d9b7ef3514b650a3dc4cdd55", "url": "https://api.github.com/repos/illuminate/database/zipball/03c0525b693587f877f4d80dcc55597528c98fc0",
"reference": "09a2d38e27f930a5d9b7ef3514b650a3dc4cdd55", "reference": "03c0525b693587f877f4d80dcc55597528c98fc0",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@@ -320,11 +320,11 @@
"issues": "https://github.com/laravel/framework/issues", "issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework" "source": "https://github.com/laravel/framework"
}, },
"time": "2021-04-06T13:40:22+00:00" "time": "2021-04-17T17:53:05+00:00"
}, },
{ {
"name": "illuminate/macroable", "name": "illuminate/macroable",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/macroable.git", "url": "https://github.com/illuminate/macroable.git",
@@ -370,16 +370,16 @@
}, },
{ {
"name": "illuminate/support", "name": "illuminate/support",
"version": "v8.36.0", "version": "v8.38.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/illuminate/support.git", "url": "https://github.com/illuminate/support.git",
"reference": "26aa01648f348df7b7988ee911cdf98bcaae8ea1" "reference": "735391f31e145aad4f7aff3d9736ef70452dd1fe"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/illuminate/support/zipball/26aa01648f348df7b7988ee911cdf98bcaae8ea1", "url": "https://api.github.com/repos/illuminate/support/zipball/735391f31e145aad4f7aff3d9736ef70452dd1fe",
"reference": "26aa01648f348df7b7988ee911cdf98bcaae8ea1", "reference": "735391f31e145aad4f7aff3d9736ef70452dd1fe",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@@ -434,7 +434,7 @@
"issues": "https://github.com/laravel/framework/issues", "issues": "https://github.com/laravel/framework/issues",
"source": "https://github.com/laravel/framework" "source": "https://github.com/laravel/framework"
}, },
"time": "2021-04-06T13:05:53+00:00" "time": "2021-04-15T11:51:39+00:00"
}, },
{ {
"name": "nesbot/carbon", "name": "nesbot/carbon",
@@ -1213,21 +1213,21 @@
}, },
{ {
"name": "symfony/service-contracts", "name": "symfony/service-contracts",
"version": "v2.2.0", "version": "v2.4.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/service-contracts.git", "url": "https://github.com/symfony/service-contracts.git",
"reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1" "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/service-contracts/zipball/d15da7ba4957ffb8f1747218be9e1a121fd298a1", "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb",
"reference": "d15da7ba4957ffb8f1747218be9e1a121fd298a1", "reference": "f040a30e04b57fbcc9c6cbcf4dbaa96bd318b9bb",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
"php": ">=7.2.5", "php": ">=7.2.5",
"psr/container": "^1.0" "psr/container": "^1.1"
}, },
"suggest": { "suggest": {
"symfony/service-implementation": "" "symfony/service-implementation": ""
@@ -1235,7 +1235,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.2-dev" "dev-main": "2.4-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@@ -1272,7 +1272,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/service-contracts/tree/master" "source": "https://github.com/symfony/service-contracts/tree/v2.4.0"
}, },
"funding": [ "funding": [
{ {
@@ -1288,7 +1288,7 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2020-09-07T11:33:47+00:00" "time": "2021-04-01T10:43:52+00:00"
}, },
{ {
"name": "symfony/string", "name": "symfony/string",
@@ -1468,16 +1468,16 @@
}, },
{ {
"name": "symfony/translation-contracts", "name": "symfony/translation-contracts",
"version": "v2.3.0", "version": "v2.4.0",
"source": { "source": {
"type": "git", "type": "git",
"url": "https://github.com/symfony/translation-contracts.git", "url": "https://github.com/symfony/translation-contracts.git",
"reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105" "reference": "95c812666f3e91db75385749fe219c5e494c7f95"
}, },
"dist": { "dist": {
"type": "zip", "type": "zip",
"url": "https://api.github.com/repos/symfony/translation-contracts/zipball/e2eaa60b558f26a4b0354e1bbb25636efaaad105", "url": "https://api.github.com/repos/symfony/translation-contracts/zipball/95c812666f3e91db75385749fe219c5e494c7f95",
"reference": "e2eaa60b558f26a4b0354e1bbb25636efaaad105", "reference": "95c812666f3e91db75385749fe219c5e494c7f95",
"shasum": "" "shasum": ""
}, },
"require": { "require": {
@@ -1489,7 +1489,7 @@
"type": "library", "type": "library",
"extra": { "extra": {
"branch-alias": { "branch-alias": {
"dev-master": "2.3-dev" "dev-main": "2.4-dev"
}, },
"thanks": { "thanks": {
"name": "symfony/contracts", "name": "symfony/contracts",
@@ -1526,7 +1526,7 @@
"standards" "standards"
], ],
"support": { "support": {
"source": "https://github.com/symfony/translation-contracts/tree/v2.3.0" "source": "https://github.com/symfony/translation-contracts/tree/v2.4.0"
}, },
"funding": [ "funding": [
{ {
@@ -1542,7 +1542,63 @@
"type": "tidelift" "type": "tidelift"
} }
], ],
"time": "2020-09-28T13:05:58+00:00" "time": "2021-03-23T23:28:01+00:00"
},
{
"name": "twbs/bootstrap",
"version": "v5.0.0-beta3",
"source": {
"type": "git",
"url": "https://github.com/twbs/bootstrap.git",
"reference": "220139a89ffc3864bbb6e1b35471667318eadc1f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/twbs/bootstrap/zipball/220139a89ffc3864bbb6e1b35471667318eadc1f",
"reference": "220139a89ffc3864bbb6e1b35471667318eadc1f",
"shasum": ""
},
"replace": {
"twitter/bootstrap": "self.version"
},
"type": "library",
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Mark Otto",
"email": "markdotto@gmail.com"
},
{
"name": "Jacob Thornton",
"email": "jacobthornton@gmail.com"
}
],
"description": "The most popular front-end framework for developing responsive, mobile first projects on the web.",
"homepage": "https://getbootstrap.com/",
"keywords": [
"JS",
"css",
"framework",
"front-end",
"mobile-first",
"responsive",
"sass",
"web"
],
"support": {
"issues": "https://github.com/twbs/bootstrap/issues",
"source": "https://github.com/twbs/bootstrap/tree/v5.0.0-beta3"
},
"funding": [
{
"url": "https://opencollective.com/bootstrap",
"type": "open_collective"
}
],
"time": "2021-03-23T16:26:54+00:00"
}, },
{ {
"name": "voku/portable-ascii", "name": "voku/portable-ascii",
@@ -1622,13 +1678,16 @@
"packages-dev": [], "packages-dev": [],
"aliases": [], "aliases": [],
"minimum-stability": "stable", "minimum-stability": "stable",
"stability-flags": [], "stability-flags": {
"twbs/bootstrap": 10
},
"prefer-stable": false, "prefer-stable": false,
"prefer-lowest": false, "prefer-lowest": false,
"platform": { "platform": {
"ext-mysqli": "*", "ext-mysqli": "*",
"ext-sqlite3": "*", "ext-sqlite3": "*",
"ext-fileinfo": "*" "ext-fileinfo": "*",
"ext-json": "*"
}, },
"platform-dev": [], "platform-dev": [],
"plugin-api-version": "2.0.0" "plugin-api-version": "2.0.0"
+5 -5
View File
@@ -1,7 +1,7 @@
{ {
"driver":"mysql", "driver": "mysql",
"host":"localhost", "host": "localhost",
"database":"testdb", "database": "testdb",
"username":"root", "username": "root",
"password":"V#_xWL6_" "password": ""
} }