aboutsummaryrefslogtreecommitdiff
path: root/core/finder.js
diff options
context:
space:
mode:
authorMinteck <freeziv.ytb@gmail.com>2021-03-07 18:29:17 +0100
committerMinteck <freeziv.ytb@gmail.com>2021-03-07 18:29:17 +0100
commit0f79e708bf07721b73ea41e5d341be08e8ea4dce (patch)
treef3c63cd6a9f4ef0b26f95eec6a031600232e80c8 /core/finder.js
downloadelectrode-0f79e708bf07721b73ea41e5d341be08e8ea4dce.tar.gz
electrode-0f79e708bf07721b73ea41e5d341be08e8ea4dce.tar.bz2
electrode-0f79e708bf07721b73ea41e5d341be08e8ea4dce.zip
Initial commit
Diffstat (limited to 'core/finder.js')
-rw-r--r--core/finder.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/core/finder.js b/core/finder.js
new file mode 100644
index 0000000..ac5f254
--- /dev/null
+++ b/core/finder.js
@@ -0,0 +1,22 @@
+const fs = require('fs');
+const url = require('url');
+
+/**
+ * @param {string} url
+ */
+module.exports = (efs) => {
+ cfs = url.parse(efs, true).pathname;
+ if (fs.existsSync("./public/" + cfs) && !fs.lstatSync("./public/" + cfs).isDirectory()) {
+ return "./public/" + cfs;
+ } else if (fs.existsSync("./public/" + cfs + "/index.php")) {
+ return "./public/" + cfs + "/index.php";
+ } else if (fs.existsSync("./public/" + cfs + "/index.html")) {
+ return "./public/" + cfs + "/index.html";
+ } else if (fs.existsSync("./public/" + cfs)) {
+ return "./public/" + cfs;
+ } else if (cfs.endsWith(".htaccess")) {
+ return null;
+ } else {
+ return null;
+ }
+} \ No newline at end of file