var SITE_URL = 'http://www.pixelfind.net/';

function relocate(url) {
  window.location = url;
}

function urlencode (str) {
    // URL-encodes string
    //
    // version: 911.718
    // discuss at: http://phpjs.org/functions/urlencode
    // +   original by: Philip Peterson
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: AJ
    // +   improved by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +      input by: travc
    // +      input by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: Lars Fischer
    // +      input by: Ratheous
    // +      reimplemented by: Brett Zamir (http://brett-zamir.me)
    // +   bugfixed by: Joris
    // +      reimplemented by: Brett Zamir (http://brett-zamir.me)
    // %          note 1: This reflects PHP 5.3/6.0+ behavior
    // %        note 2: Please be aware that this function expects to encode into UTF-8 encoded strings, as found on
    // %        note 2: pages served as UTF-8
    // *     example 1: urlencode('Kevin van Zonneveld!');
    // *     returns 1: 'Kevin+van+Zonneveld%21'
    // *     example 2: urlencode('http://kevin.vanzonneveld.net/');
    // *     returns 2: 'http%3A%2F%2Fkevin.vanzonneveld.net%2F'
    // *     example 3: urlencode('http://www.google.nl/search?q=php.js&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a');
    // *     returns 3: 'http%3A%2F%2Fwww.google.nl%2Fsearch%3Fq%3Dphp.js%26ie%3Dutf-8%26oe%3Dutf-8%26aq%3Dt%26rls%3Dcom.ubuntu%3Aen-US%3Aunofficial%26client%3Dfirefox-a'
    str = (str+'').toString();

    // Tilde should be allowed unescaped in future versions of PHP (as reflected below), but if you want to reflect current
    // PHP behavior, you would need to add ".replace(/~/g, '%7E');" to the following.
    return encodeURIComponent(str).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').
                                                                    replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+');
}

function preloading() {
	for ( i = 0; i < preloading.arguments.length; i++ ) {
		my_images[i] = new Image();
		my_images[i].src = preloading.arguments[i];
	}
}

function checkEmail(email) {
  var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
  if ( !filter.test(email) ) {
    return false;
  } else {
    return true;
  }
}

function login_user() {
  var username = $('#username').val();
  var password = $('#password').val();

  if ( username.length > 3 && password.length > 3) {
    $('#load_screen').html('<table><tr><td><img src="images/loaders/load1.gif" /></td><td class="message_neutral">Preparing to load...</td></tr></table>');

    $('#load_screen').fadeIn();
  
    $.ajax({
      type: "POST",
      url: "login_user.pxf",
      dataType: "html",
      data: "username=" + username + "&password=" + password,
      success: function (msg) {
        $('#load_screen').html(msg);

        $('#password').val('');
        $('#username').focus();
      }
    });
  }
}

function register_form() {
  $('#register_account').submit();
}

// Windows functions
function close_window(id) {
  $('#' + id).fadeOut(1500);
}

function minimize_window(id) {
  if ( $('#' + id).css('display') == 'block' ) {
    $('#' + id).fadeOut(1500);
  } else {
    $('#' + id).fadeIn(1500);
  }
}

function load_design(url) {
  $('#preview_div').show(500);
  
  $('#preload_link').attr('src', 'design_ideeas/big/' + url);
}

function close_preview() {
  $('#preview_div').hide(500);
}

function createCookie(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 readCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
  
	for(var i = 0; i < ca.length; i++) {
		var c = ca[i];
		while (c.charAt(0) == ' ') {
      c = c.substring(1,c.length);
    }

		if (c.indexOf(nameEQ) == 0) {
      return c.substring(nameEQ.length,c.length);
    }
	}
	return null;
}

function eraseCookie(name) {
	createCookie(name, "", -1);
}

function trim(str, chars) {
	return ltrim(rtrim(str, chars), chars);
}

function ltrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("^[" + chars + "]+", "g"), "");
}

function rtrim(str, chars) {
	chars = chars || "\\s";
	return str.replace(new RegExp("[" + chars + "]+$", "g"), "");
}

function load_languages(default_logo) {
  if ( $('#language_div').css('display') == 'none' ) {
    $('#default_language_image').attr('src', SITE_URL + 'images/world.jpg');
    $('#language_div').css('display', 'block');
  } else {
    $('#default_language_image').attr('src', SITE_URL + 'images/' + default_logo + '.jpg');
    $('#language_div').css('display', 'none');
  }
}

function toggle_right_column(id_nr) {
  if ( id_nr != $('#current_column').val() ) {
    for ( var i = 1; i <= 4; i++ ) {
      $('#right_' + i).slideUp('slow');
    }

    $('#right_' + id_nr).slideDown('slow');
    $('#current_column').val(id_nr);
  }
}

function submit_quote(email_succesfully) {
  var name = $('#quote_name').val();
  var email = $('#quote_email').val();
  var type = $('#quote_type').val();
  var comments = $('#quote_comments').val();
  var code = $('#quote_code').val();

  if ( name == '' ) {
    $('#quote_name').css('border', '1px solid red');

    $('#quote_name').focus();
  } else {
    if ( email == '' || !checkEmail(email) ) {
      $('#quote_name').css('border', '1px solid #E0E0E0');
      $('#quote_email').css('border', '1px solid red');

      $('#quote_email').focus();
    } else {
      if ( type == '' ) {
        $('#quote_name').css('border', '1px solid #E0E0E0');
        $('#quote_email').css('border', '1px solid #E0E0E0');
        $('#quote_type').css('border', '1px solid red');

        $('#quote_type').focus();
      } else {
        if ( comments == '' ) {
          $('#quote_name').css('border', '1px solid #E0E0E0');
          $('#quote_email').css('border', '1px solid #E0E0E0');
          $('#quote_type').css('border', '1px solid #E0E0E0');
          $('#quote_comments').css('border', '1px solid red');

          $('#quote_comments').focus();
        } else {
          if ( code == '' ) {
            $('#quote_name').css('border', '1px solid #E0E0E0');
            $('#quote_email').css('border', '1px solid #E0E0E0');
            $('#quote_type').css('border', '1px solid #E0E0E0');
            $('#quote_comments').css('border', '1px solid #E0E0E0');
            $('#quote_code').css('border', '1px solid red');

            $('#quote_code').focus();
          } else {
            $.ajax({
              type: "POST",
              url: "check_code.pxf",
              dataType: "html",
              data: "code=" + code,
              success: function (msg) {
                $('#quote_name').css('border', '1px solid #E0E0E0');
                $('#quote_email').css('border', '1px solid #E0E0E0');
                $('#quote_type').css('border', '1px solid #E0E0E0');
                $('#quote_comments').css('border', '1px solid #E0E0E0');
                
                if ( msg == 1 ) {
                  $('#quote_code').css('border', '1px solid #E0E0E0');
                  $('#sending_mail').fadeIn(500);

                  $.ajax({
                    type: "POST",
                    url: "send_quote_email.pxf",
                    dataType: "html",
                    data: "code=" + code + "&name=" + name + "&email=" + email + "&type=" + type + "&comments=" + comments,
                    success: function (msg) {
                      $('#sending_mail').css('display', 'none');

                      $('#sent_mail').fadeIn(500);

                      document.getElementById('quote_href').onclick = '';

                      $('#quote_href').click(function() {
                        alert(email_succesfully);
                      });
                    }
                  });
                }
              }
            });
          }
        }
      }
    }
  }
}

function get_time() {
  var time = new Date();

  var hours = time.getHours() < 10 ? '0' + time.getHours() : time.getHours();
  var minutes = time.getMinutes() < 10 ? '0' + time.getMinutes() : time.getMinutes();
  var seconds = time.getSeconds() < 10 ? '0' + time.getSeconds() : time.getSeconds();

  var new_time = hours + ':' + minutes + ':' + seconds;
  $('#clock_container').html(new_time);
}

function account_clock() {
  setInterval("get_time()", 1000);
}

function show_project_progress(id) {
  if ( id != $('#current_project_statistics').val() ) {
    //$('#project_statistics_' + id).slideDown(1000);
    $('#project_statistics_' + id).css('display', 'block');

    //$('#project_statistics_' + $('#current_project_statistics').val()).slideUp(1000);
    $('#project_statistics_' + $('#current_project_statistics').val()).css('display', 'none');

    $('#current_project_statistics').val(id);
  }
  /*
  var all_elements = $('#project_number').val();
  //current_project_statistics

  for ( var i = 0; i < all_elements; i++ ) {
    $('#project_statistics_' + i).slideUp(500);
  }

  $('#project_statistics_' + id).slideDown(500);
  */
}

function show_news_progress(id) {
  if ( id != $('#current_project_news').val() ) {
    $('#project_news_' + id).css('display', 'block');

    $('#project_news_' + $('#current_project_news').val()).css('display', 'none');

    $('#current_project_news').val(id);
  }
}

function show_other_progress(id) {
  if ( id != $('#current_project_other').val() ) {
    $('#project_other_' + id).css('display', 'block');

    $('#project_other_' + $('#current_project_other').val()).css('display', 'none');

    $('#current_project_other').val(id);
  }
}

function change_background_day(obj, type) {
  if ( type == 1 ) {
    obj.className = 'selected_day';
  } else {
    obj.className = 'normal_day';
  }
}

function return_work_hours(type) {
  if (type == 1) {
    $('#gmt_container').html('Working hours: 08-17 GMT+2');
  } else {
    $('#gmt_container').html('Working hours: Day Off');
  }
}

function show_mail_notifier(notifier_id) {
  var email = '';
  switch (notifier_id) {
    case 0:
      email = 'pixelfind@hotmail.com';
      break;
    case 1:
      email = 'pixelfind@yahoo.com';
      break;
    case 2:
      email = 'pixelfind@gmail.com';
      break;
    case 3:
      email = 'pixelfind';
      break;
    case 4:
      email = 'pixelfind@icq.com';
      break;
    case 5:
      email = 'pixelfind@aol.com';
      break;
  }
  
  $('#other_mail_info').html(email);
  //$('#other_mail_info').fadeIn(500);
  $('#other_mail_info').fadeIn(500);
  //$('#other_mail_info').css('display', 'block');
}

function load_programmer(programmer_name, programmer_picture, programmer_confidence) {
  $('#programmer_img').attr('src', SITE_URL + 'programmer/' + programmer_picture);
  $('#programmer_name').html(programmer_name);
  if ( programmer_confidence == '' ) {
    programmer_confidence = 'No current confidence';
  }
  $('#programmer_confidence').html(programmer_confidence);
}

function show_tickets_progress(id) {
  if ( id != $('#current_project_tickets').val() ) {
    $('#project_tickets_' + id).css('display', 'block');

    $('#project_tickets_' + $('#current_project_tickets').val()).css('display', 'none');

    $('#current_project_tickets').val(id);
  }
}

function validate_new_ticket() {
  var ticket_title = $('#ticket_title').val();
  var ticket_content = $('#ticket_content').attr('value');
  
  if ( ticket_title != '' ) {
    if ( ticket_content != '' ) {
      $('#add_ticket').submit();
    } else {
      alert('Please add a problem description');
    }
  } else {
    alert('Please add a ticket title');
  }
}

function load_ticket(id, ticket_title, ticket_content, ticket_answer, language) {
  if ( ticket_answer == '' ) {
    ticket_answer = 'No answer yet!';
  }
  $('#view_ticket_div_' + id).html('<table style="background: white; width: 300px;"><tr><td class="ticket_view_class">Ticket title:</td><td class="ticket_view_text_class">' + ticket_title + '</td></tr><tr><td style="width: 90px;" class="ticket_view_class">Ticket content:</td><td style="width: 180px;" class="ticket_view_text_class">' + ticket_content + '</td></tr><tr><td style="color: red; font-weight: bold; font-size: 11px;">Answer:</td><td style="color: red;" class="ticket_view_text_class">' + ticket_answer + '</td></tr><tr><td colspan="2" align="center"><a href="javascript: void(0);" onclick="javascript: $(\'#view_ticket_div_' + id + '\').css(\'display\', \'none\');"><img src="' + SITE_URL + 'includes/languages/' + language + '/buttons/button_close.jpg" border="0" /></a></td></tr></table>');
  $('#view_ticket_div_' + id).css('display', 'block');
}

/* index box effects */
function index_box(action, id, image, text, image_right) {
  if ( action == 1 ) {
    var current_id = $('#current_effect').val();
    $('#index_box_' + id).attr('src', 'images/index_box/box_heading' + id + '_on.jpg');
    
    if ( current_id != id ) {
      var DATA = "<table cellpadding=\"0\" cellspacing=\"0\"><tr><td width=\"400\" align=\"left\"><div style=\"height: 8px;\"><!-- --></div><div><img src=\"" + image + "\" alt=\"\" /></div><div style=\"height: 8px;\"><!-- --></div><div style=\"color: #999999; line-height: 25px;\">" + text + "</div></td><td width=\"125\" align=\"right\"><img src=\"" + image_right + "\" alt=\"\" /></td></tr></table>";

      //$('#index_box_content').fadeOut(100);
      $('#index_box_content').css('display', 'none');
      $('#index_box_content').html(DATA);
      //$('#index_box_content').css('display', 'block');
      $('#index_box_content').fadeIn(300);

      $('#current_effect').val(id);
    }
  } else {
    $('#index_box_' + id).attr('src', 'images/index_box/box_heading' + id + '_off.jpg');
  }
}
/* end index box effects */

function display_services_info(id) {
  if ( $('#service_' + id).css('display') == 'none' ) {
    $('#service_' + id).show(500);
  } else {
    $('#service_' + id).hide(500);
  }
}

function flip_menu(id) {
  if ( id == 1 ) {
    $('#window_1').css('display', 'block');
    $('#window_2').css('display', 'none');

    $('#link_1').removeClass('feature_links');
    $('#link_1').addClass('feature_links_notselected');
    $('#link_2').removeClass('feature_links_notselected');
    $('#link_2').addClass('feature_links');
  } else {
    $('#window_1').css('display', 'none');
    $('#window_2').css('display', 'block');

    $('#link_1').removeClass('feature_links_notselected');
    $('#link_1').addClass('feature_links');
    $('#link_2').removeClass('feature_links');
    $('#link_2').addClass('feature_links_notselected');
  }
}

function continue_packages_maintenance() {
  $('#subwindow_1').slideUp('500');
  $('#subwindow_2').slideDown('500');

  var amount = 0;
  if ( $('#package_type_3').attr('checked') == true ) {
    amount = 100 + '$';
  }

  if ( $('#package_type_2').attr('checked') == true ) {
    amount = 150 + '$';
  }

  if ( $('#package_type_1').attr('checked') == true ) {
    amount = 200 + '$';
  }

  $('#amount_order').html(amount);
}

function continue_packages_ecommerce() {
  $('#window_1').slideUp('500');
  $('#window_2').slideDown('500');

  $('#amount_order').html($('#total_price').html() + '$');
}

function send_maintenance_form(error1, error2, error3, error4, error5, error6, error7, error8) {
  var ok = 0;
  var msg = "";
  if ( $('#name').val() == '' ) {
    ok++;
    msg += error1 + "\n";
  }

  if ( $('#phone').val() == '' ) {
    ok++;
    msg += error2 + "\n";
  }

  if ( $('#email_address').val() == '' ) {
    ok++;
    msg += error3 + "\n";
  } else {
    if ( !checkEmail($('#email_address').val() )) {
      ok++;
      msg += error4 + "\n";
    }
  }

  if ( $('#address').attr('value') == '' ) {
    ok++;
    msg += error5 + "\n";
  }

  if ( $('#more_details').attr('value') == '' ) {
    ok++;
    msg += error6 + "\n";
  }
  
  //if ( $('#code').val() == '' ) {
    //ok++;
    //msg += "\n" + error7;
  //} else {
    $.ajax({
      type: "POST",
      url: "check_code.pxf",
      dataType: "html",
      data: "code=" + $('#code').val(),
      success: function (msg2) {
        if ( msg2 == '0' ) {
          ok++;
          msg += error8 + "\n";
        }
        
        if ( ok == 0 && msg == '' ) {
          $('#submit_maintenance').submit();
        } else {
          alert(msg);
        }
      }
    });
  //}
}

function ecommerce_feat(obj, amount, feature) {
  var total_amount = $('#total_price').html();
  total_amount = parseInt(total_amount);
  amount = parseInt(amount);

  var act = '';

  if ( $(obj).attr('checked') == true ) {
    total_amount = total_amount + amount;
    act = '_in';
  } else {
    total_amount = total_amount - amount;
    act = '_out';
  }

  var total = $('#total_features').val() + " feature: " + feature + act;
  $('#total_features').val(total);
  $('#total_price').html(total_amount)
  $('#total_price_amount').val(total_amount)
}

function view_portfolio(title, image, link, descr) {
  $('#prf_title').html(title);
  $('#prf_image').attr('src', 'portfolio/big/' + image + '_big.jpg');
  $('#prf_link').html(link);
  $('#prf_link').attr('href', SITE_URL + 'toolbar/' + urlencode(title) + '.pxf');
  $('#prf_link_img').attr('href', SITE_URL + 'toolbar/' + urlencode(title) + '.pxf');
  $('#prf_description').html(descr);
  
  //prf_image
  //prf_title
  var popup_view = document.createElement('div');
  popup_view.id = 'popup_view';

  document.body.appendChild(popup_view);

  $('#popup_view').addClass('popup_view_class');
  $('#popup_view').attr('align', 'center');
  $('#popup_view').html($('#content_view_portfolio').html());
  $('#popup_view').fadeIn(500);
}

function close_window() {
  $('#popup_view').fadeOut(500);

  setTimeout("finish_close_window()", 600);
}

function finish_close_window() {
  $('#popup_view').html('');

  obj1 = document.getElementById('popup_view');
  document.body.removeChild(obj1);
}

function submit_newsletter(email_succesfully) {
  var name = $('#newsletter_name').val();
  var email = $('#newsletter_email').val();
  var code = $('#newsletter_code').val();

  if ( name == '' ) {
    $('#newsletter_name').css('border', '1px solid red');

    $('#newsletter_name').focus();
  } else {
    if ( email == '' || !checkEmail(email) ) {
      $('#newsletter_name').css('border', '1px solid #E0E0E0');
      $('#newsletter_email').css('border', '1px solid red');

      $('#newsletter_email').focus();
    } else {
      if ( code == '' ) {
        $('#newsletter_name').css('border', '1px solid #E0E0E0');
        $('#newsletter_email').css('border', '1px solid #E0E0E0');
        $('#newsletter_code').css('border', '1px solid red');

        $('#newsletter_code').focus();
      } else {
        $.ajax({
          type: "POST",
          url: "check_code.pxf",
          dataType: "html",
          data: "code=" + code,
          success: function (msg) {
            $('#newsletter_name').css('border', '1px solid #E0E0E0');
            $('#newsletter_email').css('border', '1px solid #E0E0E0');
            
            if ( msg == 1 ) {
              $('#newsletter_code').css('border', '1px solid #E0E0E0');
              $('#sending_newsletter_mail').fadeIn(500);

              $.ajax({
                type: "POST",
                url: "send_quote_newsletter.pxf",
                dataType: "html",
                data: "code=" + code + "&name=" + name + "&email=" + email,
                success: function (msg) {
                  $('#sending_newsletter_mail').css('display', 'none');

                  $('#sent_newsletter_mail').fadeIn(500);

                  document.getElementById('newsletter_href').onclick = '';

                  $('#newsletter_href').click(function() {
                    alert(email_succesfully);
                  });
                }
              });
            }
          }
        });
      }
    }
  }
}

function check_register(error1, error2, error3, error4, error5) {
  var error_nr = 0;
  
  if ( $('#password').val() != '' ) {
    $('#password_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#password_tr').addClass('error_register_class');
  }

  if ( $('#password').val().length >= 6 ) {
    $('#password_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#password_tr').addClass('error_register_class');
  }

  if ( $('#retyped_password').val() != '' ) {
    $('#retyped_password_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#retyped_password_tr').addClass('error_register_class');
  }

  if ( $('#retyped_password').val() == $('#password').val() ) {
    $('#retyped_password_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#retyped_password_tr').addClass('error_register_class');
  }

  if ( $('#security_question').val() != '' ) {
    $('#security_question_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#security_question_tr').addClass('error_register_class');
  }

  if ( $('#security_question').val() != '' ) {
    $('#security_question_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#security_question_tr').addClass('error_register_class');
  }

  if ( $('#answer').val().length >= 6 ) {
    $('#answer_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#answer_tr').addClass('error_register_class');
  }

  if ( check_date($('#year').val(), $('#month').val(), $('#day').val()) ) {
    $('#dob_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#dob_tr').addClass('error_register_class');
  }

  if ( $('#captcha_answer').val() != '' ) {
    $('#captcha_answer_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#captcha_answer_tr').addClass('error_register_class');
  }

  if ( $('#username').val() != '' ) {
    $('#username_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#username_tr').addClass('error_register_class');
  }

  if ( $('#username').val().length >= 6 ) {
    $('#username_tr').removeClass('error_register_class');
	
		if ( acceptText($('#username').val()) ) {
			$('#username_tr').removeClass('error_register_class');
		} else {
		  error_nr++;
		  $('#username_tr').addClass('error_register_class');
		  alert(error1);
		}
  } else {
    error_nr++;
    $('#username_tr').addClass('error_register_class');
  }

  

  if ( $('#email').val() != '' ) {
    $('#email_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#email_tr').addClass('error_register_class');
  }

  if ( checkEmail($('#email').val()) ) {
    $('#email_tr').removeClass('error_register_class');
  } else {
    error_nr++;
    $('#email_tr').addClass('error_register_class');
  }

  if ( error_nr == 0 ) {
    $.ajax({
      type: "POST",
      url: "check_available.pxf",
      dataType: "html",
      data: "username=" + $('#username').val(),
      success: function (msg) {
        if ( msg == '1' ) {
          $('#return_div').removeClass('notavailable_register');
          $('#return_div').addClass('available_register');
          $('#return_div').html(error2);

          error_nr++;
        }

        if ( msg == '0' ) {
          $('#return_div').removeClass('available_register');
          $('#return_div').addClass('notavailable_register');
          $('#return_div').html(error3);
        }
        
        $.ajax({
          type: "POST",
          url: "check_captcha.pxf",
          dataType: "html",
          data: "captcha=" + $('#captcha_answer').val(),
          success: function (msg) {
            if ( msg == '1' ) {
              $('#captcha_answer_tr').removeClass('error_register_class');
            }

            if ( msg == '0' ) {
              $('#captcha_answer_tr').addClass('error_register_class');
              error_nr++;
            }

            $.ajax({
              type: "POST",
              url: "check_available_email.pxf",
              dataType: "html",
              data: "email=" + $('#email').val(),
              success: function (msg) {
                if ( msg == '1' ) {
                  $('#return_email_div').removeClass('notavailable_register');
                  $('#return_email_div').addClass('available_register');
                  $('#return_email_div').html(error4);
                }

                if ( msg == '0' ) {
                  $('#return_email_div').removeClass('available_register');
                  $('#return_email_div').addClass('notavailable_register');
                  $('#return_email_div').html(error5);
                }

                if ( error_nr == 0 ) {
                  $('#register_form').submit();
                }
              }
            });
          }
        });
      }
    });
  }
}

function check_date(year, month, day) {
  var months = new Array('', 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

  months[2] = year % 4 == 0 ? 29 : 28;
  
  if ( parseInt(day) <= months[month] ) {
    return true;
  } else {
    return false;
  }
}

function check_availability(error1, error2, error3) {
  if ( $('#username').val() != '' ) {
    //return_div
    if ( acceptText($('#username').val()) ) {
      $('#username_tr').removeClass('error_register_class');
    } else {
      $('#username_tr').addClass('error_register_class');
      alert(error1);

      return;
    }
    
    $.ajax({
      type: "POST",
      url: "check_available.pxf",
      dataType: "html",
      data: "username=" + $('#username').val(),
      success: function (msg) {
        if ( msg == '1' ) {
          $('#return_div').removeClass('notavailable_register');
          $('#return_div').addClass('available_register');
          $('#return_div').html(error2);
        }

        if ( msg == '0' ) {
          $('#return_div').removeClass('available_register');
          $('#return_div').addClass('notavailable_register');
          $('#return_div').html(error3);
        }
      }
    });
  }
}

function check_availability_email(error1, error2, error3) {
  if ( $('#email').val() != '' ) {
    if ( checkEmail($('#email').val()) ) {
      //return_div
      if ( acceptText($('#username').val()) ) {
        $('#email_tr').removeClass('error_register_class');
      } else {
        $('#email_tr').addClass('error_register_class');
        alert(error1);

        return;
      }

      $.ajax({
        type: "POST",
        url: "check_available_email.pxf",
        dataType: "html",
        data: "email=" + $('#email').val(),
        success: function (msg) {
          if ( msg == '1' ) {
            $('#return_email_div').removeClass('notavailable_register');
            $('#return_email_div').addClass('available_register');
            $('#return_email_div').html(error2);
          }

          if ( msg == '0' ) {
            $('#return_email_div').removeClass('available_register');
            $('#return_email_div').addClass('notavailable_register');
            $('#return_email_div').html(error3);
          }
        }
      });
    } else {
      $('#email_tr').addClass('error_register_class');
    }
  }
}

function check_captcha() {
  if ( $('#captcha_answer').val() != '' ) {
    $.ajax({
      type: "POST",
      url: "check_captcha.pxf",
      dataType: "html",
      data: "captcha=" + $('#captcha_answer').val(),
      success: function (msg) {
        if ( msg == '1' ) {
          $('#captcha_answer_tr').removeClass('error_register_class');
        }

        if ( msg == '0' ) {
          $('#captcha_answer_tr').addClass('error_register_class');
        }
      }
    });
  }
}

function acceptText(text) {
	var accepted_chars = "abcdefghijklmnopqrstuvwxyz1234567890-_";
	var ok = 0;
	for ( var i = 0; i < text.length; i++ ) {
		if ( stristr( accepted_chars, text[i] ) == "" ) {
			ok = 1;
			return false;
		}
	}
	if ( ok != 1 ) {
		return true;
	}

	return true;
}

function stristr (haystack, needle, bool) {
  // Finds first occurrence of a string within another, case insensitive
  //
  // version: 909.322
  // discuss at: http://phpjs.org/functions/stristr
  // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
  // +   bugfxied by: Onno Marsman
  // *     example 1: stristr('Kevin van Zonneveld', 'Van');
  // *     returns 1: 'van Zonneveld'
  // *     example 2: stristr('Kevin van Zonneveld', 'VAN', true);
  // *     returns 2: 'Kevin '
  var pos = 0;
  
  haystack += '';
  pos = haystack.toLowerCase().indexOf( (needle+'').toLowerCase() );
  if (pos == -1){
    return false;
  } else{
    /*
    if (bool) {
      return haystack.substr( 0, pos );
    } else{
      return haystack.slice( pos );
    }
    */
   return true;
  }
}

function error_menu() {
  if ( $('#error_m_info').css('display') == 'none' ) {
    $('#error_m_info').fadeIn(400);
  } else {
    $('#error_m_info').fadeOut(400);
  }
}

function close_error_menu() {
  $('#error_m_info').fadeOut(400);
}