diff --git a/html/src/app.js b/html/src/app.js index 3c7c77aa..a79aa6bf 100644 --- a/html/src/app.js +++ b/html/src/app.js @@ -9182,6 +9182,40 @@ speechSynthesis.getVoices(); this.deleteFriend(id); } } + + this.saveFriendOrder(); + }; + + $app.methods.saveFriendOrder = async function () { + var currentTime = Date.now(); + var lastStoreTime = await configRepository.getString( + `VRCX_lastStoreTime_${API.currentUser.id}`, + '' + ); + // store once every week + if (lastStoreTime && currentTime - lastStoreTime < 604800000) { + return; + } + var storedData = {}; + try { + var data = await configRepository.getString( + `VRCX_friendOrder_${API.currentUser.id}` + ); + if (data) { + var storedData = JSON.parse(data); + } + } catch (err) { + console.error(err); + } + storedData[currentTime] = Array.from(this.friends.keys()); + await configRepository.setString( + `VRCX_friendOrder_${API.currentUser.id}`, + JSON.stringify(storedData) + ); + await configRepository.setString( + `VRCX_lastStoreTime_${API.currentUser.id}`, + currentTime + ); }; $app.methods.addFriend = function (id, state) {