﻿(function($) {

    function init() {
        $('.share').attr("href", function() {
            var pageparams = location.search.substring(1);
            pageparams = pageparams.replace(/&/g, ";");
            pageparams = pageparams.replace(/=/g, ":");
            return $(this).attr("href") + pageparams;

        });
        //alert($('#lnkShare').attr("href"));
        //$('#lnkShare').attr("href") + location.search.substring(1).replace();
        $('.share').click(function(e) {
            e.preventDefault();
            if ($('#sharePop').length == 0) {
                $('body').prepend($('<div id="sharePop" style="display:none;"></div>'));
            }
            var $share = $('#sharePop').empty();
            FRdialogueInit($share);
            $('#sharePop').append('<div class="dialogueLoading"><img src="/webimage/popuploader.gif"/> Loading...</div>').show();
            $.post(
                    $(this).attr('href'),
                    {},
                    function(data, textStatus) {
                        $share.html(data);
                        // $.blockUI({ message: $('#sharePop') });
                        FRdialoguePosition($share);
                        $share.fadeIn();
                        $share.find('a.CLOSE').click(function(e) {
                            e.preventDefault();
                            // $.unblockUI({ fadeOut: 200 });
                            FRdialogueClose($('#sharePop'));
                        });
                        $("#tmpSave").click(function(e) {
                            var selItems = '';
                            $('#friendslist').children('.selected').each(function(e) {
                                if (selItems.length > 0) {
                                    selItems = selItems + ':' + $(this).find('INPUT').attr("value");
                                }
                                else {
                                    selItems = $(this).find('INPUT').attr("value");
                                }

                            });
                            if (selItems.length > 0) {
                                var args = '';
                                args = '"memberKeys":"' + selItems + '",';
                                args += '"pageParams":"' + $('#PageParams').attr("value") + '"';
                                $.ajax({
                                    type: "POST",
                                    url: "/Services/ProfileService.asmx/" + "SharePageInternal",
                                    data: "{" + args + "}",
                                    contentType: "application/json; charset=utf-8",
                                    dataType: "json",
                                    success: function(msg) {

                                        var selItems = '';

                                        if (msg.d > 0) {
                                            $('#friendslist').children('.selected').each(function(e) {
                                                selItems = selItems + '<li>' + $(this).find('SPAN').text() + '</li>';
                                            });
                                            //alert(selItems);
                                            $('#divSelFriends').show();
                                            $('#ulEmailSent').html(selItems);
                                            $('#divInternal').hide();
                                        }
                                    }
                                });
                            }
                            else {
                                $("#pFriendsSelected").text('There should be atleast one friend selected');
                            }
                        });

                        $("#tmpSave2").click(function(e) {
                            var selItems = '';
                            var memberEmails = '';
                            if (!$(".invalidEmail").length > 0) {
                                $('#divEmailList').children('INPUT').each(function(e) {
                                    if ($(this).attr("value").toLowerCase() != "friend@website.com") {
                                        if (memberEmails.length > 0) {
                                            memberEmails = memberEmails + ':' + $(this).attr("value");
                                        }
                                        else {
                                            memberEmails = $(this).attr("value");
                                        }
                                        selItems = selItems + '<li>' + $(this).attr("value") + '</li>';
                                    }
                                });
                                if (selItems.length > 0) {
                                    var args = '';
                                    args = '"memberEmails":"' + memberEmails + '",';
                                    args += '"pageParams":"' + $('#PageParams').attr("value") + '"';
                                    $.ajax({
                                        type: "POST",
                                        url: "/Services/ProfileServicePublic.asmx/" + "SharePageExternal",
                                        data: "{" + args + "}",
                                        contentType: "application/json; charset=utf-8",
                                        dataType: "json",
                                        success: function(msg) {
                                            if (msg.d > 0) {
                                                $('#divSelEmails').show();
                                                $('#ulEmailSentExternal').html(selItems);
                                                $('#divExternal').hide();
                                            }
                                        }
                                    });
                                }
                                else {
                                    $("#EmailReq").show();
                                }
                            }
                        });
                      
                        $('.swap_value').focus(function() {
                            if ($(this).is('.watermarked')) {
                                $(this).removeClass('watermarked').val('');
                            }
                        }).blur(function() {
                            if ($.trim($(this).val()) == "") {
                                $(this).val('friend@website.com').addClass('watermarked');
                            }
                        });

                        $('.swap_value').blur(function(e) {
                            var email = Trim($(this).val());
                            var textlen = email.length;
                            var emailvalid = false;
                            if (textlen > 5) {
                                var patt1 = /\w+@\w+\.\w+\.\w+/;
                                var patt2 = /\w+@\w+\.\w+/;
                                var patt3 = /\w+[0-9a-zA-Z._\-\+]*@\w+[.a-zA-Z]+/;
                                var respatt1 = email.match(patt1);
                                var respatt2 = email.match(patt2);
                                var respatt3 = email.match(patt3);
                                if (respatt1 && respatt1 == email) {
                                    emailvalid = true;
                                }
                                if (respatt2 && respatt2 == email) {
                                    emailvalid = true;
                                }
                                if (respatt3 && respatt3 == email) {
                                    emailvalid = true;
                                }

                            }
                            var nextelem;
                            if (emailvalid == false && textlen > 0) {
                                nextelem = $(this).next();
                                if (!$(nextelem).is("span")) {
                                    $(this).after("<span class='invalidEmail'>Please enter a valid email address</span>");
                                }

                            }
                            else {
                                nextelem = $(this).next();
                                if ($(nextelem).is("span")) {
                                    $(nextelem).remove();
                                }
                            }


                        });
                        function Trim(str) {
                            return str.replace(/^s+|s+$/g, "");
                        }

                        $("#lnkExternal").click(function(e) {
                            e.preventDefault();
                            if (!($(this).parent().hasClass("current"))) {
                                $(this).parent().addClass("current");
                                $("#lnkInternal").parent().removeClass("current");
                            }
                            $("#divTabTwo").show();
                            $("#divTabOne").hide();

                        });
                        $("#lnkInternal").click(function(e) {
                            e.preventDefault();
                            if (!($(this).parent().hasClass("current"))) {
                                $(this).parent().addClass("current");
                                $("#lnkExternal").parent().removeClass("current");
                            }
                            $("#divTabOne").show();
                            $("#divTabTwo").hide();

                        });
                        $(".SELECTFRIEND").click(function(e) {

                            e.preventDefault();
                            if ($(this).parent().hasClass("selected")) {
                                $(this).parent().removeClass("selected");
                            }
                            else {
                                $(this).parent().addClass("selected");
                            }
                            updateSelectCount();
                        });
                        $("#lnkSelectAll").click(function(e) {
                            e.preventDefault();
                            var listitems = $('#friendslist').children();
                            listitems.addClass("selected");
                            updateSelectCount();
                        });
                        $("#lnkReset").click(function(e) {
                            e.preventDefault();
                            var listitems = $('#friendslist').children();
                            listitems.removeClass("selected");
                            updateSelectCount();
                        });
                        $("#btnIntClose, #btnExtClose").click(function(e) {
                            e.preventDefault();
                            FRdialogueClose($('#sharePop'));

                        });
                        function updateSelectCount() {
                            var listitems = $('#friendslist').children('.selected');
                            if (listitems.length > 1) {
                                $("#pFriendsSelected").text(listitems.length + ' friends selected');
                            }
                            else if (listitems.length == 1) {
                                $("#pFriendsSelected").text('1 friend selected');
                            }
                            else {
                                $("#pFriendsSelected").text('No friends selected');

                            }

                        }
                        $('#sharePop').find('form').submit(function(e) {

                            e.preventDefault();
                            $.post(
                                $(this).attr('action'),
                                $(this).serialize(),
                                function(data, textStatus) {
                                    $.unblockUI();
                                },
                                "json"
                            );
                        });
                    },
                    "text"
                );
        });
    }

    FR.onLoad.addLoadSetup(init);
})(jQuery);





