Merge branch 'feature-events' into 'develop'
Feature events See merge request !16
This commit is contained in:
@@ -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")
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
<link rel="stylesheet" href="/static/css/events.css">
|
||||
<link href="https://fonts.googleapis.com/css?family=Droid+Sans+Mono" rel="stylesheet">
|
||||
<div class="container" ng-app="myApp" ng-controller="EventController">
|
||||
<div class="header-row row">
|
||||
<div class="col-sm-6">Tapahtuma</div>
|
||||
<div class="col-sm-2">Aika</div>
|
||||
<div class="col-sm-4">Paikka</div>
|
||||
</div>
|
||||
<div class="repeat-item row event" ng-repeat="event in events">
|
||||
<div class="col-sm-6 event-col">{{event.name}}</div>
|
||||
<div class="col-sm-2 event-col">{{event.event_start}}</div>
|
||||
<div class="col-sm-4 event-col">{{event.location}}</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,10 @@
|
||||
<div ng-controller="infoadmin_eventitem_create" style="margin-top:20px;">
|
||||
<div>
|
||||
Create new item to show events Name is used only as identifier
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label>Name:</label>
|
||||
<input type="text" ng-model="item.name"></input>
|
||||
</div>
|
||||
<input type="button" class="btn btn-success" ng-click="send()" value="create"></input>
|
||||
</div>
|
||||
@@ -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(){
|
||||
|
||||
@@ -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) {
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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),
|
||||
|
||||
Reference in New Issue
Block a user