// -----------------------------------------------------------------------------
// rekorder.js
//
// Autor: Tobias Rudolphi
// Datum: 2008/12/27
//
// Version: 1.0
//
// (C)'2008 by IT Future AG
// -----------------------------------------------------------------------------
// SVN
// -----------------------------------------------------------------------------
// Letzte Äderung: $Date$
// Revision.......: $Revision$
// Geäert von...: $Author$
//
// -----------------------------------------------------------------------------
// Beschreibung
// -----------------------------------------------------------------------------
// Rekorder Javascript Funktionen
//
// -----------------------------------------------------------------------------
// Versionen
// -----------------------------------------------------------------------------
// 2008/12/27   Version 1.0     Tobias Rudolphi
//



// -----------------------------------------------------------------------------
// Newsletter
// -----------------------------------------------------------------------------

function nlConfirm(token)
{
    // falls token == '' -> form ansonsten meldung
    if (token == undefined || token == '') {
        $('msg').hide();
        $('formMsg').hide();
        $('form').show();
        return;
    } else {
        $('msg').update("Überprüfe Deinen Bestätigungs Code ...");
        $('form').hide();
        $('msg').show();
    }

    // hole daten für AJAX call
    var uri = $('form').action;
    var method = $('form').method ? $('form').method : 'POST';

    // starte Ajax Request
    var req = new Ajax.Request(
        uri,
        {
            method: method,
            parameters: {
                token: token
            },
            onFailure: function (transport) {
                var errMsg = "Es ist ein technischer Fehler aufgetreten!";
                if (transport.status == 500) {
                    errMsg = transport.responseText;
                }
                $('msg').hide();
                $('formMsg').update(errMsg+" Bitte versuche es erneut!");
                $('formMsg').show();
                $('form').show();
            },
            onSuccess: function (transport) {
                $('msg').update(
                    transport.responseText+'<br/><div style="margin:2em 0 0 0;font-weight:normal">weiter bei:'+
                    ' <a href="http://www.musikrekorder.de/" style="color:#8e3724">musikrekorder.de</a>'+
                    ' | <a href="http://www.dierevolution.com/" style="color:#8e3724">dierevolution.com</a> ... </div>'
                );
                $('form').hide();
                $('msg').show();
            }
        }
    );
    
} // of nlConfirm



/**
 * Startet einen Ajax Request zum subscriben für den Rekorder-Newsletter
 *
 * @param   object  form    Das Form-Objekt mit den Subscriber-Daten
 */
function doSubscribe(form)
{
    // hole daten
    if ((e = form.elements['email'])) {
        var email = e.value;
    }
    if (email == '' || email == '[ deine e-mail ]') {
        alert("Du musst schon Deine E-Mail Adresse angeben,\nwenn Du den Newsletter abonnieren willst!");
        return;
    }

    // hole url und methode
    var url = form.action;
    if (!url) {
        alert("Ein Fehler ist aufgetreten!");
        return;
    }
    var method = form.method ? form.method : 'POST';

    // div anzeigen
    form.disable();
    $('nlMsg').update("<strong>Deine Newsletter Registrierung wird bearbeitet.</strong><br/>Bitte hab einen Moment Geduld...");
    $('nlMsg').show();

    // starte ajax request
    var req = new Ajax.Request(
            url,
            {
                method: method,
                parameters: {
                    email: email
                },
                onFailure: function (transport) {
                    var text = '';
                    if (transport.status == 500) {
                        text = transport.responseText;
                    }
                    if (text == '') {
                        text = 'Es ist ein technischer Fehler aufgetreten!';
                    }
                    $('nlMsg').update('<strong>Achtung!</strong><br/>'+text);
                    $('nlMsg').show();
                },
                onSuccess: function (transport) {
                    $('nlMsg').update(transport.responseText);
                    $('nlMsg').show();
                },
                onComplete: function () {
                    form.enable();
                }
            }
    );

} // of doSubscribe()



// -----------------------------------------------------------------------------
// Bilder
// -----------------------------------------------------------------------------

var win_foto;
function popGallery(id)
{
    if (win_foto && !win_foto.closed) {
        win_foto.location = 'fileadmin/php/gallery.php?'+id;
        win_foto.focus();
    } else {
        x = Math.round((screen.availWidth-800)/2);
        y = Math.round((screen.availHeight-570)/2);
        win_foto = window.open(
                'fileadmin/php/gallery.php?'+id,
                '_foto',
                'resizable=0,width=800,height=570,left='+x+',top='+y
        );
    }
} // of popGallery

