fix: version 2.5.0 -- compartir proyectos con permisos reales (Lectura/Escritura)
Bug de seguridad real corregido: cualquier usuario autenticado veia TODOS los proyectos (listado, detalle, actividades, tareas, comentarios, adjuntos, KPIs del panel), sin importar si era miembro. Ahora nadie ve un proyecto ajeno sin que su dueno se lo comparta -- los roles de administracion (superadmin/admin/it_manager) mantienen visibilidad total para soporte. Nuevo modelo de permisos por proyecto, simple y no granular: - Solo el dueno original puede compartir un proyecto (agregar/quitar miembros, cambiar su nivel) -- ni un admin del proyecto ni un rol global pueden hacerlo por el. - Dos niveles: Lectura (solo ver) y Escritura (crear/editar/eliminar actividades y tareas -- nunca el proyecto en si: no lo borra, no edita sus datos, no crea proyectos nuevos). Actividades y tareas pasan a borrado logico (antes se borraban fisico sin poder recuperar) -- nueva papelera por proyecto con restaurar. Incluye tambien el filtro "Usuario" en Proyectos (probado en dev en un paso anterior), que va de la mano con este cambio de visibilidad. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -168,12 +168,12 @@ export const messages = {
|
||||
project_risk: 'Riesgo',
|
||||
project_notes: 'Observaciones',
|
||||
project_members: 'Miembros',
|
||||
project_add_member: 'Agregar miembro',
|
||||
project_add_member_as_admin: 'Agregar como administrador del proyecto',
|
||||
project_members_owner_only_hint: 'Solo el dueño del proyecto puede compartirlo y cambiar permisos.',
|
||||
project_add_member: 'Compartir proyecto',
|
||||
project_add_member_role: 'Permiso',
|
||||
project_role_owner: 'Dueño',
|
||||
project_role_admin: 'Administrador',
|
||||
project_make_admin: 'Hacer administrador',
|
||||
project_remove_admin: 'Quitar administrador',
|
||||
project_role_read: 'Lectura',
|
||||
project_role_write: 'Escritura',
|
||||
project_invite_email: 'Invitar por correo',
|
||||
project_invite_email_hint: 'Si el correo no pertenece a nadie todavia, se le manda un enlace para que complete su registro y se una al proyecto.',
|
||||
project_invite_sent: 'Invitacion enviada por correo',
|
||||
@@ -215,6 +215,11 @@ export const messages = {
|
||||
project_trash_title: 'Papelera de proyectos',
|
||||
project_trash_back: 'Volver a proyectos',
|
||||
project_trash_empty_hint: 'Los proyectos eliminados aparecen aqui hasta que se restauran o se borran definitivamente.',
|
||||
common_restore: 'Restaurar',
|
||||
activities_trash: 'Papelera de actividades',
|
||||
activities_trash_empty: 'No hay actividades eliminadas.',
|
||||
tasks_trash: 'Papelera de tareas',
|
||||
tasks_trash_empty: 'No hay tareas eliminadas.',
|
||||
project_restore: 'Restaurar',
|
||||
project_delete_permanent: 'Eliminar definitivamente',
|
||||
project_delete_permanent_confirm_msg: 'Esta accion NO se puede deshacer: se borra el proyecto y todas sus actividades, comentarios y archivos adjuntos de forma permanente.',
|
||||
@@ -461,12 +466,12 @@ export const messages = {
|
||||
project_risk: 'Risk',
|
||||
project_notes: 'Notes',
|
||||
project_members: 'Members',
|
||||
project_add_member: 'Add member',
|
||||
project_add_member_as_admin: 'Add as project administrator',
|
||||
project_members_owner_only_hint: 'Only the project owner can share it and change permissions.',
|
||||
project_add_member: 'Share project',
|
||||
project_add_member_role: 'Permission',
|
||||
project_role_owner: 'Owner',
|
||||
project_role_admin: 'Administrator',
|
||||
project_make_admin: 'Make administrator',
|
||||
project_remove_admin: 'Remove administrator',
|
||||
project_role_read: 'Read',
|
||||
project_role_write: 'Write',
|
||||
project_invite_email: 'Invite by email',
|
||||
project_invite_email_hint: "If the email doesn't belong to anyone yet, they get a link to finish signing up and join the project.",
|
||||
project_invite_sent: 'Invite sent by email',
|
||||
@@ -508,6 +513,11 @@ export const messages = {
|
||||
project_trash_title: 'Project trash',
|
||||
project_trash_back: 'Back to projects',
|
||||
project_trash_empty_hint: 'Deleted projects show up here until they are restored or permanently deleted.',
|
||||
common_restore: 'Restore',
|
||||
activities_trash: 'Deleted activities',
|
||||
activities_trash_empty: 'No deleted activities.',
|
||||
tasks_trash: 'Deleted tasks',
|
||||
tasks_trash_empty: 'No deleted tasks.',
|
||||
project_restore: 'Restore',
|
||||
project_delete_permanent: 'Delete permanently',
|
||||
project_delete_permanent_confirm_msg: 'This CANNOT be undone: the project and all its activities, comments and attachments will be permanently deleted.',
|
||||
|
||||
Reference in New Issue
Block a user