summaryrefslogtreecommitdiff
path: root/js/user.js
blob: a1ac53e30ee2d042670a57490bae67c5f3250e99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
var user = new function(){}
user.init = function(){
  user.load()
  user.bind()
}
user.bind = function(){
  $("#username").on("input", user.save)
}
user.load = function(){
  user.username = user.getCookie()
  $("#username").val(user.username)
}
user.sanitize = function(){
  return $("#username").val().replace(/[^-_ a-zA-Z0-9]/g,"")
}
user.getCookie = function () {
  var username = localStorage.getItem("im.name") || "";
  if (document.cookie && ! username.length) {
    var cookies = document.cookie.split(";")
    for (i in cookies) {
      var cookie = cookies[i].split("=")
      if (cookie[0].indexOf("imname") !== -1) {
        if (cookie[1] !== 'false' && cookie[1] !== 'undefined' && cookie[1].length) {
          return cookie[1]
        }
      }
    }
  }
  return username
}
user.save = function(){
  var username = user.sanitize()
  if (username != user.username) user.setCookie(username);
}
user.setCookie = function(username){
  console.log("setting to " + username)
  document.cookie = "imname="+username+";path=/;domain=.asdf.us;max-age=1086400"
  localStorage.setItem("im.name", username);
}