fix avatar issue again

peertube
Namekuji 2023-01-25 14:52:05 -05:00
rodzic 26ec5e7086
commit ea2a771349
8 zmienionych plików z 21 dodań i 49 usunięć

Wyświetl plik

@ -88,10 +88,10 @@ export default {
methods: {
async joining(indicator) {
try {
this.donStore.avatar = this.roomToken.original;
await this.roomClient.startAudio();
if (indicator && this.uploadEnabled) {
this.uploading = true;
this.donStore.avatar = this.roomToken.original;
try {
await this.donStore.updateAvatar(this.roomToken.indicator);
} finally {

Wyświetl plik

@ -79,3 +79,4 @@ closeRoomConfirm: "Are you sure you want to close this room?"
roomEvent:
closedByHost: "Host has closed this room."
removed: "You have been requested to leave."
disconnected: "Disconnected from this room."

Wyświetl plik

@ -78,4 +78,5 @@ microphoneBlocked: "マイクが禁止されています。ブラウザやデバ
closeRoomConfirm: "この部屋を閉じますか?"
roomEvent:
closedByHost: "ホストにより部屋が閉じられました。"
removed: "部屋から退去しました。"
removed: "リクエストにより部屋から退去しました。"
disconneced: "切断されました。"

Wyświetl plik

@ -48,10 +48,12 @@ export const useMastodonStore = defineStore("mastodon", {
},
async revertAvatar() {
const token = await axios.get("/api/token");
if (this.avatar && token.data.audon.avatar) {
await this.updateAvatar(this.avatar, token.data.audon.avatar);
};
await axios.delete("/api/room");
if (token.data.audon.avatar) {
if (this.avatar) {
await this.updateAvatar(this.avatar, token.data.audon.avatar);
}
await axios.delete("/api/room");
}
},
},
});

Wyświetl plik

@ -300,6 +300,14 @@ export default {
.on(RoomEvent.Disconnected, async (reason) => {
// TODO: change this from alert to a vuetify thing
self.noSleep.disable();
self.closeLoading = true;
try {
await self.donStore.revertAvatar();
} catch (error) {
console.log(error);
} finally {
self.closeLoading = false;
}
if (reason === DisconnectReason.PARTICIPANT_REMOVED) {
alert(self.$t("roomEvent.removed"));
self.$router.push({ name: "home" });
@ -307,32 +315,12 @@ export default {
let message = "";
switch (reason) {
case DisconnectReason.ROOM_DELETED:
if (self.iamHost || self.iamCohost) {
self.closeLoading = true;
try {
await self.donStore.revertAvatar();
} catch (error) {
console.log(error);
} finally {
self.closeLoading = false;
}
}
message = self.$t("roomEvent.closedByHost");
break;
case DisconnectReason.CLIENT_INITIATED:
if (self.iamCohost) {
self.closeLoading = true;
try {
await self.donStore.revertAvatar();
} catch (error) {
console.log(error);
} finally {
self.closeLoading = false;
}
}
break;
default:
message = "Disconnected due to unknown reasons";
message = self.$t("roomEvent.disconnected");
}
if (message !== "") {
alert(message);
@ -625,13 +613,11 @@ export default {
async onRoomClose() {
// TODO: change this from confirm to a vuetify thing
if (confirm(this.$t("closeRoomConfirm"))) {
this.loading = true;
this.closeLoading = true;
try {
await axios.delete(`/api/room/${this.roomID}`);
} catch (error) {
alert(error);
} finally {
this.loading = false;
}
}
},

Wyświetl plik

@ -33,7 +33,6 @@ func (u *AudonUser) GetIndicator(ctx context.Context, fnew []byte) ([]byte, erro
}
hash := sha256.Sum256(fnew)
isAvatarNew := false
var err error
@ -47,7 +46,6 @@ func (u *AudonUser) GetIndicator(ctx context.Context, fnew []byte) ([]byte, erro
if err := os.WriteFile(saved, fnew, 0664); err != nil {
return nil, err
}
isAvatarNew = true
}
fname := filepath.Base(saved)
@ -60,13 +58,7 @@ func (u *AudonUser) GetIndicator(ctx context.Context, fnew []byte) ([]byte, erro
return nil, err
}
if !isAvatarNew {
if data, err := os.ReadFile(u.GetOriginalAvatarPath(hash, mtype)); err == nil {
return data, nil
}
}
buf := bytes.NewBuffer(fnew)
buf := bytes.NewReader(fnew)
var newImg image.Image
if mtype.Is("image/png") {

Wyświetl plik

@ -234,15 +234,6 @@ func joinRoomHandler(c echo.Context) (err error) {
return ErrRoomNotFound
}
// remove old connection if user is already in the room
if room.IsUserInLivekitRoom(c.Request().Context(), user.AudonID) {
lkRoomServiceClient.RemoveParticipant(c.Request().Context(), &livekit.RoomParticipantIdentity{
Room: room.RoomID,
Identity: user.AudonID,
})
// return echo.NewHTTPError(http.StatusNotAcceptable, "already_in_room")
}
now := time.Now().UTC()
// check if room is not yet started

Wyświetl plik

@ -98,7 +98,6 @@ func livekitWebhookHandler(c echo.Context) error {
}
}()
}
return c.NoContent(http.StatusOK)
} else if event.GetEvent() == webhook.EventRoomStarted {
// Have the bot advertise the room
room, err := findRoomByID(c.Request().Context(), event.GetRoom().GetName())