issue#1 Support error screen. Support notification balloon for neflix service preparing. Going on tune up UI.

This commit is contained in:
Paul Kim
2022-06-08 02:22:39 +09:00
parent 8b0160bfda
commit cf95ff42b0
16 changed files with 628 additions and 250 deletions

View File

@@ -295,6 +295,9 @@
<span id="btn_back"></span>
</div>
</div>
<div class="notification">
<div class="balloon right"><span id="message"></span></div>
</div>
</div>
@@ -313,9 +316,15 @@
<div class="player"></div>
<!-- Error Frame Layout -->
<div class="error"></div>
<div class="error">
<div id="details">
<div id="title"></div>
<div id="message"></div>
</div>
<div id="countdown">
<div id="message"></div>
</div>
</div>
<!-- Busy Animation Area -->
<div class="busy-frame">
@@ -334,27 +343,6 @@
<div></div>
</div>
</div>
<!-- Test -->
<!-- <div class="image-slider">
<ul id="imageGallery">
<li data-thumb="img/thumb/cS-1.jpg" data-src="img/largeImage.jpg">
<img src="/api/v3/downloads/62120b141a3bfd09e3608ba0/name/CTZ-THUMB-만장굴-00.jpg">
</li>
<li data-thumb="img/thumb/cS-2.jpg" data-src="img/largeImage1.jpg">
<img src="/api/v3/downloads/62120b141a3bfd09e3608ba2/name/CTZ-THUMB-만장굴-01.jpg">
</li>
<li data-thumb="img/thumb/cS-2.jpg" data-src="img/largeImage1.jpg">
<img src="/api/v3/downloads/62120b141a3bfd09e3608ba4/name/CTZ-THUMB-만장굴-02.jpg">
</li>
<li data-thumb="img/thumb/cS-2.jpg" data-src="img/largeImage1.jpg">
<img src="/api/v3/downloads/62120b141a3bfd09e3608ba6/name/CTZ-THUMB-만장굴-03.jpg">
</li>
<li data-thumb="img/thumb/cS-2.jpg" data-src="img/largeImage1.jpg">
<img src="/api/v3/downloads/62120b141a3bfd09e3608ba8/name/CTZ-THUMB-만장굴-04.jpg">
</li>
</ul>
</div> -->
</body>
@@ -389,34 +377,7 @@
});
var _aa = null;
window.addEventListener('load', function() {
// _aa = $('.news .hoteltv-news-ticker').AcmeTicker({
// type: 'horizontal',
// /*horizontal/horizontal/Marquee/type*/
// direction: 'right',
// /*up/down/left/right*/
// speed: true,
// waitms: 2000,
// /*true/false/number*/
// /*For vertical/horizontal 600*/
// /*For marquee 0.05*/
// /*For typewriter 50*/
// });
// setTimeout(function() {
// //_aa.isPause = true;
// _aa.restart();
// }, 10000);
// $('#imageGallery').lightSlider({
// item: 1,
// slideMargin: 0,
// mode: 'fade',
// adaptiveHeight: true,
// autoWidth: true,
// auto: true,
// loop: true
// });
console.log("Documents loaded...")
});

View File

@@ -54,7 +54,7 @@
-webkit-backface-visibility: visible;
transition: opacity .2s ease;
border: 2px solid rgb(80, 80, 80);
filter: drop-shadow(0 1px 2px rgb(0, 0, 0));
filter: drop-shadow(0 1px 1px rgb(0, 0, 0));
border-radius: 30px;
}

View File

@@ -26,6 +26,11 @@
align-content: center;
}
.main .ctzgen .bg .owl-dots .owl-dot span {
width: 20px;
height: 20px;
}
.main .ctzgen .bg div#lst_ctzgenbg {
position: absolute;
width: 1920px;
@@ -103,25 +108,32 @@
.main .ctzgen .bg .owl-carousel .owl-item .ctz_desc_frame {
position: absolute;
top: 150px;
left: 40px;
width: 400px;
height: 800px;
top: 130px;
left: 1280px;
width: 620px;
height: 830px;
color: rgb(255, 255, 255);
background-color: rgba(0, 0, 0, 0.5);
padding: 0px 12px 0px 12px;
overflow: hidden;
}
.main .ctzgen .bg .owl-carousel .owl-item .ctz_desc_frame #ctz_title {
position: absolute;
font-size: 60px;
width: 1800px;
font-size: 44px;
line-height: 44px;
height: 100px;
width: 100%;
padding: 10px;
white-space: pre-wrap;
overflow: hidden;
text-overflow: ellipsis;
}
.main .ctzgen .bg .owl-carousel .owl-item .ctz_desc_frame #ctz_thumbnail {
margin: 120px 10px 40px 10px;
height: 220px;
filter: drop-shadow(0 0 10px rgba(0, 0, 0, 1));
/* filter: drop-shadow(0 0 10px rgba(0, 0, 0, 1)); */
/* border: 4px solid rgb(255, 255, 255); */
}
@@ -129,20 +141,21 @@
width: auto;
height: 212px;
overflow: hidden;
border: 2px solid rgb(40, 40, 40);
/* border: 2px solid rgb(40, 40, 40); */
border: 2px solid rgb(160, 160, 160);
}
.main .ctzgen .bg .owl-carousel .owl-item .ctz_desc_frame #ctz_description {
position: absolute;
font-size: 26px;
width: 700px;
width: 100%;
line-height: 26px;
margin: 0 10px 0 10px;
}
.main .ctzgen .bg .owl-carousel .owl-item .ctz_mv_ctrl {
position: absolute;
top: 870px;
top: 970px;
left: 1700px;
height: 54px;
line-height: 54px;

View File

@@ -100,6 +100,17 @@ div#mm_item_icon {
align-content: center;
}
.main .mm .slider .owl-theme .owl-dots .owl-dot span {
width: 20px;
height: 20px;
background: none;
}
.main .mm .slider .owl-theme .owl-dots .owl-dot.active span {
/* background: rgb(181, 218, 16); */
background: rgb(245, 245, 245);
}
/* .main .mm .slider .owl-carousel .owl-item.active.focus div {
transform: scale(1.14);

View File

@@ -473,7 +473,7 @@
.popup .amenity>.items {
/* width: 100%; */
height: 390px;
background-color: rgba(48, 48, 48, 1.0);
/* background-color: rgba(48, 48, 48, 1.0); */
/* overflow-y: auto; */
overflow-y: hidden;
overflow-x: hidden;
@@ -484,11 +484,13 @@
.popup .amenity>.items table {
width: 100%;
border-collapse: collapse;
}
.popup .amenity>.items .table tr {
width: 100%;
height: 130px;
border-bottom: 1px solid rgb(52, 52, 52);
/* background-color: rgb(0, 0, 128); */
}
@@ -586,7 +588,7 @@
}
.popup .amenity>.items .table tr.active {
background-color: rgba(67, 67, 67, 1);
background-color: rgba(48, 48, 48, 1.0);
box-shadow: 0px 0px 30px rgba(0, 0, 0, 1);
}
@@ -658,6 +660,7 @@
.popup .amenity>.order-details>.items table {
width: 100%;
border-collapse: collapse;
}
.popup .amenity>.order-details>.items .table tr {
@@ -740,7 +743,8 @@
}
.popup .amenity>.order-details>.items .table tr.active {
background-color: rgba(67, 67, 67, 1);
/* background-color: rgba(67, 67, 67, 1); */
background-color: rgba(48, 48, 48, 1.0);
box-shadow: 0px 0px 30px rgba(0, 0, 0, 1);
}
@@ -807,7 +811,6 @@
border-color: rgb(96, 96, 96);
vertical-align: top;
/* filter: drop-shadow(0 0 10px rgba(255, 255, 255, 1)); */
background-color: rgba(67, 67, 67, 1);
/* box-shadow: 0px 0px 30px rgba(0, 0, 0, 1); */
}
@@ -839,7 +842,7 @@
.popup .roomservice .menu>.items {
/* width: 100%; */
height: 390px;
background-color: rgba(48, 48, 48, 1.0);
/* background-color: rgba(48, 48, 48, 1.0); */
/* overflow-y: auto; */
overflow-y: hidden;
overflow-x: hidden;
@@ -850,11 +853,13 @@
.popup .roomservice .menu>.items table {
width: 100%;
border-collapse: collapse;
}
.popup .roomservice .menu>.items .table tr {
width: 100%;
height: 106px;
border-bottom: 1px solid rgb(52, 52, 52);
/* background-color: rgb(0, 0, 128); */
}
@@ -882,7 +887,7 @@
height: 70px;
margin: 0px 5px 0px 5px;
display: block;
vertical-align: top;
/* vertical-align: top; */
font-size: 18px;
text-shadow: 2px 2px 4px rgba(0, 0, 0, 1);
/* background-color: rgba(124, 124, 0, 1); */
@@ -929,7 +934,8 @@
}
.popup .roomservice .menu>.items .table tr.active {
background-color: rgba(67, 67, 67, 1);
/* background-color: rgba(67, 67, 67, 1); */
background-color: rgba(48, 48, 48, 1.0);
box-shadow: 0px 0px 30px rgba(0, 0, 0, 1);
}
@@ -1268,3 +1274,71 @@
background-size: contain;
filter: drop-shadow(0 0 5px rgba(0, 0, 0, 1));
}
/* Notification Style */
.popup>.notification {
display: none;
position: absolute;
top: 10%;
left: 73%;
width: 26%;
height: 10%;
}
.popup>.notification>.balloon {
position: relative;
display: inline-block;
}
.popup>.notification>.balloon span {
display: inline-block;
padding: 10px;
color: #fff;
background: #ad1e51;
border-radius: 20px;
font-size: 28px;
}
.popup>.notification>.balloon:after {
content: '';
position: absolute;
width: 0;
height: 0;
border-style: solid;
}
.popup>.notification>.balloon.right:after,
.popup>.notification>.balloon.left:after {
border-width: 10px 15px;
top: 50%;
margin-top: -10px;
}
.popup>.notification>.balloon.top:after,
.popup>.notification>.balloon.bottom:after {
border-width: 15px 10px;
left: 50%;
margin-left: -10px;
}
.popup>.notification>.balloon.top:after {
border-color: #ad1e51 transparent transparent transparent;
bottom: -25px;
}
.popup>.notification>.balloon.bottom:after {
border-color: transparent transparent #ad1e51 transparent;
top: -25px;
}
.popup>.notification>.balloon.left:after {
border-color: transparent #ad1e51 transparent transparent;
left: -25px;
}
.popup>.notification>.balloon.right:after {
border-color: transparent transparent transparent #ad1e51;
right: -25px;
}

View File

@@ -117,22 +117,23 @@ div#sm_item_icon {
align-content: center;
}
.main .sub .slider .owl-dots .owl-dot span {
width: 20px;
height: 20px;
}
.main .sub .slider .owl-dots .owl-dot.active span {
background: rgb(255, 192, 0);
}
.main .sub .bg .bg_ctz_thumb_frame {
position: absolute;
top: 130px;
left: 1550px;
width: 360px;
height: 700px;
height: 734px;
line-height: 50px;
/* background-color: rgba(30, 30, 30, 0.6);
filter: drop-shadow(0 0 12px rgba(0, 0, 0, 0.8));
border-radius: 8px;
border: solid rgb(181, 218, 16);
*/
background-color: rgba(40, 40, 40, 0.6);
filter: drop-shadow(0 0 12px rgba(0, 0, 0, 0.8));
border-radius: 4px;
border: solid rgb(10, 10, 10);
background-color: rgba(0, 0, 0, 0.5);
overflow: hidden;
}
@@ -141,13 +142,13 @@ div#sm_item_icon {
height: 180px;
float: left;
margin: 10px 20px 10px 20px;
filter: drop-shadow(0 0 10px rgba(235, 235, 235, 0.9));
border-radius: 6px;
/* filter: drop-shadow(0 0 10px rgba(235, 235, 235, 0.9));
border-radius: 6px; */
text-align: center;
line-height: 50px;
font-size: 20px;
color: rgb(235, 235, 235);
border: 1px solid rgb(60, 60, 60);
border: 1px solid rgb(160, 160, 160);
display: inline;
}
@@ -160,7 +161,7 @@ div#sm_item_icon {
.main .sub .bg .bg_ctz_thumb_frame #bg_ctz_thumb_morenotice {
font-size: 22px;
margin: 20px 5px 10px 20px;
line-height: 50px;
line-height: 25px;
overflow-wrap: break-word;
color: rgb(181, 218, 16);
animation: bg_ctz_thumb_morenotice_blinker 2s linear infinite;

View File

@@ -20,8 +20,9 @@
width: 100%;
height: 100px;
/* background-color: rgba(0, 0, 0, 0.5); */
filter: drop-shadow(0 0px 5px rgba(0, 0, 0, 1));
/* filter: drop-shadow(0 0px 5px rgba(0, 0, 0, 1)); */
padding: 0px;
display: none;
}
@@ -97,6 +98,7 @@
justify-content: center;
display: flex;
align-items: center;
filter: drop-shadow(0 0px 5px rgba(0, 0, 0, 0.5));
}
.widjet .top .weather #temp {
@@ -131,6 +133,7 @@
line-height: 52px;
padding: 5px 0;
text-align: right;
/* -webkit-text-stroke: 1px rgb(64,64,64); */
}
.widjet .top .datetime .date {

View File

@@ -7,10 +7,70 @@
width: 1920px;
height: 1080px;
z-index: 10;
background-size: cover;
display: none;
}
.error .bg {
.error #details {
position: absolute;
width: 100%;
height: 100%;
}
.error #details #title {
position: relative;
left: 9%;
top: 34%;
width: 100%;
height: 50%;
color: rgb(235, 235, 235);
font-size: 64px;
filter: drop-shadow(0 0 5px rgb(0, 0, 0));
display: block;
/* justify-content: center; */
/* align-items: center; */
}
.error #details #message {
position: relative;
left: 9%;
width: 100%;
height: 50%;
color: rgb(235, 0, 0);
font-size: 38px;
filter: drop-shadow(0 0 5px rgb(0, 0, 0));
display: flex;
/* vertical-align: middle; */
/* justify-content: center; */
/* align-items: center; */
white-space: pre-line;
}
.error #details #message.info {
color: rgb(0, 255, 64);
}
.error #countdown {
position: absolute;
top: 40%;
left: 20%;
width: 60%;
height: 20%;
background-color: rgba(10, 10, 10, 0.7);
border-radius: 8px;
border: solid rgb(64, 64, 64);
display: none;
}
.error #countdown #message {
position: relative;
width: 100%;
height: 100%;
color: rgb(252, 180, 43);
font-size: 38px;
filter: drop-shadow(0 0 5px rgb(0, 0, 0));
display: flex;
justify-content: center;
align-items: center;
white-space: pre-line;
}

View File

@@ -20,10 +20,14 @@
</div>
<div class="error">
<div id="bg"></div>
<div id="details">
<div id="title"></div>
<div id="message"></div>
</div>
<div id="countdown">
<div id="message"></div>
</div>
</div>
<!-- Busy Animation Area -->
<div class="busy-frame">

View File

@@ -21,7 +21,8 @@ HotelTV.api = (function() {
_token = "aLc*eBgTijklRnopq4s",
_registered = false,
_exist = false,
_svr_port = 0;
_svr_port = 0,
_1stBoot = false;
//// 비공개 프로퍼티
@@ -41,6 +42,7 @@ HotelTV.api = (function() {
_token = param.apikey;
_registered = param.registered;
_exist = param.exist;
_1stBoot = param.firstBoot;
}
@@ -200,7 +202,7 @@ HotelTV.api = (function() {
return new Promise((resolve, reject) => {
if (HotelTV.state.token) {
let _token = HotelTV.state.token;
__apifxn_init({ 'dev_familly': model, 'serial_num': serial, 'svr_ip': ip, 'svr_port': port, 'api_ver': _token.version, "license": _token.license, "apikey": _token.apikey, "registered": _token.registered, "exist": _token.exist });
__apifxn_init({ 'dev_familly': model, 'serial_num': serial, 'svr_ip': ip, 'svr_port': port, 'api_ver': _token.version, "license": _token.license, "apikey": _token.apikey, "registered": _token.registered, "exist": _token.exist, "firstBoot": false });
resolve(0);
} else {
// licenses api format
@@ -210,7 +212,7 @@ HotelTV.api = (function() {
__apifxn_CallCmsApi("GET", sz_api_url, "GetToken", null).then(_result => {
//console.log(`Success::>${_result.data}`);
HotelTV.state.token = JSON.parse(_result.data);
__apifxn_init({ 'dev_familly': model, 'serial_num': serial, 'svr_ip': ip, 'svr_port': port, 'api_ver': HotelTV.state.token.version, "license": HotelTV.state.token.license, "apikey": HotelTV.state.token.apikey, "registered": HotelTV.state.token.registered, "exist": HotelTV.state.token.exist });
__apifxn_init({ 'dev_familly': model, 'serial_num': serial, 'svr_ip': ip, 'svr_port': port, 'api_ver': HotelTV.state.token.version, "license": HotelTV.state.token.license, "apikey": HotelTV.state.token.apikey, "registered": HotelTV.state.token.registered, "exist": HotelTV.state.token.exist, "firstBoot": HotelTV.state.token.firstBoot });
resolve(0);
}).catch(_error => {
console.log(`Failure::>${_error.reason}`);

View File

@@ -649,7 +649,7 @@ HotelTV.hcap = (function() {
hcap.channel.setStartChannel({
"channelType": hcap.channel.ChannelType.UNKNOWN,
"onSuccess": function() {
console.log("onSuccess::StartChanell Cetting");
console.log("onSuccess::StartChanell Setting");
},
"onFailure": function(f) {
console.log("onFailure : errorMessage = " + f.errorMessage);
@@ -810,6 +810,7 @@ HotelTV.hcap = (function() {
// mode : bridge, securityType : psk
hcap.network.setSoftAP({
"channel": Number(_wlan_cfg.channel),
"vlanId": 0,
"signalStrength": Number(_wlan_cfg.signalStrength),
"mode": "bridge",
"securityType": (_wlan_cfg.securityType == "open") ? "open" : "psk",
@@ -1004,14 +1005,14 @@ HotelTV.hcap = (function() {
for (let i = 0; i < _ret.length; i++) {
let _set_item = _ret[i];
let no_need_reboot_param = ["wifi_screen_share", "soft_ap", "soft_ap_ui", "osd_layer_id"];
if (no_need_reboot_param.indexOf(_set_item.key) !== -1) {
if (no_need_reboot_param.indexOf(_set_item.key) == -1) {
//Needed reboot the system
need_to_reboot = true;
}
console.log(`Device config[${_set_item.key}] set to ${_set_item.value}`);
}
});
resolve(need_to_reboot);
});
} else {
resolve(need_to_reboot);
}
@@ -1200,7 +1201,30 @@ HotelTV.hcap = (function() {
},
PreAppGetInfo: function(_en_show_msg) {
if (g_hcap_info.preapp == null) {
// if (g_hcap_info.preapp == null) {
// hcap.preloadedApplication.getPreloadedApplicationList({
// "onSuccess": function(s) {
// if (_en_show_msg == true) {
// console.log("onSuccess : list length = " + s.list.length);
// for (var i = 0; i < s.list.length; i++) {
// console.log(
// "list[" + i + "].id = " + s.list[i].id +
// "list[" + i + "].title = " + s.list[i].title +
// "list[" + i + "].iconFilePath = " + s.list[i].iconFilePath
// );
// }
// }
// if (s.result == true) {
// g_hcap_info.preapp = s.list;
// }
// },
// "onFailure": function(f) {
// console.log("onFailure : errorMessage = " + f.errorMessage);
// }
// });
// }
return new Promise((resolve, reject) => {
hcap.preloadedApplication.getPreloadedApplicationList({
"onSuccess": function(s) {
if (_en_show_msg == true) {
@@ -1215,13 +1239,15 @@ HotelTV.hcap = (function() {
}
if (s.result == true) {
g_hcap_info.preapp = s.list;
resolve({ "error": 0, "applist": g_hcap_info.preapp });
}
},
"onFailure": function(f) {
console.log("onFailure : errorMessage = " + f.errorMessage);
resolve({ "error": -1, "applist": null });
}
});
}
});
},
LaunchPreApp: function(_name, _param) {
@@ -1245,7 +1271,7 @@ HotelTV.hcap = (function() {
if (item.title == 'Netflix') {
hcap.preloadedApplication.launchPreloadedApplication({
"id": item.id, // NETFLIX
"parameter": "{'params': {'hotel_id':'CENTIRM-Demo','launcher_version':'1.0'}",
"parameter": `{'params': {'hotel_id':${_param.hotel_name},'launcher_version':'1.0'}`,
"onSuccess": function() {
console.log("onSuccess");
},

View File

@@ -169,7 +169,24 @@ HotelTV.Init = async function() {
await HotelTV.hcap.GetDevInfo();
//await HotelTV.hcap.ShowDevInfo();
} catch (_error) {
console.log("Fail to get device information");
let _tmval = 10;
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.get-devinfo",
"SYSTEM ERROR",
"Fail to get System Information.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`System will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
//STEP#04::> API Module INIT
@@ -179,7 +196,24 @@ HotelTV.Init = async function() {
let __apiRet = await HotelTV.api.CheckRegistration();
HotelTV.state['registration'] = await HotelTV.api.CheckRegistration();
} catch (_error) {
console.log("Display Error page for check registration");
let _tmval = 50;
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.check-registration",
"SYSTEM ERROR",
"Un registered device.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
if (HotelTV.state['registration'].registered != true) {
@@ -195,30 +229,115 @@ HotelTV.Init = async function() {
if (need_reboot == true) {
console.log("System Need to Reboot");
HotelTV.ui_utils.SetBusy(false);
HotelTV.ui_utils.ShowErrMsg(true, "", "");
setTimeout(HotelTV.hcap.Reboot(), 3000);
let _tmval = 20;
HotelTV.ui_utils.ShowErrMsg(true,
"system.info.change-configuration",
"SYSTEM INFO",
`System configuration was changed.\r\n\r\nSystem information summary::\r\nDevice Serial Number: ${HotelTV.devinfo.serial_number}\r\nThe Device Model Name: ${HotelTV.devinfo.model_name}\r\nNetwork Configuration:${HotelTV.devinfo.network_info.ip_address}/${HotelTV.devinfo.network_info.subnet_mask}/${HotelTV.devinfo.network_info.gateway}`, {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`System will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
return;
}
} catch (_error) {
console.log("Display Error page for get stttings");
let _tmval = 50;
HotelTV.ui_utils.ShowErrMsg(true,
"system.set-devinfo",
"SYSTEM ERROR",
"Fail to configure device.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
try {
HotelTV.hotelinfo = await HotelTV.api.GetHotelInfo();
} catch (_error) {
console.log("Display Error page for get hotel info");
let _tmval = 50;
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.get-hotelinfo",
"SYSTEM ERROR",
"Fail to get hotel information.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
try {
HotelTV.guestinfo = await HotelTV.api.GetGuestInfo();
} catch (_error) {
console.log("Display Error page for get Guest info");
let _tmval = 50;
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.get-guestinfo",
"SYSTEM ERROR",
"Fail to get guest information.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
try {
HotelTV.opening = await HotelTV.api.GetOpeningCtz();
} catch (_error) {
console.log("Display Error page for get Opening Contents");
let _tmval = 50;
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.get-openingctzinfo",
"SYSTEM ERROR",
"Fail to get opening contents information.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
try {
@@ -236,7 +355,24 @@ HotelTV.Init = async function() {
try {
HotelTV.tvguide = await HotelTV.api.GetProgramCtz();
} catch (_error) {
console.log("Display Error page for get tvguide info");
//console.log("Display Error page for get tvguide info");
HotelTV.ui_utils.ShowErrMsg(true,
"system.error.get-tvguideinfo",
"SYSTEM ERROR",
"Fail to get tv program contents information.\r\nplease contact your system administrator.", {
"timeout": _tmval,
"cb_disp": function() {
_tmval -= 1;
console.log("time..." + _tmval);
if ($('.error #countdown').css("display") == "none") {
$('.error #countdown').fadeIn(1000);
}
$('.error #countdown #message').text(`The Device ID is ${HotelTV.devinfo.serial_number}.\r\n\r\nSystem will be reboot in ${_tmval} second...`);
},
"cb_eoe": function() {
setTimeout(HotelTV.hcap.Reboot(), 500);
}
});
}
try {
@@ -403,6 +539,18 @@ HotelTV.LoadAppFull = async function() {
//STEP#03: INIT HCAP for HotelTV FullAPP
let tmrAppAuth = setInterval(async function() {
let _foundNetflix = false;
let _hcapAppInfo = await HotelTV.hcap.PreAppGetInfo(false);
HotelTV.state['hcap_app'] = _hcapAppInfo.applist;
for (_i = 0; _i < HotelTV.state['hcap_app'].length; _i++) {
if (HotelTV.state['hcap_app'][_i].title == "Netflix") {
console.log("Found out netflix among of pre hcap app-list.")
clearInterval(tmrAppAuth);
}
}
if (_foundNetflix == false) {
try {
let siAppToken = null;
let siAppName = null;
@@ -422,11 +570,13 @@ HotelTV.LoadAppFull = async function() {
} catch (_error) {
console.log("Display Error page for get siApp Auth");
}
}
}, 5000);
//STEP#05: Set Display size
let _res = HotelTV.devinfo.display_resolution.split("x");
HotelTV.ui_appfull.Init(_res[0], _res[1]);
HotelTV.hcap.PreAppGetInfo(false);
//STEP#06; Show UI
//await HotelTV.hcap.ShowDevInfo();
@@ -470,14 +620,14 @@ HotelTV.LoadAppFull = async function() {
// }
// } else if (recvMsg.event == "update_weather") {
// } else if (recvMsg.event == "update_report") {
// // HotelTV.hcap.GetUptime();
// // HotelTV.hcap.GetDeviceUsage().then(_usage => {
// // //console.log(`USAGE::> CPU[${_usage.cpu}%] RAM[${_usage.mem}%]`);
// // //HotelTV.api.ReportBrief(HotelTV.devinfo, HotelTV.guestinfo, _usage);
// // });
// } else if (recvMsg.event == "mqtt_events") {
// console.log(`MQTTMSG::> ${recvMsg.data}`);
// }
// if (recvMsg.event == "update_report") {
// HotelTV.hcap.GetUptime();
// HotelTV.hcap.GetDeviceUsage().then(_usage => {
// console.log(`USAGE::> CPU[${_usage.cpu}%] RAM[${_usage.mem}%]`);
// //HotelTV.api.ReportBrief(HotelTV.devinfo, HotelTV.guestinfo, _usage);
// });
// }
}
} else {
@@ -502,20 +652,6 @@ HotelTV.LoadAppFull = async function() {
);
client.on('connect', function() {
// let sz_topic = ['ctlxb0_' + HotelTV.devinfo.serial_number + '/topic', 'ctlxb0_all/topic'];
// client.subscribe(sz_topic[0], function(err) {
// if (err) {
// console.log(`Fail to subscribe::TOPIC[${sz_topic[0]}]`);
// }
// });
// client.subscribe(sz_topic[1], function(err) {
// if (err) {
// console.log(`Fail to subscribe::TOPIC[${sz_topic[1]}]`);
// }
// })
client.subscribe(_mqttSvcInfo.topic, function(err) {
if (err) {
console.log(`Fail to subscribe::TOPIC[${_mqttSvcInfo.topic}]`);

View File

@@ -129,9 +129,9 @@ HotelTV.ui_appfull = (function() {
let _typeAppFocusEvt = _evt.eventType;
if (_typeAppFocusEvt == "focused") {
HotelTV.hcap.SetSoftAp({
"enable": false,
});
// HotelTV.hcap.SetSoftAp({
// "enable": false,
// });
}
}
@@ -301,7 +301,7 @@ HotelTV.ui_appfull = (function() {
// Free count value
_elAmItemTblRecRoot.children('div#details').children(`div#freecnt_val`).text(__fxn_fmvalue(_carts.items, "freeCount", _amItem.id));
// Price value
_elAmItemTblRecRoot.children('div#details').children(`div#price_val`).text(__fxn_fmvalue(_carts.items, "price", _amItem.id)[_state.lang] + _amenity.currency[_state.lang]);
_elAmItemTblRecRoot.children('div#details').children(`div#price_val`).text(__fxn_fmvalue(_carts.items, "price", _amItem.id)[_state.lang].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",") + _amenity.currency[_state.lang]);
// Order Count
_elAmItemTblRecRoot.children(`div#quantity_val`).text(__fxn_fmvalue(_carts.items, "quantity", _amItem.id));
}
@@ -778,7 +778,7 @@ HotelTV.ui_appfull = (function() {
let _elRsItemTblRecRoot = _elRsMnRoot.children('div.items').children('table').children(`tr#${_rsItem.id}`).children('div.products');
if (_carts.items.length && __fxn_fmexist(_carts.items, _rsItem.id) == true) {
// amount value
_elRsItemTblRecRoot.children('div#details').children('#price').text(__fxn_fmvalue(_carts.items, "amount", _rsItem.id)[_state.lang] + _roomservice.currency[_state.lang]);
_elRsItemTblRecRoot.children('div#details').children('#price').text(__fxn_fmvalue(_carts.items, "amount", _rsItem.id)[_state.lang].toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",") + _roomservice.currency[_state.lang]);
// Order Count
_elRsItemTblRecRoot.children('div#details').children('#quantity').children(`#value`).text(__fxn_fmvalue(_carts.items, "quantity", _rsItem.id));
}
@@ -1876,7 +1876,7 @@ HotelTV.ui_appfull = (function() {
HotelTV.api.SetMessageStatus(_cur_msgdesc._id);
_cur_msgdesc.read = true;
$('.main>.mypage>.bg>.owl-carousel .owl-item #mp_msg_tblrec tr').filter("[msgidx='" + _cur_msglst_idx.toString() + "']").children('td#num').addClass('read');
__uifxn_AppFull_Widjet_ShowMsgCnt();
__uifxn_AppFull_TopWidjet_BuildMsgCnt();
});
}
}
@@ -2956,7 +2956,7 @@ HotelTV.ui_appfull = (function() {
//
if (_state.menu.stage == "popup_message_card") {
//HIDE NEWS and USER GUIDE TIPS
if (_newsInfo == null || Object.keys(_newsInfo).length == 0) {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
@@ -2968,7 +2968,7 @@ HotelTV.ui_appfull = (function() {
return;
} else if (_state.menu.stage == "tvCtgHide") {
//HIDE NEWS and USER GUIDE TIPS
if (_newsInfo == null || Object.keys(_newsInfo).length == 0) {
if (_newsInfo == null || newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
@@ -3041,7 +3041,7 @@ HotelTV.ui_appfull = (function() {
if ($('.guide>.tips').css('display') == "none") {
$('.guide>.tips').fadeIn(500, function() {
//SHOW NEWS
if (_newsInfo == null || Object.keys(_newsInfo).length == 0) {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
@@ -3069,20 +3069,26 @@ HotelTV.ui_appfull = (function() {
}
} else {
//HIDE TIPS and then SHOW NEWS
if (_newsInfo == null || Object.keys(_newsInfo).length == 0) {
if ($('.guide>.tips').css('display') == "block") {
$('.guide>.tips').fadeOut(500, function() {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
} else {
if ($('.guide>.tips').css('display') == "block") {
$('.guide>.tips').fadeOut(500, function() {
if ($('.news').css('display') != "block") {
$('.news').fadeIn(500, function() {
__uifxn_AppFull_BldNews();
$('.news>.newsctz #hoteltv-news-ticker').webTicker('cont');
});
}
}
});
} else {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
} else {
if ($('.news').css('display') != "block") {
$('.news').fadeIn(500, function() {
@@ -3095,7 +3101,7 @@ HotelTV.ui_appfull = (function() {
}
} else {
//HIDE NEWS and USER GUIDE TIPS
if (_newsInfo == null || Object.keys(_newsInfo).length == 0) {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
@@ -3104,15 +3110,20 @@ HotelTV.ui_appfull = (function() {
if ($('.guide>.tips').css('display') != "none") {
$('.guide>.tips').fadeOut(500, function() {
if (_newsInfo == null || _newsInfo.length == 0) {
if ($('.news').css('display') != "none") {
$('.news').hide();
}
} else {
if ($('.news').css('display') != "none") {
if ($('.news>.newsctz #hoteltv-news-ticker').children().length > 0) {
$('.news>.newsctz #hoteltv-news-ticker').webTicker('stop');
$('.news').fadeOut(500);
}
}
}
});
}
}
}
@@ -3186,7 +3197,7 @@ HotelTV.ui_appfull = (function() {
* HotelTV UI Wrapper Function::> Show Top Widjet Weather
* @param {boolean} _en show/hide
*/
function __uifxn_AppFull_Widjet_ShowWeather(_en) {
function __uifxn_AppFull_TopWidjet_BuildWeather() {
let _weather = HotelTV.weather;
$('.widjet .top .weather #icon').css({ "background-image": "url(" + _weather.smallicon_image[_weather.item.condition.code] + ")" });
$('.widjet .top .weather #temp').text(_weather.item.condition.temp + "°C");
@@ -3198,7 +3209,7 @@ HotelTV.ui_appfull = (function() {
* HotelTV UI Wrapper Function::> Show Top Widjet Message Cnt(Unread)
* @param {boolean} _en show/hide
*/
function __uifxn_AppFull_Widjet_ShowMsgCnt(_en) {
function __uifxn_AppFull_TopWidjet_BuildMsgCnt(_en) {
let _msgCnt = 0;
const _state = HotelTV.state;
const _guest = HotelTV.guestinfo;
@@ -3224,6 +3235,22 @@ HotelTV.ui_appfull = (function() {
$('div#lst_mypagebg div #mp_message_title').text(_guest.name + _trTbl.ui.mypage.message.title.title[_state.lang].replace("_XX", _msgCnt.toString()));
}
/**
* HotelTV UI Wrapper Function::> Show Top Widjet Weather
* @param {boolean} _show show/hide
*/
function __uifxn_AppFull_TopWidjetShow(_show) {
if (_show == true) {
if ($('.widjet .top').css("display") == "none") {
$('.widjet .top').fadeIn(300);
}
} else {
if ($('.widjet .top').css("display") != "none") {
$('.widjet .top').fadeOut(300);
}
}
}
/**
* HotelTV UI Wrapper Function::> Build Main Menu::> Flight
@@ -3517,10 +3544,10 @@ HotelTV.ui_appfull = (function() {
$('.widjet .top .hotellogo').css({ "background-image": "url(" + HotelTV.hotelinfo.subLogo.download + ")" });
//상단 날씨 아이콘 및 온도 표시
__uifxn_AppFull_Widjet_ShowWeather();
__uifxn_AppFull_TopWidjet_BuildWeather();
//상단 메시지(unread)개수 표시
__uifxn_AppFull_Widjet_ShowMsgCnt();
__uifxn_AppFull_TopWidjet_BuildMsgCnt();
// //상단 시계 표시
_hndl_widget_topTime = setInterval(() => {
@@ -3530,6 +3557,8 @@ HotelTV.ui_appfull = (function() {
$('.widjet .top .datetime .date').text(_szCurTm.date);
}, 1000);
__uifxn_AppFull_TopWidjetShow(true);
//Weather Contents Buildup
__uifxn_AppFull_MM_BldWeather();
@@ -3609,14 +3638,27 @@ HotelTV.ui_appfull = (function() {
} else if (_program[Number(_state.menu.main.cur)].type.toLowerCase() == "application") {
console.log("Preparing TV APP::>" + _program[Number(_state.menu.main.cur)].service);
if (_program[Number(_state.menu.main.cur)].service == "youtube") {
console.log(`Type:${_program[Number(_state.menu.main.cur)].type} preparing WIFI AP...`);
HotelTV.hcap.SetSoftAp({
"enable": true,
"ssid": "TVWIFI-" + HotelTV.guestinfo.room,
"password": "12345678",
});
}
// console.log(`Type:${_program[Number(_state.menu.main.cur)].type} preparing WIFI AP...`);
// HotelTV.hcap.SetSoftAp({
// "enable": true,
// "ssid": "TVWIFI-" + HotelTV.guestinfo.room,
// "password": "12345678",
// });
HotelTV.hcap.LaunchPreApp(_program[Number(_state.menu.main.cur)].service, null);
} else if (_program[Number(_state.menu.main.cur)].service == "netflix") {
let _foundNetflix = false;
for (_i = 0; _i < _state['hcap_app'].length; _i++) {
if (_state['hcap_app'][_i].title == 'Netflix') {
_foundNetflix = true;
}
}
if (_foundNetflix == true) {
HotelTV.hcap.LaunchPreApp(_program[Number(_state.menu.main.cur)].service, { "hotel_name": HotelTV.hotelinfo.name });
} else {
HotelTV.ui_utils.ShowNotificationMsgBalloon("서비스를 중비 중입니다. 잠시후에 이용해 주세요.", 5);
}
}
} else {
console.log(`Type:${_program[Number(_state.menu.main.cur)].type} doen's have sub menu...`);
}
@@ -3628,6 +3670,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_red').fadeIn(1000, function() {
_state.menu.stage = "hotkey_mm_red";
__uifxn_AppFull_ShowMMHotKeyBtn(false);
__uifxn_AppFull_TopWidjetShow(false);
});
} else if (_state.hotkey.mm.red.type == "amenity") {
$('.popup .amenity').show(0, function() {
@@ -3654,6 +3697,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_green').fadeIn(1000, function() {
_state.menu.stage = "hotkey_mm_green";
__uifxn_AppFull_ShowMMHotKeyBtn(false);
__uifxn_AppFull_TopWidjetShow(false);
});
} else if (_state.hotkey.mm.green.type == "amenity") {
$('.popup .amenity').show(0, function() {
@@ -3680,6 +3724,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_yellow').fadeIn(1000, function() {
_state.menu.stage = "hotkey_mm_yellow";
__uifxn_AppFull_ShowMMHotKeyBtn(false);
__uifxn_AppFull_TopWidjetShow(false);
});
} else if (_state.hotkey.mm.yellow.type == "amenity") {
$('.popup .amenity').show(0, function() {
@@ -3706,6 +3751,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_blue').fadeIn(1000, function() {
_state.menu.stage = "hotkey_mm_blue";
__uifxn_AppFull_ShowMMHotKeyBtn(false);
__uifxn_AppFull_TopWidjetShow(false);
});
} else if (_state.hotkey.mm.blue.type == "amenity") {
$('.popup .amenity').show(0, function() {
@@ -3777,6 +3823,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_red').css({ "background-color": "" });
_state.menu.stage = "main";
__uifxn_AppFull_ShowMMHotKeyBtn(true);
__uifxn_AppFull_TopWidjetShow(true);
});
});
}
@@ -3792,6 +3839,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_green').css({ "background-color": "" });
_state.menu.stage = "main";
__uifxn_AppFull_ShowMMHotKeyBtn(true);
__uifxn_AppFull_TopWidjetShow(true);
});
});
}
@@ -3811,6 +3859,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_yellow').css({ "background-color": "" });
_state.menu.stage = "main";
__uifxn_AppFull_ShowMMHotKeyBtn(true);
__uifxn_AppFull_TopWidjetShow(true);
});
});
}
@@ -3830,6 +3879,7 @@ HotelTV.ui_appfull = (function() {
$('.popup .hotkey_mm_blue').css({ "background-color": "" });
_state.menu.stage = "main";
__uifxn_AppFull_ShowMMHotKeyBtn(true);
__uifxn_AppFull_TopWidjetShow(true);
});
});
}
@@ -4140,7 +4190,7 @@ HotelTV.ui_appfull = (function() {
$('div#lst_mypagebg div #mp_message_title').text(_guest.name + _trTbl.ui.mypage.message.title.title[_state.lang].replace("_XX", _msg_unread_cnt.toString()));
//widjet 상단 메시지(unread)개수 표시
__uifxn_AppFull_Widjet_ShowMsgCnt();
__uifxn_AppFull_TopWidjet_BuildMsgCnt();
}).catch(_error => {
console.log("Fail to get Message info");
});
@@ -4172,6 +4222,7 @@ HotelTV.ui_appfull = (function() {
UpdateEpg: function() {
let _state = HotelTV.state;
let _trTbl = HotelTV.translation;
if (_state.menu.stage != 'tvCtgHide') {
return;
@@ -4187,7 +4238,7 @@ HotelTV.ui_appfull = (function() {
if (_epg_inf != null) {
_ch.text(_egp_prog_inf.name);
} else {
_ch.text(HotelTV.ui_utils.Get_String('epg_none', _state.lang));
_ch.text(_trTbl.ui.tv.epg.msg.none_epg_info[_state.lang]);
}
});
});

View File

@@ -15,50 +15,12 @@ HotelTV.ui_utils = (function() {
//// 의존 관계 선언
//// 비공개 프로퍼티
let g_uiTbl_imgPath_Brochure_buttons = {
'ko-KR': "./images/brochure/bt_brochure_ko.png",
'en-US': "./images/brochure/bt_brochure_en.png",
'zh-CN': "./images/brochure/bt_brochure_ch01.png",
'zh-TW': "./images/brochure/bt_brochure_ch02.png",
'ja-JP': "./images/brochure/bt_brochure_jp.png"
};
let g_uiTbl_imgPath_InRoomDining_buttons = {
'ko-KR': "./images/IRD/bt_inroom_ko.png",
'en-US': "./images/IRD/bt_inroom_en.png",
'zh-CN': "./images/IRD/bt_inroom_ch01.png",
'zh-TW': "./images/IRD/bt_inroom_ch02.png",
'ja-JP': "./images/IRD/bt_inroom_jp.png"
};
let g_uiTbl_String = {
// //Words & Sentance for Menu & Contents
// 'guide_flightschedule': {
// 'kr': '화살표를 사용하여 제주국제공항 출발, 도착하는 항공 스케줄을 확인하세요.',
// 'en': 'Use the arrows to check flight schedules arriving and leaving from Jeju International Airport.',
// 'ch': '请用箭头查看济州国际机场出发、到达航班的时刻表。',
// 'tw': '請用箭頭查看濟州國際機場出發、到達航班的時刻表。',
// 'jp': '矢印を使って済州国際空港出発便、到着便の航空スケジュールをご確認ください。'
// },
// //EPG
// 'epg_none': {
// 'kr': "프로그램 정보가 없습니다",
// 'en': "No program information",
// 'ch': "没有节目信息",
// 'tw': "沒有節目信息",
// 'jp': "プログラム情報はありません"
// },
};
var g_uiVar_Clock = {
time: '',
date: ''
};
var g_uiVar_NotifyBallon = null;
/// 초기화 루틴
@@ -67,6 +29,58 @@ HotelTV.ui_utils = (function() {
//// 비공개 매써드
/**
* HotelTV UI Wrapper Function::> Countdown timer for Error screen
* @param {boolean} enable enable/disable
*/
const __uiFxn_TmrCDnErrScreen = function(end_of_date, _cbFxn1, _cbFxn2) {
var _vDate = new Date(end_of_date); // 전달 받은 일자
var timer;
function ____rn_cb() {
var now = new Date();
var distDt = _vDate - now;
if (distDt < 0) {
clearInterval(timer);
if (_cbFxn2) {
_cbFxn2();
}
return;
}
if (_cbFxn1) {
_cbFxn1();
}
}
timer = setInterval(____rn_cb, 1000);
}
/**
* HotelTV UI Wrapper Function::> Countdown timer for Error notification ballon
* @param {boolean} enable enable/disable
*/
const __uiFxn_TmrCDnNotiBallon = function(end_of_date, _cbClose) {
var _vDate = new Date(end_of_date); // 전달 받은 일자
function ____rn_cb() {
var now = new Date();
var distDt = _vDate - now;
if (distDt < 0) {
clearInterval(g_uiVar_NotifyBallon);
if (_cbClose) {
_cbClose();
}
g_uiVar_NotifyBallon = null;
return;
}
}
g_uiVar_NotifyBallon = setInterval(____rn_cb, 1000);
}
/**
* HotelTV UI Wrapper Function::> Show(Build) Busy(loading) animation
* @param {boolean} enable enable/disable
@@ -103,10 +117,21 @@ HotelTV.ui_utils = (function() {
__uifxn_BusyAnimation(show);
},
ShowErrMsg: function(_show, _title, _msg) {
ShowErrMsg: function(_show, _type, _title, _msg, _cdn_obj) {
if (_show) {
$('.error').css("background-color", "rgb(255,0,0)");
const typ_info = ['system.info.change-configuration'];
if (typ_info.indexOf(_type) >= 0) {
$('.error #details #message').addClass("info");
}
$('.error').css("background-image", "url('./images/hoteltv_service_error.png')");
$('.error #details #title').text(_title);
$('.error #details #message').text(_msg);
$('.error').fadeIn(500);
if (_cdn_obj) {
var dt = new Date();
dt.setSeconds(dt.getSeconds() + Number(_cdn_obj.timeout));
__uiFxn_TmrCDnErrScreen(dt, _cdn_obj.cb_disp, _cdn_obj.cb_eoe);
}
} else {
$('.error').fadeOut(500, function() {
$(this).css("background-image", "None");
@@ -122,18 +147,6 @@ HotelTV.ui_utils = (function() {
return g_uiVar_Clock;
},
Get_String: function(_key, _lang) {
return g_uiTbl_String[_key][_lang];
},
Brochure_GetBtn: function(_lang) {
return g_uiTbl_imgPath_Brochure_buttons[_lang];
},
IRD_GetBtn: function(_lang) {
return g_uiTbl_imgPath_InRoomDining_buttons[_lang];
},
Get_Airline: function(_obj, _airline, _lang) {
if (_obj) {
if (_obj[_airline]) {
@@ -183,5 +196,21 @@ HotelTV.ui_utils = (function() {
}
return _cvt_speed.toString() + " " + _szDir;
},
ShowNotificationMsgBalloon: function(_msg, _tmoutInSec) {
if (g_uiVar_NotifyBallon) {
clearInterval(g_uiVar_NotifyBallon);
}
var dt = new Date();
dt.setSeconds(dt.getSeconds() + Number(_tmoutInSec));
if (_msg) {
$('.popup>.notification .balloon #message').text(_msg);
__uiFxn_TmrCDnNotiBallon(dt, function() {
$('.popup>.notification').fadeOut(300);
});
$('.popup>.notification').fadeIn(300);
}
},
}
})();

View File

@@ -40,6 +40,13 @@
<!-- Error Frame Layout -->
<div class="error">
<div id="details">
<div id="title"></div>
<div id="message"></div>
</div>
<div id="countdown">
<div id="message"></div>
</div>
</div>
<!-- Busy Animation Area -->

View File

@@ -1,5 +1,5 @@
<XAIT>
<versionNumber>2</versionNumber>
<versionNumber>4</versionNumber>
<AbstractService>
<svcName>Pro:Centric App</svcName>
<svcId>0x1204</svcId>
@@ -16,10 +16,10 @@
<controlCode>AUTOSTART</controlCode>
<visibility>NOT_VISIBLE_USERS</visibility>
<priority>255</priority>
<version>6</version>
<version>7</version>
</applicationDescriptor>
<HcapDescriptor>
<url>http://10.12.200.189:80/procentric/application/index.html</url>
<url>http://10.20.0.2:8880/procentric/application/index.html</url>
</HcapDescriptor>
</Application>
</ApplicationList>