// Doubleclick html tag generator (javascript)
// Legal Professional Channel
// Fred Kuu

//*************** Global Variables ********//
// Global Variable: top_rand
// Random Number used throughout page (each ad uses same number)
var top_rand = (Math.random() * 10000000000000000) + "?";

// Global Variable: o_urlstring
var o_urlstring = document.URL;
o_urlstring = path(o_urlstring);
o_urlstring = replace(o_urlstring, "_");
if (o_urlstring.indexOf("lawcrawler") == -1) {
	if (o_urlstring.indexOf('?') != -1) {
		var temp1_url = o_urlstring.split('?');
		o_urlstring = temp1_url[0];
	}
}

// Global Variable: db_sitename
var db_sitename;
if (o_urlstring.indexOf("marketing.lp") != -1)
	db_sitename = "fl.marketing.dart";
else if ((o_urlstring.indexOf("news.lp") != -1) || (o_urlstring.indexOf("news.findlaw") != -1))
	db_sitename = "fl.news.dart";
else
	db_sitename = "fl.legal.dart";	

// Global Variable: urlArray
// break up o_urlstring into chunks according to "/"   	
var urlArray = new Array();
urlArray=o_urlstring.split('/');
var page=urlArray[urlArray.length-1];

// Global Variable: pgnm
// represents pagename
var pgnm;
if ((o_urlstring.indexOf(".pl") == -1) && (o_urlstring.indexOf(".html") == -1) && (o_urlstring.indexOf(".jsp") == -1))
  pgnm = "index";
else
  pgnm = page.substring(0, page.indexOf('.'));
  
// Global Variable: kwString
// generate the kw values for targeting purposes
var kwString;
var level;
if (urlArray[0] != -1) { 
  var name=urlArray[0].substring(0, urlArray[0].indexOf('.'));
  if (name.indexOf("findlaw") != -1)
	name = "www";
  kwString = ";area1=" + name;
  level = 0;

if (document.URL.indexOf("lawcrawler") != -1) {
	keyword = page.substring(page.indexOf("entry=") + 6, page.length);
	if (keyword.indexOf("&")!= -1) {
  		keyword = keyword.substring(0, keyword.indexOf("&"));
	}
	keyword = replace(keyword, '+');
	kwString += ";kw=" + keyword;
}
else {
  //put the word "area*=" for as many array as we have.
  for (var i = 1; i < urlArray.length-1; i++) {
     kwString += ";area" + (i+1) + "=" + urlArray[i];
     level++;
  }
  kwString += ";level=" + level + ";pgnm=" + pgnm;
}
}

// Alleviates Netscape document.write bug (refresh problem)
NS4 = document.layers;
if (NS4) {
  origWidth = innerWidth;
  origHeight = innerHeight;
}

function reDo() {
if (innerWidth != origWidth || innerHeight != origHeight)
  location.reload();
}

if (NS4) onresize=reDo;

//************** Functions Used to Generate Banner Ads **********//
// Function: top()
// Generate 468x60 banner ad html tags for FindLaw site
function top(){
if (db_sitename == "fl.news.dart") {
   news468();
}
else {
	top468();
}
}

// Function: top468()
// Generate 468x60 banner ad html tags for FindLaw site
function top468(){
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=468x60;ord=" + top_rand;

if (o_urlstring.indexOf("dir-dev") != -1) {
  	document.write("<h2><font color=#990000>TEST ENVIRONMENT</font></h2>");
}
else {
	document.write('<script language="Javascript" src="' + urlj + '"><\/script>');
}
}

// Function: top700()
// Generate 600x90 banner ad html tags for FindLaw site
function top700(){
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=600x90;ord=" + top_rand;
document.write('<script language="Javascript" src="' + urlj + '"><\/script>');
}

// Function middle()
// Generate 120x240 Banner Ad for FindLaw site Excluding Search
function middle(){ 
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=120x240;ord=" + top_rand;
document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// Function sky()
// Generate 120x600 Banner Ad for FindLaw site Excluding Search
function sky(){ 
var urlstring = document.URL;
	var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
	urlj += kwString + ";sz=120x600;ord=" + top_rand;
	document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// Function square230()
// Generate 230x230 Banner Ad 
function square230(){ 
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=230x230;ord=" + top_rand;
document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// Function calmiddle()
// Generate 120x600 Banner Ad for California Top Page 
function calmiddle(){ 
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=120x600;ord=" + top_rand;
document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// The following functions are for the Ad Units in FindLaw News
// Function: news468()
// Generate 468x60 banner ad html tags for FindLaw News
function news468(){
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=468x60;ptile=1;ord=" + top_rand;
document.write('<script language="Javascript" src="' + urlj + '"><\/script>');
}

// Function news230()
// Generate 230x230 Banner Ad for FindLaw News
function news230(){ 
var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
urlj += kwString + ";sz=230x230;ptile=2;ord=" + top_rand;
document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// Function newsSky()
// Generate 120x600 Banner Ad for FindLaw News 
function newsSky(){ 
	var urlj = "http://ad.doubleclick.net/adj/" + db_sitename + "/;abr=!webtv";
	urlj += kwString + ";sz=120x600;ptile=3;ord=" + top_rand;
	document.write('<script language="Javascript1.1" src="' + urlj + '"><\/script>');
}

// Function ad_pos()
// Call appropriate function to generate 120x90 banner ad
function ad_pos(t_urlstring, position){

}

//************** Helper Functions **********//
// Helper Function: path
// strip out 'http://' and convert to lowercase
function path(urlstring)
{
   urlstring = urlstring.toLowerCase();
   var start = urlstring.indexOf('//');
   if (start != -1) {
      start = start+2;   
      //delete the "http://"
      urlstring = urlstring.substring(start, urlstring.length);
   }
   return urlstring;
}

// Helper Function: replace
// strip out t's from s (string)
function replace(s, t) 
{
	i = s.indexOf(t);
	r = "";
	if (i == -1) return s;
	r += s.substring(0,i) + '';
	if ( i + t.length < s.length)
  		r += replace(s.substring(i+t.length, s.length), t, '');
	return r;
}
function QueryString(key)
{
    var value = null;
    for (var i=0;i<QueryString.keys.length;i++)
    {
        if (QueryString.keys[i]==key)
        {
            value = QueryString.values[i];
            break;
        }
    }
    return value;
}

QueryString.keys = new Array();
QueryString.values = new Array();

function QueryString_Parse()
{
    var query = window.location.search.substring(1);
	query = query.toLowerCase();
    var pairs = query.split("&");

    for (var i=0;i<pairs.length;i++)
    {
        var pos = pairs[i].indexOf('=');
        if (pos >= 0)
        {
            var argname = pairs[i].substring(0,pos);
            var value = pairs[i].substring(pos+1);
            QueryString.keys[QueryString.keys.length] = argname;
            QueryString.values[QueryString.values.length] = value;
        }
    }

}
QueryString_Parse();
