Add project creation
The projects page will also display a few random projects now
This commit is contained in:
parent
68bba332f1
commit
1da1785e46
11
dist/pvv.sql
vendored
11
dist/pvv.sql
vendored
@ -1,5 +1,3 @@
|
||||
|
||||
|
||||
CREATE TABLE "events" (
|
||||
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
"name" TEXT,
|
||||
@ -9,3 +7,12 @@ CREATE TABLE "events" (
|
||||
"location" TEXT,
|
||||
"description" TEXT
|
||||
);
|
||||
|
||||
CREATE TABLE "projects" (
|
||||
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
"name" TEXT,
|
||||
"owner" TEXT,
|
||||
"owneruname" TEXT,
|
||||
"description" TEXT,
|
||||
"active" BOOLEAN
|
||||
);
|
18
pvv.sql
Normal file
18
pvv.sql
Normal file
@ -0,0 +1,18 @@
|
||||
CREATE TABLE "events" (
|
||||
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
"name" TEXT,
|
||||
"start" TEXT,
|
||||
"stop" TEXT,
|
||||
"organiser" TEXT,
|
||||
"location" TEXT,
|
||||
"description" TEXT
|
||||
);
|
||||
|
||||
CREATE TABLE "projects" (
|
||||
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
"name" TEXT,
|
||||
"owner" TEXT,
|
||||
"owneruname" TEXT,
|
||||
"description" TEXT,
|
||||
"active" BOOLEAN
|
||||
);
|
35
src/pvv/side/project.php
Normal file
35
src/pvv/side/project.php
Normal file
@ -0,0 +1,35 @@
|
||||
<?php
|
||||
namespace pvv\side;
|
||||
|
||||
class Project{
|
||||
private $id, $name, $owner, $owneruname, $descr, $active;
|
||||
|
||||
public function __construct($id, $name, $descr, $owner, $owneruname, $active){
|
||||
$this->id = $id;
|
||||
$this->name = $name;
|
||||
$this->descr = $descr;
|
||||
$this->owner = $owner;
|
||||
$this->owneruname = $owneruname;
|
||||
$this->active = $active;
|
||||
}
|
||||
|
||||
public function getID(){
|
||||
return $this->id;
|
||||
}
|
||||
|
||||
public function getName(){
|
||||
return $this->name;
|
||||
}
|
||||
|
||||
public function getDescription(){
|
||||
return $this->descr;
|
||||
}
|
||||
|
||||
public function getOwner(){
|
||||
return $this->owner;
|
||||
}
|
||||
|
||||
public function getOwnerUName(){
|
||||
return $this->owneruname;
|
||||
}
|
||||
}
|
51
src/pvv/side/projectmanager.php
Normal file
51
src/pvv/side/projectmanager.php
Normal file
@ -0,0 +1,51 @@
|
||||
<?php
|
||||
namespace pvv\side;
|
||||
|
||||
use \PDO;
|
||||
|
||||
class ProjectManager{
|
||||
private $pdo;
|
||||
|
||||
public function __construct(PDO $pdo){
|
||||
$this->pdo = $pdo;
|
||||
}
|
||||
|
||||
public function getAll() {
|
||||
$query = 'SELECT * FROM projects ORDER BY id ASC';
|
||||
$statement = $this->pdo->prepare($query);
|
||||
$statement->execute();
|
||||
|
||||
$projects = [];
|
||||
foreach($statement->fetchAll() as $dbProj){
|
||||
$project = new Project(
|
||||
$dbProj['id'],
|
||||
$dbProj['name'],
|
||||
$dbProj['description'],
|
||||
$dbProj['owner'],
|
||||
$dbProj['owneruname'],
|
||||
$dbProj['active']
|
||||
);
|
||||
$projects[] = $project;
|
||||
}
|
||||
|
||||
return $projects;
|
||||
}
|
||||
|
||||
public function getByID($id){
|
||||
$query = 'SELECT * FROM projects WHERE id=:id LIMIT 1';
|
||||
$statement = $this->pdo->prepare($query);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
$statement->execute();
|
||||
|
||||
$dbProj = $statement->fetch();
|
||||
$project = new Project(
|
||||
$dbProj['id'],
|
||||
$dbProj['name'],
|
||||
$dbProj['description'],
|
||||
$dbProj['owner'],
|
||||
$dbProj['active']
|
||||
);
|
||||
|
||||
return $project;
|
||||
}
|
||||
}
|
@ -3,7 +3,7 @@ namespace pvv\side;
|
||||
|
||||
class SimpleEvent extends Event {
|
||||
|
||||
private $name, $start, $end, $org, $loc;
|
||||
private $id, $name, $descr, $start, $end, $org, $loc;
|
||||
|
||||
public function __construct($id, $name,\DateTimeImmutable $start,\DateTimeImmutable $end,$org, $loc, $descr, $isDBEvent = false){
|
||||
$this->id = $id;
|
||||
|
@ -12,4 +12,4 @@ $statement->execute();
|
||||
header('Location: ' . $_SERVER['HTTP_REFERER']);
|
||||
?>
|
||||
|
||||
<a href=".?page=1">Om du ikke ble automatisk omdirigert tilbake klikk her</a>
|
||||
<a href=".?page=1">Om du ikke ble omdirigert tilbake klikk her</a>
|
@ -68,15 +68,15 @@ if($new == 0){
|
||||
|
||||
<p class="subtitle">Beskrivelse</p>
|
||||
<textarea name="desc" cols="40" rows="5" class="boxinput"><?= implode($event->getDescription(), "\n"); ?></textarea>
|
||||
</div>
|
||||
|
||||
<div class="gridr noborder">
|
||||
<p class="subtitle">Starttid (YYYY-MM-DD HH:MM:SS)</p>
|
||||
<?= '<input name="start" type="text" class="boxinput" value="' . $event->getStart()->format('Y-m-d H:00:00') . '"><br>' ?>
|
||||
|
||||
<p class="subtitle">Sluttid (YYYY-MM-DD HH:MM:SS)</p>
|
||||
<?= '<input name="end" type="text" class="boxinput" value="' . $event->getStop()->format('Y-m-d H:00:00') . '"><br>' ?>
|
||||
</div>
|
||||
|
||||
<div class="gridr noborder">
|
||||
<p class="subtitle">Organisert av</p>
|
||||
<?= '<input type="text" name="organiser" value="' . $event->getOrganiser(). '" class="boxinput">' ?><br>
|
||||
|
||||
|
@ -24,6 +24,7 @@ if(isset($_GET['page'])){
|
||||
<nav><ul>
|
||||
<li class="active"><a href="index.php">hjem</a></li>
|
||||
<li><a href="aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="kontakt">kontakt</a></li>
|
||||
<li><a href="pvv/">wiki</a></li>
|
||||
</nav>
|
||||
@ -56,7 +57,9 @@ if(isset($_GET['page'])){
|
||||
<div class="event admin">
|
||||
<div class="event-info">
|
||||
<h3 class="no-chin"><?= $event->getName() . " (ID: " . $eventID . ")"; ?></h3>
|
||||
<p class="subnote"><?= $event->getStart()->format("(Y-m-d H:i:s)") . " - " . $event->getStop()->format("(Y-m-d H:i:s)"); ?></p>
|
||||
<p class="subnote">
|
||||
<?= $event->getStart()->format("(Y-m-d H:i:s)") . " - " . $event->getStop()->format("(Y-m-d H:i:s)"); ?>
|
||||
</p>
|
||||
<p><?= implode($event->getDescription(), "</p>\n<p>"); ?></p>
|
||||
</div>
|
||||
|
||||
|
@ -9,11 +9,12 @@
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
||||
<header class="admin">Stor­-gutt­-leketøy</header>
|
||||
<header class="admin">Stor-­gutt-­leketøy</header>
|
||||
|
||||
<main>
|
||||
|
||||
|
@ -80,6 +80,7 @@ foreach($events as $event) {
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li class="active"><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -50,6 +50,7 @@ $nextEvent = $activity->getNextEventFrom(new DateTimeImmutable);
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li class="active"><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -55,6 +55,7 @@ $nextEvent = $activity->getNextEventFrom(new DateTimeImmutable);
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li class="active"><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -47,10 +47,6 @@ header.admin {
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
.no-chin {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.gridsplit {
|
||||
display: grid;
|
||||
grid-template-columns: 75% 25%;
|
||||
@ -78,17 +74,6 @@ header.admin {
|
||||
grid-column: 1 / -1;
|
||||
}
|
||||
|
||||
.noborder {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.subnote {
|
||||
margin-top: 0;
|
||||
color: gray;
|
||||
font-size: .7em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.float-right {
|
||||
float: right;
|
||||
}
|
||||
|
@ -119,12 +119,26 @@ a.btn:active {
|
||||
color: #048;
|
||||
padding: .2em .4em;
|
||||
border-radius: .2em;
|
||||
white-space: nowrap;
|
||||
display: inline-block;
|
||||
margin-bottom: .25em;
|
||||
resize: none;
|
||||
}
|
||||
|
||||
.noborder {
|
||||
border: none !important;
|
||||
}
|
||||
|
||||
.subnote {
|
||||
margin-top: 0;
|
||||
color: gray;
|
||||
font-size: .7em;
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.no-chin {
|
||||
margin-bottom: 0;
|
||||
}
|
||||
|
||||
.icon.subscribe {
|
||||
color: white;
|
||||
background: #082;
|
||||
|
@ -93,6 +93,7 @@ For å bli med i våre prosjekter og komitéer må du søke.
|
||||
<!--<li><a href="prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="kalender/">kalender</a></li>
|
||||
<li><a href="aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="prosjekt/">prosjekter</a></li>
|
||||
<li><a href="kontakt/">kontakt</a></li>
|
||||
<li><a href="pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -103,6 +103,7 @@ $days_in_month = date('t', mktime(0, 0, 0, $month, 1, $year));
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li class="active"><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -41,6 +41,7 @@ Det er også mulig å ta i bruk analog kontakt ved å møte opp <a href="https:/
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li class="active"><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -55,6 +55,7 @@ $agenda = new \pvv\side\Agenda([
|
||||
<li class="active"><a href="../kurs/">kurs</a></li>
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../sosiale/">sosiale</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
|
@ -51,6 +51,7 @@ $nextEvent = $activity->getNextEventFrom(new DateTimeImmutable);
|
||||
<li><a href="../">hjem</a></li>
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li class="active"><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -60,6 +60,7 @@ p {hyphens: auto;}
|
||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
@ -1,4 +1,6 @@
|
||||
<?php
|
||||
ini_set('display_errors', '1');
|
||||
error_reporting(E_ALL);
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'no_NO');
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
@ -6,12 +8,9 @@ require __DIR__ . '/../../sql_config.php';
|
||||
$translation = ['i dag', 'i morgen', 'denne uka', 'neste uke', 'denne måneden', 'neste måned'];
|
||||
$pdo = new \PDO($dbDsn, $dbUser, $dbPass);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
$agenda = new \pvv\side\Agenda([
|
||||
new \pvv\side\social\NerdepitsaActivity,
|
||||
new \pvv\side\social\AnimekveldActivity,
|
||||
new \pvv\side\social\BrettspillActivity,
|
||||
new \pvv\side\DBActivity($pdo),
|
||||
]); ?>
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
$projects = $projectManager->getAll();
|
||||
?>
|
||||
<!DOCTYPE html>
|
||||
<html lang="no">
|
||||
<title>Prosjektverkstedet</title>
|
||||
@ -23,10 +22,6 @@ $agenda = new \pvv\side\Agenda([
|
||||
|
||||
<header>Prosjekt­verk­stedet</header>
|
||||
|
||||
<?php
|
||||
include '../../inc/ticker.php';
|
||||
?>
|
||||
|
||||
<main>
|
||||
|
||||
<article class="threed">
|
||||
@ -42,26 +37,42 @@ include '../../inc/ticker.php';
|
||||
</article>
|
||||
<div class="split">
|
||||
|
||||
|
||||
<article>
|
||||
<h2>Projekter</h2>
|
||||
<p>
|
||||
Lyst til å gjøre noe kult? Her er de prosjektene som PVVere er ivrige i å gjøre. Mangler det noe, eller brenner du for noe annet? Sett opp et prosjekt da!<br>
|
||||
<?php
|
||||
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>
|
||||
<a class="btn" href="/aktiviteter/lag">Lag prosjekt</a>
|
||||
</p>
|
||||
<ul class="calendar-events">
|
||||
<li><p><a href="project.html?id=1">Fikse Brzeczyszczykiewicz</a></p>
|
||||
<span><p>
|
||||
Skjermen på bokhyllen vår, Brzeczyszczykiewicz, sluttet å virke etter noen oppdateringer. Denne vil jeg gjerne fikse sammen med en gjeng.
|
||||
</p></span>
|
||||
</li>
|
||||
<a class="btn" href="ny.php">Lag prosjekt</a>
|
||||
<?php
|
||||
}else{
|
||||
?>
|
||||
<p>Lyst til å gjøre noe kult? Her er et utvalg av de prosjektene som PVVere har laget. Mangler det noe, eller brenner du for noe annet? Sett opp et prosjekt!</p>
|
||||
<br>
|
||||
<a class="btn" href="ny.php">Lag prosjekt</a>
|
||||
|
||||
<li><p><a href="project.html?id=2">Lage hjemmeside</a></p>
|
||||
<span><p>
|
||||
PVV trenger en fin hjemmeside! Hadde vært kult om noen ville være med meg å ordne denne.
|
||||
</p></span>
|
||||
</li>
|
||||
<ul class="calendar-events">
|
||||
<?php
|
||||
$randProjects = array_rand($projects, min(3, count($projects)));
|
||||
|
||||
for($i = 0; $i < count($randProjects); $i++){
|
||||
$project = $projects[$randProjects[$i]];
|
||||
?>
|
||||
|
||||
<li>
|
||||
<p class="noborder no-chin"><?= "<a href=\"project/?id=" . $project->getID() . "\">" . $project->getName() . "</a>"; ?></p>
|
||||
<p class="subnote"><?= "Organisert av: " . $project->getOwner(); ?></p>
|
||||
<span>
|
||||
<p><?= $project->getDescription(); ?></p>
|
||||
</span>
|
||||
</li>
|
||||
|
||||
<?php } ?>
|
||||
</ul>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
</article>
|
||||
|
||||
|
||||
@ -89,7 +100,7 @@ include '../../inc/ticker.php';
|
||||
|
||||
<li><p><a href="styret.html">Styret</a></p>
|
||||
<span><p>
|
||||
Styret bestemmer hvilke kurs, hackehelger og innkjøp som skal fåretaes. Er det noen som kan få ordnet opp i noe er det Styret. Intressert? Vi velger styret på halvårsmøtene på starten av semestrene. Kom og bli med da vel!
|
||||
Styret bestemmer hvilke kurs, hackehelger og innkjøp som skal foretas. Er det noen som kan få ordnet opp i noe er det Styret. Intressert? Vi velger styret på halvårsmøtene på starten av semestrene. Kom og bli med da vel!
|
||||
</p></span>
|
||||
</li>
|
||||
</ul>
|
||||
@ -100,9 +111,9 @@ include '../../inc/ticker.php';
|
||||
|
||||
<nav><ul>
|
||||
<li><a href="../">hjem</a></li>
|
||||
<li class="active"><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="../aktiviteter/">aktiviteter</a></li>
|
||||
<li class="active"><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="../kontakt/">kontakt</a></li>
|
||||
<li><a href="../pvv/">wiki</a></li>
|
||||
</nav>
|
||||
</nav>
|
67
www/prosjekt/ny.php
Normal file
67
www/prosjekt/ny.php
Normal file
@ -0,0 +1,67 @@
|
||||
<?php
|
||||
ini_set('display_errors', '1');
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'no_NO');
|
||||
error_reporting(E_ALL);
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
require __DIR__ . '/../../sql_config.php';
|
||||
|
||||
require_once(__DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php');
|
||||
$as = new SimpleSAML_Auth_Simple('default-sp');
|
||||
$as->requireAuth();
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
$pdo = new \PDO($dbDsn, $dbUser, $dbPass);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||
|
||||
$project = new \pvv\side\Project(
|
||||
0,
|
||||
'Nytt Prosjekt',
|
||||
'',
|
||||
$attrs["cn"][0],
|
||||
$attrs["uid"][0],
|
||||
1
|
||||
);
|
||||
?>
|
||||
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<link rel="stylesheet" href="../../css/normalize.css">
|
||||
<link rel="stylesheet" href="../../css/style.css">
|
||||
<link rel="stylesheet" href="../../css/events.css">
|
||||
<link rel="stylesheet" href="../../css/admin.css">
|
||||
|
||||
<nav><ul>
|
||||
<li><a href="index.php">hjem</a></li>
|
||||
<li><a href="../kalender/">kalender</a></li>
|
||||
<li><a href="aktiviteter/">aktiviteter</a></li>
|
||||
<li class="active"><a href="../prosjekt/">prosjekter</a></li>
|
||||
<li><a href="kontakt">kontakt</a></li>
|
||||
<li><a href="pvv/">wiki</a></li>
|
||||
</nav>
|
||||
|
||||
<header class="admin">Prosjekter</header>
|
||||
|
||||
<main>
|
||||
|
||||
<article>
|
||||
<h2>Nytt prosjekt</h2>
|
||||
|
||||
<form action="update.php", method="post">
|
||||
<p class="subtitle no-chin">Prosjektnavn</p>
|
||||
<p class="subnote">Gi prosjektet ditt et passende navn</p>
|
||||
<?= '<input type="text" name="title" value="' . $project->getName() . '" class="boxinput">' ?><br>
|
||||
|
||||
<p class="subtitle no-chin">Beskrivelse</p>
|
||||
<p class="subnote">Hva går prosjektet ditt ut på?</p>
|
||||
<textarea name="desc" cols="40" rows="5" class="boxinput"><?= $project->getDescription() ?></textarea>
|
||||
|
||||
<div style="margin-top: 2em;">
|
||||
<hr class="ruler">
|
||||
|
||||
<input type="submit" class="btn" value="Opprett prosjekt"></a>
|
||||
</div>
|
||||
</form>
|
||||
</article>
|
||||
|
||||
</main>
|
57
www/prosjekt/update.php
Normal file
57
www/prosjekt/update.php
Normal file
@ -0,0 +1,57 @@
|
||||
<?php
|
||||
ini_set('display_errors', '1');
|
||||
date_default_timezone_set('Europe/Oslo');
|
||||
setlocale(LC_ALL, 'no_NO');
|
||||
error_reporting(E_ALL);
|
||||
require __DIR__ . '/../../src/_autoload.php';
|
||||
require __DIR__ . '/../../sql_config.php';
|
||||
$pdo = new \PDO($dbDsn, $dbUser, $dbPass);
|
||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||
|
||||
if(!isset($_POST['title']) or !isset($_POST['desc'])){
|
||||
header('Location: ' . $_SERVER['HTTP_REFERER']);
|
||||
exit();
|
||||
}
|
||||
|
||||
require_once(__DIR__ . '/../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php');
|
||||
$as = new SimpleSAML_Auth_Simple('default-sp');
|
||||
$as->requireAuth();
|
||||
$attrs = $as->getAttributes();
|
||||
|
||||
$id = 0;
|
||||
if(isset($_POST['id'])){
|
||||
$id = $_POST['id'];
|
||||
$active = $_POST['active'];
|
||||
}
|
||||
|
||||
$title = $_POST['title'];
|
||||
$desc = $_POST['desc'];
|
||||
$owner = $attrs['cn'][0];
|
||||
$owneruname = $attrs['uid'][0];
|
||||
|
||||
$statement;
|
||||
if($id == 0){
|
||||
$query = 'INSERT INTO projects (name, owner, owneruname, description, active) VALUES (:title, :owner, :owneruname, :desc, 1)';
|
||||
$statement = $pdo->prepare($query);
|
||||
|
||||
$statement->bindParam(':title', $title, PDO::PARAM_STR);
|
||||
$statement->bindParam(':desc', $desc, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owner', $owner, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneruname', $owneruname, PDO::PARAM_STR);
|
||||
}else{
|
||||
$query = 'UPDATE projects SET name=:title, owner=:owner, owneruname=:owneruname, 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(':owner', $owner, PDO::PARAM_STR);
|
||||
$statement->bindParam(':owneruname', $owneruname, PDO::PARAM_STR);
|
||||
$statement->bindParam(':id', $id, PDO::PARAM_INT);
|
||||
}
|
||||
|
||||
$statement->execute();
|
||||
|
||||
header('Location: ..');
|
||||
?>
|
||||
|
||||
<a href="..">Om du ikke ble omdirigert tilbake klikk her</a>
|
Loading…
Reference in New Issue
Block a user