From f1e31e474cf2ae28c5fa45d9411c17fa8ece5355 Mon Sep 17 00:00:00 2001 From: Eldad Fux Date: Fri, 31 Jan 2020 02:00:31 +0200 Subject: [PATCH] Fix for invite join screen --- app/controllers/api/teams.php | 1 - .../docs/examples/projects/delete.md | 2 +- app/sdks/javascript/src/sdk.js | 20 ++++++++++++++----- app/sdks/javascript/src/sdk.min.js | 8 +++++--- app/views/home/auth/join.phtml | 5 +++-- public/dist/scripts/app-all.js | 8 +++++--- public/dist/scripts/app-dep.js | 8 +++++--- public/scripts/dependencies/appwrite.js | 20 ++++++++++++++----- 8 files changed, 49 insertions(+), 23 deletions(-) diff --git a/app/controllers/api/teams.php b/app/controllers/api/teams.php index f69110dd5b..73e44f700d 100644 --- a/app/controllers/api/teams.php +++ b/app/controllers/api/teams.php @@ -420,7 +420,6 @@ $utopia->patch('/v1/teams/:teamId/memberships/:inviteId/status') ->label('sdk.namespace', 'teams') ->label('sdk.method', 'updateMembershipStatus') ->label('sdk.description', '/docs/references/teams/update-team-membership-status.md') - ->label('sdk.cookies', true) ->param('teamId', '', function () { return new UID(); }, 'Team unique ID.') ->param('inviteId', '', function () { return new UID(); }, 'Invite unique ID') ->param('userId', '', function () { return new UID(); }, 'User unique ID') diff --git a/app/sdks/javascript/docs/examples/projects/delete.md b/app/sdks/javascript/docs/examples/projects/delete.md index f1c98f1487..ecf2c5cfac 100644 --- a/app/sdks/javascript/docs/examples/projects/delete.md +++ b/app/sdks/javascript/docs/examples/projects/delete.md @@ -5,7 +5,7 @@ sdk .setKey('') ; -let promise = sdk.projects.delete('[PROJECT_ID]'); +let promise = sdk.projects.delete('[PROJECT_ID]', '[PASSWORD]'); promise.then(function (response) { console.log(response); diff --git a/app/sdks/javascript/src/sdk.js b/app/sdks/javascript/src/sdk.js index 74ffdc2e4f..77683c2880 100644 --- a/app/sdks/javascript/src/sdk.js +++ b/app/sdks/javascript/src/sdk.js @@ -1988,18 +1988,27 @@ * * * @param {string} projectId + * @param {string} password * @throws {Error} * @return {Promise} */ - delete: function(projectId) { + delete: function(projectId, password) { if(projectId === undefined) { throw new Error('Missing required parameter: "projectId"'); } + if(password === undefined) { + throw new Error('Missing required parameter: "password"'); + } + let path = '/projects/{projectId}'.replace(new RegExp('{projectId}', 'g'), projectId); let payload = {}; + if(password) { + payload['password'] = password; + } + return http .delete(path, { 'content-type': 'application/json', @@ -3519,7 +3528,7 @@ * @param {string} userId * @param {string} secret * @throws {Error} - * @return {null} + * @return {Promise} */ updateMembershipStatus: function(teamId, inviteId, userId, secret) { if(teamId === undefined) { @@ -3550,9 +3559,10 @@ payload['secret'] = secret; } - payload['project'] = config.project; - - return iframe('patch', path, payload); + return http + .patch(path, { + 'content-type': 'application/json', + }, payload); } }; diff --git a/app/sdks/javascript/src/sdk.min.js b/app/sdks/javascript/src/sdk.min.js index 495ad1181a..c10e2ecffa 100644 --- a/app/sdks/javascript/src/sdk.min.js +++ b/app/sdks/javascript/src/sdk.min.js @@ -161,8 +161,10 @@ if(legalState){payload.legalState=legalState} if(legalCity){payload.legalCity=legalCity} if(legalAddress){payload.legalAddress=legalAddress} if(legalTaxId){payload.legalTaxId=legalTaxId} -return http.patch(path,{'content-type':'application/json',},payload)},delete:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"')} -let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.delete(path,{'content-type':'application/json',},payload)},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"')} +return http.patch(path,{'content-type':'application/json',},payload)},delete:function(projectId,password){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"')} +if(password===undefined){throw new Error('Missing required parameter: "password"')} +let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};if(password){payload.password=password} +return http.delete(path,{'content-type':'application/json',},payload)},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"')} let path='/projects/{projectId}/keys'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.get(path,{'content-type':'application/json',},payload)},createKey:function(projectId,name,scopes){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"')} if(name===undefined){throw new Error('Missing required parameter: "name"')} if(scopes===undefined){throw new Error('Missing required parameter: "scopes"')} @@ -325,7 +327,7 @@ if(userId===undefined){throw new Error('Missing required parameter: "userId"')} if(secret===undefined){throw new Error('Missing required parameter: "secret"')} let path='/teams/{teamId}/memberships/{inviteId}/status'.replace(new RegExp('{teamId}','g'),teamId).replace(new RegExp('{inviteId}','g'),inviteId);let payload={};if(userId){payload.userId=userId} if(secret){payload.secret=secret} -payload.project=config.project;return iframe('patch',path,payload)}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload.search=search} +return http.patch(path,{'content-type':'application/json',},payload)}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload.search=search} if(limit){payload.limit=limit} if(offset){payload.offset=offset} if(orderType){payload.orderType=orderType} diff --git a/app/views/home/auth/join.phtml b/app/views/home/auth/join.phtml index 5e580e5e3b..5061424eff 100644 --- a/app/views/home/auth/join.phtml +++ b/app/views/home/auth/join.phtml @@ -3,7 +3,7 @@ data-service="teams.updateMembershipStatus" data-scope="console" data-event="submit" - data-param-invite-id="{{router.params.teamId}}" + data-param-team-id="{{router.params.teamId}}" data-param-invite-id="{{router.params.inviteId}}" data-param-user-id="{{router.params.userId}}" data-param-secret="{{router.params.secret}}" @@ -11,7 +11,8 @@ data-success-param-redirect-url="/console?project={{router.params.project}}" data-success-param-alert-text="Joined Team Successfully" data-success-param-trigger-events="teams.updateMembershipStatus" - data-failure="alert" + data-failure="redirect,alert" + data-success-param-redirect-url="/console" data-failure-param-alert-text="Failed to join team. Please try again later" data-failure-param-alert-classname="error"> diff --git a/public/dist/scripts/app-all.js b/public/dist/scripts/app-all.js index 3b4820e57a..ad4eebf9b5 100644 --- a/public/dist/scripts/app-all.js +++ b/public/dist/scripts/app-all.js @@ -167,8 +167,10 @@ if(legalState){payload['legalState']=legalState;} if(legalCity){payload['legalCity']=legalCity;} if(legalAddress){payload['legalAddress']=legalAddress;} if(legalTaxId){payload['legalTaxId']=legalTaxId;} -return http.patch(path,{'content-type':'application/json',},payload);},delete:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} -let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} +return http.patch(path,{'content-type':'application/json',},payload);},delete:function(projectId,password){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} +if(password===undefined){throw new Error('Missing required parameter: "password"');} +let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};if(password){payload['password']=password;} +return http.delete(path,{'content-type':'application/json',},payload);},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} let path='/projects/{projectId}/keys'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.get(path,{'content-type':'application/json',},payload);},createKey:function(projectId,name,scopes){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} if(name===undefined){throw new Error('Missing required parameter: "name"');} if(scopes===undefined){throw new Error('Missing required parameter: "scopes"');} @@ -331,7 +333,7 @@ if(userId===undefined){throw new Error('Missing required parameter: "userId"');} if(secret===undefined){throw new Error('Missing required parameter: "secret"');} let path='/teams/{teamId}/memberships/{inviteId}/status'.replace(new RegExp('{teamId}','g'),teamId).replace(new RegExp('{inviteId}','g'),inviteId);let payload={};if(userId){payload['userId']=userId;} if(secret){payload['secret']=secret;} -payload['project']=config.project;return iframe('patch',path,payload);}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload['search']=search;} +return http.patch(path,{'content-type':'application/json',},payload);}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload['search']=search;} if(limit){payload['limit']=limit;} if(offset){payload['offset']=offset;} if(orderType){payload['orderType']=orderType;} diff --git a/public/dist/scripts/app-dep.js b/public/dist/scripts/app-dep.js index 27b8e5325e..e1c6e09764 100644 --- a/public/dist/scripts/app-dep.js +++ b/public/dist/scripts/app-dep.js @@ -167,8 +167,10 @@ if(legalState){payload['legalState']=legalState;} if(legalCity){payload['legalCity']=legalCity;} if(legalAddress){payload['legalAddress']=legalAddress;} if(legalTaxId){payload['legalTaxId']=legalTaxId;} -return http.patch(path,{'content-type':'application/json',},payload);},delete:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} -let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.delete(path,{'content-type':'application/json',},payload);},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} +return http.patch(path,{'content-type':'application/json',},payload);},delete:function(projectId,password){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} +if(password===undefined){throw new Error('Missing required parameter: "password"');} +let path='/projects/{projectId}'.replace(new RegExp('{projectId}','g'),projectId);let payload={};if(password){payload['password']=password;} +return http.delete(path,{'content-type':'application/json',},payload);},listKeys:function(projectId){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} let path='/projects/{projectId}/keys'.replace(new RegExp('{projectId}','g'),projectId);let payload={};return http.get(path,{'content-type':'application/json',},payload);},createKey:function(projectId,name,scopes){if(projectId===undefined){throw new Error('Missing required parameter: "projectId"');} if(name===undefined){throw new Error('Missing required parameter: "name"');} if(scopes===undefined){throw new Error('Missing required parameter: "scopes"');} @@ -331,7 +333,7 @@ if(userId===undefined){throw new Error('Missing required parameter: "userId"');} if(secret===undefined){throw new Error('Missing required parameter: "secret"');} let path='/teams/{teamId}/memberships/{inviteId}/status'.replace(new RegExp('{teamId}','g'),teamId).replace(new RegExp('{inviteId}','g'),inviteId);let payload={};if(userId){payload['userId']=userId;} if(secret){payload['secret']=secret;} -payload['project']=config.project;return iframe('patch',path,payload);}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload['search']=search;} +return http.patch(path,{'content-type':'application/json',},payload);}};let users={list:function(search='',limit=25,offset=0,orderType='ASC'){let path='/users';let payload={};if(search){payload['search']=search;} if(limit){payload['limit']=limit;} if(offset){payload['offset']=offset;} if(orderType){payload['orderType']=orderType;} diff --git a/public/scripts/dependencies/appwrite.js b/public/scripts/dependencies/appwrite.js index 74ffdc2e4f..77683c2880 100644 --- a/public/scripts/dependencies/appwrite.js +++ b/public/scripts/dependencies/appwrite.js @@ -1988,18 +1988,27 @@ * * * @param {string} projectId + * @param {string} password * @throws {Error} * @return {Promise} */ - delete: function(projectId) { + delete: function(projectId, password) { if(projectId === undefined) { throw new Error('Missing required parameter: "projectId"'); } + if(password === undefined) { + throw new Error('Missing required parameter: "password"'); + } + let path = '/projects/{projectId}'.replace(new RegExp('{projectId}', 'g'), projectId); let payload = {}; + if(password) { + payload['password'] = password; + } + return http .delete(path, { 'content-type': 'application/json', @@ -3519,7 +3528,7 @@ * @param {string} userId * @param {string} secret * @throws {Error} - * @return {null} + * @return {Promise} */ updateMembershipStatus: function(teamId, inviteId, userId, secret) { if(teamId === undefined) { @@ -3550,9 +3559,10 @@ payload['secret'] = secret; } - payload['project'] = config.project; - - return iframe('patch', path, payload); + return http + .patch(path, { + 'content-type': 'application/json', + }, payload); } };