diff --git a/inc/navbar.php b/inc/navbar.php index 129f65d..c03e34c 100644 --- a/inc/navbar.php +++ b/inc/navbar.php @@ -40,11 +40,10 @@ function loginBar($sp = null, $pdo = null) { $attr = $as->getAttributes(); if($attr) { $uname = $attr['uid'][0]; + $isAdmin = false; if (isset($pdo)) { $userManager = new \pvv\admin\UserManager($pdo); $isAdmin = $userManager->isAdmin($uname); - } else { - $isAdmin = false; } $result .= "\n\t - - Forrige side'; - } - - if(($counter == $pageLimit) and (($pageLimit * $page) < count($events))){ - echo 'Neste side'; - } - ?> - - -
-

Verktøy

- Legg inn ny aktivitet -

Filter

-
-

Navn

- ' ?>
-

Organisator

- ' ?>
- -
- + if(($counter == $pageLimit) and (($pageLimit * $page) < count($events))){ + echo 'Neste side'; + } + ?>
-
-
- - +
+

Verktøy

+ Legg inn ny aktivitet +

Filter

+
+

Navn

+ ' ?>
+

Organisator

+ ' ?>
- +
+ +
+
+
+ + + \ No newline at end of file diff --git a/www/admin/brukere/index.php b/www/admin/brukere/index.php index 45aac62..132fc4d 100644 --- a/www/admin/brukere/index.php +++ b/www/admin/brukere/index.php @@ -28,64 +28,65 @@ if(!$userManager->isAdmin($uname)){ $users = $userManager->getAllUserData(); ?> - - - - - + + + + + + + - + + -
Bruker­administrasjon
+
+

Brukeradministrasjon

+
-
-
+
+ + - -
BrukernavnBrukergrupper
- - - $data){ - $uname = $data['name']; - $groupFlag = $userManager->getUsergroups($uname); - - if(!$users_value){ - $users_value = $uname; - }else{ - $users_value = $users_value . '_' . $uname; - } - ?> - - - usergroups as $name => $group){ - echo ''; - } + $users_value = ''; + foreach($users as $i => $data){ + $uname = $data['name']; + $groupFlag = $userManager->getUsergroups($uname); + + if(!$users_value){ + $users_value = $uname; + }else{ + $users_value = $users_value . '_' . $uname; + } ?> - - '; - ?> + + + usergroups as $name => $group){ + echo ''; + } + ?> + - - - usergroups as $name => $group){ - echo ''; + - -
BrukernavnBrukergrupper
' . $name . '
' . $name . '
' . $name . '
- -
+ echo ''; + ?> -
-
+ + + usergroups as $name => $group){ + echo '' . $name . ''; + } + ?> + + + + +
+ diff --git a/www/admin/index.php b/www/admin/index.php index 1d9f996..082d706 100644 --- a/www/admin/index.php +++ b/www/admin/index.php @@ -1,6 +1,11 @@ setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +$userManager = new \pvv\admin\UserManager($pdo); + +$as = new SimpleSAML_Auth_Simple('default-sp'); $as->requireAuth(); $attrs = $as->getAttributes(); $uname = $attrs['uid'][0]; @@ -16,36 +21,40 @@ if(!($isAdmin | $projectGroup | $activityGroup)){ } ?> - - - - - + + + + + + + -
Stor-­gutt-­leketøy
+ + -
+
+

Voksenleketøy

+
- - + if($isAdmin){ + echo '
  • Brukere
  • '; + } + ?> +
    + diff --git a/www/admin/motd/index.php b/www/admin/motd/index.php new file mode 100644 index 0000000..7695025 --- /dev/null +++ b/www/admin/motd/index.php @@ -0,0 +1,66 @@ +getAttributes(); + +$pdo = new \PDO($dbDsn, $dbUser, $dbPass); +$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +$userManager = new \pvv\admin\UserManager($pdo); + +require_once(__DIR__ . '/../../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php'); +$as = new SimpleSAML_Auth_Simple('default-sp'); +$as->requireAuth(); +$attrs = $as->getAttributes(); +$uname = $attrs['uid'][0]; + +if(!$userManager->isAdmin($uname)){ + echo 'Her har du ikke lov\'t\'å\'værra!!!'; + exit(); +} + +$motdfetcher = new \pvv\side\MOTD($pdo); +$motd = $motdfetcher->getMOTD(); +?> + + + + + + + + + + + + + +
    +

    Dagens melding

    +
    + +
    +

    Tittel

    +

    Ikke nødvendig

    +
    + +

    Innhold

    + + +
    +
    + + '; ?> +
    +
    +
    + \ No newline at end of file diff --git a/www/admin/motd/update.php b/www/admin/motd/update.php new file mode 100644 index 0000000..a7af78b --- /dev/null +++ b/www/admin/motd/update.php @@ -0,0 +1,39 @@ +setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +$userManager = new \pvv\admin\UserManager($pdo); + +require_once(__DIR__ . '/../../../vendor/simplesamlphp/simplesamlphp/lib/_autoload.php'); +$as = new SimpleSAML_Auth_Simple('default-sp'); +$as->requireAuth(); +$attrs = $as->getAttributes(); +$uname = $attrs['uid'][0]; + +if(!isset($_POST['title']) or !isset($_POST['content'])){ + header('Location: ' . $_SERVER['HTTP_REFERER']); + exit(); +} + +if(!$userManager->isAdmin($uname)){ + echo 'Her har du ikke lov\'t\'å\'værra!!!'; + exit(); +} + +$query = 'UPDATE motd SET title=:title, content=:content'; +$statement = $pdo->prepare($query); + +$statement->bindParam(':title', $_POST['title'], PDO::PARAM_STR); +$statement->bindParam(':content', $_POST['content'], PDO::PARAM_STR); + +$statement->execute(); + +header('Location: .'); +?> + +Om du ikke ble automatisk omdirigert tilbake klikk her \ No newline at end of file diff --git a/www/admin/prosjekter/edit.php b/www/admin/prosjekter/edit.php index 1d3dc30..374c83e 100644 --- a/www/admin/prosjekter/edit.php +++ b/www/admin/prosjekter/edit.php @@ -49,53 +49,55 @@ if($new == 0){ } ?> - - - - - + + + + + + + + -
    Prosjekt­administrasjon
    + + -
    +
    +

    Prosjektadministrasjon

    +
    -
    -

    +

    -
    -
    -

    Tittel

    - getName() . '" class="boxinput">' ?>
    + +
    +

    Tittel

    + getName() . '" class="boxinput">' ?>
    -

    Beskrivelse

    - -
    +

    Beskrivelse

    + +
    -
    -

    Prosjekteier (Brukernavn)

    - getOwnerUName(). '" class="boxinput">' ?>
    +
    +

    Prosjektleder (Brukernavn)

    + getOwnerUName(). '" class="boxinput">' ?>
    -

    Prosjekteier (Navn)

    - getOwner(). '" class="boxinput">' ?> +

    Prosjektleder (Navn)

    + getOwner(). '" class="boxinput">' ?> -

    Aktiv

    - getActive() ? 'checked' : '') . ' name="active"/>' ?> -
    +

    Aktiv

    + getActive() ? 'checked' : '') . ' name="active"/>' ?> +
    - getID() . '" />' ?> + getID() . '" />' ?> -
    -
    +
    +
    - -
    - -

    -

    - -
    - - + + + +

    +

    + \ No newline at end of file diff --git a/www/admin/prosjekter/index.php b/www/admin/prosjekter/index.php index afb28b1..6eb471b 100644 --- a/www/admin/prosjekter/index.php +++ b/www/admin/prosjekter/index.php @@ -47,86 +47,91 @@ $projects = array_values(array_filter( )); ?> - - - - - + + + + + + + + -
    Prosjekt­administrasjon
    + + -
    +
    +

    Prosjektadministrasjon

    +
    -
    -
    -

    Prosjekter

    +
    +
    +

    Prosjekter

    -
      - + getID(); + ?> + +
    • +
      +
      +

      getName() . " (ID: " . $projectID . ")"; ?>

      +

      getOwner(); ?>

      +

      getDescription(), "
      "); ?>

      +
      + +
      + 🖊'; ?> + 🗑'; ?> +
      +
      +
    • + + +
    + + Forrige side'; } - $project = $projects[$i]; - $projectID = $project->getID(); - ?> - -
  • -
    -
    -

    getName() . " (ID: " . $projectID . ")"; ?>

    -

    getOwner(); ?>

    -

    getDescription(); ?>

    -
    - -
    - 🖊'; ?> - 🗑'; ?> -
    -
    -
  • - - - - - Forrige side'; - } - - if(($counter == $pageLimit) and (($pageLimit * $page) < count($projects))){ - echo 'Neste side'; - } - ?> -
    - -
    -

    Verktøy

    - Legg inn nytt prosjekt -

    Filter

    -
    -

    Navn

    - ' ?>
    -

    Organisator

    - ' ?>
    - -
    - + if(($counter == $pageLimit) and (($pageLimit * $page) < count($projects))){ + echo 'Neste side'; + } + ?>
    -
    -
    -
    -
    +
    +

    Verktøy

    + Legg inn nytt prosjekt +

    Filter

    +
    +

    Prosjektnavn

    + ' ?>
    +

    Leders brukernavn

    + ' ?>
    - +
    + +
    +
    +
    + +
    + + \ No newline at end of file diff --git a/www/aktiviteter/index.php b/www/aktiviteter/index.php index 3fa6586..0e84225 100644 --- a/www/aktiviteter/index.php +++ b/www/aktiviteter/index.php @@ -14,59 +14,61 @@ $day = (isset($_GET['day'])) ?> -Aktivitetsverkstedet - - - - - -
    Aktivitets­verk­stedet
    + + Aktivitetsverkstedet + + + + + + -
    + + -getNextOfEach(new \DateTimeImmutable) - : $agenda->getEventsBetween( - new DateTimeImmutable("$year-$month-$day 00:00:00"), - new DateTimeImmutable("$year-$month-$day 23:59:59")); +
    + getNextOfEach(new \DateTimeImmutable) + : $agenda->getEventsBetween( + new DateTimeImmutable("$year-$month-$day 00:00:00"), + new DateTimeImmutable("$year-$month-$day 23:59:59")); -$limit = 0; -foreach($events as $event) { -?> -
    -

    - getImageURL()) { ?> - + $limit = 0; + foreach($events as $event) { + ?> +
    +

    + getImageURL()) { ?> + + + getStart())) { ?> + getRelativeDate() ?> + getStart())) { ?> + getURL()) { ?> + getName() ?> + + getName() ?> + +

    +
      +
    • Tid: getStart()) ?>
    • +
    • Sted: getLocation() ?>
    • +
    • Arrangør: getOrganiser() ?>
    • +
    + + getDescription(); ?> + + ") ?> +
    + + 4) {$limit = 4;} else $limit = 2; ?> - getStart())) { ?> - getRelativeDate() ?> - getStart())) { ?> - getURL()) { ?> - getName() ?> - - getName() ?> - -

    -
      -
    • Tid: getStart()) ?> -
    • Sted: getLocation() ?> -
    • Arrangør: getOrganiser() ?> -
    +
    - getDescription(); ?> - - \n

    ") ?> - - - 4) {$limit = 4;} else $limit = 2; ?> - - -

    - - + diff --git a/www/anime/index.php b/www/anime/index.php index a8049b6..52759c1 100755 --- a/www/anime/index.php +++ b/www/anime/index.php @@ -9,6 +9,7 @@ use \pvv\side\Agenda; +
    Sosial­verk­stedet
    diff --git a/www/brettspill/index.php b/www/brettspill/index.php index a3c721f..65b15cb 100755 --- a/www/brettspill/index.php +++ b/www/brettspill/index.php @@ -12,6 +12,7 @@ use \pvv\side\Agenda; +
    Sosial­verk­stedet
    diff --git a/www/css/admin.css b/www/css/admin.css index 89649e9..44a0678 100644 --- a/www/css/admin.css +++ b/www/css/admin.css @@ -1,14 +1,12 @@ -header.admin { - margin-top: 3rem; - height: 16rem; - overflow: hidden; - text-align: right; - color: #fff; - font-family: monospace; - padding: 1rem; - font-size: 4em; - background: url('ja.png') no-repeat 1% 50% #024; - background-size: contain; +.tools { + width: 100%; + margin: 0; + padding: 0; + list-style: none; +} + +.tools li { + margin: 1.5em 0; } .event-list { @@ -56,39 +54,6 @@ header.admin { text-decoration: none; } -.gridsplit { - padding-top: 1.3em; - display: grid; - grid-template-columns: 3fr 1fr; -} - -.gridsplit5050 { - display: grid; - grid-template-columns: 1fr 1fr; -} - -.gridl { - height: 100%; - grid-column: 1; -} - -.gridr { - height: 100%; - padding: 0 1em; - margin-left: 1em; - border-left: 1px dotted rgba(0,0,0,0.5); - grid-column: 2; -} - -.gridsplit h1:first-child, -.gridsplit h2:first-child, -.gridsplit h3:first-child, -.gridsplit h4:first-child, -.gridsplit h5:first-child, -.gridsplit h6:first-child { - margin-top: 0; -} - .allgrids { grid-column: 1 / -1; } @@ -101,27 +66,6 @@ header.admin { float: left; } -.btn { - text-decoration: none; - border: 1px solid #048; - color: #048; - padding: .2em 1em; - border-radius: .2em; - white-space: nowrap; - display: inline-block; - margin-bottom: .25em; -} -.btn:hover { - border-color: #084; - background: #eee; - color: #084; -} -.btn:active { - border-color: #084; - background: #084; - color: white; -} - .userlist { table-layout: fixed; width: 100%; diff --git a/www/css/landing.css b/www/css/landing.css new file mode 100644 index 0000000..3dba022 --- /dev/null +++ b/www/css/landing.css @@ -0,0 +1,142 @@ +header { + margin: 0; + margin-top: 3em; + padding: 3vh 15vw; + width: 70vw; + background-color: #002244; + color: #fff; +} + +header .logo { + display: block; + width: 24vh; + height: 24vh; + margin: auto; +} + +main { + margin-top: 0; +} + +.info { + text-align: center; + width: 100%; + padding: 0; + margin: 0; + + overflow-y: hidden; +} + +.essentials { + width: 100%; + margin: 1.8em 0; + padding: 0; + list-style: none; + display: flex; + align-items: center; + justify-content: center; +} + +.essentials li { + display: inline-block; +} + +.essentials a { + margin: 0 2em; + height: 100%; +} + +.essentials .join { + padding: 1em; + font-size: 1.2em; +} + +img.float-right { + float: right; + max-width: 12em; + max-height: 12em; + vertical-align: baseline; +} + +.calendar-events { + padding: 0; + margin-bottom: 1.5em; + list-style: none; +} + +.calendar-events ul .date { + color: rgba(0,0,0,.5); + font-size: 0.8em; + margin-top: .2em; +} + +.calendar-events > li > p { + border-bottom: .1em dotted rgba(0,0,0,.2); +} + +.calendar-events ul { + list-style: none; + padding: 0; +} + +.calendar-events a, #ticker a { + text-decoration: none; + font-weight: bold; + color: black; +} + +.calendar-events a:hover, #ticker a:hover { + text-decoration: underline; +} + +.calendar-events ul .time { + color: rgba(0,0,0,.5); + float: right; +} + +.calendar-events ul .icon, .calendar-events ul .date { + float: right; + margin-right: .5em; +} + +.contentsplit { + display: grid; + grid-template-columns: 2.5fr 1.5fr; +} + +.gridr { + border-left: 0; +} + +@media screen and (max-width: 50rem) { + .essentials { + flex-direction: column; + } + + .essentials a { + margin: .2em 0; + } +} + +@media screen and (max-width: 65rem) { + .contentsplit { + display: block; + } + + .gridr { + height: auto; + padding: 0; + margin-left: 0; + margin-bottom: 3em; + } + + .gridr br { + margin: 0; + height: 0px; + } + + .gridl { + margin-top: 0; + padding: 0; + } +} \ No newline at end of file diff --git a/www/css/logo-disk-white.png b/www/css/logo-disk-white.png new file mode 100644 index 0000000..02ac7c5 Binary files /dev/null and b/www/css/logo-disk-white.png differ diff --git a/www/css/logo-white.png b/www/css/logo-white.png new file mode 100644 index 0000000..ed797a9 Binary files /dev/null and b/www/css/logo-white.png differ diff --git a/www/css/projects.css b/www/css/projects.css new file mode 100644 index 0000000..098f81e --- /dev/null +++ b/www/css/projects.css @@ -0,0 +1,59 @@ +.project-card { + position: relative; + display: inline-block; + vertical-align: top; + border-radius: 4px; + width: 18em; + height: 8em; + padding: 0; + margin: 0 1em 1em 0; + border: 1px solid #002244; + box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2); +} + +.project-title { + padding-bottom: .1em; + margin: 0; + text-overflow: ellipsis; +} + +.card-content { + display: block; + overflow: hidden; + margin: 0; + padding: .6em; + height: 4.3em; +} + +.card-content p { + height: 2.5em; + overflow: hidden; + line-height: 1.25em; +} + +.project-organizer { + position: absolute; + bottom: 0; + left: 0; + right: 0; + margin: 0; + padding: .3em .6em; + border-top: 1px solid #002244; + font-size: .8em; +} + +.card-content * { + margin-top: 0; +} + +.projects-divider { + border: 0; + margin-bottom: 2em; +} + +@media screen and (max-width: 50rem) { + .projects { + display: inline-block; + + } +} \ No newline at end of file diff --git a/www/css/splash.css b/www/css/splash.css deleted file mode 100644 index 86339b8..0000000 --- a/www/css/splash.css +++ /dev/null @@ -1,70 +0,0 @@ -img.float-right { - float: right; - max-width: 12em; - max-height: 12em; - vertical-align: baseline; -} - -.calendar-events { - padding: 0; - list-style: none; -} -.calendar-events ul .date { - color: rgba(0,0,0,.5); - font-size: 0.8em; - margin-top: .2em; -} -.calendar-events > li > p { - border-bottom: .1em dotted rgba(0,0,0,.2); -} - -.calendar-events ul { - list-style: none; - padding: 0 .5em; -} -.calendar-events a, #ticker a { - text-decoration: none; - font-weight: bold; - color: black; -} -.calendar-events a:hover, #ticker a:hover { - text-decoration: underline; -} -.calendar-events ul .time { - color: rgba(0,0,0,.5); - float: right; -} -.calendar-events ul .icon, .calendar-events ul .date { - float: right; - margin-right: .5em; -} - -#ticker { - position: absolute; - max-width: 60rem; - margin: 0 auto; - top: 11rem; - left: 0; - right: 0; - padding: 0; - list-style: none; -} -#ticker li { - margin: 0 1rem; - padding: .5em 1em; - background: linear-gradient(to bottom, #fff 75%,#fafafa 100%); - border-radius: .5rem; - box-shadow: 0 .1rem .15rem rgba(0,0,0,.3); -} - -@media screen and (max-width: 50rem) { - #ticker { - top: 7rem; - } - #ticker li { - margin: 0 .5rem; - } - main { - margin: -11rem auto 0 auto; - } -} diff --git a/www/css/style.css b/www/css/style.css index 6b7d66e..c103110 100644 --- a/www/css/style.css +++ b/www/css/style.css @@ -190,107 +190,90 @@ nav #usermenu li:first-child:hover { top: 0; } } -header { - margin-top: 3rem; - height: 16rem; - overflow: hidden; - text-align: right; - color: #fff; - font-family: monospace; - padding: 1rem; - font-size: 4em; - background: url('pvv-background.png') no-repeat 1% 50% #024; - background-size: contain; + +body { + overflow-y: scroll; + overflow-x: hidden; } + +* { + font-style: -apple-system, 'avenir next', avenir, roboto, noto, ubuntu, 'helvetica neue', helvetica, arial, sans-serif; +} + main { - max-width: 60rem; - margin: -7rem auto 0 auto; - padding: 0; + padding: 1em 15vw; + height: 100vh; + margin-top: 7vh; + + background-color: #fff; } -article { - padding: .1rem 1rem 1rem 1rem; - margin: 0 1rem 0 1rem; - background: white; + +main h2 { + color: #002244; z-index: 2; /* Make appear under #menu */ position: relative; } -article p { - text-align: justify; - hyphens: auto; -} -article:first-child { - border-radius: .5rem .5rem 0 0; -} -main:before { - content: " "; - display: block; - position: absolute; - top: 16rem; - left: 1rem; - right: 1rem; - margin: 0 auto; - height: 8em; - z-index: 1; /* Make appear under article */ - max-width: 58rem; - box-shadow: 0 -.2rem .15rem rgba(0,0,0,.3); - border-radius: 0 0 .3em .3em; - background: white; + +article { + margin-bottom: 7vh; } -.split { - display: table; - width: 100%; - table-layout: fixed; - border-spacing: 1em; -} -.split > * { - display: table-cell; +.gridsplit { + padding-top: 1.3em; + display: grid; + grid-template-columns: 3fr 1fr; } -.subtitle { - font-weight: bold; +.gridsplit5050 { + display: grid; + grid-template-columns: 1fr 1fr; } -.ruler { - border: none; - border-bottom: 1px dotted rgba(0,0,0,.5); +.gridsplitthirds { + display: grid; + grid-column-gap: 2em; + column-rule-style: dotted; + grid-template-columns: 1fr 1fr 1fr; } -a.btn { +.gridl { + height: 100%; + grid-column: 1; + grid-row: 1; +} + +.gridr { + height: 100%; + padding: 0 1em; + margin-left: 1em; + border-left: 1px dotted rgba(0,0,0,0.5); + grid-column: 2; +} + +.gridsplit h1:first-child, +.gridsplit h2:first-child, +.gridsplit h3:first-child, +.gridsplit h4:first-child, +.gridsplit h5:first-child, +.gridsplit h6:first-child { + margin-top: 0; +} + +.btn { + padding: .5em; + border-radius: 4px; text-decoration: none; - border: 1px solid #048; - color: #048; - padding: .2em 1em; - border-radius: .2em; - white-space: nowrap; - display: inline-block; - margin-bottom: .25em; -} -a.btn:hover { - border-color: #084; - background: #eee; - color: #084; -} -a.btn:active { - border-color: #084; - background: #084; - color: white; + color: #fff; + background-color: #002244; + + transition: background-color .2s ease; } -.boxinput { - text-decoration: none; - border: 1px solid #048; - color: #048; - padding: .2em .4em; - border-radius: .2em; - display: inline-block; - margin-bottom: .25em; - resize: none; -} +.btn:hover { + background-color: #00407F; -.noborder { - border: none !important; + transition: background-color .2s ease; } .subnote { @@ -304,72 +287,7 @@ a.btn:active { margin-bottom: 0; } -.icon.subscribe { - color: white; - background: #082; - border-radius: 1em; - width: 1em; - line-height: 1em; - text-align: center; -} - -@media screen and (max-width: 50rem) { - .split, .split > * { - display: block; - } - img.float-right { - display: none; - } - nav li { - margin: auto .5em; - } - header { - font-size: 2em; - } - main { - margin: -13rem auto 0 auto; - } - article { - margin: 0 .5rem 0 .5rem; - } - main:before { - left: .5rem; - right: .5rem; - } -} -@media screen and (max-width: 23rem) { - body { - font-size: 0.8em; - } - header { - margin-top: 2.4rem; - } - main:before { - top: 13rem; - height: 13em; - } -} - - - -.collapsable { - display: none; -} -.collapsable:target { - display: block; -} - -.noselect { - /* iOS Safari */ - -webkit-touch-callout: none; - /* Safari */ - -webkit-user-select: none; - /* Konqueror HTML */ - -khtml-user-select: none; - /* Firefox */ - -moz-user-select: none; - /* Internet Explorer/Edge */ - -ms-user-select: none; - /* Non-prefixed version, currently supported by Chrome and Opera */ - user-select: none; +.ruler { + border: none; + border-bottom: 1px dotted rgba(0,0,0,.5); } diff --git a/www/index.php b/www/index.php index 268e894..86c326b 100644 --- a/www/index.php +++ b/www/index.php @@ -2,91 +2,98 @@ require_once dirname(__DIR__) . implode(DIRECTORY_SEPARATOR, ['', 'inc', 'include.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); + +$motdfetcher = new \pvv\side\MOTD($pdo); +$motd = $motdfetcher->getMOTD(); ?> + -Programvareverkstedet - - - - - - + + Programvareverkstedet + + + + + + + + -
    Program­vare­verk­stedet
    + + -
    +
    + +
    +

    Velkommen til Programvare­verkstedet

    +

    Programvareverkstedet (PVV) er en studentorganisasjon ved NTNU som vil skape et miljø for datainteresserte personer tilknyttet universitetet.

    +

    Nåværende og tidligere studenter ved NTNU, samt ansatte ved NTNU og tilstøtende miljø, kan bli medlemmer.

    + +
    +
    -
    - -

    Velkommen til Program­vare­verk­stedet

    -

    Programvareverkstedet (PVV) vil skape et miljø for datainteresserte personer tilknyttet universitetet. Nåværende og tidligere studenter ved NTNU, samt ansatte ved NTNU og tilstøtende miljø, kan bli medlemmer.

    -

    - Om PVV - Bli medlem - Veibeskrivelse -

    -
    +
    +
    +

    Kommende aktiviteter

    +
    + + + getNextDays() as $period => $events) if ($events && $counter1 < 3 && $counter2 < 10) { $counter1++ ?> +

    +
    +
      + +
    • + getURL()) { ?> + getName(); ?> + + getName(); ?> + + + */ ?> + ' . $event->getStart()->format('H:i') . ''; + if (\pvv\side\Agenda::isThisWeek($event->getStart()) || $event->getStart()->sub(new DateInterval('P3D'))->getTimestamp() < time()) { + echo '' . strftime('%a', $event->getStart()->getTimestamp()) . ''; + } else { + echo '' . strftime('%e. %b', $event->getStart()->getTimestamp()) . ''; + } + } else { + echo '' . $event->getStart()->format('H:i') . ''; + } + ?> +
    • + +
    + +
    +

    Flere aktiviteter

    +
    -
    -
    -

    Kommende arrangement

    -
      - - -getNextDays() as $period => $events) if ($events && $counter1 < 2 && $counter2 < 10) { $counter1++ ?> -
    • -

      -
        - -
      • - -getURL()) { ?> - getName(); ?> - - getName(); ?> - -+ */ ?> -' . $event->getStart()->format('H:i') . ''; - if (\pvv\side\Agenda::isThisWeek($event->getStart()) || $event->getStart()->sub(new DateInterval('P3D'))->getTimestamp() < time()) { - echo '' . strftime('%a', $event->getStart()->getTimestamp()) . ''; - } else { - echo '' . strftime('%e. %b', $event->getStart()->getTimestamp()) . ''; - } -} else { - echo '' . $event->getStart()->format('H:i') . ''; -} -?> -
      • - -
      - -
    -

    Flere aktiviteter

    -
    -
    -

    Opptak

    -

    -Alle med tilknytning til NTNU kan bli medlem hos oss -og benytte seg av våre ressurser. - -

    -

    -Bli medlem - -

    -
    -
    +
    + + echo "

    "; + if($title == ""){ + echo "Dagens melding"; + }else{ + echo $title; + } + echo "

    "; - + echo "

    " . implode($motd["content"], "
    ") . "

    "; + ?> +
    +
    + + diff --git a/www/kalender/index.php b/www/kalender/index.php index a335e3c..6e1314f 100644 --- a/www/kalender/index.php +++ b/www/kalender/index.php @@ -16,77 +16,75 @@ $days_in_month = date('t', mktime(0, 0, 0, $month, 1, $year)); ?> -Kalenderverkstedet - - - - - - -
    Kalender­verk­stedet
    + + Kalenderverkstedet + + + + + + + -
    + + -
    -

    Aktiviteter for

    +
    +

    Aktiviteter for

    -

    - Forrige måned - Neste måned -

    +

    + Forrige måned + Neste måned +

    -
    -
      -
    • mandag -
    • tirsdag -
    • onsdag -
    • torsdag -
    • fredag -
    • lørdag -
    • søndag +
      +
        +
      • mandag +
      • tirsdag +
      • onsdag +
      • torsdag +
      • fredag +
      • lørdag +
      • søndag - -
      • - - - - getEventsBetween( - new DateTimeImmutable("$year-$month-$day 00:00:00"), - new DateTimeImmutable("$year-$month-$day 23:59:59")); ?> - -
      • - -
      • - - - ">
        - . - -
        getName()?>
        + +
      • - - - . - - -
      -
      + + getEventsBetween( + new DateTimeImmutable("$year-$month-$day 00:00:00"), + new DateTimeImmutable("$year-$month-$day 23:59:59")); ?> + +
    • + +
    • + + + ">
      + . + +
      getName()?>
      + +
      + + . + + -
    - -
    - - + + +
    + diff --git a/www/kontakt/index.php b/www/kontakt/index.php index 0c82ea2..6c7f985 100755 --- a/www/kontakt/index.php +++ b/www/kontakt/index.php @@ -1,38 +1,37 @@ +?> + -Kommunikasjonsverkstedet - - - - - -
    Kommunikasjons­verk­stedet
    + + Kommunikasjonsverkstedet + + + + + + -
    + + -
    - -

    Kommunikasjon

    -

    -Det er ulike måter å kommunisere med PVV-medlemmer på. -

    -

    -Vi har en IRC-kanal på IRCnet kalt #pvv. -

    -

    -Vi har også en Discord-kanal. Denne kanalen er satt opp slik at man i Discord-kanalen ser hva som skrives i IRC-kanalen, og vice versa. For å bli med i Discord-kanalen, klikk her. -

    -

    -Det er også mulig å ta i bruk analog kontakt ved å møte opp på stripa. -

    -
    - -
    - - +
    +

    Kommunikasjon

    +

    + Det er ulike måter å kommunisere med PVV-medlemmer på. +

    +

    + Vi har en IRC-kanal på IRCnet kalt #pvv. +

    +

    + Vi har også en Discord-kanal. Denne kanalen er satt opp slik at man i Discord-kanalen ser hva som skrives i IRC-kanalen, og vice versa. For å bli med i Discord-kanalen, klikk her. +

    +

    + Det er også mulig å ta i bruk analog kontakt ved å møte opp på stripa. +

    +
    + diff --git a/www/kurs/index.php b/www/kurs/index.php new file mode 100644 index 0000000..2877b76 --- /dev/null +++ b/www/kurs/index.php @@ -0,0 +1,63 @@ +setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); +$agenda = new \pvv\side\Agenda([ + new \pvv\side\DBActivity($pdo), + ]); +?> + +Kursverkstedet + + + + + + + +
    Kurs­verk­stedet
    + +
    + + +getEventsBetween(new \DateTimeImmutable, (new \DateTimeImmutable)->add(new \DateInterval('P1M'))) as $event) { ?> + +
    +

    + getImageURL()) { ?> + + + getStart())) { ?> + getRelativeDate() ?> + getStart())) { ?> + getName() ?> +

    + + + getDescription(); ?> + + ") ?> +
    + + 4) {$limit = 4;} else $limit = 2; ?> + + +
    + + diff --git a/www/nerdepitsa/index.php b/www/nerdepitsa/index.php index e968496..fe9c073 100755 --- a/www/nerdepitsa/index.php +++ b/www/nerdepitsa/index.php @@ -9,6 +9,7 @@ use \pvv\side\Agenda; +
    Sosial­verk­stedet
    diff --git a/www/om/index.html b/www/om/index.html new file mode 100644 index 0000000..95de363 --- /dev/null +++ b/www/om/index.html @@ -0,0 +1,67 @@ + + + +Programvareverkstedet + + + + + + + +
    Programvareverkstedet
    + +
    + +
    +

    Om Programvareverkstedet

    + +

    Beskrivelse av PVV her

    +
    + +
    +

    Hva betyr det å være et medlem av PVV?

    + +

    Alle medlemmer av PVV får brukerkonto på PVV sine maskiner, epostadresse (brukernavn@pvv.ntnu.no og brukernavn@pvv.org) og 757 MB diskplass, som blant annet kan brukes til hjemmesider. Dersom du går tom for diskplass er det mulig å kjøpe utvidet diskkvote. For å aktivere brukerkonto på PVV, må man møte opp på lokalene slik at man får satt passord. + +

    I tillegg får man tilgang til PVVs to oppholdsrom, rom 226 og 229 i Sentralbygg 2 (se kart over andre etasje i SBII). På rom 229 er det seks arbeidsstasjoner som kjører Linux, macOS, FreeBSD, samt bordplass, nettverksuttak og egen Wifi AP for laptoper. På rom 226 er det sofakrok med TV og diverse spillkonsoller. + +

    Dersom du ønsker å lære Unix er det god anledning til det på PVV. Vi har et sterkt faglig miljø, med mange svært kunnskapsrike personer, som stort sett ikke har noe imot å hjelpe nybegynnere. Man kan få større privilegier her enn på stud-maskinene, for eksempel gjennom å bli med i PVV-drift. + +

    PVV har gratis kaffe for medlemmer. Vi organiserer kurs og andre arrangementer. De aller fleste arrangementene er gratis. + +

    PVV har også ei relativt innholdsrik boksamling til disposisjon for medlemmene, samt ei bokhylle full av blad og tegneserier. (For tiden abonnerer vi på Lunch tegneserie). Vi har i tillegg et romslig bokbudsjett, så dersom du har forslag til bøker/blad vi burde kjøpe inn er det bare å sende en mail til styret (pvv@pvv.ntnu.no). Ta en titt på hva som står i bokhyllen. + +

    PVV har også en del brettspill du kan prøve. +

    + +
    +

    Hvordan bli medlem

    + +

    Første steg for å bli medlem i PVV er å betale medlemskontingent. + +

    Medlemskontingenten er kr 50,00 per år. Det er også mulig å bli livstidsmedlem ved å betale kr 1024,00 én gang. Kontingent betales til konto 8601.11.16916. Betalingen Må merkes med NTNU brukernavn. + +

    Det er mulig å betale for flere år samtidig ved å betale et helt multiplum av kr 50. + +

    Kontingentinnbetalinger blir registrert i medlemsdatabasen, og det er lurt å sjekke at betalingen din dukker opp her (merk at det kan ta litt tid fra du betaler til kasserer får beskjed om det, og deretter litt tid før kasserer fører betalingen inn i regnskap og medlemsdatabase). + +

    + Registrer deg som bruker +

    + +
    + +
    + + diff --git a/www/paamelding/index.php b/www/paamelding/index.php index fc8e2af..16524e9 100644 --- a/www/paamelding/index.php +++ b/www/paamelding/index.php @@ -45,62 +45,78 @@ if (isset($_SESSION['userdata'])) { // if logged in with feide ?> -PVV registrering - - - + + PVV registrering + + + + + -
    Registrerings­verks­stedet
    + + -
    - -
    -

    Registrer deg som bruker

    - -

    - PVV har for øyeblikket et manuelt system for å legge til nye brukere. - Det koster 50kr året for medlemskap. For mer informasjon, les her. -

    -

    - Vi foretrekker at du kommer inn på besøk på våre lokaler på stripa - for å sette sette opp din PVV bruker. Hvis du vil, kan du også sende oss - en melding fra denne siden med ditt navn, epost og NTNU brukernavn. - For å aktivere din brukerkonto på PVV, må du møte opp på - lokalene våre slik at du kan få satt ditt passord. -

    - - +
    +

    Registrer deg som bruker

    +

    - Du er nå logget in som , - og trenger klart ikke sende melding om å få ny PVV bruker. + PVV har for øyeblikket et manuelt system for å legge til nye brukere. + Vi foretrekker at du kommer inn på besøk på våre lokaler på stripa + for å sette sette opp din PVV bruker. Hvis du vil, kan du også sende oss + en melding fra denne siden med ditt navn, epost og NTNU brukernavn. + For å aktivere din brukerkonto på PVV, må du møte opp på + lokalene våre slik at vi kan få satt et passord.

    - - -

    Meldingen som du nå sender:

    + + +

    + Du er nå logget in som , + og trenger klart ikke sende melding om å få ny PVV bruker. +

    + + +

    Meldingen som du nå sender:

    + + Til:
    + Fra: nettsiden
    + Tittel:
    +
    + +

    +
    + Send! + +

    + Meldingen har blitt sendt! +

    + + + Hent navn og epost fra Feide + + +

    Meldingen du kan sende:

    + + + +

    + Du er logget in som , + du trenger ikke sende melding om ny bruker fordi du helt klart har en. +

    + - Til:
    + Til: drift@pvv.ntnu.no
    Fra: nettsiden
    - Tittel:



    - Send! + Todo: Legg til en "send mail" knapp -

    - Meldingen har blitt sendt! -

    + æ kanj itj lææv uten dæ piær! - - Hent navn og epost fra Feide - - -
    - -
    - - + + diff --git a/www/prosjekt/edit.php b/www/prosjekt/edit.php index 7ce2222..84bfdd2 100644 --- a/www/prosjekt/edit.php +++ b/www/prosjekt/edit.php @@ -46,41 +46,40 @@ if($new == 0){ } ?> - - - - - + + + + + + + -
    Prosjekt­verk­stedet
    + + -
    +
    +

    Nytt prosjekt

    -
    -

    Nytt prosjekt

    +
    +

    Prosjektnavn

    +

    Gi prosjektet ditt et passende navn

    +
    - -

    Prosjektnavn

    -

    Gi prosjektet ditt et passende navn

    -
    +

    Beskrivelse

    +

    Hva går prosjektet ditt ut på?

    +

    Den første linjen blir vist på prosjektkortet, prøv å holde den kort!

    + -

    Beskrivelse

    -

    Hva går prosjektet ditt ut på?

    - + getID() . '" />' ?> - getID() . '" />' ?> +
    +
    -
    -
    - - '; ?> -
    - -
    - -
    - - + '; ?> + + +
    + \ No newline at end of file diff --git a/www/prosjekt/index.php b/www/prosjekt/index.php index 7b18dae..04a360c 100644 --- a/www/prosjekt/index.php +++ b/www/prosjekt/index.php @@ -5,63 +5,62 @@ $translation = ['i dag', 'i morgen', 'denne uka', 'neste uke', 'denne måneden', $projectManager = new \pvv\side\ProjectManager($pdo); $projects = $projectManager->getAll(); ?> + -Prosjektverkstedet - - - - - + + Prosjektverkstedet + + + + + + + + -
    Prosjekt­verk­stedet
    + + -
    - -
    -

    Prosjekter

    - -

    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!

    -
    - Lag prosjekt - Mine prosjekter - -

    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 eget prosjekt!

    - Lag prosjekt - Mine prosjekter - - - -
    - -
    - - +
    +
    +

    getName(); ?>

    +

    getDescription()[0]; ?>

    +
    +

    Organisert av
    getOwner(); ?>

    +
    + + + + diff --git a/www/prosjekt/mine.php b/www/prosjekt/mine.php index cd0818e..817123f 100644 --- a/www/prosjekt/mine.php +++ b/www/prosjekt/mine.php @@ -71,7 +71,7 @@ $projects = array_values(array_filter(

    getID() . '">' . $project->getName() . ''; ?>

    -

    getDescription(); ?>

    +

    getDescription()); ?>