/mob/living/proc/ooc_notes_window(mob/user)
if(!ooc_notes)
return
//I tried to get it to accept things like emojis and all that, but, it wouldn't do! It would be cool if it did.
var/notes = replacetext(html_decode(src.ooc_notes), "\n", "
")
var/favs = replacetext(html_decode(src.ooc_notes_favs), "\n", "
")
var/likes = replacetext(html_decode(src.ooc_notes_likes), "\n", "
")
var/maybes = replacetext(html_decode(src.ooc_notes_maybes), "\n", "
")
var/dislikes = replacetext(html_decode(src.ooc_notes_dislikes), "\n", "
")
var/style = src.ooc_notes_style
var/dat = {"
"}
dat += {""}
if(user == src)
dat += {"
"}
dat += {"
"}
if(style)
dat += {""}
if(favs || user == src)
dat += "
" + span_bold("
Favourites") + ""
if(user == src)
dat += {"
"}
if(favs)
dat += {"
"}
if(style)
dat += {"
"}
dat += {"
"}
if(likes || user == src)
dat += "
" + span_bold("
Likes") + ""
if(user == src)
dat += {"
"}
if(likes)
dat += {"
"}
if(style)
dat += {"
"}
dat += {"
"}
if(maybes || user == src)
dat += "
" + span_bold("
Maybes") + ""
if(user == src)
dat += {"
"}
if(maybes)
dat += {"
"}
if(style)
dat += {"
"}
dat += {"
"}
if(dislikes || user == src)
dat += "
" + span_bold("
Dislikes") + ""
if(user == src)
dat += {"
"}
if(dislikes)
dat += {"
"}
if(style)
dat += {"
"}
dat+= {"
"}
var/key = "ooc_notes[src.real_name]" //Generate a unique key so we can make unique clones of windows, that way we can have more than one
if(src.ckey)
key = "[key][src.ckey]" //Add a ckey if they have one, in case their name is the same
winclone(user, "ooc_notes", key) //Allows us to have more than one OOC notes panel open
winshow(user, key, TRUE) //Register our window
var/datum/browser/popup = new(user, key, "OOC Notes: [src.name]", 500, 600) //Create the window
popup.set_content(dat) //Populate window contents
popup.open(FALSE) // Skip registring onclose on the browser pane
onclose(user, key, src) // We want to register on the window itself