Uname: Linux webm005.cluster107.gra.hosting.ovh.net 5.15.167-ovh-vps-grsec-zfs-classid #1 SMP Tue Sep 17 08:14:20 UTC 2024 x86_64
User: 6036 (villadal)
Group: 100 (users)
Disabled functions: NONE
Safe mode: On[ PHPinfo ]
//home/villadal/www/old/booked/Web/scripts      ( Reset | Go to )
File Name: resourcePopup.js
Edit
/**
 Copyright 2012-2014 Nick Korbel

 This file is part of Booked Scheduler.

 Booked Scheduler is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation, either version 3 of the License, or
 (at your option) any later version.

 Booked Scheduler is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with Booked Scheduler.  If not, see <http://www.gnu.org/licenses/>.
 */

$.fn.bindResourceDetails = function (resourceId, options)
{
    var opts = $.extend({preventClick:false}, options);

    bindResourceDetails($(this));

    function getDiv()
        {
            if ($('#resourceDetailsDiv').length <= 0)
            {
                return $('<div id="resourceDetailsDiv"/>').appendTo('body');
            }
            else
            {
                return $('#resourceDetailsDiv');
            }
        }

        function hideDiv()
        {
            var tag = getDiv();
            var timeoutId = setTimeout(function ()
            {
                tag.hide();
            }, 500);
            tag.data('timeoutId', timeoutId);
        }

    function bindResourceDetails(resourceNameElement)
    {
        if (resourceNameElement.attr('resource-details-bound') === '1')
        {
            return;
        }

        if (opts.preventClick)
        {
            resourceNameElement.click(function (e)
            {
                e.preventDefault();
            });
        }

        var tag = getDiv();

        tag.mouseenter(function ()
        {
            clearTimeout(tag.data('timeoutId'));
        }).mouseleave(function ()
        {
            hideDiv();
        });

        resourceNameElement.mouseenter(function ()
        {
            var tag = getDiv();
            clearTimeout(tag.data('timeoutId'));

            var data = tag.data('resourcePopup' + resourceId);
            if (data != null)
            {
                showData(data);
            }
            else
            {
                $.ajax({
                    url:'ajax/resource_details.php?rid=' + resourceId,
                    type:'GET',
                    cache:true,
                    beforeSend:function ()
                    {
                        tag.html('Loading...').show();
                        tag.position({my:'left bottom', at:'right top', of:resourceNameElement});
                    },
                    error:tag.html('Error loading resource data!').show(),
                    success:function (data, textStatus, jqXHR)
                    {
                        tag.data('resourcePopup' + resourceId, data);
                        showData(data);
                    }
                });
            }

            function showData(data)
            {
                tag.html(data).show();
                tag.position({my:'left bottom', at:'right top', of:resourceNameElement});
            }
        }).mouseleave(function ()
                {
                    hideDiv();
                });

        resourceNameElement.attr('resource-details-bound', '1');
    }

};

All system for education purposes only. For more tools: Telegram @jackleet

Mr.X Private Shell

Logo
-
New File | New Folder
Command
SQL