The formattening, part 2
This commit is contained in:
@@ -1,50 +1,50 @@
|
||||
<?php
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'nb_NO');
|
||||
setlocale(\LC_ALL, 'nb_NO');
|
||||
require __DIR__ . '/../../inc/navbar.php';
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
require __DIR__ . '/../../config.php';
|
||||
|
||||
require_once __DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php';
|
||||
$as = new \SimpleSAML\Auth\Simple('default-sp');
|
||||
$as = new SimpleSAML\Auth\Simple('default-sp');
|
||||
$as->requireAuth();
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
$pdo = new \PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo = new PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$projectManager = new pvv\side\ProjectManager($pdo);
|
||||
|
||||
$new = 0;
|
||||
if(isset($_GET['new'])){
|
||||
$new = $_GET['new'];
|
||||
if (isset($_GET['new'])) {
|
||||
$new = $_GET['new'];
|
||||
}
|
||||
|
||||
$projectID = 0;
|
||||
if(isset($_GET['id'])){
|
||||
$projectID = $_GET['id'];
|
||||
}else if($new == 0){
|
||||
echo "\nID not set";
|
||||
exit();
|
||||
if (isset($_GET['id'])) {
|
||||
$projectID = $_GET['id'];
|
||||
} elseif ($new == 0) {
|
||||
echo "\nID not set";
|
||||
exit;
|
||||
}
|
||||
|
||||
$project = new \pvv\side\Project(
|
||||
0,
|
||||
'Nytt Prosjekt',
|
||||
'',
|
||||
$attrs["cn"][0],
|
||||
$attrs["uid"][0],
|
||||
$attrs["mail"][0],
|
||||
1
|
||||
$project = new pvv\side\Project(
|
||||
0,
|
||||
'Nytt Prosjekt',
|
||||
'',
|
||||
$attrs['cn'][0],
|
||||
$attrs['uid'][0],
|
||||
$attrs['mail'][0],
|
||||
1
|
||||
);
|
||||
if($new == 0){
|
||||
$project = $projectManager->getByID($projectID);
|
||||
$owner = $projectManager->getProjectOwner($projectID);
|
||||
if ($new == 0) {
|
||||
$project = $projectManager->getByID($projectID);
|
||||
$owner = $projectManager->getProjectOwner($projectID);
|
||||
|
||||
if($owner['uname'] != $attrs["uid"][0]){
|
||||
header('HTTP/1.0 403 Forbidden');
|
||||
echo "wrong user";
|
||||
exit();
|
||||
}
|
||||
if ($owner['uname'] != $attrs['uid'][0]) {
|
||||
header('HTTP/1.0 403 Forbidden');
|
||||
echo 'wrong user';
|
||||
exit;
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
@@ -74,20 +74,20 @@ if($new == 0){
|
||||
<form action="update.php", method="post">
|
||||
<p class="subtitle no-chin">Prosjektnavn</p>
|
||||
<p class="subnote">Gi prosjektet ditt et passende navn</p>
|
||||
<input class="wide" type="text" name="title" value="<?= $project->getName() ?>" class="boxinput"><br>
|
||||
<input class="wide" type="text" name="title" value="<?php echo $project->getName(); ?>" class="boxinput"><br>
|
||||
|
||||
<p class="subtitle no-chin">Beskrivelse (<i style="opacity:0.5;">markdown</i>)</p>
|
||||
<p class="subnote no-chin">Hva går prosjektet ditt ut på?</p>
|
||||
<p class="subnote">De første to linjene blir vist på prosjektkortet, prøv å gjøre de til et fint sammendrag eller intro!</p>
|
||||
<textarea class="tall" name="desc" style="width:100%" rows="8" class="boxinput"><?= implode("\n", $project->getDescription()); ?></textarea>
|
||||
<textarea class="tall" name="desc" style="width:100%" rows="8" class="boxinput"><?php echo implode("\n", $project->getDescription()); ?></textarea>
|
||||
|
||||
<?= '<input type="hidden" name="id" value="' . $project->getID() . '" />' ?>
|
||||
<?php echo '<input type="hidden" name="id" value="' . $project->getID() . '" />'; ?>
|
||||
<input type="hidden" name="active" value="1"/>
|
||||
|
||||
<div style="margin-top: 0.2em;">
|
||||
<hr class="ruler">
|
||||
<input type="submit" class="btn" value="<?= ($new ? 'Opprett prosjekt' : 'Lagre endringer') ?>"></input>
|
||||
<?php if (!$new){?><input type="submit" class="btn" name="delete" value="Slett"></input><?php } ?>
|
||||
<input type="submit" class="btn" value="<?php echo $new ? 'Opprett prosjekt' : 'Lagre endringer'; ?>"></input>
|
||||
<?php if (!$new) {?><input type="submit" class="btn" name="delete" value="Slett"></input><?php } ?>
|
||||
</div>
|
||||
</form>
|
||||
</main>
|
||||
|
@@ -1,8 +1,8 @@
|
||||
<?php
|
||||
require_once dirname(dirname(__DIR__)) . implode(DIRECTORY_SEPARATOR, ['', 'inc', 'include.php']);
|
||||
require_once dirname(__DIR__, 2) . implode(\DIRECTORY_SEPARATOR, ['', 'inc', 'include.php']);
|
||||
|
||||
$translation = ['i dag', 'i morgen', 'denne uka', 'neste uke', 'denne måneden', 'neste måned'];
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$projectManager = new pvv\side\ProjectManager($pdo);
|
||||
$projects = $projectManager->getAll();
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
@@ -43,7 +43,7 @@ $projects = $projectManager->getAll();
|
||||
<p>
|
||||
Styret har ansvaret for den daglige driften av PVV, og har myndighet som gitt i PVVs lover.
|
||||
Lederen for PVV velges om høsten og sitter i et år. Resten av styret velges for et halvår om
|
||||
gangen, selv om praksis er at bare mindre justeringer gjøres i vårsemesteret.
|
||||
gangen, selv om praksis er at bare mindre justeringer gjøres i vårsemesteret.
|
||||
</p>
|
||||
<p class="project-organizer">Organisert av Styreleder</p>
|
||||
</div>
|
||||
@@ -52,7 +52,7 @@ $projects = $projectManager->getAll();
|
||||
<div class="card-content">
|
||||
<h4 class="project-title">Drift</h4>
|
||||
<p>
|
||||
Drift har ansvaret for å drive maskinene på PVV.
|
||||
Drift har ansvaret for å drive maskinene på PVV.
|
||||
Driftsgruppen har ingen strenge krav til aktivitet eller erfaring for å bli medlem,
|
||||
så selv om du er ny i virket går det fint an å bare observere og absorbere i begynnelsen.
|
||||
Vi vil gjøre vårt beste for å gi god hjelp og service til våre brukere.
|
||||
@@ -60,13 +60,13 @@ $projects = $projectManager->getAll();
|
||||
<p class="project-organizer">Organisert av Driftskordinator</p>
|
||||
</div>
|
||||
</div></a>
|
||||
<?php /*Her kan vi legge til PR og TriKom hvis det er ønskelig*/ ?>
|
||||
<?php /* Her kan vi legge til PR og TriKom hvis det er ønskelig */ ?>
|
||||
</div>
|
||||
|
||||
|
||||
<h2>Medlems-prosjekter</h2>
|
||||
<?php
|
||||
if(count($projects) == 0){
|
||||
?>
|
||||
if (count($projects) == 0) {
|
||||
?>
|
||||
<p>PVV har for øyeblikket ingen aktive prosjekter. Tenker du at noe bør gjøres? Har du en kul ide for noe PVV kan samarbeide om? Sett opp et prosjekt!</p>
|
||||
<br>
|
||||
<center>
|
||||
@@ -75,8 +75,8 @@ $projects = $projectManager->getAll();
|
||||
</center>
|
||||
<br>
|
||||
<?php
|
||||
}else{
|
||||
?>
|
||||
} else {
|
||||
?>
|
||||
<p>
|
||||
Lyst til å gjøre noe kult? Her er et utvalg av de prosjektene som PVVere har holder på med. Mangler det noe, eller brenner du for noe annet?<br>
|
||||
Sett opp et eget prosjekt da vel!
|
||||
@@ -84,24 +84,24 @@ $projects = $projectManager->getAll();
|
||||
<div class="projects-container">
|
||||
|
||||
<?php
|
||||
$randProjects = array_rand($projects, min(6, count($projects)));
|
||||
if (!is_array($randProjects)) {
|
||||
$randProjects = [$randProjects];
|
||||
};
|
||||
foreach($randProjects as $i) {
|
||||
$project = $projects[$i];
|
||||
$owner = $projectManager->getProjectOwner($project->getID());
|
||||
?>
|
||||
$randProjects = array_rand($projects, min(6, count($projects)));
|
||||
if (!is_array($randProjects)) {
|
||||
$randProjects = [$randProjects];
|
||||
}
|
||||
foreach ($randProjects as $i) {
|
||||
$project = $projects[$i];
|
||||
$owner = $projectManager->getProjectOwner($project->getID());
|
||||
?>
|
||||
|
||||
<a class="nostyle" href="info.php?id=<?= $project->getID() ?>"><div class="project-card">
|
||||
<a class="nostyle" href="info.php?id=<?php echo $project->getID(); ?>"><div class="project-card">
|
||||
<div class="card-content">
|
||||
<h4 class="project-title"><?= $project->getName(); ?></h4>
|
||||
<h4 class="project-title"><?php echo $project->getName(); ?></h4>
|
||||
<?php
|
||||
$Parsedown = new \Parsedown();
|
||||
echo $Parsedown->text(implode("\n", array_slice($project->getDescription(), 0, 2)));
|
||||
?>
|
||||
$Parsedown = new Parsedown();
|
||||
echo $Parsedown->text(implode("\n", array_slice($project->getDescription(), 0, 2)));
|
||||
?>
|
||||
</div>
|
||||
<p class="project-organizer">Organisert av <?= $owner['name']; ?></p>
|
||||
<p class="project-organizer">Organisert av <?php echo $owner['name']; ?></p>
|
||||
</div></a>
|
||||
<?php } ?>
|
||||
</div>
|
||||
@@ -110,7 +110,7 @@ $projects = $projectManager->getAll();
|
||||
<a class="btn" href="mine.php">Mine prosjekter</a>
|
||||
</center>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
?>
|
||||
</main>
|
||||
</body>
|
||||
|
@@ -1,47 +1,46 @@
|
||||
<?php
|
||||
require_once dirname(dirname(__DIR__)) . implode(DIRECTORY_SEPARATOR, ['', 'inc', 'include.php']);
|
||||
require_once dirname(__DIR__, 2) . implode(\DIRECTORY_SEPARATOR, ['', 'inc', 'include.php']);
|
||||
|
||||
$projectID = 0;
|
||||
if(isset($_GET['id'])){
|
||||
$projectID = $_GET['id'];
|
||||
}else{
|
||||
echo 'No project ID provided';
|
||||
exit();
|
||||
if (isset($_GET['id'])) {
|
||||
$projectID = $_GET['id'];
|
||||
} else {
|
||||
echo 'No project ID provided';
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once(__DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php');
|
||||
$as = new \SimpleSAML\Auth\Simple('default-sp');
|
||||
require_once __DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php';
|
||||
$as = new SimpleSAML\Auth\Simple('default-sp');
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$projectManager = new pvv\side\ProjectManager($pdo);
|
||||
$project = $projectManager->getByID($projectID);
|
||||
if (!$project) {
|
||||
echo ":^)";
|
||||
exit();
|
||||
echo ':^)';
|
||||
exit;
|
||||
}
|
||||
|
||||
$members = $projectManager->getProjectMembers($projectID);
|
||||
$normal_members = $members;
|
||||
foreach($normal_members as $i => $data){
|
||||
if($data['lead']){
|
||||
unset($normal_members[$i]);
|
||||
}
|
||||
foreach ($normal_members as $i => $data) {
|
||||
if ($data['lead']) {
|
||||
unset($normal_members[$i]);
|
||||
}
|
||||
}
|
||||
|
||||
$is_owner = False;
|
||||
$is_member = False;
|
||||
if ($attrs){
|
||||
$uname = $attrs['uid'][0];
|
||||
foreach($members as $member){
|
||||
if ($member['uname'] == $uname){
|
||||
if ($member['owner']==1){
|
||||
$is_owner = True;
|
||||
}
|
||||
else if ($member['owner']==0){
|
||||
$is_member = True;
|
||||
}
|
||||
}
|
||||
}
|
||||
$is_owner = false;
|
||||
$is_member = false;
|
||||
if ($attrs) {
|
||||
$uname = $attrs['uid'][0];
|
||||
foreach ($members as $member) {
|
||||
if ($member['uname'] == $uname) {
|
||||
if ($member['owner'] == 1) {
|
||||
$is_owner = true;
|
||||
} elseif ($member['owner'] == 0) {
|
||||
$is_member = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
@@ -66,11 +65,11 @@ if ($attrs){
|
||||
|
||||
<main class="contentsplit">
|
||||
<div class="gridr">
|
||||
<h2><?= $project->getName(); ?></h2>
|
||||
<h2><?php echo $project->getName(); ?></h2>
|
||||
<?php
|
||||
$Parsedown = new \Parsedown();
|
||||
echo $Parsedown->text(implode("\n", $project->getDescription()));
|
||||
?>
|
||||
$Parsedown = new Parsedown();
|
||||
echo $Parsedown->text(implode("\n", $project->getDescription()));
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div class="gridl">
|
||||
@@ -79,49 +78,49 @@ if ($attrs){
|
||||
<div class="projectlead">
|
||||
<h2>Prosjektledelsen</h2>
|
||||
<div class="projectmember">
|
||||
<?php foreach($members as $i => $data){
|
||||
if($data['lead']){
|
||||
?>
|
||||
<p><?= $data['name']; ?></p>
|
||||
<p class="memberrole"><?= $data['role'] ?></p>
|
||||
<p class="memberuname"><?= $data['uname']; ?></p>
|
||||
<p class="memberemail"><?= $data['mail']; ?></p>
|
||||
<?php foreach ($members as $i => $data) {
|
||||
if ($data['lead']) {
|
||||
?>
|
||||
<p><?php echo $data['name']; ?></p>
|
||||
<p class="memberrole"><?php echo $data['role']; ?></p>
|
||||
<p class="memberuname"><?php echo $data['uname']; ?></p>
|
||||
<p class="memberemail"><?php echo $data['mail']; ?></p>
|
||||
<?php }
|
||||
} ?>
|
||||
} ?>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
if(sizeof($normal_members) > 0){
|
||||
?>
|
||||
if (count($normal_members) > 0) {
|
||||
?>
|
||||
<div class="projectmembers">
|
||||
<h2>Medlemmer</h2>
|
||||
<?php foreach($normal_members as $i => $data){
|
||||
?>
|
||||
<?php foreach ($normal_members as $i => $data) {
|
||||
?>
|
||||
<div class="projectmember" style="border-color: #6a0;">
|
||||
<p><?= $data['name']; ?></p>
|
||||
<p class="memberrole"><?= $data['role'] ? $data['role'] : 'Deltaker' ?></p>
|
||||
<p class="memberuname"><?= $data['uname']; ?></p>
|
||||
<p class="memberemail"><?= $data['mail']; ?></p>
|
||||
<p><?php echo $data['name']; ?></p>
|
||||
<p class="memberrole"><?php echo $data['role'] ?: 'Deltaker'; ?></p>
|
||||
<p class="memberuname"><?php echo $data['uname']; ?></p>
|
||||
<p class="memberemail"><?php echo $data['mail']; ?></p>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
}
|
||||
|
||||
if(!$is_owner){
|
||||
?>
|
||||
if (!$is_owner) {
|
||||
?>
|
||||
|
||||
<form action="update.php", method="post"><p>
|
||||
<input type="hidden" name="title" value="derp"/>
|
||||
<input type="hidden" name="desc" value="derp"/>
|
||||
<input type="hidden" name="active" value="derp"/>
|
||||
<input type="hidden" name="id" value="<?= $projectID ?>"/>
|
||||
<input type="submit" class="btn" name="join_or_leave" value="<?= ($is_member ? 'Forlat' : 'Bli med!') ?>"></input>
|
||||
<input type="hidden" name="id" value="<?php echo $projectID; ?>"/>
|
||||
<input type="submit" class="btn" name="join_or_leave" value="<?php echo $is_member ? 'Forlat' : 'Bli med!'; ?>"></input>
|
||||
</p></form>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
|
@@ -1,36 +1,34 @@
|
||||
<?php
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'nb_NO');
|
||||
setlocale(\LC_ALL, 'nb_NO');
|
||||
require __DIR__ . '/../../inc/navbar.php';
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
require __DIR__ . '/../../config.php';
|
||||
|
||||
require_once(__DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php');
|
||||
$as = new \SimpleSAML\Auth\Simple('default-sp');
|
||||
require_once __DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php';
|
||||
$as = new SimpleSAML\Auth\Simple('default-sp');
|
||||
$as->requireAuth();
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
$pdo = new \PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo = new PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$projectManager = new pvv\side\ProjectManager($pdo);
|
||||
$projects = $projectManager->getByOwner($attrs['uid'][0]);
|
||||
|
||||
$page = 1;
|
||||
if(isset($_GET['page'])){
|
||||
$page = $_GET['page'];
|
||||
if (isset($_GET['page'])) {
|
||||
$page = $_GET['page'];
|
||||
}
|
||||
|
||||
$filter = '';
|
||||
if(isset($_GET['filter'])){
|
||||
$filter = $_GET['filter'];
|
||||
if (isset($_GET['filter'])) {
|
||||
$filter = $_GET['filter'];
|
||||
}
|
||||
|
||||
// filter
|
||||
$projects = array_values(array_filter(
|
||||
$projects,
|
||||
function($project) use ($filter){
|
||||
return (preg_match('/.*'.$filter.'.*/i', $project->getName()) or preg_match('/.*'.$filter.'.*/i', implode(" ", $project->getDescription())));
|
||||
}
|
||||
$projects,
|
||||
static fn($project) => (preg_match('/.*' . $filter . '.*/i', $project->getName()) || preg_match('/.*' . $filter . '.*/i', implode(' ', $project->getDescription())))
|
||||
));
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
@@ -50,8 +48,8 @@ $projects = array_values(array_filter(
|
||||
|
||||
<body>
|
||||
<nav>
|
||||
<?= navbar(1, 'prosjekt'); ?>
|
||||
<?= loginbar(); ?>
|
||||
<?php echo navbar(1, 'prosjekt'); ?>
|
||||
<?php echo loginbar(); ?>
|
||||
</nav>
|
||||
|
||||
<main class="gridsplit">
|
||||
@@ -60,49 +58,49 @@ $projects = array_values(array_filter(
|
||||
|
||||
<ul class="event-list">
|
||||
<?php
|
||||
$counter = 0;
|
||||
$pageLimit = 8;
|
||||
$counter = 0;
|
||||
$pageLimit = 8;
|
||||
|
||||
for($i = ($pageLimit * ($page - 1)); $i < count($projects); $i++){
|
||||
if($counter == $pageLimit){
|
||||
break;
|
||||
}
|
||||
for ($i = ($pageLimit * ($page - 1)); $i < count($projects); ++$i) {
|
||||
if ($counter == $pageLimit) {
|
||||
break;
|
||||
}
|
||||
|
||||
$project = $projects[$i];
|
||||
$projectID = $project->getID();
|
||||
$project = $projects[$i];
|
||||
$projectID = $project->getID();
|
||||
|
||||
$owner = $projectManager->getProjectOwner($projectID);
|
||||
if($owner['uname'] != $attrs['uid'][0]){
|
||||
continue;
|
||||
}
|
||||
?>
|
||||
$owner = $projectManager->getProjectOwner($projectID);
|
||||
if ($owner['uname'] != $attrs['uid'][0]) {
|
||||
continue;
|
||||
}
|
||||
?>
|
||||
|
||||
<li>
|
||||
<div class="event">
|
||||
<div class="event-info">
|
||||
<a href="edit.php?id=<?= $project->getID() ?>">
|
||||
<h3 class="no-chin"><?= $project->getName()?></h3>
|
||||
<a href="edit.php?id=<?php echo $project->getID(); ?>">
|
||||
<h3 class="no-chin"><?php echo $project->getName(); ?></h3>
|
||||
</a>
|
||||
<p style="text-decoration: none;"><?= implode("<br>", array_slice($project->getDescription(), 0, 4)); ?></p>
|
||||
<p style="text-decoration: none;"><?php echo implode('<br>', array_slice($project->getDescription(), 0, 4)); ?></p>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
|
||||
<?php
|
||||
$counter++;
|
||||
}
|
||||
?>
|
||||
++$counter;
|
||||
}
|
||||
?>
|
||||
</ul>
|
||||
|
||||
<?php
|
||||
if($page != 1){
|
||||
echo '<a class="btn float-left" href="?page=' . ($page - 1) . '&filter=' . urlencode($filter) . '">Forrige side</a>';
|
||||
}
|
||||
if ($page != 1) {
|
||||
echo '<a class="btn float-left" href="?page=' . ($page - 1) . '&filter=' . urlencode($filter) . '">Forrige side</a>';
|
||||
}
|
||||
|
||||
if(($counter == $pageLimit) and (($pageLimit * $page) < count($projects))){
|
||||
echo '<a class="btn float-right" href="?page=' . ($page + 1) . '&filter=' . urlencode($filter) . '">Neste side</a>';
|
||||
}
|
||||
?>
|
||||
if (($counter == $pageLimit) && (($pageLimit * $page) < count($projects))) {
|
||||
echo '<a class="btn float-right" href="?page=' . ($page + 1) . '&filter=' . urlencode($filter) . '">Neste side</a>';
|
||||
}
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div class="gridr">
|
||||
@@ -111,7 +109,7 @@ $projects = array_values(array_filter(
|
||||
<h2>Filter</h2>
|
||||
<form action="mine.php" method="get">
|
||||
<p class="no-chin">Navn</p>
|
||||
<?= '<input type="text" name="filter" class="boxinput" value="' . $filter . '">' ?><br>
|
||||
<?php echo '<input type="text" name="filter" class="boxinput" value="' . $filter . '">'; ?><br>
|
||||
|
||||
<div style="margin-top: 2em;">
|
||||
<input type="submit" class="btn" value="Filtrer"></input>
|
||||
|
@@ -1,18 +1,18 @@
|
||||
<?php
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'nb_NO');
|
||||
setlocale(\LC_ALL, 'nb_NO');
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
require __DIR__ . '/../../config.php';
|
||||
$pdo = new \PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo = new PDO($DB_DSN, $DB_USER, $DB_PASS);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
|
||||
if(!isset($_POST['title']) or !isset($_POST['desc']) or !isset($_POST['active'])){
|
||||
header('Location: ' . $_SERVER['HTTP_REFERER']);
|
||||
exit();
|
||||
if (!isset($_POST['title']) || !isset($_POST['desc']) || !isset($_POST['active'])) {
|
||||
header('Location: ' . $_SERVER['HTTP_REFERER']);
|
||||
exit;
|
||||
}
|
||||
|
||||
require_once(__DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php');
|
||||
$as = new \SimpleSAML\Auth\Simple('default-sp');
|
||||
require_once __DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php';
|
||||
$as = new SimpleSAML\Auth\Simple('default-sp');
|
||||
$as->requireAuth();
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
@@ -28,95 +28,93 @@ $name = $attrs['cn'][0];
|
||||
$uname = $attrs['uid'][0];
|
||||
$mail = $attrs['mail'][0];
|
||||
|
||||
$statement;
|
||||
if($id == 0){
|
||||
$query = 'INSERT INTO projects (name, description, active) VALUES (:title, :desc, 1)';
|
||||
$statement = $pdo->prepare($query);
|
||||
|
||||
$statement->bindParam(':title', $title, PDO::PARAM_STR);
|
||||
$statement->bindParam(':desc', $desc, PDO::PARAM_STR);
|
||||
if ($id == 0) {
|
||||
$query = 'INSERT INTO projects (name, description, active) VALUES (:title, :desc, 1)';
|
||||
$statement = $pdo->prepare($query);
|
||||
|
||||
$statement->execute();
|
||||
$new_id = $pdo->lastInsertId();
|
||||
$statement->bindParam(':title', $title, PDO::PARAM_STR);
|
||||
$statement->bindParam(':desc', $desc, PDO::PARAM_STR);
|
||||
|
||||
$ownerQuery = "INSERT INTO projectmembers (projectid, name, uname, mail, role, lead, owner) VALUES (:id, :owner, :owneruname, :owneremail, 'Prosjektleder', 1, 1)";
|
||||
$statement = $pdo->prepare($ownerQuery);
|
||||
$statement->bindParam(':id', $new_id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owner', $name, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneruname', $uname, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneremail', $mail, PDO::PARAM_STR);
|
||||
$statement->execute();
|
||||
$new_id = $pdo->lastInsertId();
|
||||
|
||||
$statement->execute();
|
||||
}
|
||||
else {
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$owner = $projectManager->getProjectOwner($id);
|
||||
$members = $projectManager->getProjectMembers($id);
|
||||
$ownerQuery = "INSERT INTO projectmembers (projectid, name, uname, mail, role, lead, owner) VALUES (:id, :owner, :owneruname, :owneremail, 'Prosjektleder', 1, 1)";
|
||||
$statement = $pdo->prepare($ownerQuery);
|
||||
$statement->bindParam(':id', $new_id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owner', $name, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneruname', $uname, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneremail', $mail, PDO::PARAM_STR);
|
||||
|
||||
//if ($do_join_or_leave and $owner['uname'] != $uname) {
|
||||
if ($do_join_or_leave) {
|
||||
$is_member = False;
|
||||
foreach($members as $member){
|
||||
if ($member['uname'] == $uname and $member['owner']==0){
|
||||
$is_member = True;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ($is_member){//leave
|
||||
$query = "DELETE FROM projectmembers WHERE projectid=:id AND uname=:uname and lead=0 and owner=0;";
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':uname', $uname, PDO::PARAM_STR);
|
||||
$statement->execute();
|
||||
} else {
|
||||
$projectManager = new pvv\side\ProjectManager($pdo);
|
||||
$owner = $projectManager->getProjectOwner($id);
|
||||
$members = $projectManager->getProjectMembers($id);
|
||||
|
||||
$statement->execute();
|
||||
print("leave");
|
||||
}
|
||||
else{//join
|
||||
$query = "INSERT INTO projectmembers (projectid, name, uname, mail, role, lead, owner) VALUES (:id, :name, :uname, :mail, 'Medlem', 0, 0)";
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':name', $name, PDO::PARAM_STR);
|
||||
$statement->bindParam(':uname', $uname, PDO::PARAM_STR);
|
||||
$statement->bindParam(':mail', $mail, PDO::PARAM_STR);
|
||||
// if ($do_join_or_leave and $owner['uname'] != $uname) {
|
||||
if ($do_join_or_leave) {
|
||||
$is_member = false;
|
||||
foreach ($members as $member) {
|
||||
if ($member['uname'] == $uname && $member['owner'] == 0) {
|
||||
$is_member = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if ($is_member) {// leave
|
||||
$query = 'DELETE FROM projectmembers WHERE projectid=:id AND uname=:uname and lead=0 and owner=0;';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':uname', $uname, PDO::PARAM_STR);
|
||||
|
||||
$statement->execute();
|
||||
print("join");
|
||||
}
|
||||
header('Location: ./info.php?id=' . $id);
|
||||
exit();
|
||||
}
|
||||
$statement->execute();
|
||||
echo 'leave';
|
||||
} else {// join
|
||||
$query = "INSERT INTO projectmembers (projectid, name, uname, mail, role, lead, owner) VALUES (:id, :name, :uname, :mail, 'Medlem', 0, 0)";
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_STR);
|
||||
$statement->bindParam(':name', $name, PDO::PARAM_STR);
|
||||
$statement->bindParam(':uname', $uname, PDO::PARAM_STR);
|
||||
$statement->bindParam(':mail', $mail, PDO::PARAM_STR);
|
||||
|
||||
if($uname != $owner['uname']){
|
||||
header('Content-Type: text/plain', true, 403);
|
||||
echo "Illegal action, you're not the project owner for project with ID " . $id . "\r\n";
|
||||
exit();
|
||||
}
|
||||
|
||||
if ($do_delete) {
|
||||
// this should be done as a transaction...
|
||||
$pdo->beginTransaction();
|
||||
|
||||
$query = 'DELETE FROM projects WHERE id=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$statement->execute();
|
||||
|
||||
$query = 'DELETE FROM projectmembers WHERE projectid=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$statement->execute();
|
||||
|
||||
$pdo->commit();
|
||||
}else{
|
||||
$query = 'UPDATE projects SET name=:title, description=:desc WHERE id=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->execute();
|
||||
echo 'join';
|
||||
}
|
||||
header('Location: ./info.php?id=' . $id);
|
||||
exit;
|
||||
}
|
||||
|
||||
$statement->bindParam(':title', $title, PDO::PARAM_STR);
|
||||
$statement->bindParam(':desc', $desc, PDO::PARAM_STR);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
|
||||
$statement->execute();
|
||||
}
|
||||
if ($uname != $owner['uname']) {
|
||||
header('Content-Type: text/plain', true, 403);
|
||||
echo "Illegal action, you're not the project owner for project with ID " . $id . "\r\n";
|
||||
exit;
|
||||
}
|
||||
|
||||
if ($do_delete) {
|
||||
// this should be done as a transaction...
|
||||
$pdo->beginTransaction();
|
||||
|
||||
$query = 'DELETE FROM projects WHERE id=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$statement->execute();
|
||||
|
||||
$query = 'DELETE FROM projectmembers WHERE projectid=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$statement->execute();
|
||||
|
||||
$pdo->commit();
|
||||
} else {
|
||||
$query = 'UPDATE projects SET name=:title, description=:desc WHERE id=:id';
|
||||
$statement = $pdo->prepare($query);
|
||||
|
||||
$statement->bindParam(':title', $title, PDO::PARAM_STR);
|
||||
$statement->bindParam(':desc', $desc, PDO::PARAM_STR);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
|
||||
$statement->execute();
|
||||
}
|
||||
}
|
||||
|
||||
header('Location: ./mine.php');
|
||||
|
Reference in New Issue
Block a user