var Across = {

    dmn         : 'invitel',
    tld         : 'hu',
    ActualImage : 0,
    NewLink     : '',

    Cloak : function(elements)
    {
        var a = '';
        
        if (elements)
        {
            for (var i = 0; i < elements.length; i++)
            {
                a += elements[i];
                if (i < elements.length - 1)
                {
                    a += '.';
                }
            }
            
            document.write('<a href="mai');
            document.write('lto:');
            document.write(a);
            document.write ('&#64;');
            document.write (Across.dmn);
            document.write ('.');
            document.write (Across.tld + '">');
            document.write(a);
            document.write ('&#64;');
            document.write (Across.dmn);
            document.write ('.');
            document.write (Across.tld);
            document.write ('</a>');
        }
    },
    
    showHide : function(id)
    {
        var element = document.getElementById(id);
        
        if (element)
        {
            element.style.display = element.style.display == 'none' ? 'block' : 'none';
        }
    },
    
    getLoginForm : function ()
    {
        if (arguments[0])
        {
            Across.NewLink = arguments[0];
        }

        if (dialogHandler)
        {
            dialogHandler.wait();
        }

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func : 'users.getloginform'   
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    dialogHandler.popup({
                        Title : Result.Title, 
                        Body  : Result.Body
                    });
                }
            }
        ); 
    },

    doLogin : function (thisform) 
    {
        dialogHandler.addWait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: 'Func=users.gologin&'+$(thisform).serialize(),
                onComplete: function (request){

                    dialogHandler.removeWait();
                    eval("var Result = " + request.responseText);

                    if (Result.errors == 1)
                    {
                        $('login-message').innerHTML = Result.message;
                    }
                    else 
                    {
                        if (Across.NewLink != '')
                        {
                            window.location = Across.NewLink;
                        }
                        else
                        {
                            window.location.reload();
                        }
                    }
                }
            }
        ); 
    },

    getNewPassForm : function ()
    {
        dialogHandler.wait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func : 'users.getnewpassform'   
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    dialogHandler.popup({
                        Title : Result.Title, 
                        Body  : Result.Body
                    });
                }
            }
        ); 
    },

    doNewPass : function (thisform) 
    {
        dialogHandler.addWait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: 'Func=users.donewpass&'+$(thisform).serialize(),
                onComplete: function (request){

                    dialogHandler.removeWait();
                    eval("var Result = " + request.responseText);

                    if (Result.errors == 1)
                    {
                        $('login-message').innerHTML = Result.message;
                    }
                    else 
                    {
                        dialogHandler.popup({
                            Title : Result.Title, 
                            Body  : Result.message
                        });
                    }
                }
            }
        ); 
    },

    toggleCheckbox : function (box, item)
    {
		$(item).checked = ($(item).checked) ? false : true
		
		Effect.DropOut($(box), {
            duration: 0.5,
            afterFinish: function() {

                if ($(item).checked)
                {
                    $('drinks_checked_box').appendChild($(box));
                }
                else 
                {
                    $('drinks_unchecked_box').appendChild($(box));
                }

                Effect.Appear($(box), {duration: 0.5});
            }
        });
    },

	toggleCategoriesCheckbox : function (box, item, paps)
	{
		$(item).checked = ($(item).checked) ? false : true;

		Effect.DropOut($(box), {
            duration: 0.5,
            afterFinish: function() {

                if ($(item).checked)
                {
                    $('categories_checked_box').appendChild($(box));
                }
                else 
                {
                    $(paps).appendChild($(box));
                }

                Effect.Appear($(box), {duration: 0.5});
            }
        });	
	},

    toggleBoxes : function (item)
    {
        if ( $(item+'_box').style.display == 'none')
        {
            $(item+'_opened').innerHTML = ' - ';
            $(item+'_box').style.display = 'block';
        }
        else 
        {
            $(item+'_opened').innerHTML = ' + ';
            $(item+'_box').style.display = 'none';
        }

        return false;
    },

	clarField : function (item)
	{
		if ($(item).value != $(item).defaultValue)
		{
			$(item).value = '';
		}
	},
    
    getInvitationForm : function ()
    {
        dialogHandler.wait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func : 'users.getinvitationform'   
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    dialogHandler.popup({
                        Title : Result.Title, 
                        Body  : Result.Body
                    });
                }
            }
        ); 
    },

    doInvitation : function (thisform) 
    {
        dialogHandler.addWait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: 'Func=users.doinvitation&'+$(thisform).serialize(),
                onComplete: function (request){

                    dialogHandler.removeWait();
                    eval("var Result = " + request.responseText);

                    if (Result.errors == 1)
                    {
                        $('invitation-message').innerHTML = Result.message;
                    }
                    else 
                    {
                        dialogHandler.popup({
                            Title : Result.Title, 
                            Body  : Result.message
                        });
                    }
                }
            }
        ); 
    },

    showImage : function (data) {

        dialogHandler.popup({
            Title : data.title, 
            Body  : '<img src="'+data.image+'" onclick="dialogHandler.dialogClose()" width="'+data.width+'" height="'+data.height+'" alt="Bezárás" title="Bezárás" style="cursor: pointer; border: 1px solid #787878;" />',
            Width : (data.width + 58),
            Height : data.height
        });
    },
    
    doSubscribeStore : function (thisform)
    {
        dialogHandler.wait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: 'Func=users.dosubscribe&'+$(thisform).serialize(),
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.errors == 1)
                    {
                        dialogHandler.alert({
                            Title : Result.Title, 
                            Body  : Result.Message
                        });
                    }
                    else 
                    {
                        dialogHandler.alert({
                            Title : Result.Title, 
                            Body  : Result.Message
                        });
                    }
                }
            }
        );
    },
    
    showHide : function (id)
    {
        if ($(id))
        {
            if ($(id).style.display == 'none')
            {
                $(id).style.display = 'block';    
            }
            else
            {
                $(id).style.display = 'none';    
            }
        }
    },
    
    getMessageBoardForm : function (user)
    {
        dialogHandler.wait();
        AcrossUsers.currentUser = user;

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func        : 'recipes.view.getmessageboardform',
                    Recipe      : user
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    dialogHandler.popup({
                        Title : Result.Title, 
                        Body  : Result.Body
                    });
                }
            }
        ); 
    },
    
    doMessageBoardStore : function (thisform)
    {
        dialogHandler.addWait();

        new Ajax.Request(
            '/', {
                method: "post",
                parameters: 'Func=recipes.view.domessageboardstore&user='+AcrossUsers.currentUser+'&'+$(thisform).serialize(),
                onComplete: function (request){

                    dialogHandler.removeWait();
                    eval("var Result = " + request.responseText);

                    if (Result.errors == 1)
                    {
                        $('error-message').innerHTML = Result.message;
                    }
                    else 
                    {
                        window.location.reload();
                    }
                }
            }
        ); 
    },

    addFavourite : function (id)
    {
        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func        : 'forum.topiclist.addFavourite',
                    id      : id
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.alert({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });                        
                    }
                }
            }
        );
    },

	/*
    getForumMessageForm : function (topic_id,cat_id,parent_msg_id)
    {
        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func            : 'forum.list.getForumMessageForm',
                    topic_id        : topic_id,
                    cat_id          : cat_id,
                    parent_msg_id   : parent_msg_id
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });
                        
                        tinyMCE.execCommand('mceAddControl', false, 'message');
                    }
                }
            }
        );
    },
	*/
	
	
	getForumMessageForm : function (topic_id,cat_id,parent_msg_id)
    {

    new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func            : 'forum.list.getForumMessageForm',
                    topic_id        : topic_id,
                    cat_id          : cat_id,
                    parent_msg_id   : parent_msg_id
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
						
						$('messagebox').show();
						$('messagebox').innerHTML = Result.Body;
                        tinyMCE.execCommand('mceAddControl', false, 'message');
                    }
                }
            }
        );
    },
	
    addForumMessage : function (topic_id,cat_id,parent_msg_id,thisform)
    {

        if(tinyMCE.activeEditor.getContent() == '') {
            var message = ''
        }else {
            var message = tinyMCE.activeEditor.getContent();
        }
		
		//var picture = $('picture').getValue();
		
        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                
                parameters: {
                    Func            : 'forum.list.addForumMessage',
                    topic_id        : topic_id,
                    cat_id          : cat_id,
                    parent_msg_id   : parent_msg_id,
                    message         : message
                },
				
				
				//parameters: 'Func=forum.list.addForumMessage&topic_id='+topic_id+'&cat_id='+cat_id+'&parent_msg_id='+parent_msg_id+'&message='+message+'&'+$(thisform).serialize(),
				
                onComplete: function (request){
                    eval("var Result = " + request.responseText);
                    
                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.alert({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });
                    }
                }
            }
        );
    },

    getForumTopicForm : function (cat_id)
    {
        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func            : 'forum.default.getForumTopicForm',
                    cat_id          : cat_id
                 },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });

                        tinyMCE.execCommand('mceAddControl', false, 'message');

                    }
                }
            }
        );
    },


    addForumTopic : function (cat_id)
    {

        if(tinyMCE.activeEditor.getContent() == '') {
            var newmessage = ''
        }else {
            var newmessage = tinyMCE.activeEditor.getContent();
        }

        var topicname = $('topicname').getValue();

        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                /*parameters: 'Func=forum.default.addForumTopic&cat_id=' + cat_id +'&topicname=' +topicname + '&message=' + message,*/

                parameters: {
                    Func            : 'forum.default.addForumTopic',
                    cat_id          : cat_id,
                    topicname       : topicname,
                    message         : newmessage
                },

                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.alert({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });
                    }
                }
            }
        );
    },

    topicReminder : function (topic_id,cat_id)
    {
        dialogHandler.wait();

    new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func        : 'forum.topiclist.topicReminder',
                    topic_id    : topic_id,
                    cat_id      : cat_id
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.alert({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });
                    }
                }
            }
        );
    },
	
	voteContest :  function (menuid)
	{
		
		dialogHandler.wait();
		
		new Ajax.Request(
            '/', {
                method: "post",
                parameters: {
                    Func        : 'recipes.menus.voteContest',
                    menuid    : menuid
                },
                onComplete: function (request){
                    eval("var Result = " + request.responseText);

                    if (Result.NeedLogin == 1)
                    {
                        dialogHandler.popup({
                            Title : Result.Title,
                            Body  : Result.Body
                        });
                    }
                    else
                    {
                        dialogHandler.alert({
                            Title : Result.Title,
                            Body  : Result.Body,
                            Func : function ()  {
                                
                                window.location.reload();
                            }
                        });
                    }
                }
            }
        );
	},
	
	hideElements: function(cn)
	{
		var nodes = document.getElementsByClassName(cn);
		
		for(i=0; i<nodes.length; i++)
		{
			nodes[i].toggle();
		}
		
	},
	
	forumInsertImage : function(filename)
	{
		var html = ' <a href="/uploads/forum/'+filename+'" rel="clearbox"><img src="/uploads/forum/tn/'+filename+'" alt="" /></a> ';
		tinyMCE.execCommand("mceInsertContent", false, html);
				
	},
	
	setImage : function(filename)
	{
		//$('postimages').innerHTML = $('postimages').innerHTML+'<a href="javascript:void(0);" onclick="Across.forumInsertImage(\''+filename+'\');"><img src="/uploads/forum/tn/'+filename+'" alt=""/></a>';	
	},
	
	setFrame : function(height)
	{
		$('imageframe').style.height = height+'px';
	},

	checkSearch : function ()
	{
		var name        = $('rec_name').value;
		var ingredients = $('ingredients').value;

		if (name == '' && ingredients == '')
		{
			dialogHandler.alert({
				Title : 'Figyelem!', 
				Body  : 'Kérjük írd be a keresett recept nevét és/vagy a hozzávaló(ka)t!'
			});

			return false;
		}
		
		return true;
	}
};