Jump to content
onjegolders

Password field required compatibility?

Recommended Posts

Is the password field compatible with the "required" option?

I only ask because if I make it a required option when editing a page if I haven't changed the password, it throws a required error. Obviously I'd like for the user to be able to leave it blank and leave the password how it is.

The problem is if I don't make it required then I may end up without a password at all.

Is this something I should look to triggering via a module?

Thanks.

Share this post


Link to post
Share on other sites

Hi onjegolders,

Are you working with the admin backend? I gave your case a try with the API:

$page->of(false);
$page->requiredField = "";
$page->save();
 

Nothing happened. Literally nothing: no errors, no field update.

Share this post


Link to post
Share on other sites

Thanks Valery, yes this is in the backend. On page save, the required error still gets called even if previously a password has been set. This must be because the password field is empty and it's only if a user fills it in that it gets reset.

Share this post


Link to post
Share on other sites

I took a peek at the system password field settings just out of curiosity.

It is not required.

And it's actually possible to create a user without a password. But they won't be able to log in: PW would silently redirect them back to the login page.

Share this post


Link to post
Share on other sites

Thanks Valery. 

I think I should specify, I'm adding the password field to a different page and adding the required value myself in the file settings.

Essentially it's so that my client can create a "member" while also creating a user without having to also remember to go to Access->Users and add one there.

Ideally the password field would be required initially when they add the page but perhaps thereafter not required. Either that or the value of a password field on the edit page template should not be empty.

Share this post


Link to post
Share on other sites

If all of this happens in the backend and the field is "required", the PW backend will not allow to blank it. You would have to write your own template for it to work. You won't even need the "required" option then.

Sorry if that's a poor solution. Maybe someone else can come up with a bright idea?

  • Like 1

Share this post


Link to post
Share on other sites

Thanks anyway Valery, it's useful having different thoughts on it!

I just imagined that as it's part of the core there must be some expected behaviour in this scenario.

Share this post


Link to post
Share on other sites

The only time you'd want to make the password field required is when using it for a new user form or something like that. Otherwise, I'd suggest not making it a required field unless you want people to change their password every time. I'm not positive about what your context is in this case, but because the built-in password field is designed for a very specific purpose, you might just want to use your own markup for a password field. Or, if using an InputfieldForm, you can use InputfieldText and change the type attribute to 'password':

$pass = $modules->get('InputfieldText'); 
$pass->attr('type', 'password'); 
$pass->attr('name', 'pass'); 
$pass->label = 'Your password';
$pass->required = (bool) whateverConditionYouWant(); 

Share this post


Link to post
Share on other sites

Thanks Ryan,

The context would be, like you said, a first time adding of a password for a user. Except a page (student) is being mapped to a user. So if the admin wants to update a student's password, they could also do it from the student page.

Obviously making it required will be unhelpful because it's only required once, unless the password field had some way of knowing that it hadn't been overriden this time but that it was set and not "blank".

I think failing that, the best way is for me to make it not required and the admin will have to remember if someone can't login, it's probably because they failed to assign them a password.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Lewis Newson
      Hi All,
      Im working on streamlining my email sending setup for SMTP. I have a page where the user of the website can input the SMTP host, port, connection type email and password etc but the password field has an additional box underneath it for 'Confirming' it as if it were a new password. The placeholder text also says 'New Password' but I want to be able to change that. I just need an input field where they can enter their SMTP password without it being plain text.
      Thanks for your help!
    • By daniel_puehringer
      Hi community, thanks for the great work you do 🙂

      I´m looking for a global field which can be used in the footer and has only one instance for all pages. So I´m kind of looking for "One field to rule them all".
       
      Reason for my question: The website I´m currently building has one footer for all pages. The content of the footer should be dynamic - therefore I made a global field which is automatically inserted into each page.
      Problem: if I want to change something in the footer, I have to do it for all fields, because each field has it´s own instance.

      Question: is it possible to have one global field in which changes the content for the footer of all pages?

      In most CMS Systems a simple solution to this is often impossible, I hope that processwire is different 🙂

      All the best,
      Daniel
       
    • By Tyssen
      I have a client who is reporting that in the last couple of days they can no longer login to their site with their normal browser (Chrome). Using another browser or an incognito window works.
      I've tried logging into the site using the same login details in my usual browser (Firefox) and have had no problems.
      The site is a membership site and today other members are reporting the same problem.
      The site is running 3.0.148 and has the session handler DB and login throttle modules installed. It was recently upgraded to 3.x from 2.x. But no changes have been made to the site between the time when they were able to login OK and when the problem started happening.
    • By Pip
      Hi, Everyone! 
      I'm currently working on a page reference field and set it for multiple pages (AsmSelect) for the input. Is there a way for me to add an image field (aka Avatar) and the title of page in the radio button? 
      I used the field name enclosed in the { }. Didn't work. It appeared a text instead. 
      Thanks in advance and hope to hear from you soon!
    • By EyeDentify
      Hello dear PW gurus.

      I have stumbled over a strange error that i all of sudden got when trying to upload an image to a images field on a page.
      There where images allready stored in the field that i wanted to keep, but during the upload the error apear and after that all images are gone from the field and i can´t upload any, i just get the error every time.
      I am running ProcessWire 3.0.153 dev.
      Update:
      After looking in the assets folder i find the folder for the page and the image files seems to be there including the ones i tried to upload when the error occured.
      But they don´t show up in the images field in the page editor.
       
      The error reported:
       
      SQLSTATE[01000]: Warning: 1265 Data truncated for column 'ratio' at row 1 And here is a screenshot of the event:

      The TracyDebugger Error reporting:

      I hope you fine folks could point me in a direction.
      But it seems our old pal set_time_limit() is back.

      Regards, EyeDentify
×
×
  • Create New...