summaryrefslogtreecommitdiff
path: root/src/api/endpoints/i/appdata
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2017-01-21 21:08:40 +0900
committersyuilo <syuilotan@yahoo.co.jp>2017-01-21 21:08:40 +0900
commit5da436a285b37af7a7bd34a5230f1e5e579f8a46 (patch)
tree0877353361f3b6b5320f4ca54bc273d63dd3964e /src/api/endpoints/i/appdata
parent[API] Implement disconnect/twitter (diff)
downloadsharkey-5da436a285b37af7a7bd34a5230f1e5e579f8a46.tar.gz
sharkey-5da436a285b37af7a7bd34a5230f1e5e579f8a46.tar.bz2
sharkey-5da436a285b37af7a7bd34a5230f1e5e579f8a46.zip
なんかもうめっちゃ変えた
Diffstat (limited to 'src/api/endpoints/i/appdata')
-rw-r--r--src/api/endpoints/i/appdata/set.js24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/api/endpoints/i/appdata/set.js b/src/api/endpoints/i/appdata/set.js
index d6506a44fa..947ba0cb42 100644
--- a/src/api/endpoints/i/appdata/set.js
+++ b/src/api/endpoints/i/appdata/set.js
@@ -5,6 +5,8 @@
*/
import Appdata from '../../../models/appdata';
import User from '../../../models/user';
+import serialize from '../../../serializers/user';
+import event from '../../../event';
/**
* Set app data
@@ -24,30 +26,34 @@ module.exports = (params, user, app, isSecure) =>
}
if (isSecure) {
- const set = {
+ const _user = await User.findOneAndUpdate(user._id, {
$set: {
data: Object.assign(user.data || {}, JSON.parse(data))
}
- };
- await User.update({ _id: user._id }, set);
+ });
res(204);
+
+ // Publish i updated event
+ event(user._id, 'i_updated', await serialize(_user, user, {
+ detail: true,
+ includeSecrets: true
+ }));
} else {
const appdata = await Appdata.findOne({
app_id: app._id,
user_id: user._id
});
- const set = {
- $set: {
- data: Object.assign((appdata || {}).data || {}, JSON.parse(data))
- }
- };
await Appdata.update({
app_id: app._id,
user_id: user._id
}, Object.assign({
app_id: app._id,
user_id: user._id
- }, set), {
+ }, {
+ $set: {
+ data: Object.assign((appdata || {}).data || {}, JSON.parse(data))
+ }
+ }), {
upsert: true
});
res(204);