13 Commits

19 changed files with 5634 additions and 8258 deletions

View File

@@ -8,7 +8,6 @@
<link rel="stylesheet" href="/procentric/application/css/owlcarousel/owl.carousel.min.css">
<link rel="stylesheet" href="/procentric/application/css/owlcarousel/owl.theme.default.min.css">
<link rel="stylesheet" href="/procentric/application/css/acmeticker/style.css">
<link rel="stylesheet" href="/procentric/application/css/lightslider.css">
<title>CENTIRM LG-PROCENTRIC HOTEL SERVICE</title>
</head>
@@ -182,177 +181,101 @@
<div class="owl-carousel owl-theme" id="lst_hotkey_mm_blue"></div>
</div>
<div class="amenity">
<div class="bg">
<div class="owl-carousel owl-theme" id="lst_ctgbg"></div>
</div>
<div class="slider">
<div class="owl-carousel owl-theme" id="lst_ctgsel"></div>
</div>
<div class="cart">
<div>
<div class="menu">
<div>
<div id="title"></div>
<div id="usage"></div>
<div id="items">
<table class="tbl_header">
<tbody id="hdr">
<tr>
<th id="type"></th>
<th id="quantity"></th>
</tr>
</tbody>
</table>
<table class="tbl_record">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="value"></div>
<div id="quantity"></div>
</div>
<div id="buttons">
<div id="order"></div>
<div id="details"></div>
<div id="cancel"></div>
</div>
</div>
<div class="description">
<div id="title"></div>
<div id="comment"></div>
<div id="control">
<div id="thumb"></div>
</div>
<div class="cart-list">
<div id="title"></div>
<div id="usage"></div>
<div id="items">
<table class="tbl_header">
<tbody id="hdr">
<tr>
<th id="type"></th>
<th id="quantity"></th>
<th id="amount"></th>
</tr>
</tbody>
</table>
<table class="tbl_record">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="quantity"></div>
<div id="amount"></div>
</div>
<div id="notice"></div>
<div id="buttons">
<div>
<div id="confirm"></div>
<div id="quantity"></div>
<div>
<div id="icon_up"></div>
<div id="number"></div>
<div id="icon_down"></div>
</div>
</div>
<div>
<div id="cancel"></div>
</div>
</div>
</div>
<div class="order-details">
<div id="title"></div>
<div id="usage"></div>
<div id="orders">
<table class="order_list">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="quantity"></div>
<div id="amount"></div>
<div id="total"></div>
</div>
</div>
<div class="alert">
<div id="order-complete">
<div id="description">
<div id="name"></div>
<div id="details"></div>
</div>
</div>
</div>
<div class="items">
<div id="title"></div>
<div id="message"></div>
<div id="table"></div>
<div id="amount">
<div id="total"></div>
<div id="value"></div>
</div>
</div>
</div>
</div>
<div class="order">
<div class="winleft"></div>
</div>
<div class="use_guide"></div>
</div>
<div class="roomservice">
<div class="bg">
<div class="owl-carousel owl-theme" id="lst_ctgbg"></div>
</div>
<div class="slider">
<div class="owl-carousel owl-theme" id="lst_ctgsel"></div>
</div>
<div class="cart">
<div>
<div class="menu">
<div>
<div id="title"></div>
<div id="usage"></div>
<div id="items">
<table class="tbl_header">
<tbody id="hdr">
<tr>
<th id="type"></th>
<th id="quantity"></th>
</tr>
</tbody>
</table>
<table class="tbl_record">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="value"></div>
<div id="quantity"></div>
</div>
<div id="buttons">
<div id="order"></div>
<div id="details"></div>
<div id="cancel"></div>
</div>
</div>
<div class="description">
<div id="title"></div>
<div id="comment"></div>
<div id="control">
<div id="thumb"></div>
</div>
<div class="cart-list">
<div id="title"></div>
<div id="usage"></div>
<div id="items">
<table class="tbl_header">
<tbody id="hdr">
<tr>
<th id="type"></th>
<th id="quantity"></th>
<th id="amount"></th>
</tr>
</tbody>
</table>
<table class="tbl_record">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="quantity"></div>
<div id="amount"></div>
</div>
<div id="notice"></div>
<div id="buttons">
<div>
<div id="confirm"></div>
<div id="quantity"></div>
<div>
<div id="icon_up"></div>
<div id="number"></div>
<div id="icon_down"></div>
</div>
</div>
<div>
<div id="cancel"></div>
</div>
</div>
</div>
<div class="order-details">
<div id="title"></div>
<div id="usage"></div>
<div id="orders">
<table class="order_list">
<tbody id="record"></tbody>
</table>
</div>
<div id="summary">
<div id="title"></div>
<div id="quantity"></div>
<div id="amount"></div>
<div id="total"></div>
</div>
</div>
<div class="alert">
<div id="order-complete">
<div id="description">
<div id="name"></div>
<div id="details"></div>
</div>
</div>
</div>
<div class="items">
<div id="title"></div>
<div id="message"></div>
<div id="table"></div>
<div id="amount">
<div id="total"></div>
<div id="value"></div>
</div>
</div>
</div>
</div>
<div class="order">
<div class="winleft"></div>
</div>
<div class="use_guide"></div>
</div>
<div class="mypage">
<div class="message">
<div id="hotel_logo"></div>
@@ -417,8 +340,7 @@
<script src="/procentric/application/lib/jquery.color-2.1.2.min.js"></script>
<script src="/procentric/application/lib/jquery.webticker.min.js"></script>
<script src="/procentric/application/lib/xml2json.js"></script>
<script src="/procentric/application/lib/owl.carousel.js"></script>
<script src="/procentric/application/lib/lightslider.js"></script>
<script src="/procentric/application/lib/owl.carousel.min.js"></script>
<!-- LG HCAP Library -->
<script src="/procentric/application/lib/hcap.js"></script>
@@ -483,7 +405,9 @@
switch (e.keyCode) {
case 602: // Portail
if ( HotelTV.dbginfo['en'] == true ) {
window.location.replace('./index.html');
}
break;
case 409:
HotelTV.hcap.PwrOff();

View File

@@ -1,392 +0,0 @@
/*! lightslider - v1.1.3 - 2015-04-14
* https://github.com/sachinchoolur/lightslider
* Copyright (c) 2015 Sachin N; Licensed MIT */
/** /!!! core css Should not edit !!!/**/
.lSSlideOuter {
overflow: hidden;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none
}
.lightSlider:before, .lightSlider:after {
content: " ";
display: table;
}
.lightSlider {
overflow: hidden;
margin: 0;
}
.lSSlideWrapper {
max-width: 100%;
overflow: hidden;
position: relative;
}
.lSSlideWrapper > .lightSlider:after {
clear: both;
}
.lSSlideWrapper .lSSlide {
-webkit-transform: translate(0px, 0px);
-ms-transform: translate(0px, 0px);
transform: translate(0px, 0px);
-webkit-transition: all 1s;
-webkit-transition-property: -webkit-transform,height;
-moz-transition-property: -moz-transform,height;
transition-property: transform,height;
-webkit-transition-duration: inherit !important;
transition-duration: inherit !important;
-webkit-transition-timing-function: inherit !important;
transition-timing-function: inherit !important;
}
.lSSlideWrapper .lSFade {
position: relative;
}
.lSSlideWrapper .lSFade > * {
position: absolute !important;
top: 0;
left: 0;
z-index: 9;
margin-right: 0;
width: 100%;
}
.lSSlideWrapper.usingCss .lSFade > * {
opacity: 0;
-webkit-transition-delay: 0s;
transition-delay: 0s;
-webkit-transition-duration: inherit !important;
transition-duration: inherit !important;
-webkit-transition-property: opacity;
transition-property: opacity;
-webkit-transition-timing-function: inherit !important;
transition-timing-function: inherit !important;
}
.lSSlideWrapper .lSFade > *.active {
z-index: 10;
}
.lSSlideWrapper.usingCss .lSFade > *.active {
opacity: 1;
}
/** /!!! End of core css Should not edit !!!/**/
/* Pager */
.lSSlideOuter .lSPager.lSpg {
margin: 10px 0 0;
padding: 0;
text-align: center;
}
.lSSlideOuter .lSPager.lSpg > li {
cursor: pointer;
display: inline-block;
padding: 0 5px;
}
.lSSlideOuter .lSPager.lSpg > li a {
background-color: #222222;
border-radius: 30px;
display: inline-block;
height: 8px;
overflow: hidden;
text-indent: -999em;
width: 8px;
position: relative;
z-index: 99;
-webkit-transition: all 0.5s linear 0s;
transition: all 0.5s linear 0s;
}
.lSSlideOuter .lSPager.lSpg > li:hover a, .lSSlideOuter .lSPager.lSpg > li.active a {
background-color: #428bca;
}
.lSSlideOuter .media {
opacity: 0.8;
}
.lSSlideOuter .media.active {
opacity: 1;
}
/* End of pager */
/** Gallery */
.lSSlideOuter .lSPager.lSGallery {
list-style: none outside none;
padding-left: 0;
margin: 0;
overflow: hidden;
transform: translate3d(0px, 0px, 0px);
-moz-transform: translate3d(0px, 0px, 0px);
-ms-transform: translate3d(0px, 0px, 0px);
-webkit-transform: translate3d(0px, 0px, 0px);
-o-transform: translate3d(0px, 0px, 0px);
-webkit-transition-property: -webkit-transform;
-moz-transition-property: -moz-transform;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
.lSSlideOuter .lSPager.lSGallery li {
overflow: hidden;
-webkit-transition: border-radius 0.12s linear 0s 0.35s linear 0s;
transition: border-radius 0.12s linear 0s 0.35s linear 0s;
}
.lSSlideOuter .lSPager.lSGallery li.active, .lSSlideOuter .lSPager.lSGallery li:hover {
border-radius: 5px;
}
.lSSlideOuter .lSPager.lSGallery img {
display: block;
height: auto;
max-width: 100%;
}
.lSSlideOuter .lSPager.lSGallery:before, .lSSlideOuter .lSPager.lSGallery:after {
content: " ";
display: table;
}
.lSSlideOuter .lSPager.lSGallery:after {
clear: both;
}
/* End of Gallery*/
/* slider actions */
.lSAction > a {
width: 32px;
display: block;
top: 50%;
height: 32px;
background-image: url('../img/controls.png');
cursor: pointer;
position: absolute;
z-index: 99;
margin-top: -16px;
opacity: 0.5;
-webkit-transition: opacity 0.35s linear 0s;
transition: opacity 0.35s linear 0s;
}
.lSAction > a:hover {
opacity: 1;
}
.lSAction > .lSPrev {
background-position: 0 0;
left: 10px;
}
.lSAction > .lSNext {
background-position: -32px 0;
right: 10px;
}
.lSAction > a.disabled {
pointer-events: none;
}
.cS-hidden {
height: 1px;
opacity: 0;
filter: alpha(opacity=0);
overflow: hidden;
}
/* vertical */
.lSSlideOuter.vertical {
position: relative;
}
.lSSlideOuter.vertical.noPager {
padding-right: 0px !important;
}
.lSSlideOuter.vertical .lSGallery {
position: absolute !important;
right: 0;
top: 0;
}
.lSSlideOuter.vertical .lightSlider > * {
width: 100% !important;
max-width: none !important;
}
/* vertical controlls */
.lSSlideOuter.vertical .lSAction > a {
left: 50%;
margin-left: -14px;
margin-top: 0;
}
.lSSlideOuter.vertical .lSAction > .lSNext {
background-position: 31px -31px;
bottom: 10px;
top: auto;
}
.lSSlideOuter.vertical .lSAction > .lSPrev {
background-position: 0 -31px;
bottom: auto;
top: 10px;
}
/* vertical */
/* Rtl */
.lSSlideOuter.lSrtl {
direction: rtl;
}
.lSSlideOuter .lightSlider, .lSSlideOuter .lSPager {
padding-left: 0;
list-style: none outside none;
}
.lSSlideOuter.lSrtl .lightSlider, .lSSlideOuter.lSrtl .lSPager {
padding-right: 0;
}
.lSSlideOuter .lightSlider > *, .lSSlideOuter .lSGallery li {
float: left;
}
.lSSlideOuter.lSrtl .lightSlider > *, .lSSlideOuter.lSrtl .lSGallery li {
float: right !important;
}
/* Rtl */
@-webkit-keyframes rightEnd {
0% {
left: 0;
}
50% {
left: -15px;
}
100% {
left: 0;
}
}
@keyframes rightEnd {
0% {
left: 0;
}
50% {
left: -15px;
}
100% {
left: 0;
}
}
@-webkit-keyframes topEnd {
0% {
top: 0;
}
50% {
top: -15px;
}
100% {
top: 0;
}
}
@keyframes topEnd {
0% {
top: 0;
}
50% {
top: -15px;
}
100% {
top: 0;
}
}
@-webkit-keyframes leftEnd {
0% {
left: 0;
}
50% {
left: 15px;
}
100% {
left: 0;
}
}
@keyframes leftEnd {
0% {
left: 0;
}
50% {
left: 15px;
}
100% {
left: 0;
}
}
@-webkit-keyframes bottomEnd {
0% {
bottom: 0;
}
50% {
bottom: -15px;
}
100% {
bottom: 0;
}
}
@keyframes bottomEnd {
0% {
bottom: 0;
}
50% {
bottom: -15px;
}
100% {
bottom: 0;
}
}
.lSSlideOuter .rightEnd {
-webkit-animation: rightEnd 0.3s;
animation: rightEnd 0.3s;
position: relative;
}
.lSSlideOuter .leftEnd {
-webkit-animation: leftEnd 0.3s;
animation: leftEnd 0.3s;
position: relative;
}
.lSSlideOuter.vertical .rightEnd {
-webkit-animation: topEnd 0.3s;
animation: topEnd 0.3s;
position: relative;
}
.lSSlideOuter.vertical .leftEnd {
-webkit-animation: bottomEnd 0.3s;
animation: bottomEnd 0.3s;
position: relative;
}
.lSSlideOuter.lSrtl .rightEnd {
-webkit-animation: leftEnd 0.3s;
animation: leftEnd 0.3s;
position: relative;
}
.lSSlideOuter.lSrtl .leftEnd {
-webkit-animation: rightEnd 0.3s;
animation: rightEnd 0.3s;
position: relative;
}
/*/ GRab cursor */
.lightSlider.lsGrab > * {
cursor: -webkit-grab;
cursor: -moz-grab;
cursor: -o-grab;
cursor: -ms-grab;
cursor: grab;
}
.lightSlider.lsGrabbing > * {
cursor: move;
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: -o-grabbing;
cursor: -ms-grabbing;
cursor: grabbing;
}

View File

@@ -14,9 +14,7 @@
<body>
<!-- Preparing Service Screen Layout -->
<div class="startup">
</div>
<div class="startup"></div>
<div class="error">
<div id="details">

View File

@@ -82,6 +82,7 @@ HotelTV.api = (function() {
*/
function __apifxn_get_api_url(api_type) {
var dic_api_url = {
/* Setting & Contents */
"get_translation": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/translation",
"get_device_settings": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/setting",
"get_site_info": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/info",
@@ -95,13 +96,18 @@ HotelTV.api = (function() {
"get_services": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/services",
"get_news": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/news",
"get_message": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/messages",
/* Requests */
/* Amenity&Room Service: get/request/sotck */
"get_ctz_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amentity",
"get_stock_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/stock",
"get_carts_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/carts",
"put_carts_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/carts",
"update_carts_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/carts",
"delete_carts_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/carts",
"get_order_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/orders",
"put_order_amenity": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/amenity/orders",
"get_ctz_roomservice": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/roomService",
"get_stock_roomservice": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/roomService/stock",
"get_carts_roomservice": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/roomService/carts",
"put_carts_roomservice": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/roomService/carts",
"update_carts_roomservice": __apifxn_get_base_url() + "/api/" + _api_ver + "/assets/" + _dev_familly + "/" + _serial_num + "/requests/roomService/carts",
@@ -115,7 +121,6 @@ HotelTV.api = (function() {
/*
"get_emergency": __apifxn_get_base_url() + "/api/" + _api_ver + "/settops/" + _serial_num + "/emergency",
"set_message_status": __apifxn_get_base_url() + "/api/" + _api_ver + "/settops/" + _serial_num + "/messages",
"set_device_opmode": __apifxn_get_base_url() + "/api/" + _api_ver + "/settops/" + _serial_num + "/bbdoors/opmode",
*/
}
@@ -143,7 +148,7 @@ HotelTV.api = (function() {
}
xhr.onload = function() {
if (xhr.status === 200 || xhr.status === 201) {
if (xhr.status === 200 || xhr.status === 201 || xhr.status === 204) {
_ret.error = false;
_ret.data = xhr.response;
resolve(_ret);
@@ -330,6 +335,32 @@ HotelTV.api = (function() {
});
},
GetAmenityCtz: function() {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("get_ctz_amenity");
__apifxn_CallCmsApi("GET", sz_api_url, "GetAmenityCtz", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
});
});
},
GetRoomServiceCtz: function() {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("get_ctz_roomservice");
__apifxn_CallCmsApi("GET", sz_api_url, "GetRoomServiceCtz", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
});
});
},
GetWeather: function() {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("get_weather");
@@ -438,9 +469,33 @@ HotelTV.api = (function() {
});
},
/**
* HotelTV API ::> get amenity stock info
* @param {string} _item_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetAmenityStocks: function(_item_id, _quantity) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("get_stock_amenity")+ "/" + _item_id + "?quantity=" + _quantity;
__apifxn_CallCmsApi("GET", sz_api_url, "GetAmenityStocks", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
});
});
},
/**
* HotelTV API ::> get amenity carts info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetAmenityCarts: function(_item_id) {
return new Promise((resolve, reject) => {
@@ -457,7 +512,11 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> put amenity carts info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
PutAmenityCarts: function(_item_id, _quantity) {
return new Promise((resolve, reject) => {
@@ -474,7 +533,11 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> update amenity carts info
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
UpdateAmenityCarts: function(_cart_id, _quantity) {
return new Promise((resolve, reject) => {
@@ -491,14 +554,17 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> delete amenity carts info
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @returns
* null: 성공하면 리턴값 없음.
* {dictionary}
*/
DeleteAmenityCarts: function(_cart_id) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("delete_carts_amenity");
__apifxn_CallCmsApi("DELETE", `${sz_api_url}/${_cart_id}`, "DeleteAmenityCarts", null).then(_result => {
__apifxn_CallCmsApi("DELETE",_cart_id==null ? `${sz_api_url}` : `${sz_api_url}/${_cart_id}`, "DeleteAmenityCarts", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
resolve();
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
@@ -508,7 +574,10 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> get amenity order info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetAmenityOrders: function(_item_id) {
return new Promise((resolve, reject) => {
@@ -524,12 +593,36 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> order amenity
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @returns
* null: if _cart_id isn't null it will return specified info with _cart_id
* {dictionary}
*/
PutAmenityOrders: function(_cart_item) {
PutAmenityOrders: function(_cart_id) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("put_order_amenity");
__apifxn_CallCmsApi("POST", `${sz_api_url}`, "PutAmenityOrders", _cart_item).then(_result => {
__apifxn_CallCmsApi("POST", `${sz_api_url}`, "PutAmenityOrders", _cart_id).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
});
});
},
/**
* HotelTV API ::> get roomservice stock info
* @param {string} _item_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetRoomserviceStocks: function(_item_id, _quantity) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("get_stock_roomservice")+ "/" + _item_id + "?quantity=" + _quantity;
__apifxn_CallCmsApi("GET", sz_api_url, "GetRoomserviceStocks", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
@@ -541,7 +634,10 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> get room service carts info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetRoomserviceCarts: function(_item_id) {
return new Promise((resolve, reject) => {
@@ -558,7 +654,11 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> put room service carts info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
PutRoomserviceCarts: function(_item_id, _quantity) {
return new Promise((resolve, reject) => {
@@ -575,7 +675,11 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> update room service carts info
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @param {number} _quantity
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
UpdateRoomserviceCarts: function(_cart_id, _quantity) {
return new Promise((resolve, reject) => {
@@ -592,14 +696,17 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> delete room service carts info
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @returns
* null: if _cart_id isn't null it will return specified info with _cart_id
* {dictionary}
*/
DeleteRoomserviceCarts: function(_cart_id) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("delete_carts_roomservice");
__apifxn_CallCmsApi("DELETE", `${sz_api_url}/${_cart_id}`, "DeleteRoomserviceCarts", null).then(_result => {
__apifxn_CallCmsApi("DELETE", _cart_id==null ? `${sz_api_url}` : `${sz_api_url}/${_cart_id}`, "DeleteRoomserviceCarts", null).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
resolve();
}).catch(_error => {
console.error(`Failure::>${_error.reason}`);
reject(_error.reason);
@@ -609,7 +716,10 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> get room service order info
* @param {dictionary} _item_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _item_id
* @returns
* null: if _item_id isn't null it will return specified info with _item_id
* {dictionary}
*/
GetRoomserviceOrders: function(_item_id) {
return new Promise((resolve, reject) => {
@@ -625,12 +735,15 @@ HotelTV.api = (function() {
/**
* HotelTV API ::> order room service
* @param {dictionary} _cart_id if _item_id isn't null it will return specified info with _item_id
* @param {string} _cart_id
* @returns
* null: if _cart_id isn't null it will return specified info with _cart_id
* {dictionary}
*/
PutRoomserviceOrders: function(_cart_item) {
PutRoomserviceOrders: function(_cart_id) {
return new Promise((resolve, reject) => {
let sz_api_url = __apifxn_get_api_url("put_order_roomservice");
__apifxn_CallCmsApi("POST", `${sz_api_url}`, "PutRoomserviceOrders", _cart_item).then(_result => {
__apifxn_CallCmsApi("POST", `${sz_api_url}`, "PutRoomserviceOrders", _cart_id).then(_result => {
//console.log(`Success::>${_result.data}`);
resolve(JSON.parse(_result.data));
}).catch(_error => {
@@ -640,7 +753,12 @@ HotelTV.api = (function() {
});
},
ReportEvent: function(_arrary_event) {
/**
* 통계데이터 발송 API
* @param {array} _arrary_event
* @param {string} _type : 어메니티&룸서비스의 경우, "indirect" 그외는 null
*/
ReportEvent: function(_arrary_event, _type=null) {
let _json_event = {
"events": [],
};
@@ -649,6 +767,7 @@ HotelTV.api = (function() {
_json_event.events.push({
"power": _arrary_event[_evtidx].power,
"location": _arrary_event[_evtidx].location,
'type': _type,
"timestamp": Date.now()
})
}

View File

@@ -449,6 +449,7 @@ HotelTV.Init = async function() {
//Save to Session
sessionStorage.setItem("dbginfo", JSON.stringify(HotelTV.dbginfo));
sessionStorage.setItem("devinfo", JSON.stringify(HotelTV.devinfo));
sessionStorage.setItem("svrinfo", JSON.stringify(HotelTV.svrinfo));
sessionStorage.setItem("settings", JSON.stringify(HotelTV.settings));
@@ -489,6 +490,7 @@ HotelTV.LoadWelCome = async function() {
//Turn Off HCAP api log
extDisableHcapConsoleLog = true;
HotelTV.dbginfo = await JSON.parse(sessionStorage.getItem("dbginfo"));
HotelTV.devinfo = await JSON.parse(sessionStorage.getItem("devinfo"));
HotelTV.svrinfo = await JSON.parse(sessionStorage.getItem("svrinfo"));
//HotelTV.state = await JSON.parse(sessionStorage.getItem("state"));
@@ -622,6 +624,7 @@ HotelTV.LoadAppFull = async function() {
HotelTV.ui_utils.SetBusy(true);
//STEP#01: Load session info
HotelTV.dbginfo = await JSON.parse(sessionStorage.getItem("dbginfo"));
HotelTV.devinfo = await JSON.parse(sessionStorage.getItem("devinfo"));
HotelTV.svrinfo = await JSON.parse(sessionStorage.getItem("svrinfo"));
HotelTV.services = await JSON.parse(sessionStorage.getItem("services"));

File diff suppressed because it is too large Load Diff

View File

@@ -9,6 +9,42 @@
* Created at : 2020-11-26 02:21:56
* Last modified : 2020-11-26 15:31:40
*/
const gRmtKey = {
left: 37,
right: 39,
up: 38,
down: 40,
enter: 13,
back: 461,
red: 403,
green: 404,
yellow: 405,
blue: 406,
stop: 413,
play: 415,
num0: 48,
num1: 49,
num2: 50,
num3: 51,
num4: 52,
num5: 53,
num6: 54,
num7: 55,
num8: 56,
num9: 57,
chup: 427,
chdown: 428,
chprev: 711,
/** ENNPLE SPECIAL KEY */
amenity: -2072433963,
roomservice: -2072437788,
flight: -2072437533,
weather: -2072438298,
tv: -2072443143,
}
HotelTV.namespace('HotelTV.ui_welcome');
HotelTV.ui_welcome = (function() {
@@ -287,11 +323,13 @@ HotelTV.ui_welcome = (function() {
$(document).on('keydown', function(_evt) { //attach event listener
console.log("LANGSEL KEY EVENT::> " + _evt.keyCode);
if (_state.menu.stage.cur == "langSel") {
if (_evt.keyCode == 37) {
if (_evt.keyCode == gRmtKey.left) {
$('#lst_langsel').trigger('prev.owl')
} else if (_evt.keyCode == 39) {
} else if (_evt.keyCode == gRmtKey.right) {
$('#lst_langsel').trigger('next.owl')
} else if (_evt.keyCode == 13) {
} else if (_evt.keyCode == gRmtKey.enter) {
_state.menu.stage.cur = "preparingWelcomeCtz";
let found_dev_locale = false;
// SET PLATFORM LANGUAGE
// HotelTV.hcap.SetPlatformLanguage(_state.lang);
@@ -318,7 +356,7 @@ HotelTV.ui_welcome = (function() {
/** Play slide shows */
} else if (_ctzWc.intro == 'video') {
HotelTV.ui_utils.SetBusy(true);
/** Play movie clip */
HotelTV.hcap.MediaPlay(
_ctzWc.videos[_state.lang].download,
@@ -326,6 +364,7 @@ HotelTV.ui_welcome = (function() {
"video/mp4",
1,
() => {
HotelTV.ui_utils.SetBusy(false);
console.log("STARTUP Done CB.");
//Shows up skip button
let _elmnt_btn_skip = $(".control .skip_video");
@@ -336,6 +375,7 @@ HotelTV.ui_welcome = (function() {
},
() => {
console.log("STARTUP Fail CB.");
HotelTV.ui_utils.SetBusy(false);
HotelTV.UnloadWelCome();
}
);

File diff suppressed because it is too large Load Diff

View File

@@ -1,2 +0,0 @@
Array.prototype.forEach||(Array.prototype.forEach=function(e,t){for(var n=this.length>>>0,r=0;r<n;r++)r in this&&e.call(t,this[r],r,this)}),Array.prototype.map||(Array.prototype.map=function(e){var t=this.length>>>0;if("function"!=typeof e)throw new TypeError;for(var n=new Array(t),r=arguments[1],o=0;o<t;o++)o in this&&(n[o]=e.call(r,this[o],o,this));return n}),Array.prototype.indexOf||(Array.prototype.indexOf=function(e){var t=this.length;if(!t)return-1;var n=arguments[1]||0;if(t<=n)return-1;for(n<0&&(n+=t);n<t;n++)if(Object.prototype.hasOwnProperty.call(this,n)&&e===this[n])return n;return-1}),function(){if(!Element.prototype.addEventListener){var p=[],e=function(e,t){var n=this,r=function(e){e.target=e.srcElement,e.currentTarget=n,void 0!==t.handleEvent?t.handleEvent(e):t.call(n,e)};if("DOMContentLoaded"==e){var o=function(e){"complete"==document.readyState&&r(e)};if(document.attachEvent("onreadystatechange",o),p.push({object:this,type:e,listener:t,wrapper:o}),"complete"==document.readyState){var i=new Event;i.srcElement=window,o(i)}}else this.attachEvent("on"+e,r),p.push({object:this,type:e,listener:t,wrapper:r})},t=function(e,t){for(var n=0;n<p.length;){var r=p[n];if(r.object==this&&r.type==e&&r.listener==t){"DOMContentLoaded"==e?this.detachEvent("onreadystatechange",r.wrapper):this.detachEvent("on"+e,r.wrapper),p.splice(n,1);break}++n}};Element.prototype.addEventListener=e,Element.prototype.removeEventListener=t,HTMLDocument&&(HTMLDocument.prototype.addEventListener=e,HTMLDocument.prototype.removeEventListener=t),Window&&(Window.prototype.addEventListener=e,Window.prototype.removeEventListener=t)}}(),"firstElementChild"in document.documentElement||Object.defineProperty(Element.prototype,"firstElementChild",{get:function(){for(var e,t=this.children,n=0,r=t.length;n<r;++n)if(1===(e=t[n]).nodeType)return e;return null}}),"previousElementSibling"in document.documentElement||Object.defineProperty(Element.prototype,"previousElementSibling",{get:function(){for(var e=this.previousSibling;e&&1!==e.nodeType;)e=e.previousSibling;return e}}),"nextElementSibling"in document.documentElement||Object.defineProperty(Element.prototype,"nextElementSibling",{get:function(){for(var e=this.nextSibling;e&&1!==e.nodeType;)e=e.nextSibling;return e}}),window.getComputedStyle||(window.getComputedStyle=function(e){if(!e)return null;var t=e.currentStyle,n=e.getBoundingClientRect(),r=document.createElement("div").style;for(var o in t)r[o]=t[o];return r.cssFloat=r.styleFloat,"auto"===r.width&&(r.width=n.right-n.left+"px"),"auto"===r.height&&(r.height=n.bottom-n.top+"px"),r});
//# sourceMappingURL=../sourcemaps/tiny-slider.helper.ie8.js.map

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -13,19 +13,6 @@ body {
z-index: 1;
}
.startup {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
padding: 0px;
/* background-image: url(./images/hoteltv_service_preparing.png); */
background-image: url(./images/hoteltv_service_preparing_joson.jpg);
background-size: cover;
background-repeat: no-repeat;
}
.welcome .frame {
position: absolute;
top: 0px;

View File

@@ -13,19 +13,6 @@ body {
z-index: 1;
}
.startup {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
padding: 0px;
/* background-image: url(./images/hoteltv_service_preparing.png); */
background-image: url(./images/hoteltv_service_preparing_joson.jpg);
background-size: cover;
background-repeat: no-repeat;
}
.welcome .frame {
position: absolute;
top: 0px;

View File

@@ -13,19 +13,6 @@ body {
z-index: 1;
}
.startup {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
padding: 0px;
/* background-image: url(./images/hoteltv_service_preparing.png); */
background-image: url(./images/hoteltv_service_preparing_joson.jpg);
background-size: cover;
background-repeat: no-repeat;
}
.welcome .frame {
position: absolute;
top: 0px;

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

View File

@@ -1,3 +1,16 @@
.startup {
top: 0px;
left: 0px;
position: absolute;
width: 100%;
height: 100%;
padding: 0px;
/* background-image: url(./images/hoteltv_service_preparing.png); */
background-image: url(/procentric/application/images/hoteltv_service_preparing_joson.jpg);
background-size: cover;
background-repeat: no-repeat;
}
.busy-frame {
position: absolute;
z-index: 10001;

View File

@@ -106,7 +106,9 @@
function(e) {
switch (e.keyCode) {
case 602: // Portail
if ( HotelTV.dbginfo['en'] == true ) {
window.location.replace('./index.html');
}
break;
default:
console.log("Key Code:" + e.keyCode)