Add project creation
The projects page will also display a few random projects now
This commit is contained in:
parent
68bba332f1
commit
1da1785e46
|
@ -1,5 +1,3 @@
|
||||||
|
|
||||||
|
|
||||||
CREATE TABLE "events" (
|
CREATE TABLE "events" (
|
||||||
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
"name" TEXT,
|
"name" TEXT,
|
||||||
|
@ -9,3 +7,12 @@ CREATE TABLE "events" (
|
||||||
"location" TEXT,
|
"location" TEXT,
|
||||||
"description" TEXT
|
"description" TEXT
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE TABLE "projects" (
|
||||||
|
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
|
"name" TEXT,
|
||||||
|
"owner" TEXT,
|
||||||
|
"owneruname" TEXT,
|
||||||
|
"description" TEXT,
|
||||||
|
"active" BOOLEAN
|
||||||
|
);
|
|
@ -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
|
||||||
|
);
|
|
@ -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;
|
||||||
|
}
|
||||||
|
}
|
|
@ -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 {
|
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){
|
public function __construct($id, $name,\DateTimeImmutable $start,\DateTimeImmutable $end,$org, $loc, $descr, $isDBEvent = false){
|
||||||
$this->id = $id;
|
$this->id = $id;
|
||||||
|
|
|
@ -12,4 +12,4 @@ $statement->execute();
|
||||||
header('Location: ' . $_SERVER['HTTP_REFERER']);
|
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>
|
<p class="subtitle">Beskrivelse</p>
|
||||||
<textarea name="desc" cols="40" rows="5" class="boxinput"><?= implode($event->getDescription(), "\n"); ?></textarea>
|
<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>
|
<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>' ?>
|
<?= '<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>
|
<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>' ?>
|
<?= '<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>
|
<p class="subtitle">Organisert av</p>
|
||||||
<?= '<input type="text" name="organiser" value="' . $event->getOrganiser(). '" class="boxinput">' ?><br>
|
<?= '<input type="text" name="organiser" value="' . $event->getOrganiser(). '" class="boxinput">' ?><br>
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,7 @@ if(isset($_GET['page'])){
|
||||||
<nav><ul>
|
<nav><ul>
|
||||||
<li class="active"><a href="index.php">hjem</a></li>
|
<li class="active"><a href="index.php">hjem</a></li>
|
||||||
<li><a href="aktiviteter/">aktiviteter</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="kontakt">kontakt</a></li>
|
||||||
<li><a href="pvv/">wiki</a></li>
|
<li><a href="pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
@ -56,7 +57,9 @@ if(isset($_GET['page'])){
|
||||||
<div class="event admin">
|
<div class="event admin">
|
||||||
<div class="event-info">
|
<div class="event-info">
|
||||||
<h3 class="no-chin"><?= $event->getName() . " (ID: " . $eventID . ")"; ?></h3>
|
<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>
|
<p><?= implode($event->getDescription(), "</p>\n<p>"); ?></p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -9,11 +9,12 @@
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
||||||
<header class="admin">Stor­-gutt­-leketøy</header>
|
<header class="admin">Stor-­gutt-­leketøy</header>
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
|
|
||||||
|
|
|
@ -80,6 +80,7 @@ foreach($events as $event) {
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li class="active"><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -50,6 +50,7 @@ $nextEvent = $activity->getNextEventFrom(new DateTimeImmutable);
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li class="active"><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -55,6 +55,7 @@ $nextEvent = $activity->getNextEventFrom(new DateTimeImmutable);
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li class="active"><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -47,10 +47,6 @@ header.admin {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
.no-chin {
|
|
||||||
margin-bottom: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.gridsplit {
|
.gridsplit {
|
||||||
display: grid;
|
display: grid;
|
||||||
grid-template-columns: 75% 25%;
|
grid-template-columns: 75% 25%;
|
||||||
|
@ -78,17 +74,6 @@ header.admin {
|
||||||
grid-column: 1 / -1;
|
grid-column: 1 / -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
.noborder {
|
|
||||||
border: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.subnote {
|
|
||||||
margin-top: 0;
|
|
||||||
color: gray;
|
|
||||||
font-size: .7em;
|
|
||||||
font-style: italic;
|
|
||||||
}
|
|
||||||
|
|
||||||
.float-right {
|
.float-right {
|
||||||
float: right;
|
float: right;
|
||||||
}
|
}
|
||||||
|
|
|
@ -119,12 +119,26 @@ a.btn:active {
|
||||||
color: #048;
|
color: #048;
|
||||||
padding: .2em .4em;
|
padding: .2em .4em;
|
||||||
border-radius: .2em;
|
border-radius: .2em;
|
||||||
white-space: nowrap;
|
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-bottom: .25em;
|
margin-bottom: .25em;
|
||||||
resize: none;
|
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 {
|
.icon.subscribe {
|
||||||
color: white;
|
color: white;
|
||||||
background: #082;
|
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="prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="kalender/">kalender</a></li>
|
<li><a href="kalender/">kalender</a></li>
|
||||||
<li><a href="aktiviteter/">aktiviteter</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="kontakt/">kontakt</a></li>
|
||||||
<li><a href="pvv/">wiki</a></li>
|
<li><a href="pvv/">wiki</a></li>
|
||||||
</nav>
|
</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><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li class="active"><a href="../kalender/">kalender</a></li>
|
<li class="active"><a href="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</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="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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 class="active"><a href="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -55,6 +55,7 @@ $agenda = new \pvv\side\Agenda([
|
||||||
<li class="active"><a href="../kurs/">kurs</a></li>
|
<li class="active"><a href="../kurs/">kurs</a></li>
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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="../sosiale/">sosiale</a></li>
|
||||||
<li><a href="../kontakt/">kontakt</a></li>
|
<li><a href="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</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="../">hjem</a></li>
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li class="active"><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -60,6 +60,7 @@ p {hyphens: auto;}
|
||||||
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
<!--<li><a href="../prosjekt/">prosjekter</a></li>-->
|
||||||
<li><a href="../kalender/">kalender</a></li>
|
<li><a href="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
<?php
|
<?php
|
||||||
|
ini_set('display_errors', '1');
|
||||||
|
error_reporting(E_ALL);
|
||||||
date_default_timezone_set('Europe/Oslo');
|
date_default_timezone_set('Europe/Oslo');
|
||||||
setlocale(LC_ALL, 'no_NO');
|
setlocale(LC_ALL, 'no_NO');
|
||||||
require __DIR__ . '/../../src/_autoload.php';
|
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'];
|
$translation = ['i dag', 'i morgen', 'denne uka', 'neste uke', 'denne måneden', 'neste måned'];
|
||||||
$pdo = new \PDO($dbDsn, $dbUser, $dbPass);
|
$pdo = new \PDO($dbDsn, $dbUser, $dbPass);
|
||||||
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
||||||
$agenda = new \pvv\side\Agenda([
|
$projectManager = new \pvv\side\ProjectManager($pdo);
|
||||||
new \pvv\side\social\NerdepitsaActivity,
|
$projects = $projectManager->getAll();
|
||||||
new \pvv\side\social\AnimekveldActivity,
|
?>
|
||||||
new \pvv\side\social\BrettspillActivity,
|
|
||||||
new \pvv\side\DBActivity($pdo),
|
|
||||||
]); ?>
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="no">
|
<html lang="no">
|
||||||
<title>Prosjektverkstedet</title>
|
<title>Prosjektverkstedet</title>
|
||||||
|
@ -23,10 +22,6 @@ $agenda = new \pvv\side\Agenda([
|
||||||
|
|
||||||
<header>Prosjekt­verk­stedet</header>
|
<header>Prosjekt­verk­stedet</header>
|
||||||
|
|
||||||
<?php
|
|
||||||
include '../../inc/ticker.php';
|
|
||||||
?>
|
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
|
|
||||||
<article class="threed">
|
<article class="threed">
|
||||||
|
@ -42,26 +37,42 @@ include '../../inc/ticker.php';
|
||||||
</article>
|
</article>
|
||||||
<div class="split">
|
<div class="split">
|
||||||
|
|
||||||
|
|
||||||
<article>
|
<article>
|
||||||
<h2>Projekter</h2>
|
<h2>Projekter</h2>
|
||||||
<p>
|
<?php
|
||||||
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>
|
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>
|
<br>
|
||||||
<a class="btn" href="/aktiviteter/lag">Lag prosjekt</a>
|
<a class="btn" href="ny.php">Lag prosjekt</a>
|
||||||
</p>
|
<?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>
|
||||||
|
|
||||||
<ul class="calendar-events">
|
<ul class="calendar-events">
|
||||||
<li><p><a href="project.html?id=1">Fikse Brzeczyszczykiewicz</a></p>
|
<?php
|
||||||
<span><p>
|
$randProjects = array_rand($projects, min(3, count($projects)));
|
||||||
Skjermen på bokhyllen vår, Brzeczyszczykiewicz, sluttet å virke etter noen oppdateringer. Denne vil jeg gjerne fikse sammen med en gjeng.
|
|
||||||
</p></span>
|
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>
|
</li>
|
||||||
|
|
||||||
<li><p><a href="project.html?id=2">Lage hjemmeside</a></p>
|
<?php } ?>
|
||||||
<span><p>
|
</ul>
|
||||||
PVV trenger en fin hjemmeside! Hadde vært kult om noen ville være med meg å ordne denne.
|
<?php
|
||||||
</p></span>
|
}
|
||||||
</li>
|
?>
|
||||||
</article>
|
</article>
|
||||||
|
|
||||||
|
|
||||||
|
@ -89,7 +100,7 @@ include '../../inc/ticker.php';
|
||||||
|
|
||||||
<li><p><a href="styret.html">Styret</a></p>
|
<li><p><a href="styret.html">Styret</a></p>
|
||||||
<span><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>
|
</p></span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -100,9 +111,9 @@ include '../../inc/ticker.php';
|
||||||
|
|
||||||
<nav><ul>
|
<nav><ul>
|
||||||
<li><a href="../">hjem</a></li>
|
<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="../kalender/">kalender</a></li>
|
||||||
<li><a href="../aktiviteter/">aktiviteter</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="../kontakt/">kontakt</a></li>
|
||||||
<li><a href="../pvv/">wiki</a></li>
|
<li><a href="../pvv/">wiki</a></li>
|
||||||
</nav>
|
</nav>
|
|
@ -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>
|
|
@ -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