jamespot-user-api 1.0.158 → 1.0.160

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/documentation/assets/search.js +1 -1
  2. package/documentation/classes/AdminLicenseApi.html +11 -11
  3. package/documentation/classes/AdminStoreApi.html +1 -1
  4. package/documentation/classes/AdminUtilsApi.html +1 -1
  5. package/documentation/classes/JApplicationApi.html +8 -8
  6. package/documentation/classes/JArticleApi.html +1 -1
  7. package/documentation/classes/JAssetReservation.html +1 -1
  8. package/documentation/classes/JAudienceApi.html +1 -1
  9. package/documentation/classes/JBaseApi.html +1 -1
  10. package/documentation/classes/JBookmarkApi.html +1 -1
  11. package/documentation/classes/JBusinessNetworkingApi.html +1 -1
  12. package/documentation/classes/JCommunityApi.html +1 -1
  13. package/documentation/classes/JDiapazoneApi.html +1 -1
  14. package/documentation/classes/JFaqApi.html +1 -1
  15. package/documentation/classes/JFileApi.html +5 -5
  16. package/documentation/classes/JFilebankApi.html +1 -1
  17. package/documentation/classes/JGlobalApi.html +1 -1
  18. package/documentation/classes/JGroupApi.html +16 -10
  19. package/documentation/classes/JIAApi.html +1 -1
  20. package/documentation/classes/JLandApi.html +1 -1
  21. package/documentation/classes/JMessengerApi.html +1 -1
  22. package/documentation/classes/JObjectApi.html +1 -1
  23. package/documentation/classes/JSearchApi.html +6 -6
  24. package/documentation/classes/JShareApi.html +1 -1
  25. package/documentation/classes/JSocialActionApi.html +1 -1
  26. package/documentation/classes/JTaxonomyApi.html +2 -2
  27. package/documentation/classes/JUserApi.html +7 -7
  28. package/documentation/classes/JWedocApi.html +1 -1
  29. package/documentation/classes/JWidgetApi.html +1 -1
  30. package/documentation/classes/JamespotUserApi.html +1 -1
  31. package/documentation/classes/Network.html +1 -1
  32. package/documentation/classes/TVDisplayApi.html +1 -1
  33. package/documentation/classes/WindowBrowser.html +1 -1
  34. package/documentation/enums/GroupModerateStatus.html +1 -0
  35. package/documentation/enums/StudioApplicationStatus.html +1 -1
  36. package/documentation/index.html +1 -1
  37. package/documentation/interfaces/AccessRightObject.html +1 -1
  38. package/documentation/interfaces/AdminLicenseUser.html +1 -1
  39. package/documentation/interfaces/ApiDefaultWrapper.html +1 -1
  40. package/documentation/interfaces/ApiWrapper.html +1 -1
  41. package/documentation/interfaces/BaseAutocomplete.html +1 -1
  42. package/documentation/interfaces/BaseMessage.html +1 -1
  43. package/documentation/interfaces/Category.html +1 -1
  44. package/documentation/interfaces/FileBankProps.html +1 -1
  45. package/documentation/interfaces/FolderProps.html +1 -1
  46. package/documentation/interfaces/ListFilterSpec.html +1 -1
  47. package/documentation/interfaces/OF.html +1 -1
  48. package/documentation/interfaces/ObjectListProps.html +1 -1
  49. package/documentation/interfaces/PagingResults.html +1 -1
  50. package/documentation/interfaces/RootFolderProps.html +1 -1
  51. package/documentation/interfaces/SearchCategoryModel.html +1 -1
  52. package/documentation/interfaces/SearchCategoryValue.html +1 -1
  53. package/documentation/interfaces/SearchConfig.html +1 -1
  54. package/documentation/interfaces/SearchFacetModel.html +1 -1
  55. package/documentation/interfaces/SearchFacetValueModel.html +1 -1
  56. package/documentation/interfaces/SearchQuery.html +1 -1
  57. package/documentation/interfaces/SearchQueryFilterModel.html +1 -1
  58. package/documentation/interfaces/SearchQueryOption.html +1 -1
  59. package/documentation/interfaces/SearchQueryResult.html +1 -1
  60. package/documentation/interfaces/SearchQuerySortModel.html +1 -1
  61. package/documentation/interfaces/SearchResultCatProps.html +1 -1
  62. package/documentation/interfaces/SearchResultPropsApp.html +1 -1
  63. package/documentation/interfaces/SearchResultPropsObject.html +1 -1
  64. package/documentation/interfaces/SpotProps.html +1 -1
  65. package/documentation/interfaces/TaxonomyCreate.html +1 -1
  66. package/documentation/interfaces/WindowInterface.html +1 -1
  67. package/documentation/modules.html +11 -11
  68. package/jest.config.ts +2 -2
  69. package/lib/jamespot-user-api.js +1 -1
  70. package/lib/jamespot-user-api.js.map +1 -1
  71. package/lib/src/apis/article/article.d.ts +1 -1
  72. package/lib/src/apis/global/global.d.ts +1 -0
  73. package/lib/src/apis/global/global.mock.d.ts +1 -0
  74. package/lib/src/apis/group/group.d.ts +28 -10
  75. package/lib/src/apis/group/group.mock.d.ts +8 -1
  76. package/lib/src/types/article.d.ts +5 -3
  77. package/lib/src/types/group.d.ts +60 -0
  78. package/lib/src/types/hook.d.ts +37 -0
  79. package/lib/src/types/utils.d.ts +5 -0
  80. package/lib/src/types/widgets.d.ts +1 -0
  81. package/lib/src/util/object.d.ts +2 -0
  82. package/package.json +1 -1
  83. package/phpunitMock/globalUseWebVersion-default.json +1 -0
  84. package/phpunitMock/spotAddToFavorite-bad.json +7 -0
  85. package/phpunitMock/spotAddToFavorite-forbidden.json +7 -0
  86. package/phpunitMock/spotAddToFavorite-success.json +7 -0
  87. package/phpunitMock/spotGetUserLevelAndRight-default.json +31 -0
  88. package/phpunitMock/spotRequest-forbidden.json +7 -0
  89. package/phpunitMock/spotRequest-pending.json +7 -0
  90. package/phpunitMock/spotRequest-success.json +7 -0
@@ -8,7 +8,7 @@ export type DraftSerializedForm = {
8
8
  }[];
9
9
  export declare class JArticleApi extends JBaseApi {
10
10
  list<T extends jArticleLittle = jArticleLittle>(config: ArticleListConfig): Promise<ApiWrapper<PagingResults<T>>>;
11
- get<T extends jArticleLittle = jArticleLittle>(config: ArticleGetConfig): Promise<ApiWrapper<T, BaseMessages>>;
11
+ get<T extends jArticleLittle = jArticleLittle>(config: ArticleGetConfig, signal?: AbortSignal): Promise<ApiWrapper<T, BaseMessages>>;
12
12
  create<R extends jArticleLittle = jArticleLittle, P extends ArticleCreation = ArticleCreation>(article: MaybeWithToken<P>, format?: Format): Promise<ApiWrapper<Array<R>, BaseMessages>>;
13
13
  update<T extends {
14
14
  uri: string;
@@ -3,4 +3,5 @@ import { ApiWrapper } from '../../types';
3
3
  import { ActionVerb } from '../../types/global';
4
4
  export declare class JGlobalApi extends JBaseApi {
5
5
  countAction(verb: ActionVerb, uri: string): Promise<ApiWrapper<number>>;
6
+ useWebVersion(): Promise<ApiWrapper<unknown, import("../../types").BaseMessages>>;
6
7
  }
@@ -1,2 +1,3 @@
1
1
  import { ApiWrapper } from '../../types';
2
2
  export declare const mockCountAction: ApiWrapper<number>;
3
+ export declare const mockGlobalUseWebVersion: ApiWrapper<boolean>;
@@ -1,6 +1,6 @@
1
- import { Category, CreateGroup, GroupList, GroupListConfig, GroupProperties, GroupUserLevel, GroupView, GroupWidget, ResetNotificationConfiguration, UpdateGroup } from '../../types/group';
1
+ import { Category, CreateGroup, GroupList, GroupListConfig, GroupProperties, GroupUserLevel, GroupView, GroupWidget, ResetNotificationConfiguration, UpdateGroup, UserLevelAndRight } from '../../types/group';
2
2
  import { JBaseApi } from '../base';
3
- import { ApiReturn, ApiWrapper, Format, PagingResults, jSpotAutocomplete, jUserLittle } from '../../types';
3
+ import { ApiReturn, ApiWrapper, BaseMessages, Format, jSpotAutocomplete, jUserLittle, PagingResults } from '../../types';
4
4
  export declare class JGroupApi extends JBaseApi {
5
5
  /**
6
6
  * autocomplete return a list of groups
@@ -31,7 +31,7 @@ export declare class JGroupApi extends JBaseApi {
31
31
  _url: string;
32
32
  dateCreation?: string | undefined;
33
33
  dateModified?: string | null | undefined;
34
- }>, import("../../types").BaseMessages>>;
34
+ }>, BaseMessages>>;
35
35
  /**
36
36
  * Update a group
37
37
  * @param group group to update. The uri is mandatory and identify the group to update
@@ -47,7 +47,7 @@ export declare class JGroupApi extends JBaseApi {
47
47
  _url: string;
48
48
  dateCreation?: string | undefined;
49
49
  dateModified?: string | null | undefined;
50
- }, GroupList, GroupView, string>, import("../../types").BaseMessages>>;
50
+ }, GroupList, GroupView, string>, BaseMessages>>;
51
51
  /**
52
52
  * Get a spot
53
53
  * @param idSpot
@@ -63,22 +63,22 @@ export declare class JGroupApi extends JBaseApi {
63
63
  _url: string;
64
64
  dateCreation?: string | undefined;
65
65
  dateModified?: string | null | undefined;
66
- }, GroupList, GroupView, string>, import("../../types").BaseMessages>>;
66
+ }, GroupList, GroupView, string>, BaseMessages>>;
67
67
  /**
68
68
  * Get the properties of a group that are not within the model
69
69
  * @param idSpot
70
70
  * @returns
71
71
  */
72
- getProperties(idSpot: number | string): Promise<ApiWrapper<GroupProperties, import("../../types").BaseMessages>>;
72
+ getProperties(idSpot: number | string): Promise<ApiWrapper<GroupProperties, BaseMessages>>;
73
73
  /**
74
74
  * Get the available applications that can be added to a group
75
75
  */
76
- getApplications(): Promise<ApiWrapper<Record<string, GroupWidget>, import("../../types").BaseMessages>>;
76
+ getApplications(): Promise<ApiWrapper<Record<string, GroupWidget>, BaseMessages>>;
77
77
  /**
78
78
  * Get the available group categories
79
79
  * @returns
80
80
  */
81
- getCategories(): Promise<ApiWrapper<Category[], import("../../types").BaseMessages>>;
81
+ getCategories(): Promise<ApiWrapper<Category[], BaseMessages>>;
82
82
  /**
83
83
  * Get the members of a group
84
84
  * @param idSpot spot id
@@ -90,7 +90,7 @@ export declare class JGroupApi extends JBaseApi {
90
90
  getObjectListJamespotSpotMembers(idSpot: number | string, query?: string, limit?: number, page?: number): Promise<ApiWrapper<PagingResults<{
91
91
  level: GroupUserLevel;
92
92
  user: jUserLittle;
93
- }>, import("../../types").BaseMessages>>;
93
+ }>, BaseMessages>>;
94
94
  list<T extends GroupList = GroupList>(config: GroupListConfig): Promise<ApiWrapper<PagingResults<T>>>;
95
95
  /**
96
96
  * Reset the notifications configuration for all users of the group
@@ -100,5 +100,23 @@ export declare class JGroupApi extends JBaseApi {
100
100
  resetNotifications(config: ResetNotificationConfiguration): Promise<ApiWrapper<{
101
101
  members: number;
102
102
  msg: string;
103
- }, import("../../types").BaseMessages>>;
103
+ }, BaseMessages>>;
104
+ /**
105
+ * Get a spot
106
+ * @param idSpot
107
+ * @returns
108
+ */
109
+ getUserLevelAndRight(idSpot: number | string): Promise<ApiWrapper<UserLevelAndRight, BaseMessages>>;
110
+ /**
111
+ * Post a request to join a moderated group
112
+ * @param idSpot
113
+ * @returns
114
+ */
115
+ groupRequest(idSpot: number | string): Promise<ApiWrapper<boolean, BaseMessages>>;
116
+ /**
117
+ * Join a public group
118
+ * @param idSpot
119
+ * @returns
120
+ */
121
+ groupAddToFavorite(idSpot: number | string): Promise<ApiWrapper<boolean, BaseMessages>>;
104
122
  }
@@ -1,4 +1,4 @@
1
- import { ApiPagingResults, ApiWrapper, jSpotAutocomplete } from '../../types';
1
+ import { ApiDefaultWrapper, ApiPagingResults, ApiWrapper, jSpotAutocomplete, UserLevelAndRight } from '../../types';
2
2
  import { Category, GroupMemberLevel, GroupProperties, GroupView, GroupWidget, jGroupList } from '../../types/group';
3
3
  export declare const spot: ApiWrapper<GroupView>;
4
4
  export declare const properties: ApiWrapper<GroupProperties>;
@@ -7,6 +7,13 @@ export declare const groupCreate: ApiWrapper<GroupView>;
7
7
  export declare const groupUpdate: ApiWrapper<GroupView>;
8
8
  export declare const groupGetAvailableWidget: ApiWrapper<Record<string, GroupWidget>>;
9
9
  export declare const groupGetCategories: ApiWrapper<Category[]>;
10
+ export declare const groupGetUserLevelAndRight: ApiWrapper<UserLevelAndRight>;
11
+ export declare const groupRequestSuccess: ApiWrapper<boolean>;
12
+ export declare const groupRequestForbidden: ApiDefaultWrapper;
13
+ export declare const groupRequestPending: ApiDefaultWrapper;
14
+ export declare const groupAddToFavoriteSuccess: ApiWrapper<boolean>;
15
+ export declare const groupAddToFavoriteForbidden: ApiDefaultWrapper;
16
+ export declare const groupAddToFavoriteBad: ApiDefaultWrapper;
10
17
  export declare const groupObjectListJamespotSpotMembers: ApiPagingResults<GroupMemberLevel>;
11
18
  export declare const groupList: ApiPagingResults<jGroupList>;
12
19
  export declare const groupResetNotification: ApiWrapper<{
@@ -1,8 +1,9 @@
1
- import { Filters, Orders } from './utils';
1
+ import { Filters, Format, FormatExtension, Orders } from './utils';
2
2
  import { WidgetWrapperProps } from './widgets';
3
3
  export type ArticleListConfig = {
4
4
  type?: string;
5
- format?: string;
5
+ format?: Format;
6
+ formatExtend?: FormatExtension;
6
7
  query?: string;
7
8
  limit?: number;
8
9
  page?: number;
@@ -12,7 +13,8 @@ export type ArticleListConfig = {
12
13
  export type ArticleGetConfig = {
13
14
  uri?: string;
14
15
  idArticle?: number;
15
- format?: string;
16
+ format?: Format;
17
+ formatExtend?: FormatExtension;
16
18
  };
17
19
  export type ArticleCreation = {
18
20
  title?: string;
@@ -1,6 +1,8 @@
1
1
  import { jUserLittle } from './user';
2
2
  import { Filters, Orders } from './utils';
3
3
  import { jObjectBase, jObjectLittle } from './object';
4
+ import { Rights } from './common';
5
+ import { z } from 'zod';
4
6
  export type CreateGroup = {
5
7
  type: string;
6
8
  title: string;
@@ -21,6 +23,52 @@ export type GroupMemberLevel = {
21
23
  level: GroupUserLevel;
22
24
  user: jUserLittle;
23
25
  };
26
+ export type UserLevelAndRight = {
27
+ userLevelSpot: UserLevelSpot;
28
+ spotMinLevelToInvit: number;
29
+ userRights: Rights;
30
+ accessRequestStatus?: GroupModerateStatus;
31
+ };
32
+ export declare enum GroupModerateStatus {
33
+ SPOT_MODERATE_IGNORE = 0,
34
+ SPOT_MODERATE_ACCEPT = 1,
35
+ SPOT_MODERATE_PENDING = 2
36
+ }
37
+ export declare const userlevelSpotShema: z.ZodObject<{
38
+ RF_Constant_levelName: z.ZodString;
39
+ RF_delete: z.ZodBoolean;
40
+ RF_editing: z.ZodBoolean;
41
+ RF_level: z.ZodNumber;
42
+ RF_levelName: z.ZodString;
43
+ RF_levelName_Trad: z.ZodString;
44
+ RF_parameters: z.ZodBoolean;
45
+ RF_setAdmin: z.ZodBoolean;
46
+ RF_spotit: z.ZodBoolean;
47
+ RF_spotit_own: z.ZodBoolean;
48
+ }, "strip", z.ZodTypeAny, {
49
+ RF_Constant_levelName: string;
50
+ RF_delete: boolean;
51
+ RF_editing: boolean;
52
+ RF_level: number;
53
+ RF_levelName: string;
54
+ RF_levelName_Trad: string;
55
+ RF_parameters: boolean;
56
+ RF_setAdmin: boolean;
57
+ RF_spotit: boolean;
58
+ RF_spotit_own: boolean;
59
+ }, {
60
+ RF_Constant_levelName: string;
61
+ RF_delete: boolean;
62
+ RF_editing: boolean;
63
+ RF_level: number;
64
+ RF_levelName: string;
65
+ RF_levelName_Trad: string;
66
+ RF_parameters: boolean;
67
+ RF_setAdmin: boolean;
68
+ RF_spotit: boolean;
69
+ RF_spotit_own: boolean;
70
+ }>;
71
+ export type UserLevelSpot = z.infer<typeof userlevelSpotShema>;
24
72
  export type UpdateGroup = CreateGroup & Partial<Omit<GroupProperties, 'rss_feed'>> & {
25
73
  uri: string;
26
74
  image?: string | null;
@@ -152,3 +200,15 @@ export type GroupListConfig = {
152
200
  orders?: Orders;
153
201
  filters?: Filters | undefined;
154
202
  };
203
+ export declare const validateIsFormatUserLevelSpot: (object: object) => object is {
204
+ RF_Constant_levelName: string;
205
+ RF_delete: boolean;
206
+ RF_editing: boolean;
207
+ RF_level: number;
208
+ RF_levelName: string;
209
+ RF_levelName_Trad: string;
210
+ RF_parameters: boolean;
211
+ RF_setAdmin: boolean;
212
+ RF_spotit: boolean;
213
+ RF_spotit_own: boolean;
214
+ };
@@ -57,6 +57,20 @@ declare const fileBankHookSchema: z.ZodIntersection<z.ZodObject<{
57
57
  order: "ASC" | "DESC";
58
58
  }>>;
59
59
  export type FileBankHook = z.infer<typeof fileBankHookSchema>;
60
+ declare const adminAdvancedHookSchema: z.ZodIntersection<z.ZodObject<{
61
+ isActive: z.ZodBoolean;
62
+ }, "strip", z.ZodTypeAny, {
63
+ isActive: boolean;
64
+ }, {
65
+ isActive: boolean;
66
+ }>, z.ZodObject<{
67
+ sendAlert: z.ZodBoolean;
68
+ }, "strip", z.ZodTypeAny, {
69
+ sendAlert: boolean;
70
+ }, {
71
+ sendAlert: boolean;
72
+ }>>;
73
+ export type AdminAdvancedkHook = z.infer<typeof adminAdvancedHookSchema>;
60
74
  declare const spotRssFeedSchema: z.ZodIntersection<z.ZodObject<{
61
75
  isActive: z.ZodBoolean;
62
76
  }, "strip", z.ZodTypeAny, {
@@ -151,6 +165,19 @@ declare const hookListTypeSchema: z.ZodObject<{
151
165
  create: boolean;
152
166
  autorize: ("comment" | "message" | "board" | "article" | undefined)[];
153
167
  }>>>;
168
+ AdminAdvancedHook: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
169
+ isActive: z.ZodBoolean;
170
+ }, "strip", z.ZodTypeAny, {
171
+ isActive: boolean;
172
+ }, {
173
+ isActive: boolean;
174
+ }>, z.ZodObject<{
175
+ sendAlert: z.ZodBoolean;
176
+ }, "strip", z.ZodTypeAny, {
177
+ sendAlert: boolean;
178
+ }, {
179
+ sendAlert: boolean;
180
+ }>>>;
154
181
  }, "strip", z.ZodTypeAny, {
155
182
  DriveHook?: ({
156
183
  isActive: boolean;
@@ -177,6 +204,11 @@ declare const hookListTypeSchema: z.ZodObject<{
177
204
  create: boolean;
178
205
  autorize: ("comment" | "message" | "board" | "article" | undefined)[];
179
206
  }) | undefined;
207
+ AdminAdvancedHook?: ({
208
+ isActive: boolean;
209
+ } & {
210
+ sendAlert: boolean;
211
+ }) | undefined;
180
212
  }, {
181
213
  DriveHook?: ({
182
214
  isActive: boolean;
@@ -203,6 +235,11 @@ declare const hookListTypeSchema: z.ZodObject<{
203
235
  create: boolean;
204
236
  autorize: ("comment" | "message" | "board" | "article" | undefined)[];
205
237
  }) | undefined;
238
+ AdminAdvancedHook?: ({
239
+ isActive: boolean;
240
+ } & {
241
+ sendAlert: boolean;
242
+ }) | undefined;
206
243
  }>;
207
244
  export type HookListType = z.infer<typeof hookListTypeSchema>;
208
245
  export declare const validateIsFormatHookListType: (object: object) => HookListType;
@@ -94,6 +94,10 @@ export type jArticleExtendView = {
94
94
  processContext?: null;
95
95
  uiObjectLink?: jObjectLittle[];
96
96
  };
97
+ export type jInternalDraftView<T> = jArticleView & {
98
+ idDraft: number;
99
+ form: T;
100
+ };
97
101
  export type Order = {
98
102
  name: string;
99
103
  sort: 'ASC' | 'DESC';
@@ -131,6 +135,7 @@ export type MaybeWithParent<T extends jObjectBase = jObjectBase> = {
131
135
  */
132
136
  type Format_DEPRECATED = 'user-api';
133
137
  export type Format = 'raw-little' | 'raw-list' | 'raw-view' | Format_DEPRECATED | undefined;
138
+ export type FormatExtension = Array<'bookmark' | 'licenses'>;
134
139
  export type ApiReturn<T extends Format, Little, List = Little, View = List, Default = {}> = T extends 'raw-little' ? Little : T extends 'raw-list' ? List : T extends 'raw-view' ? View : Default;
135
140
  export type ValueOf<T> = T[keyof T];
136
141
  export {};
@@ -226,6 +226,7 @@ export type WidgetStateProps = {
226
226
  initialized?: boolean | undefined;
227
227
  mounted?: boolean | undefined;
228
228
  hover?: boolean | undefined;
229
+ empty?: boolean;
229
230
  };
230
231
  export type WidgetDefinitionProps = {
231
232
  label: string;
@@ -1,3 +1,4 @@
1
+ import { FormatExtension, Format } from '../types';
1
2
  export declare function deepEqual(a: any, b: any, ignoreAttributes?: Array<string>): boolean;
2
3
  /**
3
4
  * Remplace la valeur de propriétés par leur typeof, sur toute la profondeur de l'objet.
@@ -10,3 +11,4 @@ export declare function deepEqual(a: any, b: any, ignoreAttributes?: Array<strin
10
11
  * @param replacedProperties propriétés à remplacer
11
12
  */
12
13
  export declare function replacePropertiesWithTypes(obj: any, replacedProperties: string[]): any;
14
+ export declare const combineFormat: (format: Format, extendFormat: FormatExtension | undefined) => string | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jamespot-user-api",
3
- "version": "1.0.158",
3
+ "version": "1.0.160",
4
4
  "main": "lib/jamespot-user-api.js",
5
5
  "types": "lib/src/index.d.ts",
6
6
  "directories": {
@@ -0,0 +1 @@
1
+ { "o": "global", "f": "useWebVersion", "error": 0, "messages": [], "result": true }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "addToFavorite",
4
+ "error": 400,
5
+ "messages": [],
6
+ "errorMsg": "Ce groupe est privé. Il vous faut une invitation par un membre du groupe pour en faire partie."
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "addToFavorite",
4
+ "error": 403,
5
+ "messages": [],
6
+ "errorMsg": "Vous n'êtes pas autorisé"
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "addToFavorite",
4
+ "error": 0,
5
+ "messages": "Vous êtes désormais membre de ce groupe",
6
+ "result": true
7
+ }
@@ -0,0 +1,31 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "getUserLevelAndRight",
4
+ "error": 0,
5
+ "messages": [],
6
+ "result": {
7
+ "userLevelSpot": {
8
+ "RF_delete": true,
9
+ "RF_parameters": true,
10
+ "RF_spotit": true,
11
+ "RF_spotit_own": true,
12
+ "RF_editing": true,
13
+ "RF_setAdmin": true,
14
+ "RF_Constant_levelName": "Creator",
15
+ "RF_levelName": "Creator",
16
+ "RF_level": 0,
17
+ "RF_levelName_Trad": "Fondateur"
18
+ },
19
+ "spotMinLevelToInvit": 2,
20
+ "userRights": {
21
+ "create": false,
22
+ "read": true,
23
+ "publish": true,
24
+ "administrate": false,
25
+ "update": true,
26
+ "delete": true,
27
+ "comment": false,
28
+ "member": true
29
+ }
30
+ }
31
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "request",
4
+ "error": 403,
5
+ "messages": [],
6
+ "errorMsg": "ERROR_Access_Forbidden"
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "request",
4
+ "error": 400,
5
+ "messages": [],
6
+ "errorMsg": "Votre demande est en attente de validation."
7
+ }
@@ -0,0 +1,7 @@
1
+ {
2
+ "o": "spot",
3
+ "f": "request",
4
+ "error": 0,
5
+ "messages": [],
6
+ "result": true
7
+ }