añadir nuevas funcionalidades

This commit is contained in:
2025-04-30 20:56:28 +02:00
parent 883daf32ed
commit 655ea60d6b
71 changed files with 3836 additions and 1158 deletions

View File

@@ -16,6 +16,6 @@ class DashboardPolicy
public function view(User $user)
{
return $user->hasPermissionTo('view dashboard');
return true; //$user->hasPermissionTo('view.dashboard');
}
}

View File

@@ -16,7 +16,7 @@ class DocumentPolicy
*/
public function viewAny(User $user): bool
{
return false;
return $user->hasPermissionTo('document.view');
}
/**
@@ -24,7 +24,7 @@ class DocumentPolicy
*/
public function view(User $user, Document $document)
{
return $user->hasPermissionTo('view documents')
return $user->hasPermissionTo('document.view')
&& $user->hasProjectAccess($document->project_id)
&& $user->hasPermissionToResource($document->resource(), 'view');
}
@@ -42,7 +42,7 @@ class DocumentPolicy
*/
public function update(User $user, Document $document): bool
{
return $user->hasPermissionToResource($document->resource(), 'edit');
return $user->hasPermissionToResource($document->resource(), 'document.edit');
}
/**
@@ -50,7 +50,7 @@ class DocumentPolicy
*/
public function delete(User $user, Document $document): bool
{
return $user->hasPermissionTo('delete documents');
return $user->hasPermissionTo('document.delete');
}
/**

View File

@@ -22,18 +22,18 @@ class FolderPolicy
$user->projects->contains($folder->project_id);
}
return $user->can('manage-projects');
return $user->can('project.create');
}
public function move(User $user, Folder $folder)
{
return $user->can('manage-projects') &&
return $user->can('project.create') &&
$user->projects->contains($folder->project_id);
}
public function delete(User $user, Folder $folder)
{
return $user->can('delete-projects') &&
return $user->can('project.delete') &&
$user->projects->contains($folder->project_id);
}
}

View File

@@ -14,7 +14,7 @@ class PermissionPolicy
*/
public function viewAny(User $user): bool
{
return $user->hasPermissionTo('view permissions');
return $user->hasPermissionTo('permission.view');
}
/**
@@ -22,7 +22,7 @@ class PermissionPolicy
*/
public function view(User $user, Permission $permission): bool
{
return $user->hasPermissionTo('view permissions');
return $user->hasPermissionTo('permission.view');
}
/**
@@ -30,7 +30,7 @@ class PermissionPolicy
*/
public function create(User $user): bool
{
return $user->hasPermissionTo('create permissions');
return $user->hasPermissionTo('permission.create');
}
/**
@@ -40,7 +40,7 @@ class PermissionPolicy
{
if($permission->is_system) return false;
return $user->hasPermissionTo('edit permissions');
return $user->hasPermissionTo('permission.edit');
}
/**
@@ -52,7 +52,7 @@ class PermissionPolicy
return false;
}
return $user->hasPermissionTo('delete permissions');
return $user->hasPermissionTo('permission.delete');
}
/**
@@ -60,7 +60,7 @@ class PermissionPolicy
*/
public function restore(User $user, Permission $permission): bool
{
return $user->hasPermissionTo('manage permissions');
return $user->hasPermissionTo('permission.create');
}
/**
@@ -68,6 +68,6 @@ class PermissionPolicy
*/
public function forceDelete(User $user, Permission $permission): bool
{
return $user->hasPermissionTo('manage permissions');
return $user->hasPermissionTo('permission.delete');
}
}

View File

@@ -13,7 +13,7 @@ class ProjectPolicy
*/
public function viewAny(User $user): bool
{
return $user->hasPermissionTo('view projects');
return $user->hasPermissionTo('project.view');
}
/**
@@ -21,7 +21,13 @@ class ProjectPolicy
*/
public function view(User $user, Project $project): bool
{
return $user->hasPermissionTo('view projects') &&
// Admin ve todo, otros usuarios solo proyectos asignados
/*
return $user->hasRole('admin') ||
$project->users->contains($user->id) ||
$project->manager_id === $user->id;*/
return $user->hasPermissionTo('project.view') &&
$this->hasProjectAccess($user, $project);
}
@@ -30,7 +36,7 @@ class ProjectPolicy
*/
public function create(User $user): bool
{
return $user->hasPermissionTo('create projects');
return $user->hasPermissionTo('project.create');
}
/**
@@ -38,7 +44,7 @@ class ProjectPolicy
*/
public function update(User $user, Project $project): bool
{
return $user->hasPermissionTo('edit projects') &&
return $user->hasPermissionTo('project.edit') &&
$this->hasProjectAccess($user, $project);
}
@@ -47,7 +53,7 @@ class ProjectPolicy
*/
public function delete(User $user, Project $project): bool
{
return $user->hasPermissionTo('delete projects') &&
return $user->hasPermissionTo('project.delete') &&
$this->hasProjectAccess($user, $project);
}

View File

@@ -13,7 +13,7 @@ class RolePolicy
*/
public function viewAny(User $user): bool
{
return $user->hasPermissionTo('view roles');
return $user->hasPermissionTo('role.view');
}
/**
@@ -21,7 +21,7 @@ class RolePolicy
*/
public function view(User $user, Role $role): bool
{
return false;
return $user->hasPermissionTo('role.view');
}
/**
@@ -29,7 +29,7 @@ class RolePolicy
*/
public function create(User $user): bool
{
return $user->hasPermissionTo('create roles');
return $user->hasPermissionTo('role.create');
}
/**
@@ -37,7 +37,7 @@ class RolePolicy
*/
public function update(User $user, Role $role): bool
{
return $user->hasPermissionTo('edit roles') && !$role->is_protected;
return $user->hasPermissionTo('role.edit') && !$role->is_protected;
}
/**
@@ -45,7 +45,7 @@ class RolePolicy
*/
public function delete(User $user, Role $role): bool
{
return $user->hasPermissionTo('delete roles') && !$role->is_protected;
return $user->hasPermissionTo('role.delete') && !$role->is_protected;
}
/**

View File

@@ -12,7 +12,7 @@ class UserPolicy
*/
public function viewAny(User $user): bool
{
return $user->hasPermissionTo('manage users');
return $user->hasPermissionTo('user.view');
}
/**
@@ -20,7 +20,7 @@ class UserPolicy
*/
public function view(User $user, User $model): bool
{
return false;
return $user->hasPermissionTo('user.view');
}
/**
@@ -28,7 +28,7 @@ class UserPolicy
*/
public function create(User $user): bool
{
return $user->hasPermissionTo('manage users');
return $user->hasPermissionTo('user.create');
}
/**
@@ -36,7 +36,7 @@ class UserPolicy
*/
public function update(User $user, User $model): bool
{
return $user->hasPermissionTo('manage users') && !$model->is_protected;
return $user->hasPermissionTo('user.create') && !$model->is_protected;
}
/**
@@ -44,7 +44,7 @@ class UserPolicy
*/
public function delete(User $user, User $model): bool
{
return $user->hasPermissionTo('manage users')
return $user->hasPermissionTo('user.delete')
&& !$model->is_protected
&& $user->id !== $model->id;
}