about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js
diff options
context:
space:
mode:
Diffstat (limited to 'app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js')
-rw-r--r--app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js31
1 files changed, 21 insertions, 10 deletions
diff --git a/app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js b/app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js
index f042adbe6..ec4d74737 100644
--- a/app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js
+++ b/app/javascript/flavours/glitch/features/public_timeline/containers/column_settings_container.js
@@ -1,17 +1,28 @@
 import { connect } from 'react-redux';
 import ColumnSettings from 'flavours/glitch/features/community_timeline/components/column_settings';
 import { changeSetting } from 'flavours/glitch/actions/settings';
+import { changeColumnParams } from 'flavours/glitch/actions/columns';
+ 
+const mapStateToProps = (state, { columnId }) => {
+  const uuid = columnId;
+  const columns = state.getIn(['settings', 'columns']);
+  const index = columns.findIndex(c => c.get('uuid') === uuid);
 
-const mapStateToProps = state => ({
-  settings: state.getIn(['settings', 'public']),
-});
+  return {
+    settings: (uuid && index >= 0) ? columns.get(index).get('params') : state.getIn(['settings', 'public']),
+  };
+};
 
-const mapDispatchToProps = dispatch => ({
-
-  onChange (path, checked) {
-    dispatch(changeSetting(['public', ...path], checked));
-  },
-
-});
+const mapDispatchToProps = (dispatch, { columnId }) => {
+  return {
+    onChange (key, checked) {
+      if (columnId) {
+        dispatch(changeColumnParams(columnId, key, checked));
+      } else {
+        dispatch(changeSetting(['public', ...key], checked));
+      }
+    },
+  };
+};
 
 export default connect(mapStateToProps, mapDispatchToProps)(ColumnSettings);