Campo de usuario personalizado obligatorio para todos, pero solo editable UNA VEZ

Lamento si esto ya se ha planteado antes, ayer encontré algo parecido, pero hoy mis términos de búsqueda no arrojan resultados.

Escenario:

Un servidor de Discourse quiere establecer un campo, digamos Fecha de Nacimiento, como campo obligatorio. Esto no debería ser algo que necesite ser editado después del registro. Por lo tanto, la solución es configurar el campo personalizado para desmarcar ‘editable después del registro’ y luego cambiar el campo a ‘Requerido en el registro’. Esto funciona para los usuarios que crean una cuenta a través del registro típico con correo electrónico/nombre de usuario.

Problema 1:

Los usuarios que crean cuentas a través de cosas como OAuth, DiscourseID, WP-Discourse, etc., nunca ven estos campos. Para que estos usuarios tengan acceso a estos campos, deben estar marcados como Requerido para todos, lo que nos lleva a…

Problema 2:

Requerido para todos, por razones obvias, requiere que un campo esté marcado como ‘editable después del registro’. Esto desafortunadamente también permite a los usuarios cambiar el campo cuando quieran… lo cual no es lo que queremos en absoluto.

Característica Solicitada:

Lógica añadida que permita que ‘Requerido para todos’ no requiera que ‘editable después del registro’ esté marcado. La lógica primero verificaría si el campo está vacío o ‘nulo’ ANTES de verificar qué está configurado en ‘editable después del registro’. Ignoraría esencialmente la casilla de verificación de edición para cualquier campo requerido vacío/nulo. Esto permitiría que los campos de usuario personalizados sean editables una vez, pero una vez que se guarda un valor, ya no sean editables.

2 Me gusta