
jQuery(document.ready = function () {
    jQuery.ajaxSetup({ cache: false });

    createUploader();

    jQuery(".picthumbs .avtar img").fadeIn(500);
    /*
    jQuery('.picthumbs .avtar img').each(function(){
    var el = jQuery(this);
    el.clone().addClass('imgrayscale').css({"position":"absolute","z-index":"8","opacity":"0"}).insertBefore(el).queue(function(){
    var el = jQuery(this);
    el.dequeue();
    });
    this.src = grayscale(this.src);
    });
    */
    jQuery('.picthumbs .avtar').mouseover(function () {
        //alert(jQuery(this).parent().attr("class"));
        jQuery(this).children(".imgrayscale").stop().animate({ opacity: 1 }, 499);
    })
    jQuery('.picthumbs .avtar').mouseout(function () {
        jQuery(this).children(".imgrayscale").stop().animate({ opacity: 0 }, 399);
    });

    jQuery("#popupsign .intxt").blur(function () {
        var valfil = 0;
        jQuery("#popupsign .intxt").each(function () {
            if (jQuery(this).val() != "") valfil = valfil + 1;
        })
        if (valfil == jQuery(".formsignup .intxt").size()) { jQuery("#popupsign .longbtn .btn").addClass("actbtn"); }
    });

    /*member dropdown*/
    jQuery(".memselect li:not(.act)").hide();
    jQuery(".memselect").hover(function () { jQuery(this).children("li").slideDown(100); }, function () { jQuery(this).children("li:not(.act)").slideUp(100); })
    /*manage dropdown*/
    jQuery(".manageul li:not(.mag)").hide();
    jQuery(".manageul").hover(function () { jQuery(this).children("li:not(.mag)").slideDown(100); jQuery(this).addClass("manageulbg"); }, function () { jQuery(this).children("li:not(.mag)").slideUp(100); jQuery(this).removeClass("manageulbg"); });
    //rating highliter
    var showdragalert = 0;
    jQuery(".dragarea").hover(function () { if (showdragalert == 0) { jQuery(".dgragalert").show(); var setp = setTimeout("jQuery('.dgragalert').hide()", 2000); showdragalert = 1; } })
});
	
	// Grayscale w canvas method
	function grayscale(src){
		var canvas = document.createElement('canvas');
		var ctx = canvas.getContext('2d');
		var imgObj = new Image();
		imgObj.src = src;
		canvas.width = imgObj.width;
		canvas.height = imgObj.height;
		ctx.drawImage(imgObj, 0, 0);
		var imgPixels = ctx.getImageData(0, 0, canvas.width, canvas.height);
		for(var y = 0; y < imgPixels.height; y++){
			for(var x = 0; x < imgPixels.width; x++){
				var i = (y * 4) * imgPixels.width + x * 4;
				var avg = (imgPixels.data[i] + imgPixels.data[i + 1] + imgPixels.data[i + 2]) / 3;
				imgPixels.data[i] = avg;
				imgPixels.data[i + 1] = avg;
				imgPixels.data[i + 2] = avg;
			}
		}
		ctx.putImageData(imgPixels, 0, 0, 0, 0, imgPixels.width, imgPixels.height);
		return canvas.toDataURL();
    }

function openpopup(el,ifopaq)
{	
	if(ifopaq==1) jQuery("#opquescreen").show(0); 
	jQuery(el).show(0);
	var eloffset=jQuery(el).offset();
	var verdis=0;
	if(jQuery(el).height()<jQuery(window).height())
	{
		verdis=jQuery(window).height()-jQuery(el).height();
		verdis=parseInt(verdis/2,10);
	}
	verdis=verdis+jQuery("html").scrollTop();
	jQuery(el).css("top",verdis);
}




function createUploader() {

    var thumb = jQuery('#thumb');

    var uploader = new qq.FileUploaderBasic({
        button: document.getElementById('uplbtn'),
        action: 'AjaxUpload.aspx?t=1',
        debug: true,
        // ex. ['jpg', 'jpeg', 'png', 'gif'] or []
        allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'],

        onSubmit: function (id, fileName) {
            thumb.attr('src', 'images/indicator.gif');
        },
        onComplete: function (id, fileName, responseJSON) {
            thumb.load(function () {
                thumb.unbind();
                jQuery('#take_computer').show();
                jQuery('#take_computer_share').show();
                jQuery('#temp_photo_loaded').val('1');
            });
            thumb.attr('src', responseJSON.url);
            jQuery("#photo_rotate").show();
        }
    });

    createCommentUploader();
}

function createCommentUploader() {
    var thumb = jQuery('#thumb_com');

    var uploader = new qq.FileUploaderBasic({
        button: document.getElementById('uplbtn_com'),
        action: 'AjaxUpload.aspx?t=2',
        debug: true,
        // ex. ['jpg', 'jpeg', 'png', 'gif'] or []
        allowedExtensions: ['jpg', 'jpeg', 'png', 'gif'],

        onSubmit: function (id, fileName) {
            jQuery('#preview_com').show();
            jQuery('#comment_wrap').css("width", "320px");
            thumb.attr('src', 'images/indicator.gif');
        },
        onComplete: function (id, fileName, responseJSON) {
            thumb.load(function () {
                thumb.unbind();
            });
            thumb.attr('src', responseJSON.url);
            document.getElementById('com_thumb_click').onclick = function () { LoadPhotoView(responseJSON.origurl) }
        }
    });
}

function showWebCamCommentPreview(origFile, comFile) {

    var thumb = jQuery('#thumb_com');
    jQuery('#preview_com').show();

    jQuery('#comment_wrap').css("width", "320px");

    thumb.load(function () {
        thumb.unbind();
        jQuery('#opquescreen').hide();
        jQuery('#site_popup').hide();
    });
    thumb.attr('src', comFile);
    document.getElementById('com_thumb_click').onclick = function () { LoadPhotoView(origFile) }

}



function rotateTempImage(rotation) {
    var thumb = jQuery('#thumb');

    jQuery.ajax({
        url: "AjaxUpload.aspx?rot=" + rotation,
        dataType: 'json',
        cache: false,
        success: function (responseJSON) {
            thumb.load(function () {
                thumb.unbind();
                jQuery('#take_computer').show();
                jQuery('#take_computer_share').show();
                jQuery('#temp_photo_loaded').val("1");
            });
            thumb.attr('src', responseJSON.url);
        },
        error: function () {
            //alert("error");
        },
        complete: function () {
            //alert("complete");
        }
    });
}


function LoadFBPreview(id, userName, photoUrl, width, height) {
    jQuery('#fb_container').hide();
    jQuery('#fb_preview_spinner').show();

    var thumb = jQuery('#fb_preview');
    thumb.load(function () {
        thumb.unbind();
        jQuery('#fb_preview_img').show();
        jQuery('#fb_preview_spinner').hide();
        jQuery('#take_facebook').show();

        jQuery('#take_computer_share').show();

        jQuery('#fb_photo_loaded').val("1");

        //Save Values
        jQuery('#hidFBPhotoUrl').val(photoUrl);
        jQuery('#hidFBUserName').val(userName);
        jQuery('#hidFBUserID').val(id);
    })

    thumb.attr('src', photoUrl);
    
    if (width > 520) {
        var newHeight = (height / width) * 520;

        thumb.attr('width', 520);
        thumb.attr('height', newHeight);
    }
    else {
        thumb.attr('width', width);
        thumb.attr('height', height);
    }
}


function insertAtCursor(myField, myValue) {
    var prevPos = doGetCaretPosition(myField);

    //IE support
    if (document.selection) {
        myField.focus();
        sel = document.selection.createRange();
        sel.text = myValue;
    }
    //MOZILLA/NETSCAPE support
    else if (myField.selectionStart || myField.selectionStart == '0') {
        var startPos = myField.selectionStart;
        var endPos = myField.selectionEnd;
        myField.value = myField.value.substring(0, startPos)
+ myValue
+ myField.value.substring(endPos, myField.value.length);
    } else {
        myField.value += myValue;
    }

    setCaretPosition(myField, prevPos + myValue.length);
}


function doGetCaretPosition(ctrl) {

    var CaretPos = 0;
    // IE Support
    if (document.selection) {

        ctrl.focus();
        var Sel = document.selection.createRange();

        Sel.moveStart('character', -ctrl.value.length);

        CaretPos = Sel.text.length;
    }
    // Firefox support
    else if (ctrl.selectionStart || ctrl.selectionStart == '0')
        CaretPos = ctrl.selectionStart;

    return (CaretPos);

}


function setCaretPosition(ctrl, pos) {

    if (ctrl.setSelectionRange) {
        ctrl.focus();
        ctrl.setSelectionRange(pos, pos);
    }
    else if (ctrl.createTextRange) {
        var range = ctrl.createTextRange();
        range.collapse(true);
        range.moveEnd('character', pos);
        range.moveStart('character', pos);
        range.select();
    }
}

