/*
 * SimpleModal OSX Style Modal Dialog
 * http://www.ericmmartin.com/projects/simplemodal/
 * http://code.google.com/p/simplemodal/
 *
 * Copyright (c) 2009 Eric Martin - http://ericmmartin.com
 *
 * Licensed under the MIT license:
 *   http://www.opensource.org/licenses/mit-license.php
 *
 * Revision: $Id: osx.js 213 2009-09-17 04:10:02Z emartin24 $
 */
var updated = false;

var _cbstatus_loading_follow = '';
multiselectname = "member_topics_follow";
function getCBStatus_()
{
    /* get topic ids to enable */
    var _out = '';
    var _checkboxes = $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]:checked");
    _checkboxes.each(function() {
        if (_out != '')
            _out += "|";
        _out += this.value;
    });
    return _out;
}

jQuery(function ($) {


    $(".followAction").each(function ()
    {
        var cid = this.getAttribute('clb_id');
        var cname = this.getAttribute('clb_name');

        function __closure(cid, cname, element_)
        {
            element_.click(function (e) {
                e.preventDefault();

                if (cid > 0)
                {
                    document.forms['followForm'].clb_id.value = cid;
                    document.getElementById('get_alerts_from_x').innerHTML = cname;
                    document.getElementById('get_alerts_from_x2').innerHTML = cname;
                }

                showFollow();
            });
        }

        __closure(cid, cname, $(this));


    });


    /*	$(".followAction").click(function (e) {
     e.preventDefault();

     showFollow();
     });*/


    var OSXFL = {
        container: null,
        open: function (d) {
            var self = this;
            self.container = d.container[0];
            d.overlay.fadeIn('slow', function () {
                $("#osx-modal-content-follow", self.container).show();
                var title = $("#osx-modal-title-follow", self.container);
                title.show();
                d.container.slideDown('slow', function () {

                    setTimeout(function () {

                        var h = $(window).height() - 30;

                        // // padding
                        d.container.animate(
                        {height: h+'px'},
                                327+'px',
                                function () {
                                    $("div.close", self.container).show();
                                    $("#osx-modal-data-follow", self.container).show();
                                }
                                );
                    }, 300);

                });
            })
        },
        close: function (d) {
            var self = this;
            d.container.animate(
            {top:"-" + (d.container.height() + 20)},
                    327,
                    function () {
                        self.close(); // or $.modal.close();
                    }
                    );
            if (updated) {
                window.location.href = window.location.href;
            }
        }
    };

    showFollow = function showFollow() {


        var h = $(window).height() - 30;

        $("#osx-modal-content-follow").modal({
            overlayId: 'osx-overlay-follow',
            containerId: 'osx-container-follow',
            closeHTML: '',
            //			closeHTML: '<div class="close"><a href="#" class="simplemodal-close">x</a></div>',
            minHeight:80,
            opacity:65,
            position:['0',],
            overlayClose:true,
            onOpen:OSXFL.open,
            containerCss:{'overflow':'hidden','width':'327px','height':h+'px'},
            onClose:OSXFL.close
        });

        //////////////////////////////////////////////////////////////////////////////

        if ($("#item_" + multiselectname + "0").attr("checked")) {
            for (var i = 1; i < $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length; i++) {
                $("#item_" + multiselectname + i).attr("disabled", "disabled");
                $("#item_" + multiselectname + i).attr("checked", false);
            }
        }

        var checked = false;
        for (var i = 1; i < $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length; i++) {
            if ($("#item_" + multiselectname + i).attr('checked')) {
                checked = true;
                break;
            }
        }
        if (checked) {
            $("#item_" + multiselectname + "0").attr("disabled", "disabled");
        }

        $("#item_" + multiselectname + "0").click(function() {
            if ($(this).attr("checked")) {
                for (var i = 1; i < $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length; i++) {
                    $("#item_" + multiselectname + i).removeAttr("checked").attr("disabled", "disabled");
                }
                getChecked(multiselectname, $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length);
            }
            else {
                for (var i = 1; i < $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length; i++) {
                    $("#item_" + multiselectname + i).removeAttr("disabled");
                }
                getChecked(multiselectname, $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length);
            }
        });

        for (var i = 1; i < $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]").length; i++) {
            $("#item_" + multiselectname + i).click(function() {
                if ($(this).attr("checked")) {
                    $("#item_" + multiselectname + "0").removeAttr("checked").attr("disabled", "disabled");
                }
                else {
                    if ($("#multiselectboxitems_" + multiselectname + " input[type=checkbox]:checked").length == 0) {
                        $("#item_" + multiselectname + "0").removeAttr("disabled");
                    }
                }
            });
        }

        _cbstatus_loading_follow = getCBStatus_();
        //////////////////////////////////////////////////////////////////////////////
    }

    $('.saveFollow').click(function() {
        url = $('input[name=url]').val();

        var _out = '';
        var _checkboxes = $("#multiselectboxitems_" + multiselectname + " input[type=checkbox]:checked");
        _checkboxes.each(function() {
            if (_out != '')
                _out += "|";
            _out += this.value;
        });

        $('input[name=member_topics_follow_hidden]').val(_out);

        $.post(url + '/index.php', $('#followForm').serialize(), function(data) {
            if (data == '1') {
                $('#msgResult').show();
                $('#subscribeTxt').hide();
                updated = true;
                $('#followActionMain').hide();

            } else {
                $('#errorMsgResult').html(data);
                $('#errorMsgResult').show();
            }
        })

    })

    url = window.location.href;
    if (url.toString().indexOf('fa=1') != -1) {
        showFollow();
    }
});

