Эх сурвалжийг харах

Updated go version and dependencies to 1.20

Toby Chui 2 жил өмнө
parent
commit
f68720026a
41 өөрчлөгдсөн 403 нэмэгдсэн , 1030 устгасан
  1. 38 38
      go.mod
  2. 114 479
      go.sum
  3. 4 4
      legacy/FFmpeg Factory/README.txt
  4. 64 64
      legacy/FFmpeg Factory/backend/convert.js
  5. 8 8
      legacy/FFmpeg Factory/backend/readConfig.js
  6. 14 14
      legacy/FFmpeg Factory/backend/writeConfig.js
  7. 11 11
      legacy/FFmpeg Factory/config/i2i.json
  8. 6 6
      legacy/FFmpeg Factory/config/other.json
  9. 11 11
      legacy/FFmpeg Factory/config/v2a.json
  10. 15 15
      legacy/FFmpeg Factory/config/v2v.json
  11. 0 0
      legacy/FFmpeg Factory/img/desktop_icon.png
  12. 0 0
      legacy/FFmpeg Factory/img/desktop_icon.psd
  13. 0 0
      legacy/FFmpeg Factory/img/module_icon.png
  14. 0 0
      legacy/FFmpeg Factory/img/module_icon.psd
  15. 0 0
      legacy/FFmpeg Factory/img/small_icon.png
  16. 0 0
      legacy/FFmpeg Factory/img/small_icon.psd
  17. 0 267
      legacy/FFmpeg Factory/index.html
  18. 30 30
      legacy/FFmpeg Factory/init.agi
  19. 0 1
      legacy/FFmpeg Factory/jquery.min.js
  20. 0 0
      legacy/FFmpeg Factory/tocas.css
  21. 0 0
      legacy/Message/backend/rpc.js
  22. 0 0
      legacy/Message/chat.html
  23. 0 0
      legacy/Message/img/desktop_icon.png
  24. 0 0
      legacy/Message/img/desktop_icon.psd
  25. 0 0
      legacy/Message/img/logo.png
  26. 0 0
      legacy/Message/img/module_icon.png
  27. 0 0
      legacy/Message/img/module_icon.psd
  28. 0 0
      legacy/Message/img/noicon.png
  29. 0 0
      legacy/Message/img/noicon.psd
  30. 0 0
      legacy/Message/img/small_icon.png
  31. 0 0
      legacy/Message/img/small_icon.psd
  32. 0 0
      legacy/Message/index.html
  33. 0 0
      legacy/Message/init.agi
  34. 0 0
      legacy/Message/message.js
  35. 1 1
      main.flags.go
  36. 3 3
      mod/agi/external.agi.go
  37. 3 4
      storage.pool.go
  38. 0 21
      web/SystemAO/info/license/Tocas UI.txt
  39. 15 1
      web/SystemAO/internalServerError.html
  40. 65 51
      web/SystemAO/notfound.html
  41. 1 1
      web/desktop.system

+ 38 - 38
go.mod

@@ -1,89 +1,89 @@
 module imuslab.com/arozos
 
-go 1.17
+go 1.20
 
 require (
 	github.com/boltdb/bolt v1.3.1
 	github.com/dhowden/tag v0.0.0-20220618230019-adf36e896086
 	github.com/disintegration/imaging v1.6.2
-	github.com/fclairamb/ftpserverlib v0.19.1
+	github.com/fclairamb/ftpserverlib v0.21.0
 	github.com/fogleman/fauxgl v0.0.0-20200818143847-27cddc103802
-	github.com/gabriel-vasile/mimetype v1.4.1
-	github.com/go-git/go-git/v5 v5.4.2
+	github.com/gabriel-vasile/mimetype v1.4.2
+	github.com/go-git/go-git/v5 v5.6.1
 	github.com/go-ldap/ldap v3.0.3+incompatible
 	github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0
-	github.com/google/uuid v1.3.0
 	github.com/gorilla/sessions v1.2.1
 	github.com/gorilla/websocket v1.5.0
 	github.com/grandcat/zeroconf v1.0.0
 	github.com/hirochachacha/go-smb2 v1.1.0
 	github.com/jlaffaye/ftp v0.1.0
-	github.com/koron/go-ssdp v0.0.3
+	github.com/koron/go-ssdp v0.0.4
 	github.com/mholt/archiver/v3 v3.5.1
 	github.com/nfnt/resize v0.0.0-20180221191011-83c6a9932646
 	github.com/oliamb/cutter v0.2.2
 	github.com/oov/psd v0.0.0-20220121172623-5db5eafcecbb
 	github.com/pkg/sftp v1.13.5
-	github.com/robertkrimen/otto v0.0.0-20211024170158-b87d35c0b86f
+	github.com/robertkrimen/otto v0.2.1
 	github.com/satori/go.uuid v1.2.0
-	github.com/spf13/afero v1.9.2
-	github.com/studio-b12/gowebdav v0.0.0-20220128162035-c7b1ff8a5e62
-	github.com/tidwall/pretty v1.2.0
-	github.com/valyala/fasttemplate v1.2.1
+	github.com/spf13/afero v1.9.5
+	github.com/studio-b12/gowebdav v0.0.0-20230203202212-3282f94193f2
+	github.com/valyala/fasttemplate v1.2.2
 	github.com/willscott/go-nfs v0.0.0-20230313234243-d94d22138e1e
 	gitlab.com/NebulousLabs/go-upnp v0.0.0-20211002182029-11da932010b6
-	golang.org/x/crypto v0.3.0
-	golang.org/x/oauth2 v0.0.0-20220822191816-0ebed06d0094
-	golang.org/x/sync v0.0.0-20220819030929-7fc1605a5dde
+	golang.org/x/crypto v0.9.0
+	golang.org/x/oauth2 v0.8.0
+	golang.org/x/sync v0.2.0
 )
 
 require (
-	cloud.google.com/go/compute v1.9.0 // indirect
-	github.com/Microsoft/go-winio v0.5.2 // indirect
-	github.com/ProtonMail/go-crypto v0.0.0-20220824120805-4b6e5c587895 // indirect
-	github.com/acomagu/bufpipe v1.0.3 // indirect
-	github.com/andybalholm/brotli v1.0.4 // indirect
+	cloud.google.com/go/compute v1.19.2 // indirect
+	cloud.google.com/go/compute/metadata v0.2.3 // indirect
+	github.com/Microsoft/go-winio v0.6.1 // indirect
+	github.com/ProtonMail/go-crypto v0.0.0-20230426101702-58e86b294756 // indirect
+	github.com/acomagu/bufpipe v1.0.4 // indirect
+	github.com/andybalholm/brotli v1.0.5 // indirect
 	github.com/cenkalti/backoff v2.2.1+incompatible // indirect
-	github.com/cloudflare/circl v1.2.0 // indirect
+	github.com/cloudflare/circl v1.3.3 // indirect
 	github.com/dsnet/compress v0.0.2-0.20210315054119-f66993602bf5 // indirect
 	github.com/emirpasic/gods v1.18.1 // indirect
 	github.com/fclairamb/go-log v0.4.1 // indirect
 	github.com/fogleman/simplify v0.0.0-20170216171241-d32f302d5046 // indirect
 	github.com/geoffgarside/ber v1.1.0 // indirect
 	github.com/go-git/gcfg v1.5.0 // indirect
-	github.com/go-git/go-billy/v5 v5.3.1 // indirect
-	github.com/golang/protobuf v1.5.2 // indirect
+	github.com/go-git/go-billy/v5 v5.4.1 // indirect
+	github.com/golang/protobuf v1.5.3 // indirect
 	github.com/golang/snappy v0.0.4 // indirect
 	github.com/gopherjs/gopherjs v1.17.2 // indirect
 	github.com/gorilla/securecookie v1.1.1 // indirect
 	github.com/hashicorp/errwrap v1.1.0 // indirect
 	github.com/hashicorp/go-multierror v1.1.1 // indirect
-	github.com/imdario/mergo v0.3.13 // indirect
+	github.com/imdario/mergo v0.3.15 // indirect
 	github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 // indirect
 	github.com/kevinburke/ssh_config v1.2.0 // indirect
-	github.com/klauspost/compress v1.15.9 // indirect
-	github.com/klauspost/pgzip v1.2.5 // indirect
+	github.com/klauspost/compress v1.16.5 // indirect
+	github.com/klauspost/pgzip v1.2.6 // indirect
 	github.com/kr/fs v0.1.0 // indirect
-	github.com/miekg/dns v1.1.50 // indirect
-	github.com/mitchellh/go-homedir v1.1.0 // indirect
+	github.com/miekg/dns v1.1.54 // indirect
 	github.com/nwaples/rardecode v1.1.3 // indirect
-	github.com/pierrec/lz4/v4 v4.1.15 // indirect
+	github.com/pierrec/lz4/v4 v4.1.17 // indirect
+	github.com/pjbgf/sha1cd v0.3.0 // indirect
 	github.com/rasky/go-xdr v0.0.0-20170124162913-1a41d1a06c93 // indirect
-	github.com/sergi/go-diff v1.2.0 // indirect
-	github.com/ulikunitz/xz v0.5.10 // indirect
+	github.com/sergi/go-diff v1.3.1 // indirect
+	github.com/skeema/knownhosts v1.1.0 // indirect
+	github.com/ulikunitz/xz v0.5.11 // indirect
 	github.com/valyala/bytebufferpool v1.0.0 // indirect
 	github.com/willscott/go-nfs-client v0.0.0-20200605172546-271fa9065b33 // indirect
-	github.com/xanzy/ssh-agent v0.3.2 // indirect
+	github.com/xanzy/ssh-agent v0.3.3 // indirect
 	github.com/xi2/xz v0.0.0-20171230120015-48954b6210f8 // indirect
 	gitlab.com/NebulousLabs/fastrand v0.0.0-20181126182046-603482d69e40 // indirect
-	golang.org/x/image v0.0.0-20220902085622-e7cb96979f69 // indirect
-	golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4 // indirect
-	golang.org/x/net v0.2.0 // indirect
-	golang.org/x/sys v0.3.0 // indirect
-	golang.org/x/text v0.4.0 // indirect
-	golang.org/x/tools v0.1.12 // indirect
+	golang.org/x/image v0.7.0 // indirect
+	golang.org/x/mod v0.10.0 // indirect
+	golang.org/x/net v0.10.0 // indirect
+	golang.org/x/sys v0.8.0 // indirect
+	golang.org/x/text v0.9.0 // indirect
+	golang.org/x/tools v0.9.1 // indirect
 	google.golang.org/appengine v1.6.7 // indirect
-	google.golang.org/protobuf v1.28.1 // indirect
+	google.golang.org/protobuf v1.30.0 // indirect
 	gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d // indirect
 	gopkg.in/sourcemap.v1 v1.0.5 // indirect
 	gopkg.in/warnings.v0 v0.1.2 // indirect

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 114 - 479
go.sum


+ 4 - 4
web/FFmpeg Factory/README.txt → legacy/FFmpeg Factory/README.txt

@@ -1,5 +1,5 @@
-This is a wrapper for FFmpeg. Licensed under MIT (Not under FFmpeg)
-Also, the FFmpeg main binary (or program if you wanna call it like that) is licensed under GNU and it is under its own folder (ffmpeg-{version_number}-win32-static). Please read the license.txt for more information on the license.
-
-Wrapper written by Toby Chui feat. IMUS Laboratory under ArOZ Online Project Beta
+This is a wrapper for FFmpeg. Licensed under MIT (Not under FFmpeg)
+Also, the FFmpeg main binary (or program if you wanna call it like that) is licensed under GNU and it is under its own folder (ffmpeg-{version_number}-win32-static). Please read the license.txt for more information on the license.
+
+Wrapper written by Toby Chui feat. IMUS Laboratory under ArOZ Online Project Beta
 Learn more at http://imuslab.com/. 

+ 64 - 64
web/FFmpeg Factory/backend/convert.js → legacy/FFmpeg Factory/backend/convert.js

@@ -1,64 +1,64 @@
-/*
-    FFmpeg Factory ArOZ JavaScript Gateway Interface Converter
-
-    This script will launch ffmpeg and convert a given file into the desired format
-*/
-//Require library
-requirelib("filelib");
-
-//Globaal variables
-var targetFilepath = filepath;
-var conversionCommand = command;
-
-//Helper function to get the filepath.Dir of the realpath
-function dir(filepath){
-	filepath = filepath.split("/");
-	filepath.pop();
-	return filepath.join("/");
-}
-
-//Return the filename of the path without extension
-function base(filepath){
-    filepath = filepath.split("\\").join("/");
-    filepath = filepath.split("/");
-    filename = filepath.pop();
-    filename = filename.split(".")
-    filename.pop();
-    return filename.join(".");
-}
-
-//Package required. Get the real path of the file
-if (filelib.fileExists(targetFilepath)){
-    var srcReal = decodeVirtualPath(targetFilepath);
-    srcReal = srcReal.split("\\").join("/");
-
-    //Parse the command for the conversion
-    var actualCommand = decodeURIComponent(command);
-    actualCommand = actualCommand.replace('{filepath}',srcReal);
-    actualCommand = actualCommand.replace('{filename}',dir(srcReal) + "/" + base(srcReal))
-
-    //Register this task in on-going task list
-    newDBTableIfNotExists("FFmpeg Factory")
-    var ts = Math.round((new Date()).getTime() / 1000);
-    var taskKey = USERNAME + "/" + ts;
-    writeDBItem("FFmpeg Factory",taskKey,targetFilepath)
-
-    //Pass the command into ffmpeg pkg
-    var results = execpkg("ffmpeg",actualCommand);
-
-    //Deregister this task from on-going task list
-    deleteDBItem("FFmpeg Factory",taskKey,targetFilepath);
-
-    sendJSONResp(JSON.stringify({
-        status: "ok",
-        execresults: results
-    }));
-
-   
-
-}else{
-    //File not exists. Return an error json
-    sendJSONResp(JSON.stringify({
-        error: "File not exists: " + targetFilepath
-    }));
-}
+/*
+    FFmpeg Factory ArOZ JavaScript Gateway Interface Converter
+
+    This script will launch ffmpeg and convert a given file into the desired format
+*/
+//Require library
+requirelib("filelib");
+
+//Globaal variables
+var targetFilepath = filepath;
+var conversionCommand = command;
+
+//Helper function to get the filepath.Dir of the realpath
+function dir(filepath){
+	filepath = filepath.split("/");
+	filepath.pop();
+	return filepath.join("/");
+}
+
+//Return the filename of the path without extension
+function base(filepath){
+    filepath = filepath.split("\\").join("/");
+    filepath = filepath.split("/");
+    filename = filepath.pop();
+    filename = filename.split(".")
+    filename.pop();
+    return filename.join(".");
+}
+
+//Package required. Get the real path of the file
+if (filelib.fileExists(targetFilepath)){
+    var srcReal = decodeVirtualPath(targetFilepath);
+    srcReal = srcReal.split("\\").join("/");
+
+    //Parse the command for the conversion
+    var actualCommand = decodeURIComponent(command);
+    actualCommand = actualCommand.replace('{filepath}',srcReal);
+    actualCommand = actualCommand.replace('{filename}',dir(srcReal) + "/" + base(srcReal))
+
+    //Register this task in on-going task list
+    newDBTableIfNotExists("FFmpeg Factory")
+    var ts = Math.round((new Date()).getTime() / 1000);
+    var taskKey = USERNAME + "/" + ts;
+    writeDBItem("FFmpeg Factory",taskKey,targetFilepath)
+
+    //Pass the command into ffmpeg pkg
+    var results = execpkg("ffmpeg",actualCommand);
+
+    //Deregister this task from on-going task list
+    deleteDBItem("FFmpeg Factory",taskKey,targetFilepath);
+
+    sendJSONResp(JSON.stringify({
+        status: "ok",
+        execresults: results
+    }));
+
+   
+
+}else{
+    //File not exists. Return an error json
+    sendJSONResp(JSON.stringify({
+        error: "File not exists: " + targetFilepath
+    }));
+}

+ 8 - 8
web/FFmpeg Factory/backend/readConfig.js → legacy/FFmpeg Factory/backend/readConfig.js

@@ -1,8 +1,8 @@
-if (newDBTableIfNotExists("FFmpeg Factory")){
-	var value = readDBItem("FFmpeg Factory",USERNAME + "_" + key);
-	sendResp(value);
-}else{
-	sendJSONResp(JSON.stringify({
-		error: "Database Creation Failed"
-	}));
-}
+if (newDBTableIfNotExists("FFmpeg Factory")){
+	var value = readDBItem("FFmpeg Factory",USERNAME + "_" + key);
+	sendResp(value);
+}else{
+	sendJSONResp(JSON.stringify({
+		error: "Database Creation Failed"
+	}));
+}

+ 14 - 14
web/FFmpeg Factory/backend/writeConfig.js → legacy/FFmpeg Factory/backend/writeConfig.js

@@ -1,14 +1,14 @@
-if (newDBTableIfNotExists("FFmpeg Factory")){
-	if (writeDBItem("FFmpeg Factory",USERNAME + "_" + key,value)){
-		sendJSONResp(JSON.stringify("OK"));
-	}else{
-		sendJSONResp(JSON.stringify({
-			error: "Database write failed"
-		}));
-	}
-	
-}else{
-	sendJSONResp(JSON.stringify({
-		error: "Database Creation Failed"
-	}));
-}
+if (newDBTableIfNotExists("FFmpeg Factory")){
+	if (writeDBItem("FFmpeg Factory",USERNAME + "_" + key,value)){
+		sendJSONResp(JSON.stringify("OK"));
+	}else{
+		sendJSONResp(JSON.stringify({
+			error: "Database write failed"
+		}));
+	}
+	
+}else{
+	sendJSONResp(JSON.stringify({
+		error: "Database Creation Failed"
+	}));
+}

+ 11 - 11
web/FFmpeg Factory/config/i2i.json → legacy/FFmpeg Factory/config/i2i.json

@@ -1,11 +1,11 @@
-{
-    "PNG(Default)": "-y -i \"{filepath}\" \"{filename}.png\"",
-    "PNG(High Quality)": "-y -i \"{filepath}\" -compression_level 0 \"{filename}.png\"",
-    "PNG(Low Quality)": "-y -i \"{filepath}\" -compression_level 200 \"{filename}.png\"",
-    "JPG(Default)": "-y -i \"{filepath}\" \"{filename}.jpg\"",
-    "JPG(High Quality)": "-y -i \"{filepath}\" -compression_level 0 \"{filename}.jpg\"",
-    "JPG(Low Quality)": "-y -i \"{filepath}\" -compression_level 200 \"{filename}.jpg\"",
-    "GIF": "-y -i \"{filepath}\" \"{filename}.gif\"",
-    "BMP": "-y -i \"{filepath}\" \"{filename}.bmp\"",
-    "TIF(TIFF)": "-y -i \"{filepath}\" \"{filename}.tif\""
-}
+{
+    "PNG(Default)": "-y -i \"{filepath}\" \"{filename}.png\"",
+    "PNG(High Quality)": "-y -i \"{filepath}\" -compression_level 0 \"{filename}.png\"",
+    "PNG(Low Quality)": "-y -i \"{filepath}\" -compression_level 200 \"{filename}.png\"",
+    "JPG(Default)": "-y -i \"{filepath}\" \"{filename}.jpg\"",
+    "JPG(High Quality)": "-y -i \"{filepath}\" -compression_level 0 \"{filename}.jpg\"",
+    "JPG(Low Quality)": "-y -i \"{filepath}\" -compression_level 200 \"{filename}.jpg\"",
+    "GIF": "-y -i \"{filepath}\" \"{filename}.gif\"",
+    "BMP": "-y -i \"{filepath}\" \"{filename}.bmp\"",
+    "TIF(TIFF)": "-y -i \"{filepath}\" \"{filename}.tif\""
+}

+ 6 - 6
web/FFmpeg Factory/config/other.json → legacy/FFmpeg Factory/config/other.json

@@ -1,6 +1,6 @@
-{
-	"MP4 to GIF": "-y -i \"{filepath}\" -f gif \"{filename}.gif\"",
-	"GIF to MP4": "-y -i \"{filepath}\" -f mp4 -pix_fmt yuv420p \"{filename}.mp4\"",
-	"SRT to ASS": "-y -i \"{filepath}\" \"{filename}.ass\"",
-	"ASS to SRT": "-y -i \"{filepath}\" -c:s srt \"{filename}.srt\""
-}
+{
+	"MP4 to GIF": "-y -i \"{filepath}\" -f gif \"{filename}.gif\"",
+	"GIF to MP4": "-y -i \"{filepath}\" -f mp4 -pix_fmt yuv420p \"{filename}.mp4\"",
+	"SRT to ASS": "-y -i \"{filepath}\" \"{filename}.ass\"",
+	"ASS to SRT": "-y -i \"{filepath}\" -c:s srt \"{filename}.srt\""
+}

+ 11 - 11
web/FFmpeg Factory/config/v2a.json → legacy/FFmpeg Factory/config/v2a.json

@@ -1,12 +1,12 @@
-{
-    "MP3(Default)": "-y -i \"{filepath}\" \"{filename}.mp3\"",
-    "MP3(320 Kbps)": "-y -i \"{filepath}\" -b:a 320k \"{filename}.mp3\"",
-    "MP3(256 Kbps)": "-y -i \"{filepath}\" -b:a 256k \"{filename}.mp3\"",
-    "MP3(192 Kbps)": "-y -i \"{filepath}\" -b:a 192k \"{filename}.mp3\"",
-    "MP3(128 Kbps)": "-y -i \"{filepath}\" -b:a 128k \"{filename}.mp3\"",
-    "AAC(Default)": "-y -i \"{filepath}\" -strict experimental \"{filename}.aac\"",
-    "AAC(codec copy)": "-i \"{filepath}\" -vn -acodec copy \"{filename}.aac\"",
-    "FLAC": "-y -i \"{filepath}\" \"{filename}.flac\"",
-    "OGG": "-y -i \"{filepath}\" \"{filename}.ogg\"",
-    "WAV": "-y -i \"{filepath}\" \"{filename}.wav\""
+{
+    "MP3(Default)": "-y -i \"{filepath}\" \"{filename}.mp3\"",
+    "MP3(320 Kbps)": "-y -i \"{filepath}\" -b:a 320k \"{filename}.mp3\"",
+    "MP3(256 Kbps)": "-y -i \"{filepath}\" -b:a 256k \"{filename}.mp3\"",
+    "MP3(192 Kbps)": "-y -i \"{filepath}\" -b:a 192k \"{filename}.mp3\"",
+    "MP3(128 Kbps)": "-y -i \"{filepath}\" -b:a 128k \"{filename}.mp3\"",
+    "AAC(Default)": "-y -i \"{filepath}\" -strict experimental \"{filename}.aac\"",
+    "AAC(codec copy)": "-i \"{filepath}\" -vn -acodec copy \"{filename}.aac\"",
+    "FLAC": "-y -i \"{filepath}\" \"{filename}.flac\"",
+    "OGG": "-y -i \"{filepath}\" \"{filename}.ogg\"",
+    "WAV": "-y -i \"{filepath}\" \"{filename}.wav\""
 }

+ 15 - 15
web/FFmpeg Factory/config/v2v.json → legacy/FFmpeg Factory/config/v2v.json

@@ -1,16 +1,16 @@
-{
-    "MP4(Default)": "-y -i \"{filepath}\" \"{filename}.mp4\"",
-    "MP4(1080p)": "-y -i \"{filepath}\" -s hd1080 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
-    "MP4(720p)": "-y -i \"{filepath}\" -s hd720 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
-    "MP4(480p)": "-y -i \"{filepath}\" -s hd480 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
-    "AVI(Default)": "-y -i \"{filepath}\" -q:v 2 \"{filename}.avi\"",
-    "AVI(Low Quality)": "-y -i \"{filepath}\" -q:v 6 \"{filename}.avi\"",
-    "AVI(High Quality)": "-y -i \"{filepath}\" -q:v 0 \"{filename}.avi\"",
-    "AVI(codec copy)": "-y -i \"{filepath}\" -vcodec copy -acodec copy \"{filename}.avi\"",
-    "WebM": "-y -i \"{filepath}\" -c:v libvpx -crf 10 -b:v 1M -c:a libvorbis \"{filename}.webm\"",
-    "WMV": "-y -i \"{filepath}\" \"{filename}.wmv\"",
-    "FLV": "-y -i \"{filepath}\" \"{filename}.flv\"",
-    "MKV(Default)": "-y -i \"{filepath}\" \"{filename}.mkv\"",
-    "MKV(codec copy)": "-y -i \"{filepath}\" -vcodec copy -acodec copy \"{filename}.mkv\"",
-    "MOV": "-y -i \"{filepath}\" \"{filename}.mov\""
+{
+    "MP4(Default)": "-y -i \"{filepath}\" \"{filename}.mp4\"",
+    "MP4(1080p)": "-y -i \"{filepath}\" -s hd1080 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
+    "MP4(720p)": "-y -i \"{filepath}\" -s hd720 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
+    "MP4(480p)": "-y -i \"{filepath}\" -s hd480 -c:v libx264 -crf 23 -c:a aac -strict -2 \"{filename}.mp4\"",
+    "AVI(Default)": "-y -i \"{filepath}\" -q:v 2 \"{filename}.avi\"",
+    "AVI(Low Quality)": "-y -i \"{filepath}\" -q:v 6 \"{filename}.avi\"",
+    "AVI(High Quality)": "-y -i \"{filepath}\" -q:v 0 \"{filename}.avi\"",
+    "AVI(codec copy)": "-y -i \"{filepath}\" -vcodec copy -acodec copy \"{filename}.avi\"",
+    "WebM": "-y -i \"{filepath}\" -c:v libvpx -crf 10 -b:v 1M -c:a libvorbis \"{filename}.webm\"",
+    "WMV": "-y -i \"{filepath}\" \"{filename}.wmv\"",
+    "FLV": "-y -i \"{filepath}\" \"{filename}.flv\"",
+    "MKV(Default)": "-y -i \"{filepath}\" \"{filename}.mkv\"",
+    "MKV(codec copy)": "-y -i \"{filepath}\" -vcodec copy -acodec copy \"{filename}.mkv\"",
+    "MOV": "-y -i \"{filepath}\" \"{filename}.mov\""
 }

+ 0 - 0
web/FFmpeg Factory/img/desktop_icon.png → legacy/FFmpeg Factory/img/desktop_icon.png


+ 0 - 0
web/FFmpeg Factory/img/desktop_icon.psd → legacy/FFmpeg Factory/img/desktop_icon.psd


+ 0 - 0
web/FFmpeg Factory/img/module_icon.png → legacy/FFmpeg Factory/img/module_icon.png


+ 0 - 0
web/FFmpeg Factory/img/module_icon.psd → legacy/FFmpeg Factory/img/module_icon.psd


+ 0 - 0
web/FFmpeg Factory/img/small_icon.png → legacy/FFmpeg Factory/img/small_icon.png


+ 0 - 0
web/FFmpeg Factory/img/small_icon.psd → legacy/FFmpeg Factory/img/small_icon.psd


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 267
legacy/FFmpeg Factory/index.html


+ 30 - 30
web/FFmpeg Factory/init.agi → legacy/FFmpeg Factory/init.agi

@@ -1,30 +1,30 @@
-/*
-	FFmpeg Factory
-	CopyRight tobychui 2020 - 2021
-
-	This is a port of the ArOZ Online Beta FFmpeg Factory to the ArOZ Online 1.0
-	If you are running on Windows, ffmpeg must be installed in your %PATH% environment 
-	variable before you can actually use this module.
-*/
-
-//Define the launchInfo for the module
-var moduleLaunchInfo = {
-    Name: "FFmpeg Factory",
-	Group: "Media",
-	IconPath: "FFmpeg Factory/img/small_icon.png",
-	Version: "2.0",
-	StartDir: "FFmpeg Factory/index.html",
-	SupportFW: true,
-	LaunchFWDir: "FFmpeg Factory/index.html",
-	InitFWSize: [1150, 640],
-	SupportedExt: [".avi",".mp4",".mp3",".aac",".flac"]
-}
-
-//Request ffmpeg for this module
-if (requirepkg("ffmpeg",true)){
-	//Register the module
-	registerModule(JSON.stringify(moduleLaunchInfo));
-}else{
-	console.log("FFMPEG not found! Not enabling FFmpeg Factory");
-}
-
+/*
+	FFmpeg Factory
+	CopyRight tobychui 2020 - 2021
+
+	This is a port of the ArOZ Online Beta FFmpeg Factory to the ArOZ Online 1.0
+	If you are running on Windows, ffmpeg must be installed in your %PATH% environment 
+	variable before you can actually use this module.
+*/
+
+//Define the launchInfo for the module
+var moduleLaunchInfo = {
+    Name: "FFmpeg Factory",
+	Group: "Media",
+	IconPath: "FFmpeg Factory/img/small_icon.png",
+	Version: "2.0",
+	StartDir: "FFmpeg Factory/index.html",
+	SupportFW: true,
+	LaunchFWDir: "FFmpeg Factory/index.html",
+	InitFWSize: [1150, 640],
+	SupportedExt: [".avi",".mp4",".mp3",".aac",".flac"]
+}
+
+//Request ffmpeg for this module
+if (requirepkg("ffmpeg",true)){
+	//Register the module
+	registerModule(JSON.stringify(moduleLaunchInfo));
+}else{
+	console.log("FFMPEG not found! Not enabling FFmpeg Factory");
+}
+

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 1
legacy/FFmpeg Factory/jquery.min.js


Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 0
legacy/FFmpeg Factory/tocas.css


+ 0 - 0
web/Message/backend/rpc.js → legacy/Message/backend/rpc.js


+ 0 - 0
web/Message/chat.html → legacy/Message/chat.html


+ 0 - 0
web/Message/img/desktop_icon.png → legacy/Message/img/desktop_icon.png


+ 0 - 0
web/Message/img/desktop_icon.psd → legacy/Message/img/desktop_icon.psd


+ 0 - 0
web/Message/img/logo.png → legacy/Message/img/logo.png


+ 0 - 0
web/Message/img/module_icon.png → legacy/Message/img/module_icon.png


+ 0 - 0
web/Message/img/module_icon.psd → legacy/Message/img/module_icon.psd


+ 0 - 0
web/Message/img/noicon.png → legacy/Message/img/noicon.png


+ 0 - 0
web/Message/img/noicon.psd → legacy/Message/img/noicon.psd


+ 0 - 0
web/Message/img/small_icon.png → legacy/Message/img/small_icon.png


+ 0 - 0
web/Message/img/small_icon.psd → legacy/Message/img/small_icon.psd


+ 0 - 0
web/Message/index.html → legacy/Message/index.html


+ 0 - 0
web/Message/init.agi → legacy/Message/init.agi


+ 0 - 0
web/Message/message.js → legacy/Message/message.js


+ 1 - 1
main.flags.go

@@ -29,7 +29,7 @@ var subserviceBasePort = 12810            //Next subservice port
 
 // =========== SYSTEM BUILD INFORMATION ==============
 var build_version = "development"                      //System build flag, this can be either {development / production / stable}
-var internal_version = "0.2.015"                       //Internal build version, [fork_id].[major_release_no].[minor_release_no]
+var internal_version = "0.2.016"                       //Internal build version, [fork_id].[major_release_no].[minor_release_no]
 var deviceUUID string                                  //The device uuid of this host
 var deviceVendor = "IMUSLAB.INC"                       //Vendor of the system
 var deviceVendorURL = "http://imuslab.com"             //Vendor contact information

+ 3 - 3
mod/agi/external.agi.go

@@ -8,7 +8,7 @@ import (
 	"strings"
 	"time"
 
-	"github.com/google/uuid"
+	uuid "github.com/satori/go.uuid"
 	"imuslab.com/arozos/mod/utils"
 )
 
@@ -17,7 +17,7 @@ type endpointFormat struct {
 	Path     string `json:"path"`
 }
 
-//Handle request from EXTERNAL RESTFUL API
+// Handle request from EXTERNAL RESTFUL API
 func (g *Gateway) ExtAPIHandler(w http.ResponseWriter, r *http.Request) {
 	// get db
 	sysdb := g.Option.UserHandler.GetDatabase()
@@ -98,7 +98,7 @@ func (g *Gateway) AddExternalEndPoint(w http.ResponseWriter, r *http.Request) {
 	}
 
 	// put the data in then marshal
-	id := uuid.New().String()
+	id := uuid.NewV4().String()
 
 	dat.Path = path
 	dat.Username = userInfo.Username

+ 3 - 4
storage.pool.go

@@ -15,7 +15,6 @@ import (
 	"imuslab.com/arozos/mod/storage/bridge"
 	"imuslab.com/arozos/mod/utils"
 
-	"github.com/tidwall/pretty"
 	fs "imuslab.com/arozos/mod/filesystem"
 	prout "imuslab.com/arozos/mod/prouter"
 	storage "imuslab.com/arozos/mod/storage"
@@ -535,9 +534,9 @@ func HandleStoragePoolRemove(w http.ResponseWriter, r *http.Request) {
 
 		//Parse and put it into file
 		if len(newConfigs) > 0 {
-			js, _ := json.Marshal(newConfigs)
-			resultingJson := pretty.Pretty(js)
-			os.WriteFile(targetConfigFile, resultingJson, 0777)
+			js, _ := json.MarshalIndent(newConfigs, "", " ")
+
+			os.WriteFile(targetConfigFile, js, 0777)
 		} else {
 			os.Remove(targetConfigFile)
 		}

+ 0 - 21
web/SystemAO/info/license/Tocas UI.txt

@@ -1,21 +0,0 @@
-The MIT License (MIT)
-
-Copyright (c) 2018 Yami Odymel
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.

+ 15 - 1
web/SystemAO/internalServerError.html

@@ -37,7 +37,7 @@
             <div>
                 <h3 class="">Internal Server Error</h3>
                 <div class="ui divider"></div>
-                <p>Unable to serve the requested page due to some unknown backend error. <br><a href="{{root_escape}}">Back</a></p>
+                <p>Unable to serve the requested page due to some unknown backend error. <br><a style="cursor: pointer;" onclick="back();">Back</a></p>
                 <div class="ui divider"></div>
                 <div style="text-align: left;">
                     <small>Request time: <span id="reqtime"></span></small><br>
@@ -46,6 +46,20 @@
             </div>
         </div>
         <script>
+             var ao_module_virtualDesktop = false;
+            try{
+                ao_module_virtualDesktop = !(!parent.isDesktopMode);
+            }catch(ex){
+                
+            }
+
+            function back(){
+                if (ao_module_virtualDesktop){
+                    history.back();
+                }else{
+                    window.location.href = "{{root_escape}}";
+                }
+            }
             $("#reqtime").text(new Date().toLocaleString(undefined, {year: 'numeric', month: '2-digit', day: '2-digit', weekday:"long", hour: '2-digit', hour12: false, minute:'2-digit', second:'2-digit'}));
         </script>
     </body>

+ 65 - 51
web/SystemAO/notfound.html

@@ -1,52 +1,66 @@
-<html>
-    <head>
-        <meta charset="UTF-8">
-        <meta name="viewport" content="width=device-width, initial-scale=1.0 user-scalable=no">
-        <link rel="stylesheet" href="{{root_escape}}script/semantic/semantic.min.css">
-        <script type="text/javascript" src="{{root_escape}}script/jquery.min.js"></script>
-        <script type="text/javascript" src="{{root_escape}}script/semantic/semantic.min.js"></script>
-        <title>Not Found</title>
-        <style>
-            #msg{
-                position: absolute;
-                top: calc(50% - 150px);
-                left: calc(50% - 250px);
-                width: 500px;
-                height: 300px;
-                text-align: center;
-            }
-
-            #footer{
-                position: fixed;
-                padding: 2em;
-                padding-left: 5em;
-                padding-right: 5em;
-                bottom: 0px;
-                left: 0px;
-                width: 100%;
-            }   
-
-            small{
-                word-break: break-word;
-            }
-        </style>
-    </head>
-    <body>
-        <div id="msg">
-            <h1 style="font-size: 6em; margin-bottom: 0px;">404</h1>
-            <div>
-                <h3 class="">Page Not Found</h3>
-                <div class="ui divider"></div>
-                <p>The page or resource you are trying to access does not exist. <br><a href="{{root_escape}}">Back</a></p>
-                <div class="ui divider"></div>
-                <div style="text-align: left;">
-                    <small>Request time: <span id="reqtime"></span></small><br>
-                    <small id="reqURLDisplay">Request URI: {{request_url}}</small>
-                </div>
-            </div>
-        </div>
-        <script>
-            $("#reqtime").text(new Date().toLocaleString(undefined, {year: 'numeric', month: '2-digit', day: '2-digit', weekday:"long", hour: '2-digit', hour12: false, minute:'2-digit', second:'2-digit'}));
-        </script>
-    </body>
+<html>
+    <head>
+        <meta charset="UTF-8">
+        <meta name="viewport" content="width=device-width, initial-scale=1.0 user-scalable=no">
+        <link rel="stylesheet" href="{{root_escape}}script/semantic/semantic.min.css">
+        <script type="text/javascript" src="{{root_escape}}script/jquery.min.js"></script>
+        <script type="text/javascript" src="{{root_escape}}script/semantic/semantic.min.js"></script>
+        <title>Not Found</title>
+        <style>
+            #msg{
+                position: absolute;
+                top: calc(50% - 150px);
+                left: calc(50% - 250px);
+                width: 500px;
+                height: 300px;
+                text-align: center;
+            }
+
+            #footer{
+                position: fixed;
+                padding: 2em;
+                padding-left: 5em;
+                padding-right: 5em;
+                bottom: 0px;
+                left: 0px;
+                width: 100%;
+            }   
+
+            small{
+                word-break: break-word;
+            }
+        </style>
+    </head>
+    <body>
+        <div id="msg">
+            <h1 style="font-size: 6em; margin-bottom: 0px;">404</h1>
+            <div>
+                <h3 class="">Page Not Found</h3>
+                <div class="ui divider"></div>
+                <p>The page or resource you are trying to access does not exist. <br><a style="cursor: pointer;" onclick="back();">Back</a></p>
+                <div class="ui divider"></div>
+                <div style="text-align: left;">
+                    <small>Request time: <span id="reqtime"></span></small><br>
+                    <small id="reqURLDisplay">Request URI: {{request_url}}</small>
+                </div>
+            </div>
+        </div>
+        <script>
+            var ao_module_virtualDesktop = false;
+            try{
+                ao_module_virtualDesktop = !(!parent.isDesktopMode);
+            }catch(ex){
+                
+            }
+
+            function back(){
+                if (ao_module_virtualDesktop){
+                    history.back();
+                }else{
+                    window.location.href = "{{root_escape}}";
+                }
+            }
+            $("#reqtime").text(new Date().toLocaleString(undefined, {year: 'numeric', month: '2-digit', day: '2-digit', weekday:"long", hour: '2-digit', hour12: false, minute:'2-digit', second:'2-digit'}));
+        </script>
+    </body>
 </html>

+ 1 - 1
web/desktop.system

@@ -1480,7 +1480,7 @@
                     return a.ID > b.ID;
                 });
 
-                console.log(tasks);
+                //console.log(tasks);
                 $("#backgroundTaskPanel").html("");
                 tasks.forEach(function(task){
                     console.log(task);

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно