var staticDomain = 'http://i.streetmoda.pl/';
var sringAction  = '';
var issLogged    = false;

var LoginForm = Class.create({
    initialize: function(){

        Event.observe($$('div#login-form input.button-cancel').first(), 'click', function(event){
            Event.stop(event);

            Element.hide($('overlayer'));
            Element.hide($('login-form'));
        });

        this.form = $('userLogin');
        Event.observe(this.form, 'submit', this.login.bindAsEventListener(this));
    },

    setElement: function(adres, type){
        this.hrefRedirect = adres;
        this.type = type;
    },

    login: function(event){
        Event.stop(event);
        Element.hide($('userLogin-error'));
        Element.hide($('userLogin-inprogress'));
        Element.hide($('jSubmitLogin'));

        if($$('.main_image').first()){
          var idArray = $$('.main_image').first().identify().split('_');
          var photoId = idArray[1];
          var userLogId = idArray[2];

          var parametersArray = '&photoId=' + photoId;
        } else {
          var parametersArray = '';
        }

        new Ajax.Request('/sessions/new', {
            parameters: this.form.serialize()+parametersArray,
            method: 'POST',
            onSuccess: function(transport){
                Element.hide($('userLogin-inprogress'));
                Element.show($('jSubmitLogin'));
                if (transport.responseJSON == false) {
                    Element.show($('userLogin-error'));
                }else if(transport.responseText == 'not_active'){
                	Element.show($('userLogin-error-not_active'));
                	var mail_user = $('user-email').value;
                	$('email_name_login').update(mail_user);
                }
                else{
                   dataResponse = transport.responseJSON;
                   setCookie('userLogId', dataResponse.userLogId+'##'+dataResponse.userLogName+'##'+dataResponse.userAvatar, dataResponse.remember_pass);
                   issLogged = true;

	                   if(this.type=='redirect'){
	                     document.location = this.hrefRedirect;
	                   } else {
	                      Element.hide($('overlayer'));
	                      Element.hide($('login-form'));

	                      Element.show('logged_in_box');
	                      Element.hide('login_box');
	                      $('logged_in_box_info').update(dataResponse.userInfo);
	                      $('logged_in_box_name').update(dataResponse.userLogName);
	                      $('logged_in_box_avatar').src=dataResponse.userAvatar;

	                      $('commentlogin').value=(dataResponse.userLogName);
	                      $('commentlogin').disabled='disabled';

	                      if(photoId && dataResponse.userLogId==userLogId){
                             $('delpictureaction').show();
                          }

	                      if(dataResponse.favorites=='favorites'){
	 				         $('change_favorite_add').hide();
					         $('change_favorite_delete').show();
	                      }
	                      if(this.type=='action'){
	                        eval(this.hrefRedirect);
	                      }

	                   }

                }
            }.bind(this),
            onLoading: Element.show($('userLogin-inprogress'))
        });
    }
});

var Login = Class.create({
    initialize: function(element, event){
        if(getCookie('userLogId')) {
           issLogged = true;
           return false;
        }
        Event.stop(event);
        this.root = element;

        var numbers = Element.cumulativeOffset(this.root);
        var login = $('login-form');

        this.viewport();
        scroollTopbody = document.documentElement.scrollTop;
        Element.setStyle(login, {top: (scroollTopbody + 110) + 'px' });

        var overlay = $('overlayer');
        Element.setStyle(overlay , {
            height: this.pageY + 'px'
        });
        Element.show(overlay);
        Element.show(login);

        if(this.root.hasClassName('redirect')){
          this.type = 'redirect';
          this.destination = this.root.href;
        }else if(this.root.hasClassName('noaction')){
          this.type = 'noaction';
        }else{
          this.type = 'action';
          this.destination = sringAction;
        }

        rl.setElement(this.destination, this.type);
    },
    viewport: function(){
        this.pageX = (document.documentElement && document.documentElement.scrollWidth) ? document.documentElement.scrollWidth : (document.body.scrollWidth > document.body.offsetWidth) ? document.body.scrollWidth : document.body.offsetWidth;
        this.pageY = (document.documentElement && document.documentElement.scrollHeight) ? document.documentElement.scrollHeight : (document.body.scrollHeight > document.body.offsetHeight) ? document.body.scrollHeight : document.body.offsetHeight;
    }
});



document.observe("dom:loaded", function(event){
	if(getCookie('userLogId')) {issLogged = true;}
	if(getCookie('userLogId') && $('logged_in_box').style.display=='none') {
	   var userLog = getCookie('userLogId').split('##');

	   $('logged_in_box_name').update('<a href="/profile">' + userLog[1] + '</a>');
	   $('commentlogin').value=(userLog[1]);
	   $('commentlogin').disabled='disabled';
	   $('logged_in_box_avatar').src=(userLog[2]);
	   Element.show('logged_in_box');
       profileInfo();
    } else if(!getCookie('userLogId')){
       Element.show('login_box');
    }

    rl = new LoginForm();

    $$('.logPerform').each(function(n){
       Event.observe(n , 'click' , function(event) {
    	  new Login(n,event);
    	})
    });


	$$('form').each(function (element) {
		new Validation(element);
	});

});

function setCookie(name,value,days)
{
   if (days) {
	  var date = new Date();
	  date.setTime(date.getTime()+(days*24*60*60*1000));
	  var expires = "; expires="+date.toGMTString();
   } else
   var expires = "";
   document.cookie = name+"="+value+expires+"; path=/";
}
function getCookie(N)
{
  if(N=(new RegExp(';\\s*'+N+'=([^;]*)')).exec(';'+document.cookie+';')){
     return N[1];
  } else {
     return false;
  }
}
function disableCockie(){
   setCookie("userLogId","",-1);
}




function profileInfo(){
    var photoId = '';
    var userLogId = '';
    if($$('.main_image').first()){
       var idArray = $$('.main_image').first().identify().split('_');
       photoId = idArray[1];
       userLogId = idArray[2];
       parametersArray = {photoId:photoId};
    } else {
       parametersArray = {};
    }


    new Ajax.Request('/sessions/getinfo', {
        method: 'POST',
        parameters: parametersArray,
        onSuccess: function(transport){
          if (transport.responseJSON == false) {
          } else {
            var dataResponse = transport.responseJSON;
            $('logged_in_box_info').update(dataResponse.userInfo);
            if(dataResponse.favorites=='favorites'){
 			   $('change_favorite_add').hide();
			   $('change_favorite_delete').show();
            }
            if(photoId && dataResponse.userLogId==userLogId){
               $('delpictureaction').show();
            }
          }
        }.bind(this),
        onLoading: $('logged_in_box_info').update('Masz <img stle="float: right;" src="'+staticDomain+'/img/ajax-loader2.gif" />')
   });
}

