mirror of
https://github.com/hak5/nano-tetra-modules.git
synced 2025-10-29 16:58:09 +00:00
Add modules to repository
This commit is contained in:
129
Cabinet/js/module.js
Normal file
129
Cabinet/js/module.js
Normal file
@@ -0,0 +1,129 @@
|
||||
registerController("CabinetController", ['$api', '$scope', function($api, $scope) {
|
||||
|
||||
$scope.userDirectory = '';
|
||||
$scope.currentDirectory = '/';
|
||||
$scope.directoryContents = [];
|
||||
$scope.editFile = {name: "", path: "", content: ""};
|
||||
$scope.deleteFile = {name: "", path: "", directory: false};
|
||||
$scope.newFolder = {name: "", path: $scope.currentDirectory};
|
||||
$scope.message = {};
|
||||
|
||||
$scope.showMessage = function(msgTitle, msgBody) {
|
||||
$scope.message = {title: msgTitle, body: msgBody};
|
||||
$('#messageModal').modal("show");
|
||||
}
|
||||
|
||||
$scope.submitChangeDirectory = function(directory) {
|
||||
console.log(directory);
|
||||
}
|
||||
|
||||
$scope.getDirectoryContents = function(dir) {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "getDirectoryContents",
|
||||
directory: dir
|
||||
}, function(response) {
|
||||
if (response.success == true) {
|
||||
$scope.currentDirectory = response.directory;
|
||||
$scope.directoryContents = [];
|
||||
for (var i = 0; i < response.contents.length; i++) {
|
||||
$scope.directoryContents.unshift({name: response.contents[i].name,
|
||||
directory: response.contents[i].directory,
|
||||
path: response.contents[i].path,
|
||||
permissions: response.contents[i].permissions,
|
||||
size: response.contents[i].size
|
||||
});
|
||||
}
|
||||
} else {
|
||||
$scope.showMessage("Error Loading Directory", "There was an error loading directory contents. Please verify that the directory you are navigating to exists.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.goToParentDirctory = function() {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "getParentDirectory",
|
||||
directory: $scope.currentDirectory
|
||||
}, function(response) {
|
||||
if (response.success == true) {
|
||||
parent = response.parent;
|
||||
$scope.getDirectoryContents(parent);
|
||||
} else {
|
||||
$scope.showMessage("Error Finding Parent Directory", "An error occured while trying to find the parent directory. Please verify that the directory you are navigating to exists.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.requestDeleteFile = function(file) {
|
||||
$scope.deleteFile.name = file.name;
|
||||
$scope.deleteFile.path = file.path;
|
||||
$scope.deleteFile.directory = file.directory;
|
||||
console.log($scope.deleteFile);
|
||||
}
|
||||
|
||||
$scope.sendDeleteFile = function() {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "deleteFile",
|
||||
file: $scope.deleteFile.path
|
||||
}, function(response) {
|
||||
if (response.success == true) {
|
||||
$scope.deleteFile = {};
|
||||
$scope.getDirectoryContents($scope.currentDirectory);
|
||||
} else {
|
||||
$scope.showMessage("Error Deleting File", "An error occured while trying to delete the file " + $scope.deleteFile.path + ". Please verify that this file exists and you have permission to delete it.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.requestEditFile = function(file) {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "getFileContents",
|
||||
file: file.path
|
||||
}, function(response) {
|
||||
if (response.success == true) {
|
||||
$scope.editFile = {name: file.name, path: file.path, content: response.content};
|
||||
} else {
|
||||
$scope.showMessage("Error Loading File Contents", "An error occured while trying to load the file " + file.name + ". Please verify that this file exists and you have permission to edit it.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.sendEditFile = function() {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "editFile",
|
||||
file: $scope.currentDirectory + "/" + $scope.editFile.name,
|
||||
contents: $scope.editFile.content
|
||||
}, function(response) {
|
||||
if (response.success) {
|
||||
$scope.editFile = {};
|
||||
$scope.getDirectoryContents($scope.currentDirectory);
|
||||
} else {
|
||||
$scope.showMessage("Error Saving File", "An error occured while trying to save the file " + $scope.editFile.name + ". Please verify that this file exists and you have permission to edit it.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.createFolder = function() {
|
||||
$api.request({
|
||||
module: "Cabinet",
|
||||
action: "createFolder",
|
||||
name: $scope.newFolder.name,
|
||||
directory: $scope.currentDirectory
|
||||
}, function(response) {
|
||||
if (response.success == true) {
|
||||
$scope.newFolder = {};
|
||||
$scope.getDirectoryContents($scope.currentDirectory);
|
||||
} else {
|
||||
$scope.showMessage("Error Creating Directory", "An error occured while trying to create the folder " + $scope.newFolder.name + ". Please verify that you have permission to create new items in this directory.");
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
$scope.getDirectoryContents($scope.currentDirectory);
|
||||
|
||||
|
||||
}]);
|
||||
Reference in New Issue
Block a user