• PkSM3's avatar
    again · cf1ee6e3
    PkSM3 authored
    cf1ee6e3
utils.js 3.21 KB
// Generated by CoffeeScript 1.3.1
var P, debug, decodeJSON, delay, getScreenHeight, getScreenWidth, hide, htmlDecode, htmlEncode, loadURLParamsUsing, log, logError, repeat, show, strToBoolean, tinaviz;

tinaviz = {};

delay = function(t, f) {
  return setTimeout(f, t);
};

repeat = function(t, f) {
  return setInterval(f, t);
};

P = function(p) {
  if (p == null) {
    p = 0.5;
  }
  return Math.random() < p;
};

log = function(msg) {
  try {
    return console.log(msg);
  } catch (e) {

  }
};

debug = function(msg) {
  try {
    return console.log(msg);
  } catch (e) {

  }
};

logError = function(msg) {
  try {
    return console.error(msg);
  } catch (e) {
    alert(msg);
  }
};

getScreenWidth = function() {
  var x;
  x = 0;
  if (self.innerHeight) {
    x = self.innerWidth;
  } else if (document.documentElement && document.documentElement.clientHeight) {
    x = document.documentElement.clientWidth;
  } else {
    if (document.body) {
      x = document.body.clientWidth;
    }
  }
  return x;
};

getScreenHeight = function() {
  var y;
  y = 0;
  if (self.innerHeight) {
    y = self.innerHeight;
  } else if (document.documentElement && document.documentElement.clientHeight) {
    y = document.documentElement.clientHeight;
  } else {
    if (document.body) {
      y = document.body.clientHeight;
    }
  }
  return y;
};

show = function(k, speed) {
  var o;
  if (speed == null) {
    speed = "slow";
  }
  o = (typeof k) === "string" ? $(k) : k;
  return o.fadeIn(speed);
};

hide = function(k, speed) {
  var o;
  if (speed == null) {
    speed = "slow";
  }
  o = (typeof k) === "string" ? $(k) : k;
  return o.fadeOut(speed);
};

strToBoolean = function(s) {
  switch (("" + s).toLowerCase()) {
    case "true":
    case "yes":
    case "on":
    case "1":
      return true;
    case "false":
    case "no":
    case "off":
    case "0":
    case null:
      return false;
    default:
      return Boolean(s);
  }
};

loadURLParamsUsing = function(config) {
  var current, key, param, value, _i, _len, _ref, _ref1;
  _ref = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
  for (_i = 0, _len = _ref.length; _i < _len; _i++) {
    param = _ref[_i];
    _ref1 = param.split('='), key = _ref1[0], value = _ref1[1];
    if (key in config) {
      current = _(config[key]);
      if (current.isNumber()) {
        config[key] = Number(value);
      } else if (current.isBoolean()) {
        config[key] = strToBoolean(value);
      } else if (current.isString()) {
        config[key] = "" + value;
      } else {
        alert("UTIL cannot overwrite param " + key + " (" + config[key] + ") with " + value);
      }
    }
  }
  return config;
};

htmlEncode = function(value) {
  return $("<div/>").text(value).html();
};

htmlDecode = function(t) {
  if (t.indexOf('<br>') > 0 || t.indexOf('<br/>') > 0 || t.indexOf('</a>') > 0 || t.indexOf('</b>') > 0 || t.indexOf('</i>') > 0) {
    return t;
  } else {
    return $("<div/>").html(t).text();
  }
};

decodeJSON = function(encvalue) {
  if (encvalue != null) {
    return jQuery.trim(encvalue.replace(/\+/g, " ").replace(/%21/g, "!").replace(/%27/g, "'").replace(/%28/g, "(").replace(/%29/g, ")").replace(/%2A/g, "*").replace(/\"/g, "'"));
  } else {
    return "";
  }
};