/**
 * Module:  site_users
 * File:    site_users.js
 * Author:  Vlad Andreev <php.vlad@gmail.com>
 **/

var change_color_process = false;
var change_color_num     = 0;

$(document).ready(function()
    {
    if ($('.site_users ul'))
        {
        var left = '';
        $('.site_users ul li.site_user').each(function(index, domEle){
            left = parseInt($(domEle).find('a.name').width());
            left_8 = parseInt(left  + 8);
            left_3 = parseInt(left  + 3);
            $(domEle).find('ul').css('left',left_8);
            $(domEle).css('background-position',left_3+'px 7px');
        });
        }
    });

/*
 *  функции панели управления
 */

function site_users_give_invite(id)
    {
    $.ajax({type: 'post',
            url:  '../custom/modules/site_users/db.php',
            data: 'option=give_invite&id='+id,
            complete: function (data) {
                if (data['responseText'] != '') alert(data['responseText']);
                else load_module_page('list');
                }
            });
    }

function site_users_change_status(id,status)
    {
    $.ajax({type: 'post',
            url:  '../system/ajax/db.php',
            data: 'option=edit&data_name=site_user&id='+id+'&fields=status&new_values='+status,
            complete: function (data) {
                if (data['responseText'] != '') alert(data['responseText']);
                else load_module_page('list');
                }
            });
    }

function site_users_work_change_status(id,status)
    {
    $.ajax({type: 'post',
            url:  '../system/ajax/db.php',
            data: 'option=edit&data_name=site_users_work&id='+id+'&fields=status&new_values='+status,
            complete: function (data) {
                if (data['responseText'] != '') alert(data['responseText']);
                else load_module_page('list_works');
                }
            });
    }

function site_users_show_image(filename)
    {
    $('#site_users_test_image').show();
    $('#site_users_test_image img').attr('src','/files/works/'+filename);
    
    var width = $('#site_users_test_image img').css('width');
    var height = $('#site_users_test_image img').css('height');
    
    var width_half = Math.round(str_replace(width,'px','') / 2);
    var height_half = Math.round(str_replace(height,'px','') / 2);
    
    var top = $(window).height() / 2  + document.documentElement.scrollTop;
    
    $('#site_users_test_image').show()
                               .css({
                                 'top':top+'px',
                                 'left':'50%',
                                 'margin-left':'-'+width_half+'px',
                                 'margin-top':'-'+height_half+'px',
                                 'width':width+'px',
                                 'height':height+'px'
                                });
    }

function site_users_hide_image()
    {
    $('#site_users_test_image').hide();
    $('#site_users_test_image img').attr('src','');
    }

function site_users_delete_author(id)            
    {
    $.ajax({
        type: 'post',
        url:  '../custom/modules/site_users/db.php',
        data: 'option=delete_author&id='+id,
        complete: function (data) {
		if (data['responseText'] == '') load_module_page();
		else alert(data['responseText']);
                }
        });
    }

function site_users_distributions_send() {
    var subject = $('#site_users_distributions_subject').val();
    
    if ($('#site_users_distributions_message').attr('class') != 'wysiwyg' || $('#wysiwyg').val() == 'none')
	var message = $('#site_users_distributions_message').val();
    else
	var message = wysiwygs_save('site_users_distributions_message');
    
    var to = Array();
    $('#site_users_distributions_to input:checked').each(function(){
	to.push(this.value);
	});
    to = to.join(',');
    
    $.ajax({
        type: 'post',
        url:  '../custom/modules/site_users/db.php',
        data: 'option=distributions_send&to='+to+'&message='+message+'&subject='+subject,
        complete: function (data) {
		if (data['responseText'] == '') {
		    
		    }
		else alert(data['responseText']);
                }
        });
}
/*
 *  функции сайта
 */

// получить приглашение
function site_users_invite_form_show()
    {
    $('#site_users_invite_form_error').hide().html('');
    $('#site_users_invite_form').show();
    $('.works').hide();
    $('.site_users').hide();
    scroll(0,0);
    }

function site_users_invite_form_hide()
    {
    $('#site_users_invite_form').find('#site_users_login').removeClass('error').removeClass('ok');
    $('#site_users_invite_form').find('#site_users_email').removeClass('error').removeClass('ok');
    $('#site_users_invite_form').find('#site_users_about').removeClass('error').removeClass('ok');
    $('#site_users_invite_form').find('#site_users_file').removeClass('error').removeClass('ok');
    $('#site_users_invite_form').hide();
    $('.works').show();
    $('.site_users').show();
    }

function site_users_invite_form_submit()
    {
    $('#site_users_invite_form_error').hide().html('');
    
    var login = $('#site_users_invite_form').find('#site_users_login input').val();
    var email = $('#site_users_invite_form').find('#site_users_email input').val();
    var about = $('#site_users_invite_form').find('#site_users_about textarea').val();
    var file  = $('#site_users_invite_form').find('#preview').attr('src');
    
    if (login == '') $('#site_users_invite_form').find('#site_users_login').addClass('error').removeClass('ok');
    else $('#site_users_invite_form').find('#site_users_login').addClass('ok').removeClass('error');
    
    if (email == '') $('#site_users_invite_form').find('#site_users_email').addClass('error').removeClass('ok');
    else $('#site_users_invite_form').find('#site_users_email').addClass('ok').removeClass('error');
    
    if (about == '') $('#site_users_invite_form').find('#site_users_about').addClass('error').removeClass('ok');
    else $('#site_users_invite_form').find('#site_users_about').addClass('ok').removeClass('error');
    
    if (file == '') $('#site_users_invite_form').find('#site_users_file').addClass('error').removeClass('ok');
    else $('#site_users_invite_form').find('#site_users_file').addClass('ok').removeClass('error');
    
    if (login == '' || about == '' || email == '' || file == '') $('#site_users_invite_form_error').show().html('Вы заполнили не все поля');
    else
        {
        $.ajax({type: 'post',
                url:  '../custom/modules/site_users/db.php',
                data: 'option=get_invite&login='+login+'&about='+about+'&email='+email,
                complete: function (data) {
                    if (data['responseText'] != '')
                        {
                        switch(data['responseText'])
                            {
                            case 'true':
                                {
                                alert('Письмо успешно отправлено');
                                break;
                                }
                            case 'false':
                                {
                                alert('Отправка не удалась');
                                break;
                                }
                            case 'login_exists':
                                {
                                $('#site_users_invite_form').find('#site_users_login').addClass('error').removeClass('ok');
                                $('#site_users_invite_form_error').show().html('Пользователь с таким именем уже зарегистрирован');
                                break;
                                }
                            case 'email_exists':
                                {
                                $('#site_users_invite_form').find('#site_users_email').addClass('error').removeClass('ok');
                                $('#site_users_invite_form_error').show().html('Пользователь с таким e-mail уже зарегистрирован');
                                break;
                                }
                            case 'image_failed':
                                {
                                $('#site_users_invite_form').find('#site_users_file').addClass('error').removeClass('ok');
                                $('#site_users_invite_form_error').show().html('Необходимо перезагрузить изображение');
                                break;
                                }
                            default:
                                $('#site_users_invite_form_error').show().html(data['responseText']);
                            } 
                        }
                    }
                });
        }
    }

function site_users_ajaxFileUpload()
    {
    var filename = $('#site_users_file_upload').val();
    
    $("#loader").show();
    
    $.ajaxFileUpload({
            url:'/custom/modules/site_users/upload_file.php', 
            secureuri:false,
            fileElementId:'site_users_file_upload',
            dataType: 'json',
            success: function (data, status)
                {
                if(typeof(data.error) != 'undefined')
                    {
                    if(data.error != '')
                        {
                        alert(data.error);
                        }
                    else
                        {
                        if (data.width > 600) var width = 600;
                        else var width = data.width;
                        
                        $('#preview').attr('src','/files/works/'+data.name)
                                     .attr('width',width)
                                     .show();
                        }
                    }
                $("#loader").hide();
                $("#work-preview").show();
                },
            error: function (data, status, e)
                {
                $("#loader").html(data['responseText']);
                }
            }
        );
    
    return false;
    }

function site_users_ajaxVideoUpload()
    {
	// alert('!');
    }
    
// регистрация
function site_users_reg_form_submit(id)
    {
    $('#site_users_reg_form_error').hide().html('');
    
    var pass        = $('#site_users_reg_form').find('#site_users_pass input').val();
    var behance     = $('#site_users_reg_form').find('#site_users_behance input').val();
    var revision    = $('#site_users_reg_form').find('#site_users_revision input').val();
    var livejournal = $('#site_users_reg_form').find('#site_users_livejournal input').val();
    var twitter     = $('#site_users_reg_form').find('#site_users_twitter input').val();
    var deviantart  = $('#site_users_reg_form').find('#site_users_deviantart input').val();
    var site        = $('#site_users_reg_form').find('#site_users_site input').val();
    var country     = $('#site_users_reg_form').find('#site_users_country input').val();
    var city        = $('#site_users_reg_form').find('#site_users_city input').val();
    
    if (pass == '') $('#site_users_reg_form').find('#site_users_pass').addClass('error').removeClass('ok');
    else $('#site_users_reg_form').find('#site_users_pass').addClass('ok').removeClass('error');
    
    if (country == '') $('#site_users_reg_form').find('#site_users_country').addClass('error').removeClass('ok');
    else $('#site_users_reg_form').find('#site_users_country').addClass('ok').removeClass('error');
    
    if (city == '') $('#site_users_reg_form').find('#site_users_city').addClass('error').removeClass('ok');
    else $('#site_users_reg_form').find('#site_users_city').addClass('ok').removeClass('error');
    
    if (pass == '' || country == '' || city == '') $('#site_users_reg_form_error').show().html('Вы заполнили не все поля.');
    else
        {
        $.ajax({type: 'post',
                url:  '../custom/modules/site_users/db.php',
                data: 'option=register&id='+id+'&pass='+pass+'&behance='+behance+'&revision='+revision+'&livejournal='+livejournal+'&country='+country+'&city='+city+'&site='+site+'&deviantart='+deviantart+'&twitter='+twitter,
                complete: function (data) {
                    if (data['responseText'] != '') alert(data['responseText']);
                    else window.location.href = '/';
                    }
                });
        }
    }

// авторизация
function site_users_auth_form_show()
    {
    $('#site_users_auth_form').find('#site_users_login').removeClass('error').removeClass('ok');
    $('#site_users_auth_form').find('#site_users_pass').removeClass('error').removeClass('ok');
    $('#site_users_auth_form_error').hide().html('');
    $('#site_users_auth_form').show();
    $('.works').hide();
    $('.site_users').hide();
    scroll(0,0);
    }

function site_users_auth_form_hide()
    {
    $('#site_users_auth_form').hide();
    $('.works').show();
    $('.site_users').show();
    }

function site_users_auth_form_submit()
    {
    $('#site_users_auth_form_error').hide().html('');
    
    var login = $('#site_users_auth_form').find('#site_users_login input').val();
    var pass  = $('#site_users_auth_form').find('#site_users_pass input').val();
    
    if (login == '') $('#site_users_auth_form').find('#site_users_login').addClass('error').removeClass('ok');
    else $('#site_users_auth_form').find('#site_users_login').addClass('ok').removeClass('error');
    
    if (pass == '') $('#site_users_auth_form').find('#site_users_pass').addClass('error').removeClass('ok');
    else $('#site_users_auth_form').find('#site_users_pass').addClass('ok').removeClass('error');
    
    if (login == '' || pass == '') $('#site_users_auth_form_error').show().html('Вы заполнили не все поля');
    else
        {
        $.ajax({type: 'post',
                url:  '../custom/modules/site_users/db.php',
                data: 'option=auth&login='+login+'&pass='+pass,
                complete: function (data) {
                    if (data['responseText'] != '')
                        {
                        $('#site_users_auth_form_error').show().html(data['responseText']);
                        $('#site_users_auth_form').find('#site_users_login').addClass('error').removeClass('ok');
                        $('#site_users_auth_form').find('#site_users_pass').addClass('error').removeClass('ok');
                        }
                    else window.location.href = '/';
                    }
                });
        }
    }

function site_users_pass_reset_form_submit(type)
    {
    $('#site_users_pass_reset_form_error').hide().html('');
    
    if (type == 'email')
	{
	var email = $('#site_users_pass_reset_form').find('#site_users_email input').val();
    
	if (email == '') $('#site_users_pass_reset_form_error').show().html('Введите email');
	else
	    {
	    $.ajax({type: 'post',
		    url:  '../custom/modules/site_users/db.php',
		    data: 'option=pass_reset&email='+email,
		    complete: function (data) {
			if (data['responseText'] != '')
			    {
			    $('#site_users_pass_reset_form_error').show().html(data['responseText']);
			    $('#site_users_pass_reset_form').find('#site_users_email').addClass('error').removeClass('ok');
			    }
			else 
			    {
			    $('#site_users_pass_reset_form_error').show().html('На указанный вами адрес выслано письмо с подтверждением');
			    $('#site_users_pass_reset_form').find('#site_users_email').addClass('ok').removeClass('error');
			    }
			}
		    });
	    }
	}
    
    if (type == 'pass')
	{
	var pass = $('#site_users_pass_reset_form').find('#site_users_pass input').val();
	var code = $('#site_users_pass_reset_form').find('#site_users_code').val();
    
	if (pass == '') $('#site_users_pass_reset_form_error').show().html('Введите пароль');
	else
	    {
	    $.ajax({type: 'post',
		    url:  '../custom/modules/site_users/db.php',
		    data: 'option=pass_reset&pass='+pass+'&code='+code,
		    complete: function (data) {
			if (data['responseText'] != '')
			    {
			    $('#site_users_pass_reset_form_error').show().html(data['responseText']);
			    $('#site_users_pass_reset_form').find('#site_users_pass').addClass('error').removeClass('ok');
			    }
			else 
			    {
			    $('#site_users_pass_reset_form_error').show().html('Пароль успешно изменён');
			    $('#site_users_pass_reset_form').find('#site_users_pass').addClass('ok').removeClass('error');
			    }
			}
		    });
	    }
	}
    }
    
function site_users_logout()
    {
    $.ajax({type: 'post',
            url:  '../custom/modules/site_users/db.php',
            data: 'option=logout',
            complete: function (data) {
                if (data['responseText'] != '') alert(data['responseText']);
                else window.location.href = '/';
                }
            });
    }

// добавить работу
function site_users_add_work_form_show()
    {
    $('#site_users_add_work_form_error').hide().html('');
    $('#site_users_add_work_form').show();
    $('.works').hide();
    $('.site_users').hide();
    scroll(0,0);
    }

function site_users_add_work_form_hide()
    {
    $('#site_users_add_work_form').hide();
    $('.works').show();
    $('.site_users').show();
    }

function site_users_add_work_form_submit()
    {
    $('#site_users_add_work_form_error').hide().html('');
    
    var name  = $('#site_users_add_work_form').find('#site_users_name input').val();
    var file_type  = $('#site_users_add_work_form').find('#site_users_file_type:checked').val();
    var file  = $('#site_users_add_work_form').find('#site_users_file input').val();
    var vimeo = $('#site_users_add_work_form').find('#site_users_vimeo textarea').val();
    
    if (name == '') $('#site_users_add_work_form').find('#site_users_name').addClass('error').removeClass('ok');
    else $('#site_users_add_work_form').find('#site_users_name').addClass('ok').removeClass('error');
    
    /*if (file == '') $('#site_users_add_work_form').find('#site_users_file').addClass('error').removeClass('ok');
    else $('#site_users_add_work_form').find('#site_users_file').addClass('ok').removeClass('error');*/
    
    if (name == '' || (file_type == 'vimeo' && vimeo == '') || (file_type == 'img' && file == ''))
	$('#site_users_add_work_form_error').show().html('Вы заполнили не все поля');
    else
        {
	var vimeo = encodeURIComponent(vimeo);
	
        $.ajax({type: 'post',
                url:  '../custom/modules/site_users/db.php',
                data: 'option=add_work&name='+name+'&vimeo='+vimeo+'&file_type='+file_type,
                complete: function (data) {
                    if (data['responseText'] != '') $('#site_users_add_work_form_error').show().html(data['responseText']);
                    else window.location.href = '/';
                    }
                });
        }
    }

function site_users_check_file_type()
    {
    var file_type = $('#site_users_file_type:checked').val();
    switch(file_type)
	{
	case 'img':
	    {
	    $('#site_users_video_upload').attr('disabled','disabled');
	    $('#site_users_file_upload').removeAttr('disabled');
	    break;
	    }
	case 'vimeo':
	    {
	    $('#site_users_file_upload').attr('disabled','disabled');
	    $('#site_users_video_upload').removeAttr('disabled');
	    break;
	    }
	}
    }

// профиль
function site_users_profile_form_show()
    {
    $('#site_users_profile_form_error').hide().html('');
    $('#site_users_profile_form').show();
    $('.works').hide();
    $('.site_users').hide();
    scroll(0,0);
    }

function site_users_profile_form_hide()
    {
    $('#site_users_profile_form').hide();
    $('.works').show();
    $('.site_users').show();
    }

function site_users_profile_form_submit()
    {
    $('#site_users_profile_form_error').hide().html('');
    
    var pass        = $('#site_users_profile_form').find('#site_users_pass').val();
    var behance     = $('#site_users_profile_form').find('#site_users_behance').val();
    var revision    = $('#site_users_profile_form').find('#site_users_revision').val();
    var livejournal = $('#site_users_profile_form').find('#site_users_livejournal').val();
    var deviantart  = $('#site_users_profile_form').find('#site_users_deviantart').val();
    var site        = $('#site_users_profile_form').find('#site_users_site').val();
    var twitter     = $('#site_users_profile_form').find('#site_users_twitter').val();
    var country     = $('#site_users_profile_form').find('#site_users_country').val();
    var city        = $('#site_users_profile_form').find('#site_users_city').val();
    
    if (country == '' || city == '')
	$('#site_users_profile_form_error').show().html('Вы заполнили не все поля.');
    else
        {
	$.ajax({type: 'post',
	    url:  '../custom/modules/site_users/db.php',
	    data: 'option=profile&pass='+pass+'&behance='+behance+'&revision='+revision+'&livejournal='+livejournal+'&country='+country+'&city='+city+'&site='+site+'&deviantart='+deviantart+'&twitter='+twitter,
	    complete: function (data) {
		if (data['responseText'] != '') alert(data['responseText']);
		location.href = '/';
		}
	    });
	}
    }

function site_users_msgOkCancel(msg)
    {
    var fRet;
    fRet = confirm(msg);
    return fRet;
    }

function site_users_color()
    {
    if (!change_color_process)
        {
        change_color_process = true;
        var color_old  = $('body').attr('class');
        
        //var color_rand = Math.floor(Math.random()*11);
        //var colors_id   = new Array('#9499ff','#ca96ff','#ff71d7','#ff9285','#ffbb67','#fef858','#d0eb67','#a4ec67','#75dfc5','#63c6f0','#ccd1d5');
        var colors_name = new Array('blue-2','blue-3','pink','red','orange','yellow','green-3','green-2','green-1','blue-1','grey');
        
        while (colors_name[change_color_num] != color_old)
            {
            change_color_num++;
            }
        change_color_num++;
        if (change_color_num == 11) change_color_num = 0;
        
        var color_name = colors_name[change_color_num];
        if (color_name == '') color_name = 'yellow';
        
        $('body').attr('class',color_name);
        favicon.change('/files/images/'+color_name+'.ico');
        
        $.ajax({type: 'post',
                url:  '../custom/modules/site_users/db.php',
                data: 'option=color&color_name='+color_name,
                complete: function(){
                    change_color_process = false;
                }
                });
        }
    }

function site_users_vote(id)
    {
    $.ajax({type:     'post',
            url:      '../custom/modules/site_users/db.php',
            data:     'option=vote&id='+id,
            complete: function (data) { if (data['responseText'] != '0') {
			    $('#rating'+id).find('.plus').hide();
			    $('#rating'+id).find('.rating').html(data['responseText']).css('margin-top','30px');
			}}
            });
    return false;
    }

function site_users_close(element)
    {
    $('#'+element).hide('fast');
    $.ajax({type:     'post',
            url:      '../custom/modules/site_users/db.php',
            data:     'option=close&element='+element
            });
    return false;
    }

function socialOn(id) {
    $('#work_social_vk_'+id).show();
    $('#work_social_fb_'+id).show();
    $('#work_social_twitter_'+id).show();
}

function socialOff(id) {
    $('#work_social_vk_'+id).hide();
    $('#work_social_fb_'+id).hide();
    $('#work_social_twitter_'+id).hide();
}
