mirror of
https://github.com/sigmasternchen/webcli
synced 2025-03-15 06:08:54 +00:00
javascript part of ls... i wonder if it would be a good idea to Ls.formatTime to miscellaneous.js
This commit is contained in:
parent
a835a0be33
commit
1f2f978084
1 changed files with 97 additions and 0 deletions
97
data/scripts/programs/Ls.js
Normal file
97
data/scripts/programs/Ls.js
Normal file
|
@ -0,0 +1,97 @@
|
|||
var Ls = function() {
|
||||
}
|
||||
Ls.prototype = new Program();
|
||||
Ls.prototype.main = function(args) {
|
||||
var result = new Request("backend/ls.php");
|
||||
result.setData([["path", args.length > 1 ? args[1] : shell.directory]]);
|
||||
result = result.send(true, ret);
|
||||
result = JSON.parse(result);
|
||||
var spaces = [10, -0, -0, -0, -0, 12, -0];
|
||||
for (var i = 0; i < result.length; i++) {
|
||||
if (result[i].hardlinks.length > spaces[1])
|
||||
spaces[1] = result[i].hardlinks.length;
|
||||
if (result[i].owner.length > spaces[2])
|
||||
spaces[2] = result[i].owner.length;
|
||||
if (result[i].group.length > spaces[3])
|
||||
spaces[3] = result[i].group.length;
|
||||
if (result[i].size.length > spaces[4])
|
||||
spaces[4] = result[i].size.length;
|
||||
if (result[i].name.length > spaces[4])
|
||||
spaces[4] = result[i].name.length;
|
||||
}
|
||||
for (var i = 0; i < result.length; i++) {
|
||||
this.output(result[i].permission + " ");
|
||||
for (var j = 0; j < spaces[1] - result[i].hardlinks.length; j++)
|
||||
this.output(" ");
|
||||
this.output(result[i].hardlinks + " ");
|
||||
this.output(result[i].owner);
|
||||
for (var j = 0; j < spaces[3] - result[i].owner.length; j++)
|
||||
this.output(" ");
|
||||
this.output(result[i].group);
|
||||
for (var j = 0; j < spaces[3] - result[i].group.length; j++)
|
||||
this.output(" ");
|
||||
for (var j = 0; j < spaces[2] - result[i].size.length; j++)
|
||||
this.output(" ");
|
||||
this.output(result[i].size + " ");
|
||||
this.output(this.formatTime(parseInt(result[i].changed)) + " ");
|
||||
this.output(result[i].name + "\n");
|
||||
}
|
||||
this.exit(0);
|
||||
}
|
||||
Ls.prototype.formatTime = function(time) {
|
||||
var tmp = "";
|
||||
var date = new Date (time * 1000);
|
||||
switch(date.getMonth()) {
|
||||
case 0:
|
||||
tmp += "Jan";
|
||||
break;
|
||||
case 1:
|
||||
tmp += "Feb";
|
||||
break;
|
||||
case 2:
|
||||
tmp += "Mar";
|
||||
break;
|
||||
case 3:
|
||||
tmp += "Apr";
|
||||
break;
|
||||
case 4:
|
||||
tmp += "May";
|
||||
break;
|
||||
case 5:
|
||||
tmp += "Jun";
|
||||
break;
|
||||
case 6:
|
||||
tmp += "Jul";
|
||||
break;
|
||||
case 7:
|
||||
tmp += "Aug";
|
||||
break;
|
||||
case 8:
|
||||
tmp += "Sep";
|
||||
break;
|
||||
case 9:
|
||||
tmp += "Oct";
|
||||
break;
|
||||
case 10:
|
||||
tmp += "Nov";
|
||||
break;
|
||||
case 11:
|
||||
tmp += "Dev";
|
||||
break;
|
||||
}
|
||||
tmp += " ";
|
||||
if (date.getDate() < 10)
|
||||
tmp += " ";
|
||||
tmp += date.getDate();
|
||||
tmp += " ";
|
||||
tmp += pad(date.getHours());
|
||||
tmp += ":";
|
||||
tmp += pad(date.getMinutes());
|
||||
return tmp;
|
||||
}
|
||||
|
||||
|
||||
ProgramManager.programs.push({
|
||||
command: "ls",
|
||||
code: Ls
|
||||
})
|
Loading…
Reference in a new issue