
////////////////////////////////////
//  HANDLE MULTIPLE WINDOW.ONLOADS
////////////////////////////////////


window.addOnload = function (fn) {
    if (!window.OnloadCache) window.OnloadCache = [];
    var ol = window.OnloadCache;
    ol.push( fn );
}

window.onload = function () {
    var ol = window.OnloadCache;
    if (ol)
        for (var x = 0; x < ol.length; x++)
            ol[x]();
}

////////////////////////////////////
//  SIIR - <ELEMENT> DRAW SETTINGS
////////////////////////////////////

// DECLARE GLOBAL VARIABLE SETTINGS
// CHANGE THESE TO FIT YOUR PREFERENCES

var path="http://thathy.datapixels/buscafincas/imagenes/siir/";      //ABSOLUTE PATH TO SIIR GENERATOR FOLDER
var elements=new Array("h2");        //ELEMENTS WITHIN THIS ARRAY WILL RUN SIIR

var settings=new Array();         //THIS IS THE SETTINGS ARRAY
                //ADD APPROPRIATE <ELEMENT> SETTINGS BELOW
                //MAKE SURE YOU COPY NEW SETTINGS FOR ADDITIONAL <ELEMENT>'S
                //OR YOU'LL GET JAVASCRIPT ERRORS
//settings["span"]["h"]=(parseInt(settings["span"]["font_size"])+parseInt(settings["span"]["padding"]));  //DO NOT CHANGE THIS!


settings["h1"]=new Array();         //ELEMENT SETTING ARRAY
settings["h1"]["padding"]=0;          //IMAGE PADDING
settings["h1"]["bgcolor"]="606060";       //BACKGROUND COLOR OF THE IMAGE
settings["h1"]["transparentbg"]=1;        //TRANSPARENT BACKGROUND?  (1=YES,0=NO)
settings["h1"]["font_color"]="FFFFFF";        //TEXT FONT COLOR
settings["h1"]["shadow_color"]="FFFFFF";      //TEXT SHADOW COLOR
settings["h1"]["font_file"]="diner___.ttf";      //TEXT FONT FACE (.TTF ONLY)
settings["h1"]["font_size"]=20;         //TEXT FONT SIZE (THIS IS PT'S, NOT PXL'S)
settings["h1"]["antialias"]=1;          //TURN ON TEXT ANTIALIASING? (1=YES,0=NO)
settings["h1"]["resizevalue"]=4;        //NUMBER OF POINTS TO RESIZE TEXT BY

settings["h1"]["h"]=35;  //DO NOT CHANGE THIS!

settings["h2"]=new Array();         //ELEMENT SETTING ARRAY
settings["h2"]["padding"]=4;          //IMAGE PADDING
settings["h2"]["bgcolor"]="606060";       //BACKGROUND COLOR OF THE IMAGE
settings["h2"]["transparentbg"]=1;        //TRANSPARENT BACKGROUND?  (1=YES,0=NO)
settings["h2"]["font_color"]="FFFFFF";        //TEXT FONT COLOR
settings["h2"]["shadow_color"]="";      //TEXT SHADOW COLOR
settings["h2"]["font_file"]="ALAKOB.ttf";      //TEXT FONT FACE (.TTF ONLY)
settings["h2"]["font_size"]=20;         //TEXT FONT SIZE (THIS IS PT'S, NOT PXL'S)
settings["h2"]["antialias"]=1;          //TURN ON TEXT ANTIALIASING? (1=YES,0=NO)
settings["h2"]["resizevalue"]=4;        //NUMBER OF POINTS TO RESIZE TEXT BY

settings["h2"]["h"]=(parseInt(settings["h2"]["font_size"])+parseInt(settings["h2"]["padding"]));  //DO NOT CHANGE THIS!
settings["h2"]["h"]=20;  //DO NOT CHANGE THIS!

settings["h3"]=new Array();         //ELEMENT SETTING ARRAY
settings["h3"]["padding"]=4;          //IMAGE PADDING
settings["h3"]["bgcolor"]="606060";       //BACKGROUND COLOR OF THE IMAGE
settings["h3"]["transparentbg"]=1;        //TRANSPARENT BACKGROUND?  (1=YES,0=NO)
settings["h3"]["font_color"]="797BA9";        //TEXT FONT COLOR
settings["h3"]["shadow_color"]="";      //TEXT SHADOW COLOR
settings["h3"]["font_file"]="karine.ttf";      //TEXT FONT FACE (.TTF ONLY)
settings["h3"]["font_size"]=30;         //TEXT FONT SIZE (THIS IS PT'S, NOT PXL'S)
settings["h3"]["antialias"]=1;          //TURN ON TEXT ANTIALIASING? (1=YES,0=NO)
settings["h3"]["resizevalue"]=4;        //NUMBER OF POINTS TO RESIZE TEXT BY

settings["h3"]["h"]=19;  //DO NOT CHANGE THIS!

settings["span"]=new Array();         //ELEMENT SETTING ARRAY
settings["span"]["padding"]=4;          //IMAGE PADDING
settings["span"]["bgcolor"]="606060";       //BACKGROUND COLOR OF THE IMAGE
settings["span"]["transparentbg"]=1;        //TRANSPARENT BACKGROUND?  (1=YES,0=NO)
settings["span"]["font_color"]="ABABAB";        //TEXT FONT COLOR
settings["span"]["shadow_color"]="";      //TEXT SHADOW COLOR
settings["span"]["font_file"]="ACCID___.ttf";      //TEXT FONT FACE (.TTF ONLY)
settings["span"]["font_size"]=13;         //TEXT FONT SIZE (THIS IS PT'S, NOT PXL'S)
settings["span"]["antialias"]=1;          //TURN ON TEXT ANTIALIASING? (1=YES,0=NO)
settings["span"]["resizevalue"]=4;        //NUMBER OF POINTS TO RESIZE TEXT BY

settings["span"]["h"] = 25;  //DO NOT CHANGE THIS!


////////////////////////////////////
//  SIIR - ELEMENT INNERHTML
////////////////////////////////////

function SIIR_normalizeWhiteSpace(txt) {
  var rE = /\s+/gi;
  return txt.replace(rE,' ');
  }

function SIIR_get_href(txt)  {
var text=txt;
var thishref= text.replace(/<a(.*)href=\"/gi,'');
thishref=thishref.replace(/\">(.*)/gi,'');

return thishref;

  }

function SIIR_get_id(txt)  {
var text=txt;
var thisid= text.replace(/<a(.*)id=\"/gi,'');
thisid=thisid.replace(/\">(.*)/gi,'');

return thisid;

  }

function SIIR_get_text(txt)  {
var text=txt;
var txt = text.replace(/<\/a>/gi,'');
txt = txt.replace(/<a(.*)>/gi,'');
return txt;

  }

////////////////////////////////////
//  SIIR - REPLACE THE ELEMENT WITH AN <IMG>
////////////////////////////////////

function SIIR_replace() {

var d = document;
for (var a=(elements.length-1); a>=0; a--) {
var current_element=elements[a];
var element = d.getElementsByTagName(current_element);

  // LOOP THROUGH EACH <ELEMENT>
  for (var i=(element.length-1); i>=0; i--) {
    contain=element[i];
      if(current_element=='li'&&contain.parentNode.id!='questions'){
      }else{
      // CONTAINER TO WORK WITH
      var c = d.createElement('div');
      c.className = current_element;

      // SWAP <ELEMENT> TAG WITH THE CONTAINER
      contain.parentNode.replaceChild(c,contain);

      // SET THE "CURRENT_ELEMENT.TEXT" VARIABLE
      settings[current_element]["text"] = SIIR_normalizeWhiteSpace(contain.innerHTML);

      var thisid='';
      reg=/id/i;
      if(reg.test(settings[current_element]["text"])){
      var thisid = SIIR_get_id(settings[current_element]["text"]);
      }

      var href='';

      reg=/href/i;
      if(reg.test(settings[current_element]["text"]))  {
      var href = SIIR_get_href(settings[current_element]["text"]);
      }

      settings[current_element]["text"] = SIIR_get_text(settings[current_element]["text"]);
      settings[current_element]["text"] = replace(settings[current_element]["text"],'"','&quot;');

      // THE IMG HTML
      pasteHTML = '';

      if(href!=''||thisid!='')
      {
        pasteHTML += '<a';
      }

      if(href!=''){
        pasteHTML += ' href="'+href+'"';
      }
      if(thisid!=''){
        pasteHTML += ' id="'+thisid+'"';
      }
      if(href!=''||thisid!='')
      {
        pasteHTML += '>';
      }

      pasteHTML += '<'+current_element+'><img class="'+current_element+'" id="'+current_element+'_'+i+'" name="'+current_element+'_'+i+'" src="'+path+'generate.php?action=display&w='+settings[current_element]["w"]+'&h='+settings[current_element]["h"]+'&padding='+settings[current_element]["padding"]+'&transparentbg='+settings[current_element]["transparentbg"]+'&bgcolor='+settings[current_element]["bgcolor"]+'&font_color='+settings[current_element]["font_color"]+'&shadow_color='+settings[current_element]["shadow_color"]+'&font_file='+settings[current_element]["font_file"]+'&font_size='+settings[current_element]["font_size"]+'&antialias='+settings[current_element]["antialias"]+'&text='+settings[current_element]["text"]+'" alt="'+unescape(settings[current_element]["text"])+'"  /></'+current_element+'>';

      if(href!=''||thisid!='')
      {
        pasteHTML += '</a>';
      }

      if(current_element=='li'){
      pasteHTML = '<li>'+pasteHTML;
      pasteHTML += '</li>';
      }

      // PUT THE IMG INTO THE CONTAINER
      c.innerHTML = pasteHTML;
    }}
  }
}

////////////////////////////////////
//  MAKE CHANGES TO THE <ELEMENT> TAGS
////////////////////////////////////

function SIIR_add() {

for (var i=(elements.length-1); i>=0; i--) {
var current_element=elements[i];
settings[current_element]["font_size"]=parseInt(settings[current_element]["font_size"])+settings[current_element]["resizevalue"];
settings[current_element]["h"]=(parseInt(settings[current_element]["font_size"])+parseInt(settings[current_element]["padding"]));
}

SIIR_refresh();
}

function SIIR_subtract() {

for (var i=(elements.length-1); i>=0; i--) {
var current_element=elements[i];
settings[current_element]["font_size"]=parseInt(settings[current_element]["font_size"])-settings[current_element]["resizevalue"];
settings[current_element]["h"]=(parseInt(settings[current_element]["font_size"])+parseInt(settings[current_element]["padding"]));
}

SIIR_refresh();
}

////////////////////////////////////
//  REFRESH THE RESPECTIVE IMG
////////////////////////////////////

function SIIR_refresh () {



var d = document;
var element = d.getElementsByTagName('img');
for (var i=(elements.length-1); i>=0; i--) {
var current_element=elements[i];

  for (var a=(element.length-1); a>=0; a--) {
  elementid=current_element+"_"+a;
  if(document[elementid])
  {
  text=document[elementid].alt;
  document[elementid].src =path+'generate.php?action=display&w='+settings[current_element]["w"]+'&h='+settings[current_element]["h"]+'&padding='+settings[current_element]["padding"]+'&transparentbg='+settings[current_element]["transparentbg"]+'&bgcolor='+settings[current_element]["bgcolor"]+'&font_color='+settings[current_element]["font_color"]+'&shadow_color='+settings[current_element]["shadow_color"]+'&font_file='+settings[current_element]["font_file"]+'&font_size='+settings[current_element]["font_size"]+'&antialias='+settings[current_element]["antialias"]+'&text='+text;
  }
  }
  }

}

////////////////////////////////////
//  SIIR - ONLOAD CALL
////////////////////////////////////

// LOADS THE REPLACEMENT FUNCTION WHEN THE PAGE LOADS
function SIIR_init() {
  SIIR_replace();
  }

////////////////////////////////////
//  REPLACE CONTENT WITHIN A JAVASCRIPT STRING
////////////////////////////////////

function replace(string,text,by) {
// Replaces text with by in string
    var strLength = string.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return string;

    var i = string.indexOf(text);
    if ((!i) && (text != string.substring(0,txtLength))) return string;
    if (i == -1) return string;

    var newstr = string.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(string.substring(i+txtLength,strLength),text,by);

    return newstr;
}


