/*
myajax.js

VERSION 0.1
Last Modified: 19/09/2008
*/

var MyAjax = Class.create();

MyAjax.prototype = {

    initialize: function(url, aid)
    {
	this.url = url;
	this.aid = aid;
	
	this.page = 1;
    },
    
    SubmitComment: function()
    {
//        var pars = "action=comment-insert";
//        if (this.aid != null)
//    	    pars += "&aid=" + this.aid;
//    	else
//    	{
//    	    alert('Не определен материал для комментария');
//    	    return;
//    	}
//	pars += "&name=" + $('name').value + "&text=" + $('text').value + "&codeword=" + $('codeword').value;
	
        var myAjax = new Ajax.Request(
            this.url,
            {method: "post", parameters: {
        	action: 'comment-insert',
        	aid: this.aid,
        	name: $('name').value,
        	text: $('text').value,
        	codeword: $('codeword').value        	
            }, onComplete: this.FinishSubmitComment.bindAsEventListener(this)}
        );
    },

    FinishSubmitComment: function(originalRequest)
    {
	var result = originalRequest.responseText;
	
	if (result == "ok")
	{
//	    Modalbox.hide();
	    this.LoadCommentList();
	    $('captcha').src='/cgi-bin/ajax.pl?action=captcha&' + Math.random();
	    alert('Сообщение добавлено');
	}
	else
	{
	    alert(result);	
	}
    },
    
    LoadCommentList: function(page)
    {
        var pars = "action=comment-list&aid=" + this.aid;
        if (page)
    	    pars += "&page=" + page;
	pars += "&rnum=" + Math.random();

        var myAjax = new Ajax.Request(
            this.url,
            {method: "get", parameters: pars, onComplete: this.FinishLoadCommentList.bindAsEventListener(this)}
        );
        
        return false;
    },
    
    FinishLoadCommentList: function(originalRequest)
    {
        var jsonText = originalRequest.responseText;
        var data = eval("(" + jsonText + ")");

	var a = new Array();
        var i = 0;
	for (var obj in data)
	    a[i++] = obj;

	a.sort(function(a, b) {return a - b});
	a.reverse();
	
        var html = "<ul>";
	for (i = 0; i < a.length; i++)
	{
	    var obj = data[a[i]];
	    if (a[i] != "-1")
		html += "<li>" + obj.text + "<br>&nbsp;&nbsp; - <b>" + obj.name + "</b> - " + obj.date + "</li>";
	}
	html += "</ul>";

	if (data["-1"])
	    html += data["-1"];

        $('comments').innerHTML = html;
    },
    
    LoadCurrencies: function()
    {
        var pars = "action=currency";

        var myAjax = new Ajax.Request(
    	    this.url,
            {method: "get", parameters: pars, onComplete: this.FinishLoadCurrencies.bindAsEventListener(this)}
        );
        $('currency').innerHTML = "Загрузка...";
//        $('currency').innerHTML = "<img src='/support/images/spinner.gif'>";
    },
    
    FinishLoadCurrencies: function(originalRequest)
    {
	var jsonText = originalRequest.responseText;
        var data = eval("(" + jsonText + ")");
        
        $('currency').innerHTML = "1$ = " + data.dollar + "<br>" + "1€ = " + data.euro;
    }    
    
}

