From b422d1a3dc02374a34da7ad91415c0a78ea46f9d Mon Sep 17 00:00:00 2001
From: dedeibel
Date: Sat, 16 Dec 2017 21:13:08 +0100
Subject: Added feature for unlisted conferences
---
configs/conferences/34c3/config.php | 9 +++++++++
configs/conferences/nixcon15/config.php | 9 +++++++++
model/Conference.php | 10 ++++++++++
model/Conferences.php | 2 +-
4 files changed, 29 insertions(+), 1 deletion(-)
diff --git a/configs/conferences/34c3/config.php b/configs/conferences/34c3/config.php
index 3adf206..9f7926c 100644
--- a/configs/conferences/34c3/config.php
+++ b/configs/conferences/34c3/config.php
@@ -28,6 +28,15 @@ $CONFIG['CONFERENCE'] = array(
*/
#'CLOSED' => true,
+ /**
+ * Mit diesem Schalter kann die Veranstaltung von der Startseite und der API
+ * versteckt werden, ist aber dennoch über ihre URL verfügbar.
+ *
+ * Dies ist z.B. nützlich um eine kleinere Streamingseite für Übersetzer
+ * bereit zu stellen. Werte: true|false Default: false
+ */
+ 'UNLISTED' => false,
+
/**
* Titel der Konferenz (kann Leer- und Sonderzeichen enthalten)
* Dieser im Seiten-Header, im
-Tag, in der About-Seite und ggf. ab weiteren Stellen als
diff --git a/configs/conferences/nixcon15/config.php b/configs/conferences/nixcon15/config.php
index 69545f6..8b6b8f1 100644
--- a/configs/conferences/nixcon15/config.php
+++ b/configs/conferences/nixcon15/config.php
@@ -28,6 +28,15 @@ $CONFIG['CONFERENCE'] = array(
*/
//'CLOSED' => false,
+ /**
+ * Mit diesem Schalter kann die Veranstaltung von der Startseite und der API
+ * versteckt werden, ist aber dennoch über ihre URL verfügbar.
+ *
+ * Dies ist z.B. nützlich um eine kleinere Streamingseite für Übersetzer
+ * bereit zu stellen. Werte: true|false Default: false
+ */
+ 'UNLISTED' => false,
+
/**
* Titel der Konferenz (kann Leer- und Sonderzeichen enthalten)
* Dieser im Seiten-Header, im -Tag, in der About-Seite und ggf. ab weiteren Stellen als
diff --git a/model/Conference.php b/model/Conference.php
index 0ce0a55..099e3ce 100644
--- a/model/Conference.php
+++ b/model/Conference.php
@@ -102,6 +102,16 @@ class Conference extends ModelBase
}
}
+ public function isUnlisted() {
+ if ($this->has('CONFERENCE.UNLISTED')) {
+ $unlisted = $this->get('CONFERENCE.UNLISTED');
+ return $unlisted === true;
+ }
+ else {
+ return false;
+ }
+ }
+
public function hasAuthor() {
return $this->has('CONFERENCE.AUTHOR');
}
diff --git a/model/Conferences.php b/model/Conferences.php
index 575759e..1e982b4 100644
--- a/model/Conferences.php
+++ b/model/Conferences.php
@@ -35,7 +35,7 @@ class Conferences
return array_values(array_filter(
Conferences::getConferencesSorted(),
function($conference) {
- return !$conference->isClosed();
+ return !$conference->isClosed() && !$conference->isUnlisted();
}
));
}
--
cgit v1.2.3