Fix bugs in unified framework

merge-requests/1/head
charithag 9 years ago
parent 8d5451c589
commit e27279a83b

@ -11,7 +11,8 @@ var fuseState = {
zones: {}, zones: {},
appName: '', appName: '',
currentZone: [], //TODO: rename to zone Stack currentZone: [], //TODO: rename to zone Stack
currentUnit: null currentUnit: null,
viewModelCache:{}
}; };
var requestId = function makeId() { var requestId = function makeId() {

@ -11,29 +11,35 @@ var getScope = function (unit,configs) {
var viewModel = {}; var viewModel = {};
var cbResult; var cbResult;
if (jsFile.isExists()) { if (jsFile.isExists()) {
script = require(jsFile.getPath()); if(fuseState.viewModelCache[jsFile.getPath()]){
//Eagerly make the viewModel the template configs cbResult = fuseState.viewModelCache[jsFile.getPath()];
viewModel = templateConfigs; }else{
//Check if the unit author has specified an onRequest script = require(jsFile.getPath());
//callback //Eagerly make the viewModel the template configs
if(script.hasOwnProperty('onRequest')){ viewModel = templateConfigs;
script.app = { //Check if the unit author has specified an onRequest
url: '/' + fuseState.appName, //callback
publicURL: '/' + fuseState.appName + '/public/' + unit, if(script.hasOwnProperty('onRequest')){
"class": unit + '-unit' script.app = {
}; url: '/' + fuseState.appName,
onRequestCb = script.onRequest; publicURL: '/' + fuseState.appName + '/public/' + unit,
cbResult = onRequestCb(templateConfigs); "class": unit + '-unit'
log.debug("passing configs to unit "+unit+" configs: "+stringify(templateConfigs)); };
//If the execution does not yield an object we will print onRequestCb = script.onRequest;
//a warning as the unit author may have forgotten to return a data object cbResult = onRequestCb(templateConfigs);
if(cbResult===undefined){ log.debug("passing configs to unit "+unit+" configs: "+stringify(templateConfigs));
cbResult = {}; //Give an empty data object fuseState.viewModelCache[jsFile.getPath()] = cbResult;
log.warn('[' + requestId + '] unit "' + unit + '" has a onRequest method which does not return a value.This may lead to the '
+'unit not been rendered correctly.');
} }
viewModel = cbResult;
} }
//If the execution does not yield an object we will print
//a warning as the unit author may have forgotten to return a data object
if(cbResult===undefined){
cbResult = {}; //Give an empty data object
log.warn('[' + requestId + '] unit "' + unit + '" has a onRequest method which does not return a value.This may lead to the '
+'unit not been rendered correctly.');
}
viewModel = cbResult;
} }
else{ else{
//If there is no script then the view should get the configurations //If there is no script then the view should get the configurations

@ -24,46 +24,7 @@ function formatDates(){
} }
(function () { (function () {
var deviceId = $(".device-id");
var deviceIdentifier = deviceId.data("deviceid");
var deviceType = deviceId.data("type");
var payload = [deviceIdentifier];
if (deviceType == "ios") {
var serviceUrl = "/ios/operation/deviceinfo";
} else if (deviceType == "android") {
var serviceUrl = "/mdm-android-agent/operation/device-info";
}
invokerUtil.post(serviceUrl, payload,
function(message){
console.log(message);
}, function (message) {
console.log(message);
});
$(document).ready(function(){ $(document).ready(function(){
loadOperationBar(deviceType);
loadMap();
formatDates(); formatDates();
}); });
function loadMap(){
var map;
function initialize() {
var mapOptions = {
zoom: 18
};
var lat = 6.9098591;
var long = 79.8523753;
map = new google.maps.Map(document.getElementById('device-location'),
mapOptions);
var pos = new google.maps.LatLng(lat,
long);
var marker = new google.maps.Marker({
position: pos,
map: map
});
map.setCenter(pos);
}
google.maps.event.addDomListener(window, 'load', initialize);
}
}()); }());

@ -24,46 +24,7 @@ function formatDates(){
} }
(function () { (function () {
var deviceId = $(".device-id");
var deviceIdentifier = deviceId.data("deviceid");
var deviceType = deviceId.data("type");
var payload = [deviceIdentifier];
if (deviceType == "ios") {
var serviceUrl = "/ios/operation/deviceinfo";
} else if (deviceType == "android") {
var serviceUrl = "/mdm-android-agent/operation/device-info";
}
invokerUtil.post(serviceUrl, payload,
function(message){
console.log(message);
}, function (message) {
console.log(message);
});
$(document).ready(function(){ $(document).ready(function(){
loadOperationBar(deviceType);
loadMap();
formatDates(); formatDates();
}); });
function loadMap(){
var map;
function initialize() {
var mapOptions = {
zoom: 18
};
var lat = 6.9098591;
var long = 79.8523753;
map = new google.maps.Map(document.getElementById('device-location'),
mapOptions);
var pos = new google.maps.LatLng(lat,
long);
var marker = new google.maps.Marker({
position: pos,
map: map
});
map.setCenter(pos);
}
google.maps.event.addDomListener(window, 'load', initialize);
}
}()); }());

Loading…
Cancel
Save