You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2021/04/15 22:09:46 UTC
[airavata-django-portal] branch develop updated: AIRAVATA-3440
Support "next" query parameter in group views
This is an automated email from the ASF dual-hosted git repository.
machristie pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/airavata-django-portal.git
The following commit(s) were added to refs/heads/develop by this push:
new 002569f AIRAVATA-3440 Support "next" query parameter in group views
002569f is described below
commit 002569f21aac80da25dc9c9ac5e4afbc02ac5326
Author: Marcus Christie <ma...@apache.org>
AuthorDate: Thu Apr 15 18:09:07 2021 -0400
AIRAVATA-3440 Support "next" query parameter in group views
---
.../js/containers/GroupCreateContainer.vue | 8 +++++++-
.../js/containers/GroupEditContainer.vue | 6 +++++-
.../js/group-create-entry-point.js | 20 +++++++++++++++++++-
.../js/group-edit-entry-point.js | 5 +++++
.../templates/django_airavata_groups/base.html | 2 +-
.../templates/django_airavata_groups/group_edit.html | 2 +-
django_airavata/apps/groups/views.py | 2 ++
7 files changed, 40 insertions(+), 5 deletions(-)
diff --git a/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupCreateContainer.vue b/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupCreateContainer.vue
index bdb17f5..8b8085e 100644
--- a/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupCreateContainer.vue
+++ b/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupCreateContainer.vue
@@ -8,6 +8,12 @@ import GroupEditor from "../group_components/GroupEditor.vue";
import { models, session } from "django-airavata-api";
export default {
name: "group-create-container",
+ props: {
+ next: {
+ type: String,
+ required: true,
+ },
+ },
data() {
return {
newGroup: this.createNewGroup(),
@@ -18,7 +24,7 @@ export default {
},
methods: {
handleSaved: function () {
- window.location.assign("/groups/");
+ window.location.assign(this.next);
},
createNewGroup() {
const group = new models.Group();
diff --git a/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupEditContainer.vue b/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupEditContainer.vue
index 582c640..ff1e8bb 100644
--- a/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupEditContainer.vue
+++ b/django_airavata/apps/groups/static/django_airavata_groups/js/containers/GroupEditContainer.vue
@@ -14,6 +14,10 @@ export default {
type: String,
required: true,
},
+ next: {
+ type: String,
+ required: true,
+ },
},
data() {
return {
@@ -25,7 +29,7 @@ export default {
},
methods: {
handleSaved: function () {
- window.location.assign("/groups/");
+ window.location.assign(this.next);
},
},
computed: {},
diff --git a/django_airavata/apps/groups/static/django_airavata_groups/js/group-create-entry-point.js b/django_airavata/apps/groups/static/django_airavata_groups/js/group-create-entry-point.js
index 521bc35..e99116d 100644
--- a/django_airavata/apps/groups/static/django_airavata_groups/js/group-create-entry-point.js
+++ b/django_airavata/apps/groups/static/django_airavata_groups/js/group-create-entry-point.js
@@ -3,6 +3,24 @@ import GroupCreateContainer from "./containers/GroupCreateContainer.vue";
entry((Vue) => {
new Vue({
- render: (h) => h(components.MainLayout, [h(GroupCreateContainer)]),
+ render(h) {
+ return h(components.MainLayout, [
+ h(GroupCreateContainer, {
+ props: {
+ next: this.next,
+ },
+ }),
+ ]);
+ },
+ data() {
+ return {
+ next: "/groups/",
+ };
+ },
+ beforeMount() {
+ if (this.$el.dataset.next) {
+ this.next = this.$el.dataset.next;
+ }
+ },
}).$mount("#group-create");
});
diff --git a/django_airavata/apps/groups/static/django_airavata_groups/js/group-edit-entry-point.js b/django_airavata/apps/groups/static/django_airavata_groups/js/group-edit-entry-point.js
index 22590eb..b019138 100644
--- a/django_airavata/apps/groups/static/django_airavata_groups/js/group-edit-entry-point.js
+++ b/django_airavata/apps/groups/static/django_airavata_groups/js/group-edit-entry-point.js
@@ -8,6 +8,7 @@ entry((Vue) => {
h(GroupEditContainer, {
props: {
groupId: this.groupId,
+ next: this.next,
},
}),
]);
@@ -15,12 +16,16 @@ entry((Vue) => {
data() {
return {
groupId: null,
+ next: "/groups/",
};
},
beforeMount() {
if (this.$el.dataset.groupId) {
this.groupId = this.$el.dataset.groupId;
}
+ if (this.$el.dataset.next) {
+ this.next = this.$el.dataset.next;
+ }
},
}).$mount("#group-edit");
});
diff --git a/django_airavata/apps/groups/templates/django_airavata_groups/base.html b/django_airavata/apps/groups/templates/django_airavata_groups/base.html
index 7763f08..7fb55d6 100755
--- a/django_airavata/apps/groups/templates/django_airavata_groups/base.html
+++ b/django_airavata/apps/groups/templates/django_airavata_groups/base.html
@@ -10,7 +10,7 @@
{% endblock %}
{% block content %}
-<div id="{{ bundle_name }}"/>
+<div id="{{ bundle_name }}" {% if next %} data-next="{{ next }}" {% endif %} />
{% endblock content %}
{% block scripts %}
diff --git a/django_airavata/apps/groups/templates/django_airavata_groups/group_edit.html b/django_airavata/apps/groups/templates/django_airavata_groups/group_edit.html
index d608588..b86b2fd 100755
--- a/django_airavata/apps/groups/templates/django_airavata_groups/group_edit.html
+++ b/django_airavata/apps/groups/templates/django_airavata_groups/group_edit.html
@@ -1,5 +1,5 @@
{% extends './base.html' %}
{% block content %}
-<div id="group-edit" data-group-id="{{ group_id }}"></div>
+<div id="group-edit" data-group-id="{{ group_id }}" {% if next %} data-next="{{ next }}" {% endif %}></div>
{% endblock content %}
diff --git a/django_airavata/apps/groups/views.py b/django_airavata/apps/groups/views.py
index fecb0ef..3797a72 100755
--- a/django_airavata/apps/groups/views.py
+++ b/django_airavata/apps/groups/views.py
@@ -19,6 +19,7 @@ def groups_create(request):
return render(request, 'django_airavata_groups/base.html', {
'bundle_name': 'group-create',
+ 'next': request.GET.get('next'),
})
@@ -29,4 +30,5 @@ def edit_group(request, group_id):
return render(request, 'django_airavata_groups/group_edit.html', {
'bundle_name': 'group-edit',
'group_id': group_id,
+ 'next': request.GET.get('next'),
})