mirror of
https://github.com/usmannasir/cyberpanel.git
synced 2025-11-07 22:06:05 +01:00
save work
This commit is contained in:
139
filemanager/static/filemanager/js/codeMirror.js
Executable file
139
filemanager/static/filemanager/js/codeMirror.js
Executable file
@@ -0,0 +1,139 @@
|
||||
function getCookie(name) {
|
||||
var cookieValue = null;
|
||||
if (document.cookie && document.cookie !== '') {
|
||||
var cookies = document.cookie.split(';');
|
||||
for (var i = 0; i < cookies.length; i++) {
|
||||
var cookie = jQuery.trim(cookies[i]);
|
||||
// Does this cookie string begin with the name we want?
|
||||
if (cookie.substring(0, name.length + 1) === (name + '=')) {
|
||||
cookieValue = decodeURIComponent(cookie.substring(name.length + 1));
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return cookieValue;
|
||||
}
|
||||
|
||||
var fileManager = angular.module('editFile', []);
|
||||
|
||||
fileManager.config(['$interpolateProvider', function ($interpolateProvider) {
|
||||
$interpolateProvider.startSymbol('{$');
|
||||
$interpolateProvider.endSymbol('$}');
|
||||
}]);
|
||||
|
||||
|
||||
fileManager.controller('editFileCtrl', function ($scope, $http, $window) {
|
||||
|
||||
$('form').submit(function (e) {
|
||||
e.preventDefault();
|
||||
});
|
||||
|
||||
var domainName = $("#domainNameInitial").text();
|
||||
|
||||
$scope.editDisable = true;
|
||||
// html editor
|
||||
$scope.errorMessageEditor = true;
|
||||
$scope.htmlEditorLoading = true;
|
||||
$scope.saveSuccess = true;
|
||||
|
||||
var url = '/filemanager/controller';
|
||||
|
||||
$scope.getFileContents = function () {
|
||||
|
||||
|
||||
var data = {
|
||||
fileName: $("#completeFilePath").text(),
|
||||
method: "readFileContents",
|
||||
domainName: domainName
|
||||
};
|
||||
|
||||
var config = {
|
||||
headers: {
|
||||
'X-CSRFToken': getCookie('csrftoken')
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
$http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
|
||||
|
||||
|
||||
function ListInitialDatas(response) {
|
||||
|
||||
$scope.htmlEditorLoading = true;
|
||||
|
||||
if (response.data.status === 1) {
|
||||
|
||||
var cm = new CodeMirror.fromTextArea(document.getElementById("fileContent"), {
|
||||
lineNumbers: true,
|
||||
mode: $("#mode").text(),
|
||||
theme: "dracula",
|
||||
lineWrapping: false
|
||||
});
|
||||
|
||||
cm.setValue(response.data.fileContents);
|
||||
cm.on("keyup", function (cm, event) {
|
||||
if (!cm.state.completionActive &&
|
||||
event.keyCode != 13) {
|
||||
CodeMirror.commands.autocomplete(cm, null, {completeSingle: false});
|
||||
}
|
||||
});
|
||||
|
||||
} else {
|
||||
$scope.errorMessageEditor = false;
|
||||
$scope.error_message = response.data.error_message;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function cantLoadInitialDatas(response) {
|
||||
}
|
||||
|
||||
};
|
||||
$scope.getFileContents();
|
||||
|
||||
$scope.putFileContents = function () {
|
||||
|
||||
$scope.htmlEditorLoading = false;
|
||||
$scope.saveSuccess = true;
|
||||
$scope.errorMessageEditor = true;
|
||||
|
||||
var completePathForFile = $scope.currentPath;
|
||||
|
||||
var data = {
|
||||
fileName: completePathForFile,
|
||||
method: "writeFileContents",
|
||||
fileContent: editor.getValue(),
|
||||
domainRandomSeed: domainRandomSeed,
|
||||
domainName: domainName
|
||||
};
|
||||
|
||||
|
||||
var config = {
|
||||
headers: {
|
||||
'X-CSRFToken': getCookie('csrftoken')
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
$http.post(url, data, config).then(ListInitialDatas, cantLoadInitialDatas);
|
||||
|
||||
function ListInitialDatas(response) {
|
||||
|
||||
$scope.htmlEditorLoading = true;
|
||||
|
||||
if (response.data.status === 1) {
|
||||
$scope.htmlEditorLoading = true;
|
||||
$scope.saveSuccess = false;
|
||||
} else {
|
||||
$scope.errorMessageEditor = false;
|
||||
$scope.error_message = response.data.error_message;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function cantLoadInitialDatas(response) {
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
});
|
||||
Reference in New Issue
Block a user