Reglas-Espacios
Espacios
Tipos especiales
Marca blanca
es la variante “premium” de los Espacios, que permite a quien lo contrata personalizar el look and feel del mismo. Las columnas destacadas en la tabla escritorios son:
- marca_blanca: debe ser True para activarlo
- logo_fondo_oscuro: un SVG
- nombre_legal y direccion_legal: ambos TEXT, se utilizan en el envió de mails customizados con el aspecto de la empresa, en el pié de página. En caso de no definirse se utilizan los datos por defecto, comunes a todos los espacios
- look_and_feel: JSONB donde se definen estilos CSS para los distintos elementos customizables.
Aislados
son Espacios en los que únicamente es posible acceder desde el login específico y una vez dentro no se puede cambiar a ninguna de las demás cuentas del usuario (ni siquiera la personal). Al momento de elegir el destinatario al que se le comparte un campo/lote, los usuarios de espacios aislados poseerán la menor prioridad. Las columnas importantes en la tabla escritorios son:
- aislado: boolean
Opciones de customización para cualquier espacio
Datos custom de usuario
En los Espacios pueden definirse ciertos datos que se desean registrar al momento que los usuarios se registran (por ejemplo, el CUIT o su número de DNI). Los mismos se solicitan en el formulario de registro.
En la tabla escritorios, la columna datos_custom_usuarios define un arreglo de IDs donde cada uno corresponde a un dato custom que será solicitado en el alta de usuario. Dichos IDs hacen referencia a la clave primaria de la tabla def_datos_custom_usuarios_escritorios donde está la definición propiamente dicha del dato.
Forzado de usuarios internos
Por defecto para determinar si un usuario es interno o externo se evalúa que el dominio de su email coincida con el del espacio (tabla escritorios, columna domain). Pero puede forzarse esta decisión de forma manual por parte de los administradores del Espacio si en la tabla escritorios se marca como True la columna forzado_internos.
Supervisores con permisos
Los supervisores de grupos de supervisión, originalmente no poseen permisos superiores a los de lectura sobre los campos y lotes de los supervisados. Para poder cambiar esto y dejar la elección de dichos permisos a los administradores del Espacio, se debe marcar como True la columna supervisores_con_permisos de la tabla escritorios.
Permisos Supremos para administradores
En la columna permisos_supremos_admin de la tabla escritorios puede declararse un arreglo con IDs de funcionalidades. Los mismos se les otorgarán a los administradores del Espacio, por encima de todos los demás. De esta forma, sin importar quién sea el usuario supervisado o qué permisos tenga sobre sus campos/lotes, los administradores siempre poseerán, al menos, estos permisos supremos.
Signup externo
De manera predeterminada la única forma de acceder a un Espacio es siendo invitado por un administrador. No obstante, si se marca True en la columna signup_externo de la tabla escritorios, se le permite a cualquier persona crearse un usuario dentro del Espacio mediante el formulario de registro específico. Para esto, debe haberse creado una oferta comercial en ofertas_comerciales con un tipo de usuario default, que es el que se usará cuando un usuario se dé de alta por sí solo.
SignUp invitation code
Permite utilizar códigos de invitación en el SignUp Externo, osea que el espacio debe tener el signup_externo=true y los requisitos mencionados. La columna signup_invitation_code_config_id indica si el código es obligatorio, opcional o está deshabilitado. La columna messages permite incluir un mensaje al campo del código de invitación en el registro, bajo la key “signup_invitation_code”. Recordar poner un json con todos los idiomas. La tabla signup_invitation_codes tiene los códigos asociados a un determinado espacio, y el cupo de cada uno. La columna signup_params tiene parámetros que permiten modificar los parámetros con los que se da de alta el usuario, para por ejemplo asociar un tipo de usuario o superficie a un código de invitación. Este json pisa los parámetros en UsersDesktopAdminV2API que luego recibe la api DesktopUserV2API, por lo que se debe asegurar utilizar los mismo nombres y que estén incluidos en los schemas.
Pasos para habilitarlo:
- crear tipo de usuario especifico para el espacio o utilizar existentes
- crear oferta comercial asociada al espacio. En el array de planes pueden ir varios, que serán todos los posibles dentro del espacio (asignables mediante “signup_invitation_code”). EN el default se indica cual es el que corresponde al signup externo.
- por ultimo setear en la tabla escritorios la columna "signup_externo" en verdadero y la configuracion de “signup_invitation_code” como obligatoria u opcional.