function showNewsContent(index) {
    $('#newsMore_' + index).slideUp('normal');
    $('#newsContent_' + index).slideDown('normal');
}

function hideNewsContent(index) {
    $('#newsContent_' + index).slideUp('normal', function () {
        $('#newsMore_' + index).show('slow');
    });
}

function showNewsMoreLink(index) {
    $('#newsMore_' + index).show('slow');
}

var XHRO = false;    

function initAjax() {
    if (window.XMLHttpRequest) {
        XHRO = new XMLHttpRequest();
    } else if (window.ActiveXObject) {
        XHRO = new ActiveXObject('Microsoft.XMLHTTP');
    }        
}

function getTeam(team) {
    var teamName = '1. Herren';
    
    switch (team) {
        case 'H1' :
            teamName = '1. Herren';
            break;
        
        case 'H2' :
            teamName = '2. Herren';
            break;
        
        case 'H3' :
            teamName = '3. Herren';
            break;
        
        case 'H4' :
            teamName = '4. Herren';
            break;
        
        case 'H5' :
            teamName = '5. Herren';
            break;
        
        case 'D1' :
            teamName = '1. Damen';
            break;
        
        case 'J1' :
            teamName = '1. Jugend';
            break;
        
        case 'J2' :
            teamName = '2. Jugend';
            break;
        
        case 'S1' :
            teamName = '1. Schueler';
            break;
        
        case 'S2' :
            teamName = '2. Schueler';
            break;
        
        default :
            teamName = '1. Herren';
            break;
    }
    
    initAjax();
    
    if (XHRO) {
        XHRO.open('GET', 'getTeam.php?team=' + escape(teamName) + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                document.getElementById('contentResult').innerHTML = unescape(XHRO.responseText);
                document.getElementById('contentNavigation').style.height = document.getElementById('contentResult').offsetHeight + 'px';
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function showClicktt(team) {
    document.getElementById('contentResultClicktt').innerHTML = 'Bitte warten, die Daten werden geladen...<img src="images/ajax-loader.gif" style="vertical-align: middle; margin: 0 0 0 10px;" />';
    
    switch (team) {
        case 'H1' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/12/wa/groupPage?championship=B15+10%2F11&group=138713';
            var teamName = '1. Herren';
            var league = 'Bezirksklasse';
            break;
        
        case 'H2' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/wa/groupPage?championship=K157+10%2F11&group=138957';
            var teamName = '2. Herren';
            var league = 'Kreisliga';
            break;
        
        case 'H3' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/8/wa/groupPage?championship=K157+10%2F11&group=138959';
            var teamName = '3. Herren';
            var league = '2. Kreisklasse';
            break;
        
        case 'H4' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/8/wa/groupPage?championship=K157+10%2F11&group=138962';
            var teamName = '4. Herren';
            var league = '3. Kreisklasse';
            break;
        
        case 'H5' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/8/wa/groupPage?championship=K157+10%2F11&group=138963';
            var teamName = '5. Herren';
            var league = '3. Kreisklasse';
            break;
        
        case 'D1' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/2/wa/groupPage?championship=B15+10%2F11&group=138736';
            var teamName = '1. Damen';
            var league = 'Bezirksklasse';
            break;
        
        case 'J1' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/wa/groupPage?championship=B15+10%2F11&group=149783';
            var teamName = '1. Jugend';
            var league = 'Bezirksliga';
            break;
        
        case 'J2' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/wa/groupPage?championship=K157+10%2F11&group=149802';
            var teamName = '2. Jugend';
            var league = 'Kreisliga';
            break;
        
        case 'S1' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/wa/groupPage?championship=K157+10%2F11&group=149805';
            var teamName = '1. Schueler';
            var league = 'Kreisliga';
            break;
            
        case 'S2' :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/wa/groupPage?championship=K157+10%2F11&group=149806';
            var teamName = '2. Schueler';
            var league = 'Kreisklasse';
            break;
        
        default :
            clickttLink = 'http://wttv.click-tt.de/cgi-bin/WebObjects/ClickWTTV.woa/12/wa/groupPage?championship=B15+10%2F11&group=138713';
            var teamName = '1. Herren';
            var league = 'Bezirksklasse';
            break;
    }
    
    initAjax();
    
    if (XHRO) {
        XHRO.open('GET', 'getClicktt.php?team=' + teamName + '&league=' + league + '&url=' + escape(clickttLink) + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                if (XHRO.responseText != '-2') {
                    document.getElementById('contentResultClicktt').innerHTML = unescape(XHRO.responseText);
                    document.getElementById('contentNavigation').style.height = document.getElementById('contentResultClicktt').offsetHeight + 'px';
                } else {
                    document.getElementById('contentResultClicktt').innerHTML = 'Der Datenserver ist zur Zeit nicht erreichbar.<br />Bitte versuchen Sie es zu einem sp&auml;teren Zeitpunkt nochmals, Danke.';
                    document.getElementById('contentNavigation').style.height = '500px';
                }
                
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function editNewReport() {
    $('#newReportEdit').show('slow');
}

function editReport(index) {
    $('#newsEditLink_' + index).hide('slow');
    $('#newsEdit_' + index).show('slow');
}

function encodeHTML(string) {
    returnString = string.replace(/ü/g, '__ue__');
    returnString = returnString.replace(/ö/g, '__oe__');
    returnString = returnString.replace(/ä/g, '__ae__');
    returnString = returnString.replace(/Ü/g, '__Ue__');
    returnString = returnString.replace(/Ö/g, '__Oe__');
    returnString = returnString.replace(/Ä/g, '__Ae__');
    
    returnString = returnString.replace(/&uuml;/g, '__ue__');
    returnString = returnString.replace(/&ouml;/g, '__oe__');
    returnString = returnString.replace(/&auml;/g, '__ae__');
    returnString = returnString.replace(/&Uuml;/g, '__Ue__');
    returnString = returnString.replace(/&Ouml;/g, '__Oe__');
    returnString = returnString.replace(/&Auml;/g, '__Ae__');
    
    returnString = returnString.replace(/&/g, '__UND__');
    
    returnString = returnString.replace(/ß/g, '__szlig__');
    returnString = returnString.replace(/&szlig;/g, '__szlig__');

    returnString = returnString.replace(/ê/g, '_AA_ecircA__A');
    returnString = returnString.replace(/é/g, '_AA_eacuteA__A');
    returnString = returnString.replace(/è/g, '_AA_egraveA__A');
    returnString = returnString.replace(/Ê/g, '_AA_EcircA__A');
    returnString = returnString.replace(/É/g, '_AA_EacuteA__A');
    returnString = returnString.replace(/È/g, '_AA_EgraveA__A');
    
    returnString = returnString.replace(/â/g, '_AA_acircA__A');
    returnString = returnString.replace(/á/g, '_AA_aacuteA__A');
    returnString = returnString.replace(/à/g, '_AA_agraveA__A');
    returnString = returnString.replace(/Â/g, '_AA_AcircA__A');
    returnString = returnString.replace(/Á/g, '_AA_AacuteA__A');
    returnString = returnString.replace(/À/g, '_AA_AgraveA__A');
    
    returnString = returnString.replace(/ô/g, '_AA_ocircA__A');
    returnString = returnString.replace(/ó/g, '_AA_oacuteA__A');
    returnString = returnString.replace(/ò/g, '_AA_ograveA__A');
    returnString = returnString.replace(/Ô/g, '_AA_OcircA__A');
    returnString = returnString.replace(/Ó/g, '_AA_OacuteA__A');
    returnString = returnString.replace(/Ò/g, '_AA_OgraveA__A');
    
    returnString = returnString.replace(/'/g, '__APO__');
    
    return returnString;
}

function updateNews(index) {
    var id           = document.getElementById('id_' + index).value;
    var editTitle    = document.getElementById('editTitle_' + index).value;
    var editSubTitle = document.getElementById('editSubTitle_' + index).value;
    var editTeaser   = document.getElementById('editTeaser_' + index).value.replace(/\n/g, '__br__');
    var editReport   = document.getElementById('editReport_' + index).value.replace(/\n/g, '__br__');
    var editPicture  = document.getElementById('editPicture_' + index).value;
    
    if (editTitle.length < 3 || editReport < 10) {
        document.getElementById('editNewsError_' + index).innerHTML = 'Ein Bericht muss wenigstens aus einer &Uuml;berschrift mit mindestens 3 Zeichen und einem Bericht aus mindestens 10 Zeichen bestehen.';
        document.getElementById('editNewsError_' + index).style.display = 'block';
        
        return false;
    }
    
    $('#updateNewsButton_' + index).hide();
    $('#cancelUpdateNewsButton_' + index).hide();
    $('#updateNewsWaitLoader_' + index).show();
    
    var updateParams = 'id=' + id
                     + '&title=' + encodeHTML(editTitle)
                     + '&subTitle=' + encodeHTML(editSubTitle)
                     + '&teaser=' + encodeHTML(editTeaser)
                     + '&report=' + encodeHTML(editReport);
    
    if (editPicture == '') {
        updateParams += '&picture=';
    } else if (editPicture != '-1') {
        updateParams += '&picture=' + encodeHTML('upload/' + editPicture);
    }
    
    updateParams += '&author=' + encodeHTML(reporter)
                 +  '&status=OK';
    
    initAjax();
    
    if (XHRO) {
        XHRO.open('GET', 'updateNews.php?' + updateParams + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                if (XHRO.responseText == 'OK') {
                    document.location.href = 'reporter.php';
                } else {
                    document.getElementById('editNewsError_' + index).innerHTML = 'Bericht konte nicht aktualisiert werden<br />' + XHRO.responseText;
                    document.getElementById('editNewsError_' + index).style.display = 'block';
                }
                
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function cancelUpdateNews(index) {
    $('#editNewsError_' + index).hide();
    $('#newsEdit_' + index).hide('slow');
    $('#newsEditLink_' + index).show('slow');
}

function deleteNews(index) {
    $('#newsEditLink_' + index).hide();
    $('#newsDeleteLink_' + index).hide();
    $('#newsDeleteLoader_' + index).show();
    
    var id = document.getElementById('id_' + index).value;
    
    var updateParams = 'id=' + id;
    
    initAjax();
    
    if (XHRO) {
        XHRO.open('GET', 'deleteNews.php?' + updateParams + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                if (XHRO.responseText == 'OK') {
                    document.location.href = 'reporter.php';
                } else {
                    document.getElementById('editNewsError_' + index).innerHTML = 'Bericht konte nicht geloescht werden<br />' + XHRO.responseText;
                    document.getElementById('editNewsError_' + index).style.display = 'block';
                }
                
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function deleteReport(index) {
    var delNews = confirm('Soll dieser Bericht definitiv gelöscht werden?');
    
    if (delNews) {
        deleteNews(index);
    }
}

function skipNews(index, maxIndex) {
    var countContainer = 1;
    while (document.getElementById('newsContainer_' + countContainer)) {
        $('#newsContainer_' + countContainer).slideUp('fast');
        
        countContainer += 1;
    }
    
    $('#newsContainer_' + index).slideDown('slow');
    
    
    var strNewsSkipContainer = '<div class="newsSkipText">Seite</div>';
    
    var skipPages    = 1;
    var skipInterval = 6;

    for (var q = 0; q < maxIndex; q ++) {
        if (q % skipInterval == 0) {
            strNewsSkipContainer += '<div class="newsSkipPage' + (skipPages == index ? 'Active' : '') + '" id="newsSkipPage_' + skipPages + '" onclick="skipNews(' + skipPages + ', ' + maxIndex + '); return false;">' + skipPages + '</div>';
            skipPages += 1;
        }
    }

    strNewsSkipContainer += '<div class="clearBoth"><img src="images/spacer.gif" alt="" border="0" width="" height=""></div>';
            
    document.getElementById('newsSkipContainer').innerHTML = strNewsSkipContainer;
}

var currentImage  = '';
var currentIndex = 0;

function getImageSize(file, index) {
    currentImage = file;
    currentIndex = index;
    
    bild     = new Image();
    bild.src = 'upload/' + file;
        
    bild.onload = function () { 
        breite   = bild.width;
        hoehe    = bild.height;
        
        if (breite > hoehe) {
            imageWidth  = '255';
        } else {
            imageWidth  = '170';
        }
        
        $('#currentPicture_' + currentIndex).hide();
        
        $('#uploadImage_' + currentIndex).css('width', imageWidth);
        $('#uploadImage_' + currentIndex).html('<img src="upload/' + currentImage + '" width="' + imageWidth + '" alt="" />');
        $('#uploadImage_' + currentIndex).show();
        $('#deletePictureButton_' + index).show();
        
        $('#uploadResult_' + currentIndex).css("color", "green");
        $('#uploadResult_' + currentIndex).html('Das Bild "' + currentImage + '" wurde erfolgereich hochgeladen.');
        
        document.getElementById('editPicture_' + index).value = currentImage;
    };
}

function deletePicture(index) {
    document.getElementById('deletePictureButton_' + index).style.display = 'none';
    
    if(document.getElementById('currentPicture_' + index)) {
        document.getElementById('currentPicture_' + index).src = '';
    }
    
    if (document.getElementById('uploadImage_' + index)) {
        document.getElementById('uploadImage_' + index).src = '';
        $('#uploadImage_' + currentIndex).hide();
    }
    
    document.getElementById('editPicture_' + index).value  = '';
    
    $('#uploadResult_' + currentIndex).html('');
    $('#uploadResult_' + currentIndex).hide();
}

function loadPicture(index) {
    initAjax();
    
    if (XHRO) {
        XHRO.open('GET', 'loadPictures.php?id=' + index + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                if (XHRO.responseText != '') {
                    document.getElementById('loadResult_' + index).innerHTML = XHRO.responseText;
                    $('#loadResult_' + index).show('slow');
                } else {
                    document.getElementById('loadResult_' + index).innerHTML = 'Es konnten keine Bilder geladen werden<br />' + XHRO.responseText;
                    document.getElementById('loadResult_' + index).style.display = 'block';
                }
                
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function maximizePicture(index, picture, width) {
    $('#bigPicture_' + index).html('<img src="' + picture + '" width="' + width + '" alt="" border="0" />');
    $('#bigPicture_' + index).show();
}

function minimizePicture(index) {
    $('#bigPicture_' + index).hide();
}

function setUploadPicture(index, picture, width) {
    $('#loadResult_' + index).hide();
    $('#uploadImage_' + index).html('<img src="upload/' + picture + '" width="' + width + '" alt="" />');
    $('#uploadImage_' + index).show('slow');
    
    if (index == -1) {
        $('#deletePictureButton_' + index).show('slow');
    }

    document.getElementById('editPicture_' + index).value = picture;
    
    currentIndex = index;
}

function handleIntercupImage(action) {
    if (action == 1) {
        $('#intercupImage').show('slow');
    } else {
        $('#intercupImage').hide('slow');
    }
}

function handleIntercupLoad() {
    window.setTimeout('handleIntercupImage(0)', 5000);
}

function gbInit(loc) {
    initAjax();
    
    if (XHRO) {
        if (loc == 'picsIntercup') {
            var dir = '../';
        } else {
            var dir = '';
        }
        
        XHRO.open('GET', dir + 'gbInit.php?loc=' + loc + '&random=' + getRandom(0, 1000000000));
        
        XHRO.onreadystatechange = function() {
            if (XHRO.readyState == 4 && XHRO.status == 200) {
                return true;
            } else{
                return false;
            }
        }
        
        XHRO.send(null);
    }
}

function getRandom(min, max) {
	if (min > max) {
		return -1;
	}
    
	if (min == max) {
		return min;
	}
 
    return (min + parseInt(Math.random() * (max - min + 1)));
}
