Page 2 of 2

Re: Firefox doesn't show people picker field

Posted: 10 Mar 2020
by Leslie
Hello MNikitina !

I started to try to solve this problem with a member of the support team, Nikita, and for now I don't have a solution. :(

There the requested informations :
_ All my person fields are on the "Default" Template.
_ I have done several tests, with a Ctrl+F5 between each, just to be sure :

With this simple JS code :

Code: Select all

fd.field('Demandeur').control('ready',function() { 
  fd.field('Demandeur').readonly(true);
});
fd.field('Utilisateurs').control('ready',function() { 
  fd.field('Utilisateurs').readonly(true);
});
fd.field('Delegations').control('ready',function() { 
  fd.field('Delegations').readonly(true);
});
fd.field('Responsable_x0020_direct').control('ready',function() { 
  fd.field('Responsable_x0020_direct').readonly(true);
});
fd.field('Responsable_x0020_boite').control('ready',function() { 
  fd.field('Responsable_x0020_boite').readonly(true);
});
fd.field('Utilisateurs1').control('ready',function() { 
  fd.field('Utilisateurs1').readonly(true);
});
fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
});
fd.field('AssignedTo').control('ready',function() { 
  fd.field('AssignedTo').readonly(true);
});

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);
  return true;
});
>> Open an existing item:
◾Not OK : Demandeur and Utilisateurs are readonly but all the others are invisible.
>> Open a new item:
◾Not OK : Demandeur is readonly but all the others are invisible.


With only the Demandeur field in readonly :

Code: Select all

fd.field('Demandeur').control('ready',function() { 
  fd.field('Demandeur').readonly(true);
}); /*
fd.field('Utilisateurs').control('ready',function() { 
  fd.field('Utilisateurs').readonly(true);
});
fd.field('Delegations').control('ready',function() { 
  fd.field('Delegations').readonly(true);
});
fd.field('Responsable_x0020_direct').control('ready',function() { 
  fd.field('Responsable_x0020_direct').readonly(true);
});
fd.field('Responsable_x0020_boite').control('ready',function() { 
  fd.field('Responsable_x0020_boite').readonly(true);
});
fd.field('Utilisateurs1').control('ready',function() { 
  fd.field('Utilisateurs1').readonly(true);
});
fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
});
fd.field('AssignedTo').control('ready',function() { 
  fd.field('AssignedTo').readonly(true);
});*/

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);/*
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);*/
  return true;
});
>> Open an existing item:
◾Not OK : Demandeur is readonly, but all the others are invisible.
>> Open a new item:
◾Not OK : Demandeur is readonly, but all the others are invisible.


Same thing with the Utilisateurs field
>> Open an existing item:
◾Not OK : Demandeur field is ok, Utilisateurs is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur field is ok, Utilisateurs is readonly, but the others are invisible.


Same thing with the Delegations field
>> Open an existing item:
◾Not OK : Demandeur and Utilisateurs are ok, Delegations is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur and Utilisateurs are ok, Delegations is readonly, but the others are invisible.


Same thing with the Responsable direct field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs and Delegations are ok, Responsable direct is readonly, but the others are invisible.


Same thing with the Responsable boite field
>> Open an existing item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct are ok, Responsable boite is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct are ok, Responsable boite is readonly, but the others are invisible.


Same thing with the Utilisateurs1 field
>> Open an existing item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite are ok, Utilisateurs1 is readonly, but the others are invisible.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite are ok, Utilisateurs1 is readonly, but the others are invisible.


Same thing with the Directeur actuel field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾Not OK : Demandeur, Utilisateurs, Délégations, Responsable direct, Responsable boite, Utilisateurs1 are ok, Directeur actuel is readonly, but AssignedTo is invisible.


Same thing with the AssignedTo field
>> Open an existing item:
◾OK : all the fields are visible and are reacting normally.
>> Open a new item:
◾OK : all the fields are visible and are reacting normally.

So it seems that the problem is just after the readonly. All the person fields after a field with a readonly are impacted.
Looks like a bug... :shock:


Thank you four your help ! This is really urgent...

Re: Firefox doesn't show people picker field

Posted: 11 Mar 2020
by Leslie
Hello everybody !

Good news !
By talking to Nikita, it gave me the idea to test my previous code (with readonly(true)) just by adding the settimeout: It works very well! :D

So the code now is :

Code: Select all

setTimeout(function(){ 
	fd.field('Demandeur').control('ready',function() { 
	  fd.field('Demandeur').readonly(true);
	});
	fd.field('Utilisateurs').control('ready',function() { 
	  fd.field('Utilisateurs').readonly(true);
	});
	fd.field('Delegations').control('ready',function() { 
	  fd.field('Delegations').readonly(true);
	});
	fd.field('Responsable_x0020_direct').control('ready',function() { 
	  fd.field('Responsable_x0020_direct').readonly(true);
	});
	fd.field('Responsable_x0020_boite').control('ready',function() { 
	  fd.field('Responsable_x0020_boite').readonly(true);
	});
	fd.field('Utilisateurs1').control('ready',function() { 
	  fd.field('Utilisateurs1').readonly(true);
	});
	fd.field('Directeur_x0020_actuel_x0020_de_').control('ready',function() { 
	  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(true);
	});
	fd.field('AssignedTo').control('ready',function() { 
	  fd.field('AssignedTo').readonly(true);
	});
}, 1000);

fd.onsubmit(function(){
  fd.field('Demandeur').readonly(false);
  fd.field('Utilisateurs').readonly(false);
  fd.field('Delegations').readonly(false);
  fd.field('Responsable_x0020_direct').readonly(false);
  fd.field('Responsable_x0020_boite').readonly(false);
  fd.field('Utilisateurs1').readonly(false);
  fd.field('Directeur_x0020_actuel_x0020_de_').readonly(false);
  fd.field('AssignedTo').readonly(false);
  return true;
});

I have a question :
I kept the ready function, just to be sure the field is ready. (In my tests, it works fine without too.)
Does that slow down the execution a lot? :?:
I ask that for the few users who are in places where the internet connection is very very bad.

Thank you in advance for your response and have a nice day !

Re: Firefox doesn't show people picker field

Posted: 16 Mar 2020
by mnikitina
Hello Leslie,

I'm sorry for the delay in reply.

As Nikita mentioned in the email, this shouldn't slow down the form load or scripting execution. The users with a very slow internet connection should experience approximately the same results with and without the ready event, but it should be just a little safer to keep ready included.