Files
2026-06-17 15:42:16 +02:00

366 lines
8.9 KiB
PHP

<?php
require("header.php");
//Find al projects
$query = "SELECT `id`, `name` FROM `project` ORDER BY `id` DESC";
$result = ExecQuery($query);
$projects = "";
while($row = $result->fetch_assoc())
{
$projects .= "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>";
}
//Find all tags
$query = "SELECT `id`, `name` FROM `tag` ORDER BY `name` ASC";
$result = ExecQuery($query);
$tags = "";
while($row = $result->fetch_assoc())
{
$tags .= "<option value='" . $row['id'] . "'>" . $row['name'] . "</option>";
}
?>
<div class="row">
<div class="col-lg-12">
<h1 class="page-header">Projects</h1>
</div>
</div>
<!-- /.row -->
<!-- New Project -->
<div class="row">
<div class="col-md-12">
<h3>Add a new project</h3>
<form id="project-add" method="POST" action="php/project-add.php">
<div class="input-group">
<span class="input-group-addon">Name</span>
<input type="text" class="form-control" id="project-name" name="name" maxlength="64" onchange="onProjectNameChange()" required>
<input type="hidden" id="project-uid" name="uid" maxlength="64" required>
<span class="input-group-addon" id="project-name-uid"></span>
<span class="input-group-addon"><i class="fa fa-fw fa-remove" id="project-name-uid-check"></i></span>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Language</span>
<input type="text" class="form-control" name="language" maxlength="32" required>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Date</span>
<input type="text" class="form-control" name="date" maxlength="32" required>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Grade</span>
<input type="text" class="form-control" name="grade" maxlength="4" required>
</div>
<br/>
<label for="body">Body</label>
<textarea class="form-control" name="body" rows="8" required></textarea>
<br/>
<button type="submit" class="btn btn-primary" id="project-submit" disabled="true">Submit</button>
</form>
</div>
</div>
<!-- Add git repo -->
<div class="row">
<div class="col-md-12">
<h3>Add git repository</h3>
<form id="tag-add" method="POST" action="php/project-git.php">
<div class="input-group">
<span class="input-group-addon">Project</span>
<select class="form-control" name="project">
<?php echo $projects; ?>
</select>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">URL</span>
<input type="url" class="form-control" name="git" maxlength="128">
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<!-- Add code -->
<div class="row">
<div class="col-md-12">
<h3>Add code</h3>
<form id="tag-add" method="POST" action="php/project-code.php">
<div class="input-group">
<span class="input-group-addon">Project</span>
<select class="form-control" name="project" id="code-project" onchange="onCodeProjectChange()">
<?php echo $projects; ?>
</select>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">File</span>
<select class="form-control" name="code" id="codefiles" disabled="true">
</select>
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<script>
function onProjectNameChange()
{
var nameuid = $("#project-name").val().toLowerCase().trim().replace(/ /g, '-').replace(/[^a-zA-Z0-9-_]/g, '').substring(0,64);
$("#project-name-uid").html( nameuid );
$("#project-uid").val(nameuid);
$.post( "php/ajax/project-uid.php", { uid: nameuid })
.done(function( data ) {
data = data.trim();
if(data == "false")
{
$("#project-name-uid-check").removeClass("fa-check");
$("#project-name-uid-check").addClass("fa-remove");
$("#project-submit").attr("disabled", "true");
}
else if(data == "true")
{
$("#project-name-uid-check").removeClass("fa-remove");
$("#project-name-uid-check").addClass("fa-check");
$("#project-submit").removeAttr("disabled");
}
else
{
$("#project-name-uid-check").removeClass("fa-check");
$("#project-name-uid-check").addClass("fa-remove");
$("#project-submit").attr("disabled", "true");
alert("An error occured");
}
});
}
function onCodeProjectChange()
{
$("#codefiles").html("");
var project = $("#code-project").val();
$.post( "php/ajax/project-files.php", { project: project })
.done(function( data ) {
$("#codefiles").html(data);
$("#codefiles").removeAttr("disabled");
});
}
</script>
<div class="row">
<div class="col-lg-12">
<h1 class="page-header">Files</h1>
</div>
</div>
<!-- /.row -->
<!-- Add media -->
<div class="row">
<div class="col-md-12">
<h3>Add media</h3>
<form id="project-media" method="POST" action="php/project-media.php" enctype="multipart/form-data">
<div class="input-group">
<span class="input-group-addon">Name</span>
<input type="text" class="form-control" name="name" maxlength="64" required>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Project</span>
<select class="form-control" name="project">
<?php echo $projects; ?>
</select>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">File type</span>
<select class="form-control" name="type">
<option value="image">Image</option>
<option value="video">Video</option>
<option value="audio">Audio</option>
</select>
</div>
<br/>
<div class="form-group">
<label for="mediafile">File input</label>
<input type="file" name="file" class="form-control" id="mediafile">
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<br>
<!-- Add file -->
<div class="row">
<div class="col-md-12">
<h3>Add file</h3>
<form id="project-file" method="POST" action="php/project-file.php" enctype="multipart/form-data">
<div class="input-group">
<span class="input-group-addon">Name</span>
<input type="text" class="form-control" id="file-name" name="name" maxlength="64" onchange="onFileNameChange()" required>
<input type="hidden" id="file-uid" name="uid" maxlength="64" required>
<span class="input-group-addon" id="file-name-uid"></span>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Project</span>
<select class="form-control" name="project">
<?php echo $projects; ?>
</select>
</div>
<br/>
<div class="form-group">
<label for="filefile">File input</label>
<input type="file" name="file" class="form-control" id="filefile">
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<script>
function onFileNameChange()
{
var random = "";
for(var i = 0; i < 5; i++)
{
random += Math.floor(Math.random() * 10);
}
var nameuid = $("#file-name").val().toLowerCase().trim().replace(/ /g, '-').replace(/[^a-zA-Z0-9-_]/g, '').substring(0,64);
nameuid = random + "-" + nameuid;
$("#file-name-uid").html( nameuid );
$("#file-uid").val(nameuid);
}
</script>
<div class="row">
<div class="col-lg-12">
<h1 class="page-header">Tags</h1>
</div>
</div>
<!-- /.row -->
<!-- Add tag to project -->
<div class="row">
<div class="col-md-12">
<h3>Add tag to project</h3>
<form id="project-tag" method="POST" action="php/project-tag.php">
<div class="input-group">
<span class="input-group-addon">Project</span>
<select class="form-control" name="project">
<?php echo $projects; ?>
</select>
</div>
<br/>
<div class="input-group">
<span class="input-group-addon">Tag</span>
<select class="form-control" name="tag">
<?php echo $tags; ?>
</select>
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<br>
<!-- Add tag -->
<div class="row">
<div class="col-md-12">
<h3>Add tag</h3>
<form id="tag-add" method="POST" action="php/tag-add.php">
<div class="input-group">
<span class="input-group-addon">Name</span>
<input type="text" class="form-control" name="name" maxlength="64" pattern="[a-zA-z]+" required>
</div>
<br/>
<button type="submit" class="btn btn-primary">Submit</button>
</form>
</div>
</div>
<?php
require("footer.php");
?>