Giter Site home page Giter Site logo

kalcaddle / kodbox Goto Github PK

View Code? Open in Web Editor NEW
1.9K 1.9K 342.0 160.01 MB

kodbox is a file manager for web. It is a newly designed product based on kodexplorer. It is also a web code editor, which allows you to develop websites directly within the web browser.You can run kodbox either online or locally,on Linux, Windows or Mac based platforms

Home Page: https://kodcloud.com

PHP 67.63% HTML 0.73% JavaScript 25.38% CSS 5.54% Batchfile 0.01% Less 0.72%
docx file-explorer file-upload filemanager filesystem free-software ide markdown music-player php text-editor webdav xlsx

kodbox's People

Contributors

banias123 avatar fyzhu avatar kalcaddle avatar rallytuning avatar sinsky avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kodbox's Issues

Make it store data in my server rather then my db

Will it be possible to change sole code to make it store data in my server rather then using a DB that only can support 10 GB's of data? My server has 1 TB+ SSD Drive if you can, please tell me how

Chrome + Too many dedicated workers

I'm working on Chrome 96 beta, since a few days, kod editor is completely crashing after a while using it (about 5-10 minutes), but not if it stays idle.

I've checked Chrome tasks (SHIFT+ESC) and I've seen that Kod editor is creating dozens of workers that never stop/close to a point it crashes (Chrome tab gray crash screen).

It may be related to autocompletion, as the number of workers increases when autocomplete pops up.

关于上传文件数据丢失问题

在上传http请求txt文件时,经常遇到数据丢失的情况,例如:
当上传这个文件时,显示保存成功,但是在web页面打开txt文件内容为空
poc.txt

Why are all resource files referenced by static URL??

image

Generally, resource files can be referenced by relative url like "/static/images/icon/fav.png". But for KodBox, all resource files (image, css, etc...) are hard-coded in every page. That makes it difficult to access with different domain names.

In my case, I deployed one on a server, if i access through the Internet, i should access through HTTPS, but it is not required for intranet access. But i tried to access from internet via HTTPS, i found that all resource files are referenced by http, that causes the page to fail to load at all. Because mixed content are prohibited by modern browser.

Why? Any way to configure it to "load resources by relative url"?

建议增加转发到nginx下载文件 我这边已经写好了 你看能否合并到你们官方的里面去

由于PHP下载文件处理会导致CPU爆满= =我提供如下修改 (本次分析不外传文件 只自己做参考) 祝kodbox越办越好.

修改路径\userIndex::initSetting

private function initSetting(){
        if(!defined('STATIC_PATH')){
            define('STATIC_PATH',$GLOBALS['config']['settings']['staticPath']);
        }
        $sysOption = Model('SystemOption')->get();
        $upload = &$GLOBALS['config']['settings']['upload'];
        if(isset($sysOption['chunkSize'])){ //没有设置则使用默认;
            $upload['chunkSize']  = floatval($sysOption['chunkSize']);
            $upload['ignoreName'] = trim($sysOption['ignoreName']);
            $upload['chunkRetry'] = intval($sysOption['chunkRetry']);
            /////////////////////////修改这里
             $upload['httpSendFile']  = $sysOption['httpSendFile'] == '1'; //前端默认屏蔽;
             $upload['httpSendFileMap']  = $sysOption['httpSendFileMap']; //前端默认屏蔽;
             /////////////////////////
 
            // 上传限制扩展名,限制单文件大小;
            $role = Action('user.authRole')->userRoleAuth();
            if($role && $role['info']){
                $roleInfo = $role['info'];
                // if(isset($roleInfo['ignoreExt'])){
                //  $upload['ignoreExt']  = $roleInfo['ignoreExt'];
                // }

2.修改位置:\PathDriverBase::fileOut

        $softWare = strtolower($_SERVER["SERVER_SOFTWARE"]);
        if ($driveType && $softWare && $httpSendFile) {
            ////////////////////////////////// 增加我这个代码 具体变量名我自己定义的 其他自行处理
            $filePathMap = $filePath;
            $httpSpeedFileMap = $GLOBALS["config"]["settings"]["upload"]["httpSendFileMap"];
            $arr = explode(';', $httpSpeedFileMap);
            foreach ($arr as $item){
                $itemArr = explode(':', $item);
                //>> 获取服务器配置的路径映射
                $filePathMap = str_replace($itemArr[0], $itemArr[1], $filePathMap);
            }
            //////////////////////////////////
 
            if (strstr($softWare, "nginx")) {
                //down-resource
                header("X-Accel-Redirect: " . $filePathMap);
            } else {
                if (strstr($softWare, "apache")) {
                    header("X-Sendfile: " . $filePathMap);
                } else {
                    if (strstr($softWare, "http")) {
                        header("X-LIGHTTPD-send-file: " . $filePathMap);
                    }
                }
            }

nginx 配置

#NGINX大文件下载加速
location /dresource {
    alias  /mnt/user/Resource;# 此处修改对应挂载的下载目录
    internal; # 设置只允许nginx内部处理 用户无法直接直接下载文件
}
#NGINX大文件下载加速END

数据库配置修改
增加 system_option 记录

INSERT INTO `system_option`(`id`, `type`, `key`, `value`, `createTime`, `modifyTime`) VALUES (108573, '', 'httpSendFileMap', '/mnt/user/Resource:/dresource;/www/wwwroot/kod.xxxx.com/data/files:/data/files;', 1637118304, 1637118304);

httpSendFileMap格式如下

/mnt/user/Resource:/dresource;/www/wwwroot/kod.xxxx.com/data/files:/data/files;
绝对位置:下载路径;绝对位置:下载路径

Adminer not working

Clean install the 1.23 = Adminer work

Update 1.22 to 1.23 = Adminer not work

Immagine 2021-10-20 180404

文件直传对象存储

设置开启了文件直传不经过服务器,但是上传下载文件还是走服务器流量。这个是设计就是如此还是bug?而且腾讯云的对象存储似乎本来就支持断点续传

Request: Beautify main.css

Some languages such as italian (my), german and french, can have long terms (words) and they will not fit in the CSS box, as these examples:

Screenshot_2
Screenshot_3


So, if you can change the CSS in multilines instead of one single line, we can help you fix these. in this way:

Screenshot_4
Screenshot_5

[Enhancement] LDAP Support

Hello here is a suggestion please I use KodBOX and want to integrate it in app catalog of the project YunoHost, but for better support they require KodBOX to have LDAP support.

Increase the usage of expressions with combined operators

👀 Some source code analysis tools can help to find opportunities for improving software components.
💭 I propose to increase the usage of combined operators accordingly.

Would you like to integrate anything from a transformation result which can be generated by a command like the following?
(:point_right: Please check also for questionable change suggestions because of an evolving search pattern.)

lokal> perl -p -i.orig -0777 -e 's#(?<target>\$\S+)\s*=\s*\k<target>[ \t]*(?<operator>[+/%^.]|-(?!>)|&(?!&)|\|(?!\|)|\*\*?|<<|>>|\?\?)#$+{target} $+{operator}=#gm' $(find ~/Aktivitäten/kodbox/lokal -name '*.php')

Some strings bug

They won't follow the selected language and are not available to be translated in the language file like other strings.

Screenshot_8
Screenshot_9
Screenshot


Also, some strings are attached (no spaces) as these examples:

Screenshot_3
Screenshot_5
Screenshot_3

I can fix this and create a pull request, but i think this will be good for other languages but bad for Chinese language, right?

手机web页面,文件列表无法上下滑动

服务器系统: Windows NT ACCOUNTING-PC 6.1 build 7601 (Windows 7 Professional Edition Service Pack 1) i586
服务器软件: Apache/2.4.37
PHP版本: PHP/5.5.30
数据库: MySQL/5.5.54-log

手机端浏览器:Chrome,Edge
Kodbox V1.20.0528

Can't connect to FTP storage

As last issue, also the version 1.24 build 1111 can't connect to an FTP server. This is the server log with passive mode:

(000001)11/11/2021 18:24:12 - (not logged in) (x.x.x.x)> USER test
(000001)11/11/2021 18:24:12 - (not logged in) (x.x.x.x)> 331 Password required for test
(000001)11/11/2021 18:24:12 - (not logged in) (x.x.x.x)> PASS ****
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 230 Logged on
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> PASV
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 227 Entering Passive Mode (192,168,1,100,210,76)
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> CWD /
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> TYPE I
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 200 Type set to I
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> SIZE /
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 550 File not found
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> CWD /
(000001)11/11/2021 18:24:12 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000001)11/11/2021 18:24:17 - test (x.x.x.x)> QUIT
(000001)11/11/2021 18:24:17 - test (x.x.x.x)> 221 Goodbye
(000001)11/11/2021 18:24:17 - test (x.x.x.x)> disconnected.

And this is with active mode:

(000002)11/11/2021 18:24:30 - (not logged in) (x.x.x.x)> USER test
(000002)11/11/2021 18:24:30 - (not logged in) (x.x.x.x)> 331 Password required for test
(000002)11/11/2021 18:24:30 - (not logged in) (x.x.x.x)> PASS ****
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 230 Logged on
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> CWD /
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> TYPE I
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 200 Type set to I
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> SIZE /
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 550 File not found
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> CWD /
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> PORT 10,6,20,190,149,255
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 200 Port command successful
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> STOR /index.html
(000002)11/11/2021 18:24:30 - test (x.x.x.x)> 150 Opening data channel for file transfer.
(000002)11/11/2021 18:24:35 - test (x.x.x.x)> QUIT
(000002)11/11/2021 18:24:40 - test (x.x.x.x)> disconnected.

In both cases, the connection and login is successful done, but after the QUIT, Kodbox say it's unable to connect and can't add the storage.

Folder listing takes ages

Issue : In the editor tree, when opening a folder having lots of files, the listing is way too long.

Solution : prevent file*time() functions from being fired on folders with more than 100 files.

Complementary solution : do not check parents for subfolders in this case.

New wallpapers bug

We can't use custom uploaded new wallpapers in the personal menu without renaming them "10", "11", "12"... If we leave the original name ("my custom wallppaper.jpg") and we select them, the background of the app will be empty.

Cookies and embed websites

So, i have added some websites in the left menu bar, these websites are opened in embed mode (or in a modal window) but they cant save cookies?
Example: I have added my email host website, after i login, he kept redirect me to the login page, instead of mail list. Same with settings website: i have added another website with color background changed, if i refresh the page, the color is back to default. Another website ask me to accept cookies, i accept and the message go away, but if i refresh the website or change page, the message come again.
This means the modal window or embed EXTERNAL websites, cant save cookies in kodbox?

CSRF_TOKEN error!

开启csrf保护后
后台管理->服务器管理->PHP详情
CSRF_TOKEN error!

Forked files not work on XAMPP/WAMP/etc

I have forked the project and tried to run it with XAMPP (php 8; php 7 and php 5) but its just show a empty white page.
On the same machine, and with the same software (XAMPP) i have downloaded the "release zip" and this one works.
How i can solve this? So i will be able to contribuite with the project via GitHub Desktop.

Quick scrolling/goto in folder tree

Is it possible to get a fast search bar (as when searching in a file, with CTRL+F) that searches current developed folder.

I have a tree with hundreds of folders at the root. If I want to go to 'temp' , I need to manually scroll down to letter 'T'.

I would expect to type CTRL+F "temp" and it would scroll down to the first folder containing "temp", exactly like Browser "Search in page" would do.

I do not expect this functionality to find a subfolder that is not already loaded (as the current CTRL+F popup implementation does).

Thank you in advance

all Files in random in kodbox

I installed kodbox on the hosting. but when I want to access the "path" public_html/mysite/data/files/202105/21_efbf567d I see that all the files are in random order. In KodeExplorer, all files are in the normal order as on the web page.
how can I access the files in the normal order?

Cannot load the app (on infinityfree hoster)

When I try to load the webpage it wont load and just throw this error:
Fatal error: Uncaught Error: Class 'Application' not found in /home/vol8_1/epizy.com/epiz_30586518/htdocs/index.php:4 Stack trace: #0 {main} thrown in /home/vol8_1/epizy.com/epiz_30586518/htdocs/index.php on line 4

Office plugins not working properly

I don't know why but some files can't be open with the office plugin, so i was trying to edit the this plugin but the window for settings customization don't work neither.
Where you see the red arrow, mean that i cannot scroll down. Yellow arrows mean these buttons dosen't work if i press them.

Screenshot_4

kodbox注销问题

退出注销功能有问题
点击右下角“退出”,注销登录状态之后,再次打开kodbox主页,显示“检测到您当前已登录”

Duplicate button

Hi,

Duplicate option on right click in the tree has been removed (it was in kodexplorer)
Re-add it in "More..." ?

Thanks

Can't add an FTP storage

If the FTP server is in passive mode, kodbox keep loading for a wile then is going in timeout with error 500.

If the FTP server is in active mode, bodbox say that is impossible to connect also if was connected:

(000019)08/11/2021 17:39:56 - (not logged in) (x.x.x.x)> USER test
(000019)08/11/2021 17:39:56 - (not logged in) (x.x.x.x)> 331 Password required for test
(000019)08/11/2021 17:39:56 - (not logged in) (x.x.x.x)> PASS ****
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 230 Logged on
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> PASV <------------------------------------------------------
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 227 Entering Passive Mode (192,168,1,100,204,5)
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> CWD /
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> TYPE I
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 200 Type set to I
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> SIZE /
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 550 File not found
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> CWD /
(000019)08/11/2021 17:39:56 - test (x.x.x.x)> 250 CWD successful. "/" is current directory.
(000019)08/11/2021 17:40:01 - test (x.x.x.x)> QUIT
(000019)08/11/2021 17:40:01 - test (x.x.x.x)> 221 Goodbye

Please add the option where we can choose the FTP mode: "passive" or "active". Because i can't connect to an active FTP server.

Does not work after 1.20 update

My KodBox updated to 1.20, and now I get the error below:
出错了! (warning!)
../app/autoload.php[2]; UserOptionModel->cacheKey();
Undefined constant "USER_ID"

I tried installing a new copy and had the same error.

Still some string little problems

The sharing link page now looks like this:

00031_2021 11 11_001_

Maybe you can fix with something like:

.share-page-main .common-side .share-file-info .info-line .title {width: 35%!important}
.share-page-main .common-side .share-file-info .info-line .content {width: 60%!important}

code editor themes not working

I saw that on the new update the code editor themes is not working it shows just back bg and white text. Please fix this issue.

[Enhancement] HTTP AUTH

Hello here is a suggestion please, I use KodBOX and want to integrate it in app catalog of the project YunoHost, but for better support they require KodBOX to have HTTP Auth.

突然打不开了

{
"code": false,
"timeUse": "5.1767",
"timeNow": "1621926369.6511",
"data": null,
"memory": "2.422M",
"call": [
"index.php[6] {a36}#Application->run()",
"app/autoload.php[2] {a36}#Application->autorun()",
"app/autoload.php[2] {a36}#Application->appRun("user.index.init")",
"app/autoload.php[2] ActionCall("user.index.init")",
"app/autoload.php[2] ActionApply("user.index.init",[])",
"app/autoload.php[2] {466}#userIndex->init()",
"app/controller/user/index.class.php[24] ActionCall("install.index.check")",
"app/autoload.php[2] ActionApply("install.index.check",[])",
"app/autoload.php[2] {f57}#installIndex->check()",
"app/controller/install/index.class.php[67] ActionCall("install.index.save")",
"app/autoload.php[2] ActionApply("install.index.save",[])",
"app/autoload.php[2] {f57}#installIndex->save()",
"app/controller/install/index.class.php[215] {f57}#installIndex->saveDb()",
"app/controller/install/index.class.php[225] Cache::get("dbWasSet")",
"app/autoload.php[2] CacheLock::lock("dbWasSet")",
"app/autoload.php[2] show_json(args)"
],
"trace": []
}

这是什么问题?autoload.php加密无法查看

php 8.x support / php 8.x 支持

Due to environmental problems, you can only use php8 1+apache2. 4 this set of configuration, can you support php8 as soon as possible?

Fatal error: Cannot acquire reference to $GLOBALS in /data/data/com.termux/files/usr/share/apache2/cloud/htdocs/app/function/web.function.php on line 824

由于环境问题,只能使用php8.1+apache2.4这套配置,请问能不能尽快支持php8?

Fatal error: Cannot acquire reference to $GLOBALS in >/data/data/com.termux/files/usr/share/apache2/cloud/htdocs/app/function/web.function.php on line 824

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.