diff --git a/Endpoints/SuggestEndpoints.cs b/Endpoints/SuggestEndpoints.cs index 251dfed..b17b09d 100644 --- a/Endpoints/SuggestEndpoints.cs +++ b/Endpoints/SuggestEndpoints.cs @@ -19,6 +19,7 @@ public static class SuggestEndpoints .Select(s => new { s.Id, + s.PlayerId, s.Name, s.Genre, s.Description, @@ -195,6 +196,7 @@ public static class SuggestEndpoints .Select(s => new { s.Id, + s.PlayerId, s.Name, s.Genre, s.Description, diff --git a/wwwroot/js/data.js b/wwwroot/js/data.js index 323d58a..1d7e926 100644 --- a/wwwroot/js/data.js +++ b/wwwroot/js/data.js @@ -78,6 +78,7 @@ export function signatureSuggestions(list) { return JSON.stringify( list.map((s) => [ s.id, + s.playerId, s.name, s.genre, s.description, diff --git a/wwwroot/js/ui.js b/wwwroot/js/ui.js index 0c5ddea..09e7ebf 100644 --- a/wwwroot/js/ui.js +++ b/wwwroot/js/ui.js @@ -136,9 +136,12 @@ export function renderVotes() { state.myVotes.map((v) => [v.suggestionId, v.score]), ); state.allSuggestions.forEach((s) => { + const canEdit = !!state.me?.isAdmin || s.playerId === state.me?.id; + const lockTitle = state.phase !== "Suggest" && !state.me?.isAdmin; const li = buildCard(s, { showAuthor: true, - allowEdit: !!state.me?.isAdmin, + allowEdit: canEdit, + lockTitle, }); const hasVote = Object.prototype.hasOwnProperty.call(votesMap, s.id); const current = hasVote ? votesMap[s.id] : 5; // start neutral when no prior vote