Bias UI complete

This commit is contained in:
ebolam
2022-08-08 14:20:47 -04:00
parent 1fb74ebaa1
commit 7c35b70222
3 changed files with 33 additions and 43 deletions

View File

@@ -418,15 +418,21 @@
.bias_slider_min { .bias_slider_min {
grid-area: min; grid-area: min;
font-size: x-small; font-size: x-small;
margin-right: 5px;
margin-left: 5px;
} }
.bias_slider_cur { .bias_slider_cur {
grid-area: cur; grid-area: cur;
text-align: center;
} }
.bias_slider_max { .bias_slider_max {
grid-area: max; grid-area: max;
font-size: x-small; font-size: x-small;
text-align: right;
margin-right: 5px;
margin-left: 5px;
} }
.bias_header { .bias_header {

View File

@@ -1257,7 +1257,7 @@ function save_bias(item) {
//phrase //phrase
var phrase = bias.querySelector(".bias_phrase").querySelector("input").value; var phrase = bias.querySelector(".bias_phrase").querySelector("input").value;
//percent //Score
var percent = parseFloat(bias.querySelector(".bias_score").querySelector("input").value); var percent = parseFloat(bias.querySelector(".bias_score").querySelector("input").value);
//completion threshold //completion threshold
@@ -1265,29 +1265,13 @@ function save_bias(item) {
if (phrase != "") { if (phrase != "") {
biases[phrase] = [percent, comp_threshold]; biases[phrase] = [percent, comp_threshold];
} else {
//mark that we have a blank line, or delete it if we have more than one
if (have_blank) {
bias.remove();
} else {
have_blank = true;
}
} }
} bias.classList.add("pulse");
//add another bias line if this is the phrase and it's not blank
if ((item.tagName == "INPUT") & !(have_blank)) {
console.log("Create new bias line");
bias_line = document.getElementById("empty_bias").cloneNode(true);
bias_line.id = "";
bias_line.classList.add("bias");
bias_line.querySelector(".bias_phrase").querySelector("input").value = "";
bias_line.querySelector(".bias_score").querySelector("input").value = 0;
bias_line.querySelector(".bias_comp_threshold").querySelector("input").value = 50;
document.getElementById('biasing').append(bias_line);
} }
//send the biases to the backend //send the biases to the backend
socket.emit("phrase_bias_update", biases); socket.emit("phrase_bias_update", biases);
} }
function sync_to_server(item) { function sync_to_server(item) {
@@ -1345,8 +1329,10 @@ function send_world_info(uid) {
function do_biases(data) { function do_biases(data) {
console.log(data); console.log(data);
//clear out our old bias lines //clear out our old bias lines
while (document.getElementsByClassName("bias").firstChild) { let bias_list = Object.assign([], document.getElementsByClassName("bias"));
document.getElementsByClassName("bias").removeChild(document.getElementsByClassName("bias").firstChild); for (item of bias_list) {
console.log(item);
item.parentNode.removeChild(item);
} }
//add our bias lines //add our bias lines
@@ -1355,8 +1341,10 @@ function do_biases(data) {
bias_line.id = ""; bias_line.id = "";
bias_line.classList.add("bias"); bias_line.classList.add("bias");
bias_line.querySelector(".bias_phrase").querySelector("input").value = key; bias_line.querySelector(".bias_phrase").querySelector("input").value = key;
bias_line.querySelector(".bias_percent").querySelector("input").value = value[0]; bias_line.querySelector(".bias_score").querySelector("input").value = value[0];
bias_line.querySelector(".bias_max").querySelector("input").value = value[1]; update_bias_slider_value(bias_line.querySelector(".bias_score").querySelector("input"));
bias_line.querySelector(".bias_comp_threshold").querySelector("input").value = value[1];
update_bias_slider_value(bias_line.querySelector(".bias_comp_threshold").querySelector("input"));
document.getElementById('biasing').append(bias_line); document.getElementById('biasing').append(bias_line);
} }
@@ -1365,8 +1353,8 @@ function do_biases(data) {
bias_line.id = ""; bias_line.id = "";
bias_line.classList.add("bias"); bias_line.classList.add("bias");
bias_line.querySelector(".bias_phrase").querySelector("input").value = ""; bias_line.querySelector(".bias_phrase").querySelector("input").value = "";
bias_line.querySelector(".bias_percent").querySelector("input").value = 1; bias_line.querySelector(".bias_score").querySelector("input").value = 1;
bias_line.querySelector(".bias_max").querySelector("input").value = 50; bias_line.querySelector(".bias_comp_threshold").querySelector("input").value = 50;
document.getElementById('biasing').append(bias_line); document.getElementById('biasing').append(bias_line);
} }

View File

@@ -46,6 +46,20 @@
{% include 'settings item.html' %} {% include 'settings item.html' %}
{% endwith %} {% endwith %}
</div> </div>
</div>
<div id="setting_menu_story" class="hidden settings_category_area">
<div id="Story_Info">
<div>Story Name: <span class="var_sync_story_story_name"></span></div>
<div>
<button id="load_story" class="btn action_button" onclick="socket.emit('load_story_list', '');">Load Story</button>
<button id="save_story" class="btn action_button var_sync_alt_story_gamesaved" onclick='socket.emit("save_story", "");'>Save Story</button>
</div>
</div>
<div class="setting_tile_area">
{% with menu='Story' %}
{% include 'settings item.html' %}
{% endwith %}
</div>
<h4> <h4>
<span id="bias_open" class="oi" data-glyph="chevron-bottom" onclick='this.classList.add("hidden"); <span id="bias_open" class="oi" data-glyph="chevron-bottom" onclick='this.classList.add("hidden");
document.getElementById("bias_close").classList.remove("hidden"); document.getElementById("bias_close").classList.remove("hidden");
@@ -60,24 +74,6 @@
<div class="bias_header_score">Score</div> <div class="bias_header_score">Score</div>
<div class="bias_header_comp_threshold">Completion Threshold</div> <div class="bias_header_comp_threshold">Completion Threshold</div>
</div> </div>
</div>
</div>
<div id="setting_menu_story" class="hidden settings_category_area">
<div id="Story_Info">
<div>Story Name: <span class="var_sync_story_story_name"></span></div>
<div>
<button id="load_story" class="btn action_button" onclick="socket.emit('load_story_list', '');">Load Story</button>
<button id="save_story" class="btn action_button var_sync_alt_story_gamesaved" onclick='socket.emit("save_story", "");'>Save Story</button>
</div>
</div>
<div class="setting_tile_area">
{% with menu='Story' %}
{% include 'settings item.html' %}
{% endwith %}
</div> </div>
</div> </div>
<div id="setting_menu_user" class="hidden settings_category_area"> <div id="setting_menu_user" class="hidden settings_category_area">