'use strict';'require baseclass';'require fs';'require rpc';var callLuciVersion=rpc.declare({object:'luci',method:'getVersion'});var callSystemBoard=rpc.declare({object:'system',method:'board'});var callSystemInfo=rpc.declare({object:'system',method:'info'});return baseclass.extend({title:_('System'),load:function(){return Promise.all([L.resolveDefault(callSystemBoard(),{}),L.resolveDefault(callSystemInfo(),{}),L.resolveDefault(callLuciVersion(),{revision:_('unknown version'),branch:'LuCI'})]);},render:function(data){var boardinfo=data[0],systeminfo=data[1],luciversion=data[2];luciversion=luciversion.branch+' '+luciversion.revision;var datestr=null;if(systeminfo.localtime){var date=new Date(systeminfo.localtime*1000);datestr='%04d-%02d-%02d %02d:%02d:%02d'.format(date.getUTCFullYear(),date.getUTCMonth()+1,date.getUTCDate(),date.getUTCHours(),date.getUTCMinutes(),date.getUTCSeconds());}
var fields=[_('Hostname'),boardinfo.hostname,_('Model'),boardinfo.model,_('Architecture'),boardinfo.system,_('Target Platform'),(L.isObject(boardinfo.release)?boardinfo.release.target:''),_('Firmware Version'),(L.isObject(boardinfo.release)?boardinfo.release.description+' / ':'')+(luciversion||''),_('Kernel Version'),boardinfo.kernel,_('Local Time'),datestr,_('Uptime'),systeminfo.uptime?'%t'.format(systeminfo.uptime):null,_('Load Average'),Array.isArray(systeminfo.load)?'%.2f, %.2f, %.2f'.format(systeminfo.load[0]/65535.0,systeminfo.load[1]/65535.0,systeminfo.load[2]/65535.0):null];var table=E('table',{'class':'table'});for(var i=0;i<fields.length;i+=2){table.appendChild(E('tr',{'class':'tr'},[E('td',{'class':'td left','width':'33%'},[fields[i]]),E('td',{'class':'td left'},[(fields[i+1]!=null)?fields[i+1]:'?'])]));}
return table;}});