about summary refs log tree commit diff
path: root/app/javascript/flavours/glitch/features/account/containers
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2020-06-30 19:19:50 +0200
committerThibaut Girka <thib@sitedethib.com>2020-06-30 23:32:02 +0200
commit511edccf617097046e16273a2364e8fbf5d913a0 (patch)
tree72d73570f25eb98d84d395b69c5f7126e9b1bebb /app/javascript/flavours/glitch/features/account/containers
parent50f5254568885afcb312514eebb4b0b997cb81f5 (diff)
[Glitch] Add user notes on accounts
Port 65506bac3f3fe233b5b7b3241020bd74eb5c9259 to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
Diffstat (limited to 'app/javascript/flavours/glitch/features/account/containers')
-rw-r--r--app/javascript/flavours/glitch/features/account/containers/account_note_container.js34
1 files changed, 34 insertions, 0 deletions
diff --git a/app/javascript/flavours/glitch/features/account/containers/account_note_container.js b/app/javascript/flavours/glitch/features/account/containers/account_note_container.js
new file mode 100644
index 000000000..f1d007ecb
--- /dev/null
+++ b/app/javascript/flavours/glitch/features/account/containers/account_note_container.js
@@ -0,0 +1,34 @@
+import { connect } from 'react-redux';
+import { changeAccountNoteComment, submitAccountNote, initEditAccountNote, cancelAccountNote } from 'flavours/glitch/actions/account_notes';
+import AccountNote from '../components/account_note';
+
+const mapStateToProps = (state, { account }) => {
+  const isEditing = state.getIn(['account_notes', 'edit', 'account_id']) === account.get('id');
+
+  return {
+    isSubmitting: state.getIn(['account_notes', 'edit', 'isSubmitting']),
+    accountNote: isEditing ? state.getIn(['account_notes', 'edit', 'comment']) : account.getIn(['relationship', 'note']),
+    isEditing,
+  };
+};
+
+const mapDispatchToProps = (dispatch, { account }) => ({
+
+  onEditAccountNote() {
+    dispatch(initEditAccountNote(account));
+  },
+
+  onSaveAccountNote() {
+    dispatch(submitAccountNote());
+  },
+
+  onCancelAccountNote() {
+    dispatch(cancelAccountNote());
+  },
+
+  onChangeAccountNote(comment) {
+    dispatch(changeAccountNoteComment(comment));
+  },
+});
+
+export default connect(mapStateToProps, mapDispatchToProps)(AccountNote);