/**
 * Table rowMark
 *
 * myRow = new rowMark(1,2,3,4)
 *
 *   1:	Farbe des Over Effekts z.B. "#ff0000" - string
 *   2:	Farbe des Mark Effeks - string
 *   3:	Farbe des Over Effeks bei der Marked Row - string
 *   4: Funktion die bei onClick aufgerufen wird - string
 *
 *   <tr class="grau" onMouseOver="myRow.over(this)" onMouseOut="myRow.out(this)" onClick="myRow.click(this)">
 *       <td>eine Zeile</td>
 *       <td><img src="einbild.gif"></td>
 *   </tr>
 *
 * @author Jan Lengowski <Jan.Lengowski@4fb.de>
 * @version 1.2
 * @copyright Jan Lengowski 2002
 */
function rowMark(overColor, markedColor, overMarked, onClick) {
	
    /**
     * Set class properties
     * @access private
     */		
    this.overColor = overColor;
    this.markedColor = markedColor;
    this.overMarked = overMarked;
    this.onClick = onClick;

    /**
     * dynamic properties
     * @access private
     */
    this.oldColor = '';
    this.oldColorMarked = '';
    this.markedRow = '';

    /**
     * Define class methods
     * @access private
     */
    this.over = rowMark_over;
    this.out = rowMark_out;
    this.click = rowMark_click;

    /**
     * Browsercheck
     * @access private
     */
    this.browser = '';

}

/**
 * rowMark::over()
 * @param object oRow table row object
 */
function rowMark_over(oRow) {

    if ( oRow.style.backgroundColor != this.markedColor ) {
        this.oldColor = oRow.style.backgroundColor;
    }
    
    if ( oRow.style.backgroundColor == this.markedColor ) {
        oRow.style.backgroundColor = this.overMarked;
    } else {
        oRow.style.backgroundColor = this.overColor;
    }
    
}

/**
 * rowMark::out()
 * @param object oRow table row object
 */
function rowMark_out(oRow) {

    if (oRow == this.markedRow) {
        oRow.style.backgroundColor = this.markedColor;
    } else {
        oRow.style.backgroundColor = this.oldColor;
    }
    
}

/**
 * rowMark::over()
 * @param object oRow table row object
 */
function rowMark_click(oRow) {

    if ( "" == this.markedRow ) {
        oRow.style.backgroundColor = this.markedColor;
        this.markedRow = oRow;
        this.oldColorMarked = this.oldColor;
        
        if ( "" != this.onClick ) {
            eval( this.onClick );
        }
        
    } else {
        this.markedRow.style.backgroundColor = this.oldColorMarked;
        oRow.style.backgroundColor = this.markedColor;
        this.markedRow = oRow;
        this.oldColorMarked = this.oldColor;
        
        if ( "" != this.onClick ) {
            eval( this.onClick );
        }
    }
}


/**
 * Table rowMark with image rollover
 *
 * REQUIRES rowMark CLASS!
 *
 * myRow = new imgMark(1, 2, 3, 4, 5, 6);
 *
 *  1:  Farbe des Over Effekts z.B. "#ff0000" - string
 *  2:	Farbe des Mark Effeks - string
 *  3:	Farbe des Over Effeks bei der Marked Row - string
 *  4:  Pfad des Bildes das bei .over() gewechselt wird - string
 *  5:  Pfad des Bildes das bei .out() gewechselt wird - string
 *  6:  Function die bei onClick aufgerufen wird - string
 *
 *   <tr class="grau" onMouseOver="myRow.over(this, 0)" onMouseOut="myRow.out(this, 0)" onClick="myRow.click(this)">
 *       <td>eine Zeile</td>
 *       <td><img src="einbild.gif"></td>
 *   </tr>
 *
 * @author Jan Lengowski <Jan.Lengowski@4fb.de>
 * @version 1.2
 * @copyright Jan Lengowski 2002
 */
function imgMark(overColor, markedColor, overMarked, imgOutSrc, imgOverSrc, onClick) {

    /**
     * Call parent class constructor
     * @access private
     */
    this.base = rowMark;
    this.base(overColor, markedColor, overMarked, onClick);

    /**
     * Set image path properties
     * @access private
     */
    this.imgOutSrc = imgOutSrc;
    this.imgOverSrc = imgOverSrc;

    /**
     * Modify inherited .over() method
     * @access private
     */
    var str = this.over + '';
    var astr = str.split('\n');
    var fstr = 'var img = oRow.getElementsByTagName("IMG"); img[imgId].src = this.imgOverSrc;';
    for (i=2; i<astr.length-2; i++) {
        fstr += astr[i];
    }
    this.over = new Function ('oRow', 'imgId', fstr);
    
    /**
     * Modify inherited .out() method
     * @access private
     */
    var str = this.out + '';
    var astr = str.split('\n');
    var fstr = 'var img = oRow.getElementsByTagName("IMG");img[imgId].src = this.imgOutSrc;';

    for (i=2; i<astr.length-2; i++) {
        fstr += astr[i];
    }
    this.out = new Function ('oRow', 'imgId', fstr);
    
}
imgMark.prototype = new rowMark;



/* rowMark instance for the
   general use */
row = new rowMark('#d1d1dd', '#a9aec2', '#a9aec2');

/* rowMark instance for the
   Subnavigation */
sub = new rowMark('#c6c6d5', '#a9aec2', '#c6c6d5');


/* rowMark instance for the
   Content area */
//con = new rowMark('#eeeeee', '#eeeeee', '#a9aec2', 'conInjectData(oRow)');
con = new rowMark('#333367', '#333367', '#a9aec2');

/* rowMark instance for the
   Upload area */
//upl = new rowMark('#d1d1dd', '#a9aec2', '#a9aec2', 'setPath(oRow)');

function setPath( obj ) {
    parent.frames['left_top'].document.forms[0].path.value = obj.id;
    parent.frames['left_top'].document.getElementById("caption2").innerHTML = obj.id;
}

function conInjectData( obj ) {

    tmp_data = obj.id;
    data = tmp_data.split("-");
    //parent.frames['main'].cfg.load(data[0], data[1], data[2], data[3], tmp_data);
    
}