summaryrefslogtreecommitdiff
path: root/app/assets/javascripts/namespaces/leave_by_url.js
diff options
context:
space:
mode:
authorLuke Bennett <lbennett@gitlab.com>2019-04-29 12:22:25 +0100
committerLuke Bennett <lbennett@gitlab.com>2019-05-03 17:19:16 +0100
commit1fb499de278ead55384b13f659a0acfc3680e37f (patch)
treef96e024de259b68e04e1e180c81704f14b2f174d /app/assets/javascripts/namespaces/leave_by_url.js
parent7be2796e24e86c421c8988f454c51755b7f3e153 (diff)
downloadgitlab-ce-1fb499de278ead55384b13f659a0acfc3680e37f.tar.gz
Add leave link to access_granted emailmember-access-granted-leave-email-fe
Allows users to leave a project/group that they have been added to. Add function to leave a namespace by url param If the `leave` param is present on a project/group show page, click the leave link.
Diffstat (limited to 'app/assets/javascripts/namespaces/leave_by_url.js')
-rw-r--r--app/assets/javascripts/namespaces/leave_by_url.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/app/assets/javascripts/namespaces/leave_by_url.js b/app/assets/javascripts/namespaces/leave_by_url.js
new file mode 100644
index 00000000000..b817d38960c
--- /dev/null
+++ b/app/assets/javascripts/namespaces/leave_by_url.js
@@ -0,0 +1,22 @@
+import Flash from '~/flash';
+import { __, sprintf } from '~/locale';
+import { getParameterByName } from '~/lib/utils/common_utils';
+
+const PARAMETER_NAME = 'leave';
+const LEAVE_LINK_SELECTOR = '.js-leave-link';
+
+export default function leaveByUrl(namespaceType) {
+ if (!namespaceType) throw new Error('namespaceType not provided');
+
+ const param = getParameterByName(PARAMETER_NAME);
+ if (!param) return;
+
+ const leaveLink = document.querySelector(LEAVE_LINK_SELECTOR);
+ if (leaveLink) {
+ leaveLink.click();
+ } else {
+ Flash(
+ sprintf(__('You do not have permission to leave this %{namespaceType}.'), { namespaceType }),
+ );
+ }
+}