summaryrefslogtreecommitdiff
path: root/src/containers/projects/VisibleProjectAuthList.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/containers/projects/VisibleProjectAuthList.js')
-rw-r--r--src/containers/projects/VisibleProjectAuthList.js25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/containers/projects/VisibleProjectAuthList.js b/src/containers/projects/VisibleProjectAuthList.js
new file mode 100644
index 00000000..746380f6
--- /dev/null
+++ b/src/containers/projects/VisibleProjectAuthList.js
@@ -0,0 +1,25 @@
+import {connect} from "react-redux";
+import ProjectList from "../../components/projects/ProjectAuthList";
+
+const getVisibleProjectAuths = (projectAuths, filter) => {
+ switch (filter) {
+ case 'SHOW_ALL':
+ return projectAuths;
+ case 'SHOW_OWN':
+ return projectAuths.filter(projectAuth => projectAuth.authorizationLevel === "OWN");
+ case 'SHOW_SHARED':
+ return projectAuths.filter(projectAuth => projectAuth.authorizationLevel !== "OWN");
+ default:
+ return projectAuths;
+ }
+};
+
+const mapStateToProps = state => {
+ return {
+ authorizations: getVisibleProjectAuths(state.authorizations, state.authVisibilityFilter)
+ };
+};
+
+const VisibleProjectAuthList = connect(mapStateToProps)(ProjectList);
+
+export default VisibleProjectAuthList;