Cookie Saving for Colab - Needs work

This commit is contained in:
ebolam
2022-09-07 20:12:21 -04:00
parent cd67013e3e
commit 9e66f42f5d
3 changed files with 42 additions and 25 deletions

View File

@@ -6776,7 +6776,7 @@ def new_ui_index():
def ui2_connect():
#Send all variables to client
koboldai_vars.send_to_ui()
UI_2_load_tweaks()
UI_2_load_cookies()
pass
#==================================================================#
@@ -7692,19 +7692,22 @@ def UI_2_theme_list_refresh(data):
#==================================================================#
# Save Tweaks
#==================================================================#
@socketio.on('save_tweaks')
def UI_2_save_tweaks(data):
with open("./settings/tweaks.settings", "w") as f:
f.write(data)
@socketio.on('save_cookies')
def UI_2_save_cookies(data):
for key in data:
#Note this won't sync to the client automatically as we're modifying a variable rather than setting it
koboldai_vars.cookies[key] = data[key]
with open("./settings/cookies.settings", "w") as f:
f.write(json.dumps(koboldai_vars.cookies))
#==================================================================#
# Load Tweaks
#==================================================================#
def UI_2_load_tweaks():
def UI_2_load_cookies():
if koboldai_vars.on_colab:
if os.path.exists("./settings/tweaks.settings"):
with open("./settings/tweaks.settings", "r") as f:
socketio.emit('load_tweaks', f.read(), room="UI2")
if os.path.exists("./settings/cookies.settings"):
with open("./settings/cookies.settings", "r") as f:
socketio.emit('load_cookies', json.load(f), room="UI2")
#==================================================================#
# Test

View File

@@ -782,6 +782,7 @@ class system_settings(settings):
print("Colab Check: {}".format(self.on_colab))
self.horde_share = False
self._horde_pid = None
self.cookies = {} #cookies for colab since colab's URL changes, cookies are lost
def __setattr__(self, name, value):

View File

@@ -25,7 +25,7 @@ socket.on("world_info_folder", function(data){world_info_folder(data);});
socket.on("delete_new_world_info_entry", function(data){document.getElementById("world_info_-1").remove();});
socket.on("delete_world_info_entry", function(data){document.getElementById("world_info_"+data).remove();});
socket.on("error", function(data){show_error_message(data);});
socket.on('load_tweaks', function(data){load_tweaks(data);});
socket.on('load_cookies', function(data){load_cookies(data);});
//socket.onAny(function(event_name, data) {console.log({"event": event_name, "class": data.classname, "data": data});});
var presets = {};
@@ -2025,17 +2025,20 @@ function save_tweaks() {
let path = tweakContainer.getAttribute("tweak-path");
if (toggle.checked) out.push(path);
}
if (on_colab) {
socket.emit("save_tweaks", JSON.stringify(out));
} else {
setCookie("enabledTweaks", JSON.stringify(out));
}
setCookie("enabledTweaks", JSON.stringify(out));
}
function load_tweaks(data) {
let enabledTweaks = JSON.parse(data);
function load_cookies(data) {
for (cookie of data) {
setCookie(cookie, data[cookie]);
}
process_cookies();
}
function load_tweaks() {
let enabledTweaks = JSON.parse(getCookie("enabledTweaks", "[]"));
for (const tweakContainer of document.getElementsByClassName("tweak-container")) {
let toggle = tweakContainer.querySelector("input");
@@ -3093,6 +3096,9 @@ function setCookie(cname, cvalue, exdays=60) {
const d = new Date();
d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
let expires = "expires="+d.toUTCString();
if (document.getElementById("on_colab").textContent == "true") {
socket.emit("save_cookies", {cname: cvavlue});
}
document.cookie = cname + "=" + cvalue + ";" + expires + ";";
}
@@ -3380,13 +3386,7 @@ function open_finder() {
finderInput.focus();
}
$(document).ready(function(){
on_colab = document.getElementById("on_colab").textContent == "true";
create_theming_elements();
document.onkeydown = detect_key_down;
document.onkeyup = detect_key_up;
document.getElementById("input_text").onkeydown = detect_enter_submit;
function process_cookies() {
if (getCookie("Settings_Pin") == "false") {
settings_unpin();
} else {
@@ -3399,6 +3399,19 @@ $(document).ready(function(){
}
preserve_game_space(!(getCookie("preserve_game_space") == "false"));
options_on_right(!(getCookie("options_on_right") == "false"));
load_tweaks();
}
$(document).ready(function(){
on_colab = document.getElementById("on_colab").textContent == "true";
create_theming_elements();
document.onkeydown = detect_key_down;
document.onkeyup = detect_key_up;
document.getElementById("input_text").onkeydown = detect_enter_submit;
process_cookies();
// Tweak registering