summaryrefslogtreecommitdiff
path: root/client/js/controllers/home/home.js
diff options
context:
space:
mode:
Diffstat (limited to 'client/js/controllers/home/home.js')
-rwxr-xr-xclient/js/controllers/home/home.js49
1 files changed, 48 insertions, 1 deletions
diff --git a/client/js/controllers/home/home.js b/client/js/controllers/home/home.js
index 2e3cada..287e63a 100755
--- a/client/js/controllers/home/home.js
+++ b/client/js/controllers/home/home.js
@@ -5,6 +5,51 @@
*/
mainApp.controller('homeCtrl', [ '$scope', 'Compute', '$rootScope', 'Loading','Identity', 'Image', function ($scope, Compute, $rootScope, Loading, Identity, Image)
{
+ // Function to call after pull all data about machines
+ var callMeAfterPullData=function(data){
+ //$scope.machines=Compute.getData().machines;
+ Loading.stop();
+ displayMachine();
+ };
+
+ var tryToRetrieveData = function () {
+ // If no data retrieve about machine and user is logged
+ if (Compute.getData().machines == null && Identity.isAlreadyLogin()) {
+ Loading.start(); // Show loading gif
+ Compute.pullData(callMeAfterPullData); // Retrieve data and call the callback
+ } else {
+ // Else if user is logged and data is already retrieve
+ // simply display data
+ if (Identity.isAlreadyLogin()) {
+ callMeAfterPullData(); // Display data
+ }
+ }
+ };
+
+ // On user login
+ $scope.$on('loginEvent', function () {
+ tryToRetrieveData();
+ });
+
+ // Function to call from view to display the details of a machine
+ $scope.raiseShowMachineDetailsEvent = function (id) {
+
+ // Stop loading gif and display overlay
+ var callback = function () {
+ Loading.stop();
+ var data = Compute.getData();
+
+ $rootScope.$broadcast("showMachineDetailsEvent", data.machines[id], data.axioms);
+
+ };
+ Loading.start(); // Show loading gif
+ Compute.pullMachines(callback); // Retrieve machine info and display overlay
+ };
+
+ // Try to retrieve data for the first time
+ tryToRetrieveData();
+
+
var displayMachine = function(){
var machineNames = [];
var i = 0;
@@ -158,7 +203,9 @@ mainApp.controller('homeCtrl', [ '$scope', 'Compute', '$rootScope', 'Loading','I
var width = 130;
var height = 80;
var data = Compute.getData();
-
+
+ //console.log(data.machines[vm[1]]);
+
if(data.machines[vm[1]].status == "ACTIVE"){
return new joint.shapes.org.Member({
id: vm[1],