/*------------------------------------------|
| Copyright (c) 2004-2007 Andree Riechert   |
| All rights reserved                       |
| www.fids3.com                             |
| www.fids3mobile.com                       |
| www.fids-consulting.com                   |
|-------------------------------------------*/

function renderRoutes(maxroutesize) {
   var tags = document.getElementsByTagName("td");

   for (var i = 0; i < tags.length; i++) {
     if (tags[i].className != null && tags[i].className == "route") {
          var value = tags[i].innerHTML;
          if (value.length > maxroutesize) {
             tags[i].className = "routelong";
             tags[i].innerHTML = renderSingleRoute(value);
          }
     }
   }
}

function renderSingleRoute(route) {
     var offset = route.indexOf("/");
     if (offset > 0) {
         return route.substring(0,offset) + "<br>" + route.substring(offset+1);
     } else {
         return route;
     }
}

function renderImages(noimageFile) {
   var tags = document.getElementsByTagName("img");

   for (var i = 0; i < tags.length; i++) {
     if (endsWith(tags[i].src,"/")) {
         tags[i].src = tags[i].src + noimageFile;
     } else if (endsWith(tags[i].src,"/noimage.gif")) {
         tags[i].src = tags[i].src.replace(/noimage.gif/g,noimageFile);
     }
   }
}

function getcss( selector, property ) {
	for (var six=0; six < document.styleSheets.length;six++) {
     	 for (var cix=0; cix < document.styleSheets[six].cssRules.length;cix++) {
              if (document.styleSheets[six].cssRules[cix].selectorText.toLowerCase() == selector.toLowerCase()) {
                  var oStyle = document.styleSheets[six].cssRules[cix].style;
                  for( var tix = 0; tix < oStyle.length; tix++ ) {
                       var item = oStyle.item(tix);
                       if (item.toLowerCase() == property.toLowerCase()) {
                           return "" + oStyle.getPropertyValue(item);
                       }
                  }
             }
        }
    }
    return null;
}

function wrapLines(maxwidth, text) {
	var lines = new Array();
	var words = text.replace(/(\r\n|\r|\n)/g, ' __NL__ ').split(" ");
        text = "";

	for (var ix=0;ix < words.length;ix++) {
             var word = words[ix].replace(/^\s+|\s+$/g, '');
	     if (word.length > 0) {
                 if (text.length > 0) 
                    text += " ";
                 text += word;
             }
        }	

	words = text.split(" ");

	var line="";

	for (var ix=0;ix < words.length;ix++) {
            if (words[ix] == "__NL__") {
               lines[lines.length] = line;
               line = "";
               continue; 
            }
	    var len = words[ix].length + line.length + 1;
            if (len > maxwidth) {
                if (line.length > 0) {
		   lines[lines.length] = line;
	           line = words[ix];                   
                } else {
		   lines[lines.length] = words[ix];
                }
            } else if (line.length > 0) {
                       line = line + " " + words[ix];
                   } else {
                       line = words[ix];
                   }
        }

        if (line.length > 0) {
           lines[lines.length] = line;
        }

	return lines;
}

function getWrappedText(maxwidth, text, delimiter) {
	var lines = wrapLines(maxwidth, text);
	var text="";
	for (var ix=0;ix<lines.length;ix++) {
            if (text.length > 0) 
               text += delimiter;
	    text += lines[ix];
        }
        return text;
}
