/*
 * Global useful Functions
 */

// This work is hereby released into the Public Domain. To view a copy of the public domain dedication, visit http://creativecommons.org/licenses/publicdomain/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
// origin: 2000-01-08 nospam@geht.net http://tools.geht.net/rot13.html
// Use at own risk.
var last="";
var rot13map;
// The problem is that JavaScript 1.0
// does not provide a Char to Numeric value conversion
// Thus we define a map.
// Because there are 64K UniCode characters, this map does not cover all characters.
function rot13init()
{
  var map = new Array();
  var s   = "abcdefghijklmnopqrstuvwxyz";
  
  for (i=0; i<s.length; i++)
    map[s.charAt(i)]			= s.charAt((i+13)%26);
  for (i=0; i<s.length; i++)
    map[s.charAt(i).toUpperCase()]	= s.charAt((i+13)%26).toUpperCase();
  return map;
}

function rot13(a)
{
  if (!rot13map)
    rot13map=rot13init();
  s = "";
  for (i=0; i<a.length; i++)
    {
      var b = a.charAt(i);

      s	+= (b>='A' && b<='Z' || b>='a' && b<='z' ? rot13map[b] : b);
    }
  return s;
}

function rotThis(e)
{
  var s = e.innerHTML;
  e.innerHTML=rot13(s);
  e.href="mailto:"+rot13(s);
}

function myFileBrowser (field_name, url, type, win) {
  // alert("Field_Name: " + field_name + "\nURL: " + url + "\nType: " + type + "\nWin: " + win); // debug/testing
  var fileBrowserWindow = new Array();
  fileBrowserWindow['title'] = 'File Browser';
  fileBrowserWindow['file'] = "/_admin/index.php?show=cms_script&" + "type=" + type;
  fileBrowserWindow['width'] = '420';
  fileBrowserWindow['height'] = '400';
  fileBrowserWindow['close_previous'] = 'no';
  tinyMCE.openWindow(fileBrowserWindow, {
    window : win,
    input : field_name,
    resizable : 'yes',
    inline : 'yes'
  });
  return false;
}