function deleteEventComment( url, commentId, eventId ) {

    url = addUrlParam(url, "execute", "delete");
    url = addUrlParam(url, "commentId", commentId);
    url = addUrlParam(url, "eventId", eventId);

    var destId = "comments";
    var req = new Ajax.Request(url, {
        asynchronous: true,
        method: 'get',
        evalScripts: true,
        onSuccess: function( request ) {
            var dest = document.getElementById(destId);
            dest.innerHTML = request.responseText;
        },
        onFailure: function( request ) {
            alert("Not able to retrieve data");
        }
    });
}

function deleteEventImg( url, eventId, fotoId ) {

    url = addUrlParam(url, "execute", "delete");
    url = addUrlParam(url, "eventId", eventId);
    url = addUrlParam(url, "photoId", fotoId);

    var destId = "thumbnails";
    var req = new Ajax.Request(url, {
        asynchronous: true,
        method: 'get',
        evalScripts: true,
        onSuccess: function( request ) {
            var dest = document.getElementById(destId);
            dest.innerHTML = request.responseText;
        },
        onFailure: function( request ) {
            alert("Not able to retrieve data");
        }
    });
}


function rotateEventImg( url, eventId, fotoSrc, side ) {

    fotoSrc = fotoSrc.substring(fotoSrc.lastIndexOf("/")+1, fotoSrc.length )

    url = addUrlParam(url, "id", eventId);
    url = addUrlParam(url, "photoSrc", fotoSrc);
    url = addUrlParam(url, "side", side);

    var req = new Ajax.Request(url, {
        asynchronous: true,
        method: 'post',
        evalScripts: true,
        onSuccess: function( request ) {
            var dest = document.getElementById(destId);
            dest.innerHTML = request.responseText;
            //dest.innerHTML = response;
        },
        onFailure: function( request ) {
            alert("Not able to retrieve data");
        }
    });
}

   
function addEventComment( url, eventId, commentObj ) {
    if ( commentObj.value ) {
        url = addUrlParam(url, "execute", "save");
        url = addUrlParam(url, "eventId", eventId);

        var destId = "comments";
        var txt = trim(commentObj.value, ' ');
        if( txt.length > 0 ) {
            var params = "comment=" + encodeURIComponent(txt);
            var req = new Ajax.Request(url, {
                asynchronous: true,
                method: 'post',
                evalScripts: true,
                parameters: params,
                onSuccess: function( request ) {
                    var dest = document.getElementById(destId);
                    dest.innerHTML = request.responseText;
                },
                onFailure: function( request ) {
                    alert("Not able to retrieve data");
                }
            });
        }
        commentObj.value = '';
    }
}

function addArticleComment( url, articleId, commentObj ) {
    if ( commentObj.value ) {
        url = addUrlParam(url, "execute", "save");
        url = addUrlParam(url, "articleId", articleId);

        var destId = "comments";
        var txt = trim(commentObj.value, ' ');
        if( txt.length > 0 ) {
            var params = "comment=" + encodeURIComponent(txt);
            var req = new Ajax.Request(url, {
                asynchronous: true,
                method: 'post',
                evalScripts: true,
                parameters: params,
                onSuccess: function( request ) {
                    var dest = document.getElementById(destId);
                    dest.innerHTML = request.responseText;
                },
                onFailure: function( request ) {
                    alert("Not able to retrieve data");
                }
            });
        }
        commentObj.value = '';
    }
}
function addAdviceComment( url, adviceId, commentObj ) {
    if ( commentObj.value ) {
        url = addUrlParam(url, "execute", "save");
        url = addUrlParam(url, "adviceId", adviceId);

        var destId = "comments";
        var txt = trim(commentObj.value, ' ');
        if( txt.length > 0 ) {
            jQuery.post(url, { "comment": txt }, function( response ) {
                processDestObjOnSuccess( destId, response );
            });
        }
        commentObj.value = '';
    }
}

function subscribeForNewsletter( url, emailObj ) {
    if ( emailObj.value ) {
        url = addUrlParam(url, "execute", "save");

        var destId = "newsletterSubscriberResult";
        var txt = trim(emailObj.value, ' ');
        if( txt.length > 0 ) {
            jQuery.post(url, { "email": txt }, function( response ) {
                processDestObjOnSuccess( destId, response );
            });
        }
        emailObj.value = '';
    }
}

function addUrlParam( url, param, value ) {
    var sep = '?';
    if ( url.indexOf('?') >= 0 ) {
        sep = '&';
    }
    return url + sep + param + "=" + encodeURI(value);
}

function processDestObjOnSuccess( destId, response ) {
    var dest = document.getElementById(destId);
    dest.innerHTML = response;
}
