Viewing File: /usr/local/cpanel/whostmgr/docroot/templates/transfer_tool/restore_modules_summary.cmb.js
/*
# templates/transfer_tool/controllers/RestoreModulesTableController.js Copyright(c) 2020 cPanel, L.L.C.
# All rights reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
*/
/* global define, PAGE */
/* jshint -W003 */
/* jshint -W098*/
define(
'app/controllers/RestoreModulesTableController',[
"angular"
],
function(angular) {
"use strict";
// Retrieve the current application
var app;
try {
app = angular.module("App"); // For runtime
app.value("Modules", PAGE.modules);
} catch (e) {
app = angular.module("App", []); // Fall-back for unit testing
}
function RestoreModulesTableController($scope, $filter, modules) {
$scope.modules = modules;
angular.forEach($scope.modules, function(value, key) {
value.summary = value.summary.join(" ");
if (value.restricted_summary) {
value.restricted_summary = value.restricted_summary.join(" ");
}
}, $scope.modules);
// meta information
$scope.meta = {
// sort settings
sortReverse: false,
sortBy: "module",
sortDirection: "asc",
// pager settings
maxPages: 5,
totalItems: $scope.modules.length,
filterValue: "",
};
// initialize filter list
$scope.filteredList = $scope.modules;
$scope.showPager = true;
// have your filters all in one place - easy to use
var filters = {
filter: $filter("filter"),
orderBy: $filter("orderBy")
};
// update table
$scope.fetch = function() {
var filteredList = [];
// filter list based on search text
if ($scope.meta.filterValue !== "") {
filteredList = filters.filter($scope.modules, $scope.meta.filterValue, false);
} else {
filteredList = $scope.modules;
}
// sort the filtered list
if ($scope.meta.sortDirection !== "" && $scope.meta.sortBy !== "") {
filteredList = filters.orderBy(filteredList, $scope.meta.sortBy,
$scope.meta.sortDirection === "asc" ? false : true);
}
// update the total items after search
$scope.meta.totalItems = filteredList.length;
$scope.filteredList = filteredList;
return filteredList;
};
// update the table on sort
$scope.sortList = $scope.fetch;
// update table on search
$scope.searchList = $scope.fetch;
// first page load
$scope.fetch();
}
RestoreModulesTableController.$inject = ["$scope", "$filter", "Modules"];
var controller = app.controller("RestoreModulesTableController", RestoreModulesTableController);
return controller;
}
);
/*
# templates/transfer_tool/restore_modules_summary.js Copyright(c) 2020 cPanel, L.L.C.
# All rights reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
*/
/* global require:false, define: false */
define(
'app/restore_modules_summary',[
"angular",
"cjt/core",
"cjt/modules",
"uiBootstrap",
"ngSanitize",
],
function(angular) {
"use strict";
return function() {
angular.module("App", [
"cjt2.config.whm.configProvider", // This needs to load first
"ui.bootstrap",
"ngSanitize",
"cjt2.whm"
]);
var app = require(
[
"cjt/bootstrap",
// Application Modules
"cjt/directives/toggleSortDirective",
"cjt/directives/searchDirective",
"app/controllers/RestoreModulesTableController",
], function(BOOTSTRAP) {
BOOTSTRAP(document);
});
return app;
};
}
);
Back to Directory
File Manager