diff --git a/infoscreen/models.py b/infoscreen/models.py
index 8927c6d..95a6c7e 100644
--- a/infoscreen/models.py
+++ b/infoscreen/models.py
@@ -136,6 +136,17 @@ class SossoInfoItem(InfoItem):
def get_create_template_url():
return "/static/html/sosso_create.html"
+class EventInfoItem(InfoItem):
+ display_name = _("Events")
+
+ def get_template_url(self):
+ return "/static/html/events.html"
+
+ @staticmethod
+ def get_create_template_url():
+ return "/static/html/events_create.html"
+
+
class ImageInfoItem(InfoItem):
display_name = _("Image")
diff --git a/infoscreen/static/css/events.css b/infoscreen/static/css/events.css
new file mode 100644
index 0000000..6dc51c7
--- /dev/null
+++ b/infoscreen/static/css/events.css
@@ -0,0 +1,42 @@
+.event {
+ font-size: 5vh;
+ font-family: 'Droid Sans Mono', monospace;
+}
+.event-col{
+ padding-top:1vh;
+ padding-bottom:1vh;
+}.event:nth-child(odd){
+ background-color: #d4e2fd;
+}
+
+.black {
+ color: black;
+}
+.header-row{
+ background: #d4e2fd;
+ font-size: 7vh;
+ font-family: 'Droid Sans Mono', monospace;
+ padding-bottom:20px;
+}
+
+.container {
+ width: 100vw;
+ padding: 0 0 0 0;
+ margin-left: 20px;
+ margin-right: 20px;
+}
+
+.repeat-item.ng-leave {
+ -webkit-transition:0.5s linear all;
+ transition:0.5s linear all;
+}
+
+.repeat-item.ng-leave.ng-leave-active {
+ opacity: 0;
+ font-size: 0vh;
+}
+
+.repeat-item.ng-leave{
+ opacity: 1;
+ font-size: 5vh;
+}
diff --git a/infoscreen/static/html/events.html b/infoscreen/static/html/events.html
new file mode 100644
index 0000000..30f39c6
--- /dev/null
+++ b/infoscreen/static/html/events.html
@@ -0,0 +1,14 @@
+
+
+
+
+
+
{{event.name}}
+
{{event.event_start}}
+
{{event.location}}
+
+
diff --git a/infoscreen/static/html/events_create.html b/infoscreen/static/html/events_create.html
new file mode 100644
index 0000000..d534dcb
--- /dev/null
+++ b/infoscreen/static/html/events_create.html
@@ -0,0 +1,10 @@
+
+
+ Create new item to show events Name is used only as identifier
+
+
+
+
+
+
+
diff --git a/infoscreen/static/js/infoadmin_controllers.js b/infoscreen/static/js/infoadmin_controllers.js
index 9a49e0d..c4b11d6 100644
--- a/infoscreen/static/js/infoadmin_controllers.js
+++ b/infoscreen/static/js/infoadmin_controllers.js
@@ -141,6 +141,13 @@ app.controller('infoadmin_sossoitem_create', function($scope, $http,ItemList){
$http.post("/infoscreen/create_sossoitem", $scope.item).then(ItemList.loadItems)
}
});
+app.controller('infoadmin_eventitem_create', function($scope, $http,ItemList){
+ $scope.item = {}
+ $scope.send = function(){
+ $http.post("/infoscreen/create_eventitem", $scope.item).then(ItemList.loadItems)
+ }
+});
+
app.controller('infoadmin_hslitem_create', function($scope, $http,ItemList){
$scope.item = {}
$scope.send = function(){
diff --git a/infoscreen/static/js/infoscreen_controllers.js b/infoscreen/static/js/infoscreen_controllers.js
index a499fda..98205e0 100644
--- a/infoscreen/static/js/infoscreen_controllers.js
+++ b/infoscreen/static/js/infoscreen_controllers.js
@@ -48,7 +48,7 @@ app.filter('trusted_url', ['$sce', function ($sce) {
app.controller('ABBController', function($scope, $http){
$scope.jobs = [];
var min_date = moment().subtract(30,'days').format("YYYY-MM-DD%20HH:mm:ss");
- var url = "http://sahkoinsinoorikilta.fi/api/news.php";
+ var url = "https://sahkoinsinoorikilta.fi/api/news.php";
var params = "?type=11&lang=fi&title_search=ABB&min_date="+min_date
$http.get(url+params).then(function(response){
$scope.jobs = _.filter(response.data, function(job){
@@ -73,6 +73,26 @@ app.controller('SossoController', function($scope, $http) {
$scope.data = response.data;
})
});
+app.controller('EventController', function($scope, $http) {
+ $scope.data = [];
+ $http.get("https://sik.ayy.fi/api/events.php?limit=10").then(function(response)
+ {
+ $scope.events = response.data;
+ $scope.events = _.each($scope.events, function(ev){
+ var time = moment(ev.event_start);
+ ev.event_start = time;
+ ev.event_start = time.format("ddd DD.MM");
+ // lets not trust locale
+ ev.event_start = ev.event_start.replace("Mon", "Ma");
+ ev.event_start = ev.event_start.replace("Tue", "Ti");
+ ev.event_start = ev.event_start.replace("Wed", "Ke");
+ ev.event_start = ev.event_start.replace("Thu", "To");
+ ev.event_start = ev.event_start.replace("Fri", "Pe");
+ ev.event_start = ev.event_start.replace("Sat", "La");
+ ev.event_start = ev.event_start.replace("Sun", "Su");
+ });
+ })
+});
app.controller('timetableCtrl',
function($scope, $http, $interval) {
diff --git a/infoscreen/views.py b/infoscreen/views.py
index 6f0ab36..ed7108b 100644
--- a/infoscreen/views.py
+++ b/infoscreen/views.py
@@ -7,6 +7,7 @@ from django.contrib.auth.decorators import permission_required
from infoscreen.models import Rotation, InfoItem, InfoInstance
from infoscreen.models import ABBInfoItem, ExternalImageInfoItem, ImageInfoItem, SossoInfoItem, HslInfoItem
+from infoscreen.models import EventInfoItem
from infoscreen.models import ExternalWebsiteInfoItem
from infoscreen.models import ImageUploadForm
from infoscreen.models import HSLDataModel
@@ -215,3 +216,4 @@ createSossoItem = create_item_generator(SossoInfoItem)
createHslItem = create_item_generator(HslInfoItem)
createExternalImageInfoItem = create_item_generator(ExternalImageInfoItem)
createExternalWebsiteItem = create_item_generator(ExternalWebsiteInfoItem)
+createEventItem = create_item_generator(EventInfoItem)
diff --git a/sikweb/urls.py b/sikweb/urls.py
index b8a544a..5af072d 100644
--- a/sikweb/urls.py
+++ b/sikweb/urls.py
@@ -62,6 +62,7 @@ from infoscreen.views import create_image_item
from infoscreen.views import createABBItem
from infoscreen.views import createSossoItem
from infoscreen.views import createHslItem
+from infoscreen.views import createEventItem
from infoscreen.views import createExternalWebsiteItem
from infoscreen.views import create_rotation
from infoscreen.views import delete_rotation
@@ -123,6 +124,7 @@ urlpatterns = [
url(r'^infoscreen/create_image$', create_image_item),
url(r'^infoscreen/create_abbitem$', createABBItem),
url(r'^infoscreen/create_sossoitem$', createSossoItem),
+ url(r'^infoscreen/create_eventitem$', createEventItem),
url(r'^infoscreen/create_hslitem$', createHslItem),
url(r'^infoscreen/create_websiteitem$', createExternalWebsiteItem),
url(r'^infoscreen/admin$', infoscreen_admin),