Lemonldap-NG-Manager
view release on metacpan or search on metacpan
site/htdocs/static/js/diff.js view on Meta::CPAN
(function () {
'use strict';
/*
diff.html script
*/
var llapp;
llapp = angular.module('llngConfDiff', ['ui.tree', 'ui.bootstrap', 'llApp', 'ngCookies'], ['$rootScopeProvider', function ($rootScopeProvider) {
return $rootScopeProvider.digestTtl(15);
}]);
llapp.controller('DiffCtrl', ['$scope', '$http', '$q', '$translator', '$location', function ($scope, $http, $q, $translator, $location) {
var buildTree, getCfg, init, pathEvent, readDiff, reverseTree, toNodes;
$scope.links = links;
$scope.menulinks = menulinks;
$scope.staticPrefix = staticPrefix;
$scope.scriptname = scriptname;
//$scope.formPrefix = formPrefix
$scope.availableLanguages = availableLanguages;
$scope.waiting = true;
$scope.showM = false;
$scope.cfg = [];
$scope.data = {};
$scope.currentNode = null;
// Import translations functions
$scope.translateTitle = function (node) {
return $translator.translateField(node, 'title');
};
$scope.translateP = $translator.translateP;
$scope.translate = $translator.translate;
$scope.toggle = function (scope) {
return scope.toggle();
};
$scope.stoggle = function (scope, node) {
$scope.currentNode = node;
return scope.toggle();
};
// Handle menu items
$scope.menuClick = function (button) {
if (button.popup) {
window.open(button.popup);
} else {
if (!button.action) {
button.action = button.title;
}
switch (typeof button.action) {
case 'function':
button.action($scope.currentNode, $scope);
break;
case 'string':
$scope[button.action]();
break;
default:
console.warn('Unknown action type', typeof button.action);
}
}
return $scope.showM = false;
};
// Function to change interface language
$scope.getLanguage = function (lang) {
$scope.lang = lang;
init();
return $scope.showM = false;
};
// function `getCfg(b,n)`:
// Download configuration metadatas
//@param b local conf (0 or 1)
//@param n cfgNumber
getCfg = function (b, n) {
var d;
d = $q.defer();
if ($scope.cfg[b] == null || $scope.cfg[b] !== n) {
$http.get(`${confPrefix}${n}`).then(function (response) {
var date;
if (response && response.data) {
$scope.cfg[b] = response.data;
date = new Date(response.data.cfgDate * 1000);
$scope.cfg[b].date = date.toLocaleString();
console.debug(`Metadatas of cfg ${n} loaded`);
return d.resolve('OK');
} else {
return d.reject(response);
}
}, function (response) {
return d.reject('NOK');
});
} else {
d.resolve();
}
return d.promise;
};
// Intialization function
// Simply set $scope.waiting to false during $translator and tree root
// initialization
init = function () {
$scope.message = null;
$scope.currentNode = null;
$q.all([$translator.init($scope.lang), $http.get(`${staticPrefix}reverseTree.json`).then(function (response) {
response.data;
console.debug("Structure loaded");
( run in 1.278 second using v1.01-cache-2.11-cpan-364913b4093 )