Add new attachment

Only authorized users are allowed to upload new attachments.

List of attachments

Kind Attachment Name Size Version Date Modified Author Change note
png
Accepts disclaimer.png 77.6 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
HomeDirectory.png 228.1 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
Http_call_password_reset.png 76.0 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
disabled password.png 64.6 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
event.png 113.4 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
message form enable.png 23.0 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
register popup.png 14.8 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
selfregister auto enable4.png 33.7 kB 1 29-Dec-2020 05:25 Halmágyi Árpád
png
signupform.png 110.0 kB 1 29-Dec-2020 05:25 Halmágyi Árpád

This page (revision-14) was last changed on 08-Feb-2022 08:44 by Ben Spink

This page was created on 29-Dec-2020 05:25 by Halmágyi Árpád

Only authorized users are allowed to rename pages.

Only authorized users are allowed to delete pages.

Difference between version and

At line 1 changed one line
CrushFTP supports allowing users to self register on your server. This is not automatic, and you must configure and personalize this experience. You have extensive controls over the entire process. You can also have the users get an email to set their password and a folder created for the users with the same domain to access their common files.//
!Enable self registered accounts and send a link to set their password on first login.\\
At line 3 added 2 lines
CrushFTP supports allowing users to self register on your server. This is not automatic, and you must configure and personalize this experience. You have extensive controls over the entire process. You can also have the users get an email to set their password and a folder created for the users with the same domain to access their common files.\\
At line 11 changed one line
When this page loads, it looks at the URL to see the name of the HTML file. The default is "messageForm" and its fine to keep it this way. It then asks the server to give it the registration form named "messageForm" as long as it has been assigned to the "register" user. If it hasn't, you will just get a blank page. If you do not use this custom login.html page, the registration can still be processed, its just a little less intuitive to the user that it was processed.
When this page loads, it looks at the URL to see the name of the HTML file. The default is "messageForm" and its fine to keep it this way. It then asks the server to give it the registration form named "messageForm" as long as it has been assigned to the "register" user. If it hasn't, you will just get a blank page. If you do not use this custom login.html link, the registration can still be processed, its just a little less intuitive to the user that it was processed.
At line 15 changed one line
So for the two required items, they would be "Email" and it's value is "registration_username" and "confirm email" with the value of "registration_email". You can have more items, just look at a user.xml file to see other element names. So if you wanted to include another item in the registration, you would do 'registration_otherelementname'.
So for the two required items, they would be label:"Email" and it's name:"registration_username" and label:"Confirm Email" with the name:"registration_email". You can have more items, just look at a user.XML file to see other element names. So if you wanted to include another item in the registration, you would do 'registration_otherelementname'. Using a field like "registration_password" and "registration_password2" will force password validation that both fields are the same.\\
At line 35 removed one line
----
At line 37 changed one line
You can also do more advanced things with this as well. You can attach events that send email notifications thanking users for registering, and for letting you know there is a user that is pending. This is done via the events section, and using an event for when a user "accepts disclaimer" as this is the same form.
If you need further customizations, you can customize the messageForm.html page with your own copy and use it instead. Just be sure to use the appropriately named form name based on the html file's name. "messageForm.html" = "messageForm" from name.
At line 41 changed one line
If you need further customizations, you can customize the messageForm.html page with your own copy and use it instead. Just be sure to use the appropriately named form name based on the html file's name.
To auto enable accounts and send user a link to set their password for first time user, configure an event. Update the path according to the machine that is hosting CrushFTP.\\
The path should be something like: \\
FILE://Applications/CrushFTP8_OSX/users/MainUsers/{registration_username}/user.XML \\
Or \\
FILE://C:/Program Files/CrushFTP8_PC/users/MainUsers/{registration_username}/user.XML \\
\\
[attachments|CrushTaskExample9/event.png] \\
\\
Add a new write file task to disable the non existent password. This will make it invalid and not decrypt-able. Find/Replace tab use "</password>" for the Find Text and "DISABLED</password>" for Replace With.\\
[attachments|CrushTaskExample9/disabled password.png]\\
\\
Other tabs are blanked out.\\
[attachments|Self Registration/selfregister auto enable2.png] \\
\\
[attachments|Self Registration/selfregister auto enable3.png] \\
\\
\\
For another Write File task, we will do the same as before, but this time we are doing a Find/Replace to enable the account. In the Find/Replace tab use "<max_logins>-1</max_logins>" for Find Text and "<max_logins>0</max_logins><email>{registration_username}</email>" for Replace With. This sets their email to match the username and enables the account.
\\
\\
[attachments|CrushTaskExample9/selfregister auto enable4.png]
\\
\\
Finally we will make an HTTP call that will force the user password reset and will send the user an email with a link to reset their password. In the URL use:
At line 43 changed one line
----
{{{
http://127.0.0.1:8080/?command=request_reset&reset_username_email={registration_username}&currentURL=http://your_domain.com/WebInterface/jQuery/reset.html
}}}
\\
[attachments|CrushTaskExample9/Http_call_password_reset.png]\\
\\
For the users with the same domain name to have a common folder you need to use the Admin>>Plugins>>HomeDirectory and set the Use Unique Time Stamped Folder? (ex. johndoe_01.01.2007) value to be this text manipulation string (it finds the @ sign, and keeps everything to the right of it.):
At line 45 changed 5 lines
If you want to enable the self registered accounts without user interference, you can use the following event, on the register user. Set the path according to the machine that is hosting CrushFTP.
The path should be something like:
/Applications/CrushFTP7_OSX/users/MainUsers/{registration_username}/user.XML
Or
C:/Users/Admin/Program Files/CrushFTP7_PC/users/MainUsers/{registration_username}/user.XML
{{{
{split_start:@:1}{username}{split_end}
}}}
At line 51 changed one line
[attachments|CrushTaskExample9/event.png]
or for a complex one...\\
{{{
{substring_start:1:-1}{substring_start:{indexof_start:@:0}{username}{indexof_end}:-1}{username}{substring_end}{substring_end}
}}}
\\
\\
[attachments|CrushTaskExample9/HomeDirectory.png]\\
\\
Go try things out now. Its finished.
At line 53 removed one line
[attachments|Self Registration/selfregister auto enable2.png]
At line 55 removed one line
[attachments|Self Registration/selfregister auto enable3.png]//
At line 57 removed 21 lines
In the Find/Replace tab use "<max_logins>-1</max_logins>" for Find Text and "<max_logins>0</max_logins><email>{registration_username}</email>" for Replace With.//
[attachments|CrushTaskExample9/selfregister auto enable4.png]
Add a new write file task exactly as the one before just on the Find/Replace tab use "</password>" for the Find Text and "DISABLED</password>" for Replace With.//
[attachments|CrushTaskExample9/disabled password.png]
//
//
You need to make a HTTP call that will force the user password reset and will send the user the email for the given action. In the URL use: "http://127.0.0.1:8080/?command=request_reset&reset_username_email={registration_username}&currentURL=http://your_domain.com/WebInterface/jQuery/reset.html"
[attachments|CrushTaskExample9/Http_call_password_reset.png]
//
//
For the users with the same domain name to have a common folder you need to use the Admin>>Plugins>>HomeDirectory and set the Use Unique Time Stamped Folder? (ex. johndoe_01.01.2007) value to be "{substring_start:1:-1}{substring_start:{indexof_start:@:0}{username}{indexof_end}:-1}{username}{substring_end}{substring_end}"
[attachments|CrushTaskExample9/HomeDirectory.png]
Version Date Modified Size Author Changes ... Change note
14 08-Feb-2022 08:44 5.963 kB Ben Spink to previous
13 29-Dec-2020 05:25 5.826 kB Ada Csaba to previous | to last
12 29-Dec-2020 05:25 5.829 kB Ada Csaba to previous | to last
11 29-Dec-2020 05:25 5.828 kB Ada Csaba to previous | to last
10 29-Dec-2020 05:25 5.826 kB Halmágyi Árpád to previous | to last
9 29-Dec-2020 05:25 5.826 kB Halmágyi Árpád to previous | to last
8 29-Dec-2020 05:25 5.838 kB Halmágyi Árpád to previous | to last
7 29-Dec-2020 05:25 5.746 kB Ben Spink to previous | to last
6 29-Dec-2020 05:25 5.507 kB Halmágyi Árpád to previous | to last
5 29-Dec-2020 05:25 5.483 kB Halmágyi Árpád to previous | to last
4 29-Dec-2020 05:25 5.517 kB Halmágyi Árpád to previous | to last
3 29-Dec-2020 05:25 5.482 kB Halmágyi Árpád to previous | to last
2 29-Dec-2020 05:25 5.474 kB Halmágyi Árpád to previous | to last
1 29-Dec-2020 05:25 4.314 kB Halmágyi Árpád to last [Example Task Flow #9|CrushTaskExample9]\\
« This page (revision-14) was last changed on 08-Feb-2022 08:44 by Ben Spink
G’day (anonymous guest)
CrushFTP10 | What's New

Referenced by
CrushTask

JSPWiki