Minehut / Meta

Report bugs or issues and request features and updates for Minehut
31 stars 21 forks source link

File manager controls are extremely clunky and unpolished #1002

Open Budgo opened 2 years ago

Budgo commented 2 years ago

Checklist

Affected Platform?

Website

What is the feature you are requesting?

Please fix the file manager controls.

Copying data is extremely clunky, perhaps I'm simply stupid but I'm really unsure as to how I'm supposed to do it. I click on the checkbox for the file I want to copy, select copy, then hit the green copy button and it copies. Then what? Am I meant to paste it into an empty directory? I've tried to right click on a directory with files already in it, yet it does not seem to want to give me the option to paste, only modify the file I clicked on (since there's 0 blank space to click instead of a file).

In a similar vein, the moving functionality either barely works or is so unintuitive that I can't figure it out. I select a file, select move, and then what? My first thought was to click on the file, click move, then click on the file I want to move it to. That was incorrect, as instead it just selected that folder as well. Then I thought to just select the file, then hit the large move button; perhaps it would allow me to then select a second folder to move it to? Also incorrect, which brings me to my next point:

If you mess up moving large quantities of files, you must manually hit yes or no to overwriting the files in their directory, since for some reason you are able to overwrite a file with itself? That feature itself doesn't even work sometimes, as you can overwrite the ghosts (or something of the sort) of files that have recently been deleted.

I think this would all be much more bearable and debuggable if there were more verbose error messages as well, instead of just "an error occurred." Perhaps there's a perfectly sound reason as to why all these things are the way they are, but it's impossible to convey that through 3 words. There's no error code, no traceback, no logs, just an aquamarine textbox that disappears in seconds.

How is this feature useful for Minehut?

The main problem I'm getting at is the lack of intuitiveness and clarity the panel presents. Perhaps it made sense to whoever was coding it, and worked in their test environment, but at least to me the user it doesn't quite convey the same operability. The fact that there's no good feedback from the panel and nothing to help you figure out what went wrong or right makes learning from your mistakes impossible. Combine that with the inconsistency of things working, and the panel becomes a bit of a messy experience.

CoreyShupeSLG commented 2 years ago

dupe of #1002

Pryzmm commented 2 years ago

dupe of #1002

This issue IS 1002...

.

As for the original post, the copy function actually CLONES the selected file(s) to the selected directory. Select the file and click copy, then go to your desired directory and click "COPY" again to clone it.

For the move function, you select it and click move. Once done, you go to the directory you wish to move the file and click the big "MOVE" button at the bottom.

Overriding a file from itself does get annoying, but I can understand how it happens. What I think is happening is that before the move happens, it scans through the files and checks if a name is the same as the name of the file being moved. It gets annoying yes, but there's not much you can really do about that.

The "an error occurred" isn't very helpful, so this is the one thing I can agree upon.

The "lack of clarity" may just be that some people can misinterpret what the functions mean. While I get that mistakes like this can often happen, when you start to use the file manager more often, you can get a better sense of how its functionality works.

blockarchitech commented 2 years ago

Oh hey budgo. Been a while. (I was gibbiemonster on dangerzone).

Anyway, to "answer" your question the only supposedly reliable way I've found is to used a hacked-together version of CubedFileManager (mainly the file uploader and file watcher) to upload skripts.

It sucks that I have to do this, and it requires digging in the chrome developer network view to get a auth token, but it runs circles around the current setup. You just have to send keepalive packets every now and then to keep your token active. Eventually (my testing, around 5-6hrs) the session id will expire, expiring the token too. It's only a matter of time before minehut changes their API again however, and I can't guarantee that it will work next month, week, tomorrow, etc. It will be an on going chase to keep it running. Hopefully, minehut fixes their stuff so the file manager doesn't suck, but for now this will have to do.

Note: I'm trying to get the /sk reload working but it's not going as expected. In a few days, I should have a working copy I can open source and send over to you.

Also, the copying issue is solved with this somewhat as first it downloads everything from the server and uploads the file, so no matter what you always the latest local backup ready to go if something terrible happens.

Unfortunately, I have not found a reliable way to move files. The only solution I found was to literally copy the file's content and paste into a new file. This SUCKS for worlds as usually you have to download the whole directory, and figure out how to unzip a file in the stupid web UI.

There needs to be some sort of "Hey, this panel is actually doing something, don't touch anything" instead of just stalling for a few seconds then actually realizing you cancelled the action.

I think this would all be much more bearable and debuggable if there were more verbose error messages as well, instead of just "an error occurred."

Or even log the error to console. It's not hard.

Speaking of console, there's debug prints EVERYWHERE. Pointing out, this is a rushed out, never updated, barely working panel which leads me to believe they did minimal testing on it. I hate to say this, but ScalaCube's panel is better. Come on guys, SCALACUBE!!!*

*Okay maybe scalacube was a bad example. At least it works sometimes

July 2 update: I've been looking at the network watcher in chrome as I'm trying to do this, however it doesn't even look like minehut has an actual "move" or "copy" endpoint. Just create and edit.

blockarchitech commented 2 years ago

Okay, Minehut does have a move endpoint, however all it does is copy the file then delete the other file.