diff options
Diffstat (limited to 'modules-available/locationinfo/templates/frontend-default.html')
-rwxr-xr-x | modules-available/locationinfo/templates/frontend-default.html | 84 |
1 files changed, 33 insertions, 51 deletions
diff --git a/modules-available/locationinfo/templates/frontend-default.html b/modules-available/locationinfo/templates/frontend-default.html index fc9c3eac..4147e4e2 100755 --- a/modules-available/locationinfo/templates/frontend-default.html +++ b/modules-available/locationinfo/templates/frontend-default.html @@ -29,7 +29,7 @@ optional: <link rel='stylesheet' type='text/css' href='{{dirprefix}}modules/js_jqueryui/style.css'/> <link rel='stylesheet' type='text/css' href='{{dirprefix}}modules/js_weekcalendar/style.css'/> - <style type='text/css'> + <style type="text/css"> body { margin: 0; @@ -237,17 +237,12 @@ optional: background: #000; } - .OFF .screen-inner { + .OFFLINE .screen-inner { background: #332; } - /* - .OFF .screen-inner:after { - content: "\01F4A4"; - } - */ - - .IDLE .screen-inner { + .IDLE .screen-inner, + .STANDBY .screen-inner { background: #250; } @@ -390,6 +385,10 @@ optional: })(); $(document).ready(function () { + if (!SetUpDate) { + fatalError("js_weekcalendar not loaded"); + return; + } applyConfig({{{config}}}); }); @@ -429,13 +428,13 @@ optional: var time = false; var p = result.time.split('-'); if (p.length === 6) { - time = new Date(p[0], p[1], p[2], p[3], p[4], p[5]); + time = new Date(p[0], (p[1] - 1), p[2], p[3], p[4], p[5]); console.log(time); } - if (time === false || isNaN(time.getTime()) || time.getYear() < 2010) { + if (time === false || isNaN(time.getTime()) || time.getFullYear() < 2010) { time = new Date(result.time); } - if (isNaN(time.getTime()) || time.getYear() < 2010) { + if (isNaN(time.getTime()) || time.getFullYear() < 2010) { time = new Date(); } SetUpDate(time); @@ -1066,8 +1065,10 @@ optional: if (globalConfig.prettytime) { var str = ''; if (hours > 0) { - str += hours + 'muh'; + str += hours + 'h '; } + str += minutes + 'min '; + return str; } if (minutes < 10) { @@ -1351,7 +1352,6 @@ optional: function initRoomLayout(room) { var maxX = false, maxY = false; var minX = false, minY = false; - var xDifference, yDifference; var x, y; generateRoomLayoutDiv((100 - room.config.scale) + "%", room); @@ -1380,15 +1380,12 @@ optional: } } - xDifference = maxX - minX; - yDifference = maxY - minY; - - room.xDifference = xDifference; - room.yDifference = yDifference; room.minX = minX; room.minY = minY; - room.maxX = maxX; - room.maxY = maxY; + room.maxX = maxX + picSizeX; + room.maxY = maxY + picSizeY; + room.xDifference = (room.maxX - room.minX); + room.yDifference = (room.maxY - room.minY); setUpRoom(room, layout); scaleRoom(room); @@ -1401,7 +1398,7 @@ optional: * @param room Room Object */ function generateOffsetAndScale(room) { - var clientHeight; + var clientHeight, clientWidth; if (room.config.vertical && room.config.mode === 1) { clientHeight = room.$.container.height() - (room.$.calendar.position().top + room.$.calendar.height()); @@ -1409,37 +1406,21 @@ optional: clientHeight = room.$.container.height() - (room.$.header.height() + 5); } - var clientWidth = room.$.layout.width(); + clientWidth = room.$.layout.width(); - var scaleX; - if (room.xDifference !== 0) { - scaleX = clientWidth / room.xDifference; - } else { - scaleX = clientWidth; - } - var scaleY; - if (room.yDifference !== 0) { - scaleY = clientHeight / room.yDifference; - } else { - scaleY = clientHeight; + var scaleX = clientWidth / picSizeX, scaleY = clientHeight / picSizeY; + if (room.xDifference > 0) { + scaleX = (clientWidth - 20) / room.xDifference; } - var scaleYs = (clientHeight - (picSizeY * scaleY)) / room.yDifference; - var scaleXs = (clientWidth - (picSizeX * scaleX)) / room.xDifference; - if (scaleYs <= 0) { - scaleYs = 9999; - } - if (scaleXs <= 0) { - scaleXs = 9999; + if (room.yDifference > 0) { + scaleY = (clientHeight - 20) / room.yDifference; } - room.scale = Math.min(scaleYs, scaleY, scaleXs, scaleX, (clientHeight * 0.9) / picSizeY, (clientWidth * 0.9) / picSizeX); - room.xOffset = 0 - room.minX; - room.yOffset = 0 - room.minY; - room.xOffset += ((1 / 2 * (clientWidth - (((room.maxX + room.xOffset) * room.scale) + picSizeX * room.scale))) / room.scale); - room.yOffset += ((1 / 2 * (clientHeight - (((room.maxY + room.yOffset) * room.scale) + picSizeY * room.scale))) / room.scale); + room.scale = Math.min(scaleY, scaleX); + room.xOffset = -room.minX * room.scale + (clientWidth - room.xDifference * room.scale) / 2; + room.yOffset = -room.minY * room.scale + (clientHeight - room.yDifference * room.scale) / 2; } - /** * adds images for each pc to Room Layout * @param room Room Object @@ -1575,11 +1556,11 @@ optional: for (var i = 0; i < update.length; i++) { var $div = $("#pc_" + room.id + "_" + update[i].id); // Pc free - if (update[i].pcState === "IDLE" || update[i].pcState === "OFF") { + if (update[i].pcState === "IDLE" || update[i].pcState === "OFFLINE" || update[i].pcState === "STANDBY") { freePcs++; } - $div.removeClass('BROKEN OFF IDLE OCCUPIED'.replace(update[i].pcState, '')).addClass(update[i].pcState); + $div.removeClass('BROKEN OFFLINE IDLE OCCUPIED STANDBY'.replace(update[i].pcState, '')).addClass(update[i].pcState); } room.freePcs = freePcs; UpdateRoomHeader(room); @@ -1608,6 +1589,7 @@ optional: function scaleRoom(room) { if (!room.$.layout || !room.$.layout.is(':visible')) return; room.resizeRoom = false; + if (!room.layout) return; generateOffsetAndScale(room); room.$.layout.css('font-size', Math.floor(room.scale) + 'pt'); for (var i = 0; i < room.layout.length; i++) { @@ -1617,8 +1599,8 @@ optional: room.layout[i].$div.css({ width: pcWidth, height: pcHeight, - top: ((room.layout[i].y + room.yOffset) * room.scale) + "px", - left: ((room.layout[i].x + room.xOffset) * room.scale) + "px" + top: (room.layout[i].y * room.scale + room.yOffset) + "px", + left: (room.layout[i].x * room.scale + room.xOffset) + "px" }); } } |