// Namespace declarations
if (mw == null || typeof(mw) != "object") {
  var mw = new Object();
}
if (mw.utils == null || typeof(mw.utils) != "object") {
  mw.utils = new Object();
}


mw.utils = {

  parse_get: function (name){
    name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS = "[\\?&]"+name+"=([^&#]*)";
    var regex = new RegExp( regexS );
    var results = regex.exec( window.location.href );
    if( results == null )
      return "";
    else
      return results[1];
  },

  get_cookie_var: function (var_name) {
    // This code is from the w3schools javascript tutorial
    if (document.cookie.length > 0) {
      c_start = document.cookie.indexOf(var_name + "=");
      if (c_start != -1) {
        c_start = c_start + var_name.length + 1;
        c_end = document.cookie.indexOf(";", c_start);
        if (c_end == -1) c_end = document.cookie.length;
        return unescape(document.cookie.substring(c_start, c_end));
      }
    }
    return "";
  },

  delete_cookie: function (cookie_name) {
    var cookie_date = new Date();
    cookie_date.setTime(cookie_date.getTime() - 1);
    var cookie_domain="."+document.domain;
    document.cookie = cookie_name += "=; expires=" + cookie_date.toGMTString() + "; path=/; domain=" + cookie_domain + ";";
  },

  strip_prefix: function (to_strip, prefix) {
    // Take a dom group_id and extract the database id
    start = to_strip.indexOf(prefix);
    if (start != -1) {
      start = start + prefix.length;
      return to_strip.substring(start);
    }
    return undefined;
  },

  get_selected: function (selected_class) {
    return $("." + selected_class).attr('id');
  },

  set_selected: function (selected_class, dom_id) {
    $("." + selected_class).removeClass(selected_class);
    $("#" + dom_id).addClass(selected_class);
  }



} // end namespace

