diff --git a/src/app/shared/services/permission.service.ts b/src/app/shared/services/permission.service.ts index e71a8c7..243b967 100644 --- a/src/app/shared/services/permission.service.ts +++ b/src/app/shared/services/permission.service.ts @@ -1,10 +1,8 @@ import {Injectable, Inject} from "ng-forward"; -type WithPermissions = noosfero.Profile | noosfero.Comment | noosfero.Article; - @Injectable() export class PermissionService { - isAllowed(target: WithPermissions, permission: string) { + isAllowed(target: noosfero.ModelWithPermissions, permission: string) { return (target.permissions || []).indexOf(permission) >= 0; } diff --git a/src/lib/ng-noosfero-api/interfaces/article.ts b/src/lib/ng-noosfero-api/interfaces/article.ts index 2c9f34e..f1c8ef2 100644 --- a/src/lib/ng-noosfero-api/interfaces/article.ts +++ b/src/lib/ng-noosfero-api/interfaces/article.ts @@ -1,6 +1,6 @@ namespace noosfero { - export interface Article extends RestModel { + export interface Article extends RestModel, ModelWithPermissions { abstract: string; path: string; profile: Profile; @@ -16,7 +16,5 @@ namespace noosfero { start_date: string; end_date: string; accept_comments: boolean; - - permissions: string[]; } } diff --git a/src/lib/ng-noosfero-api/interfaces/comment.ts b/src/lib/ng-noosfero-api/interfaces/comment.ts index 2f8a3c3..b773a9c 100644 --- a/src/lib/ng-noosfero-api/interfaces/comment.ts +++ b/src/lib/ng-noosfero-api/interfaces/comment.ts @@ -1,11 +1,10 @@ namespace noosfero { - export interface Comment extends RestModel { + export interface Comment extends RestModel, ModelWithPermissions { source_id: number; reply_of_id: number; reply_of: Comment; replies: Comment[]; body: string; - permissions: string[]; } export interface CommentViewModel extends Comment { diff --git a/src/lib/ng-noosfero-api/interfaces/profile.ts b/src/lib/ng-noosfero-api/interfaces/profile.ts index 607270b..fc73fd5 100644 --- a/src/lib/ng-noosfero-api/interfaces/profile.ts +++ b/src/lib/ng-noosfero-api/interfaces/profile.ts @@ -6,7 +6,7 @@ namespace noosfero { * @description * A representation of a Noosfero Profile. */ - export interface Profile extends RestModel { + export interface Profile extends RestModel, ModelWithPermissions { /** * @ngdoc property * @name id @@ -79,8 +79,6 @@ namespace noosfero { */ custom_footer: string; - permissions: string[]; - /** * @ngdoc property * @name layout_template -- libgit2 0.21.2