2016-09-06 10:14:54 +02:00
$ ( document ) . ready ( function ( ) {
2016-09-15 20:42:58 +02:00
$ ( "#main-nav" ) . hide ( ) ;
2016-09-13 11:51:16 +02:00
$ ( "#loading_overlay" ) . addClass ( "overlay" ) ;
2016-09-06 10:14:54 +02:00
loadContentTo ( "#container_connection_lost" , "connection_lost" ) ;
initWebSocket ( ) ;
bindNavToContent ( "#load_dashboard" , "dashboard" , true ) ;
2016-09-09 18:59:58 +02:00
bindNavToContent ( "#load_remote" , "remote" , false ) ;
2016-09-06 10:14:54 +02:00
bindNavToContent ( "#load_huebridge" , "huebridge" , false ) ;
bindNavToContent ( "#load_support" , "support" , false ) ;
bindNavToContent ( "#load_confKodi" , "kodiconf" , false ) ;
bindNavToContent ( "#load_update" , "update" , false ) ;
2016-10-09 10:23:04 +02:00
bindNavToContent ( "#load_confEffects" , "effects" , false ) ;
2016-09-06 10:14:54 +02:00
bindNavToContent ( "#load_confLeds" , "leds" , false ) ;
2016-09-07 20:10:37 +02:00
bindNavToContent ( "#load_confGrabber" , "grabber" , false ) ;
2016-10-09 10:23:04 +02:00
bindNavToContent ( "#load_confColors" , "colors" , false ) ;
bindNavToContent ( "#load_confNetwork" , "network" , false ) ;
2016-10-30 17:54:38 +01:00
bindNavToContent ( "#load_effectsconfig" , "effects_configurator" , false ) ;
2016-11-26 22:46:16 +01:00
bindNavToContent ( "#load_logging" , "logging" , false ) ;
2016-09-07 20:10:37 +02:00
2016-09-06 10:14:54 +02:00
$ ( hyperion ) . on ( "cmd-serverinfo" , function ( event ) {
parsedServerInfoJSON = event . response ;
currentVersion = parsedServerInfoJSON . info . hyperion [ 0 ] . version ;
cleanCurrentVersion = currentVersion . replace ( /\./g , '' ) ;
2016-09-14 13:51:28 +02:00
if ( parsedServerInfoJSON . info . hyperion [ 0 ] . config _modified )
2016-09-15 20:42:58 +02:00
$ ( "#hyperion_reload_notify" ) . fadeIn ( "fast" ) ;
2016-09-14 13:51:28 +02:00
else
2016-09-15 20:42:58 +02:00
$ ( "#hyperion_reload_notify" ) . fadeOut ( "fast" ) ;
2016-09-14 13:51:28 +02:00
2016-09-06 10:14:54 +02:00
// get active led device
var leddevice = parsedServerInfoJSON . info . ledDevices . active ;
2016-11-26 22:46:16 +01:00
if ( $ ( "#content_dashboard" ) . length > 0 )
{
$ ( '#dash_leddevice' ) . html ( leddevice ) ;
}
2016-09-06 10:14:54 +02:00
// get host
var hostname = parsedServerInfoJSON . info . hostname ;
2016-11-26 22:46:16 +01:00
if ( $ ( "#content_dashboard" ) . length > 0 )
2016-09-07 20:10:37 +02:00
{
2016-11-26 22:46:16 +01:00
$ ( '#dash_systeminfo' ) . html ( hostname + ':' + hyperionport ) ;
2016-09-07 20:10:37 +02:00
}
2016-09-06 10:14:54 +02:00
2016-11-26 22:46:16 +01:00
if ( $ ( "#content_dashboard" ) . length > 0 )
{
var components = parsedServerInfoJSON . info . components ;
components _html = "" ;
for ( idx = 0 ; idx < components . length ; idx ++ )
2016-09-06 10:14:54 +02:00
{
2016-11-26 22:46:16 +01:00
components _html += '<tr><td lang="en" data-lang-token="general_comp_' + components [ idx ] . name + '">' + ( components [ idx ] . title ) + '</td><td><i class="fa fa-circle component-' + ( components [ idx ] . enabled ? "on" : "off" ) + '"></i></td></tr>' ;
2016-09-06 10:14:54 +02:00
}
2016-11-26 22:46:16 +01:00
$ ( "#tab_components" ) . html ( components _html ) ;
$ . get ( "https://raw.githubusercontent.com/hyperion-project/hyperion.ng/master/version.json" , function ( data ) {
parsedUpdateJSON = JSON . parse ( data ) ;
latestVersion = parsedUpdateJSON [ 0 ] . versionnr ;
cleanLatestVersion = latestVersion . replace ( /\./g , '' ) ;
$ ( '#currentversion' ) . html ( ' V' + currentVersion ) ;
$ ( '#latestversion' ) . html ( ' V' + latestVersion ) ;
if ( cleanCurrentVersion < cleanLatestVersion )
{
$ ( '#versioninforesult' ) . html ( '<div lang="en" data-lang-token="dashboard_infobox_message_updatewarning" style="margin:0px;" class="alert alert-warning">A newer version of Hyperion is available!</div>' ) ;
}
else
{
$ ( '#versioninforesult' ) . html ( '<div lang="en" data-lang-token="dashboard_infobox_message_updatesuccess" style="margin:0px;" class="alert alert-success">You run the latest version of Hyperion.</div>' ) ;
}
} ) ;
}
if ( $ ( "#logmessages" ) . length == 0 )
{
requestLoggingStop ( ) ;
}
2016-09-13 11:51:16 +02:00
$ ( "#loading_overlay" ) . removeClass ( "overlay" ) ;
2016-09-15 20:42:58 +02:00
$ ( "#main-nav" ) . show ( 'slide' , { direction : 'left' } , 1000 ) ;
2016-09-06 10:14:54 +02:00
} ) ; // end cmd-serverinfo
2016-09-10 19:08:08 +02:00
$ ( hyperion ) . one ( "cmd-config-getschema" , function ( event ) {
parsedConfSchemaJSON = event . response . result ;
2016-10-10 23:15:50 +02:00
requestServerConfig ( ) ;
} ) ;
$ ( hyperion ) . one ( "cmd-config-getconfig" , function ( event ) {
parsedConfJSON = event . response . result ;
requestServerInfo ( ) ;
2016-09-10 19:08:08 +02:00
} ) ;
2016-09-06 10:14:54 +02:00
$ ( hyperion ) . on ( "error" , function ( event ) {
2016-10-27 23:42:24 +02:00
showInfoDialog ( "error" , "Error" , event . reason ) ;
2016-09-06 10:14:54 +02:00
} ) ;
2016-09-10 19:08:08 +02:00
$ ( hyperion ) . on ( "open" , function ( event ) {
requestServerConfigSchema ( ) ;
} ) ;
2016-09-15 20:42:58 +02:00
$ ( "#btn_hyperion_reload" ) . on ( "click" , function ( ) {
$ ( hyperion ) . off ( ) ;
requestServerConfigReload ( ) ;
watchdog = 1 ;
$ ( "#wrapper" ) . fadeOut ( "slow" ) ;
cron ( ) ;
} ) ;
2016-09-06 10:14:54 +02:00
} ) ;
$ ( function ( ) {
var sidebar = $ ( '#side-menu' ) ; // cache sidebar to a variable for performance
sidebar . delegate ( 'a.inactive' , 'click' , function ( ) {
sidebar . find ( '.active' ) . toggleClass ( 'active inactive' ) ;
$ ( this ) . toggleClass ( 'active inactive' ) ;
} ) ;
} ) ;