Recent Posts

Pages: [1] 2 3 ... 10
Beta / Re: version 2.4
« Last post by LeoNeeson on September 24, 2018, 06:46:05 AM »
The new template looks awesome, congratulations! :)

And now, after several tests I did on this weekend, the reports...

- New jQuery version broke old browser support
I did quite a few tests, and I've found some problems. Since you have updated jQuery from v1.4.2 to v3.3.1, it's probable that you unintentionally have broke support to a wide range of 'not so old' browsers (remember not all Android phones have the latest browser installed), or you could have used some not wide-compatible code syntax too. I've tried several browsers, and the new template only work OK with the latest browser versions, but on most (two years old) browsers, all have the same problem: those new nice buttons doesn't get displayed at all, including the folder path which doesn't get displayed at all (the webfonts are OK). On a desktop browser, the console shows one 'Uncaught SyntaxError: Unexpected identifier' and two 'Unexpected token'. The most easy way to debug this, is to download a somewhat old version of a Chromium-based browser, like this: SRWare Iron Portable v31 (and here you can also find other versions if you want to do some more tests). Regardless, this new jQuery change gives also some unexpected results if an user wants to use an old template that depends on jQuery v1.X.X (I'll publish those results too, if you are interested).

- Small functional details
If you click on the 'Selection' > 'Mask' button, it will say 'Please enter the file mask to select: *', but there is NO button to accept it. If you are on a desktop browser, you can press the 'Enter' key, but on a mobile device an 'OK' button is needed. This also happens on the 'Move' button, that doesn't have a 'OK'. Another detail: the 'Selection' button is also ONLY displayed, for example, if there is a permission to delete in the current folder, but this is wrong, since if you also have the 'Archive' button visible, you need the 'Selection' button to being able to archive some files (without this, you will archive the whole folder).

- Offline use of 'Font Awesome' icons
Since HFS is often used on private LANs (without external internet connections), it would be best if the 'font-awesome.min.css' (along with the required WebFont files), are included inside the HFS executable (like the jQuery already is). Without that, if you use HFS offline, this new template doesn't work correctly.

- SVG vs WebFonts (or font optimization)
If you want to optimize this (since HFS barely uses 10 icons or less), it would be great if you only use the SVG/PNG format, instead of using the complete 'Font Awesome' WebFont. There are at least two sources of ready-to-use 'Font Awesome' icons in SVG/PNG format, here and here. You can also check this very interesting article describing why SVG is better than using icon WebFonts, but that decision is up to you. Another recommendation is to build a customized 'Font Awesome' version, leaving only the icons used by HFS (to reduce it's size), and you could do that easily on

Well, that's all... :)

Beta / Re: version 2.4
« Last post by TEA-Time on September 24, 2018, 05:32:10 AM »
Out of the 8 links in the default "ip-services" list, the 5 below error out, causing HFS to fail to obtain the external IP over half the time.  The first 2 result in a page not found error, whereas the rest appear have parsing issues due to the pages being redesigned.

Code: [Select]|||IP is|d_clip_button">|<strong>

Even if it fails, it only appears to check every "ip-services-time" (not sure what units that value is in), so I propose it tries each link until it succeeds or runs out of links when there is a failure.
Beta / Re: version 2.4
« Last post by TEA-Time on September 24, 2018, 04:52:32 AM »
I'm not sure if this exists in other templates, but I found an interesting gotcha while messing around with uploading from my phone.  Not that anyone would probably do this under normal operation, but I uploaded a file, deleted it, then reuploaded the same file again to try some other functions, and when I clicked the "Reload page" button after the upload finished, the file was deleted without warning.

If I manually reload the page using the pull-down-to-reload function of the browser instead, it tells me that the form (the delete command, but that might not be obvious to some people) will be resubmitted.  But pressing the "Reload page" button bypasses that warning and.. poof.

So I propose instead of doing an actual reload that resubmits the previous form, the "Reload page" button should just do a regular GET for the folder you're sitting at.

Edit: I just noticed that the corresponding entry in hfs.comments.txt does not get removed when any kind of delete happens.
Beta / Re: version 2.4
« Last post by TEA-Time on September 23, 2018, 05:58:43 PM »
If I try to edit a comment, I get the "span" tags with the double quote in between in the edit box like in the attached.
Beta / Re: version 2.4
« Last post by dj on September 23, 2018, 05:24:55 PM »
There is a problem with the selection tool, when we check a box, it performs the same action as clicking on the name

change '.item-selectable a' to '.item-selectable' (line 932) might help
Programmers corner / Adding Two-Factor Authentication (2FA) to HFS
« Last post by LeoNeeson on September 23, 2018, 01:16:24 AM »
Since HFS currently depends only on a primitive and weak HTTP/1.1 login system (where unless you use SSL, the password travels in clear text, encoded in Base64), I was thinking it would be nice if HFS implements a simple Two-Factor Authentication system (also known as TOTP or 2FA). This system is a time-based password algorithm (which change every 30 seconds), added on top of the current login. This way, if someone steals the user/pass, they could not get through the TOTP/2FA system (since the 2FA would prevent the access to your private account and files, even if they know the password).

- How this works on the server?
The server needs to generate a secret key (only once, when setting up the 2FA), and it would store that secret key (encoded in Base32) along with the user/pass (I'm always talking about the server part). At user/client level, when TOTP is enabled on HFS, it should check if the credentials (user/pass) are correct first, and then if they are valid it should ask for the 2-Factor Authentication Code. To make this work (like I've said), HFS should store (along with the username and password) the 2FA 'secret key' needed to generate the 2FA time-based codes. The rest of the work flow (at server level) can be read here. To end-users, I guess most of you know how the Two-Factor Authentication works, since Gmail already use it since several years (check out this, if have any doubts).

- Implementing TOTP on HFS using a free Delphi library
After a deep search, I've found a small Delphi/FreePascal/Lazarus library, that could make easy the implementation on HFS:

And now that version 2.4 is on beta test (and since HFS is doing a step from v2.3 to v2.4), I think is a great time to make the server a little more secure by default. I hope Rejetto like and welcome the idea, and if anyone here could collaborate at code level to make this works on HFS, it would be great :) (this is only a suggestion, not a petition to add it).

Beta / Re: version 2.4
« Last post by Mars on September 21, 2018, 10:04:05 PM »
tests done in firefox on windows

There is an forgetting in the template, is missing a passage in the following line concerning links, to see image

by removing this line the default disappears
.item-link { float:left; }

There is a problem with the selection tool, when we check a box, it performs the same action as clicking on the name

Beta / Re: version 2.4
« Last post by rejetto on September 21, 2018, 07:29:51 PM »
ok guys, i'm sorry for wasting your time, please REdownload the link above.
It should be fine now.
Beta / Re: version 2.4
« Last post by rejetto on September 21, 2018, 06:27:00 PM »
oh shit, you are missing ALL the icons :(
i'll publish another version ASAP
Pages: [1] 2 3 ... 10