Now all modules are in core modules folder
This commit is contained in:
parent
5ba1cdfa0b
commit
05b6a91b0c
1907 changed files with 0 additions and 0 deletions
82
modules/calendar/jcalendar/jcalendar.js
Normal file
82
modules/calendar/jcalendar/jcalendar.js
Normal file
|
@ -0,0 +1,82 @@
|
|||
if (Drupal.jsEnabled) {
|
||||
$(document).ready(function() {
|
||||
// I am assuming that all of the links are refering to an internal node
|
||||
|
||||
// add the attribute rel=facebox to all of the links I want to have a popup
|
||||
$('div.view-field > a').attr('class', 'popup');
|
||||
|
||||
// on click of a link
|
||||
$('a.popup').click(function(a) {
|
||||
|
||||
// Make sure that other stuff is closed. This seems to cause a problem in Fx2 and IE7.
|
||||
$('div#calpopup').fadeOut();
|
||||
$('div#calpopup').remove();
|
||||
|
||||
// create div to hold data and add it to the end of the body
|
||||
var div = $('<div id="calpopup"><div id="popup-close"><img id="popup-close-img" src="' + Drupal.settings.jcalendar.path + '/images/cross.png" /></div><div id="calpopup-body"><img src="' + Drupal.settings.jcalendar.path + '/images/throbber.gif" id="popthrobber" /></div></div>').attr('style','display: none');
|
||||
div.appendTo(document.body);
|
||||
|
||||
// Locate Popup
|
||||
var offset = $(this).offset();
|
||||
// Check position with window width.
|
||||
var offset_left = offset.left + 5;
|
||||
if ($(window).width() < $('#calpopup').width() + offset.left) {
|
||||
offset_left -= $('#calpopup').width() + 5;
|
||||
if (offset_left < 0) {
|
||||
offset_left = 0;
|
||||
}
|
||||
}
|
||||
var offset_top = offset.top + 25;
|
||||
if ($(window).height() < $('#calpopup').height() + offset_top) {
|
||||
offset_top -= $('#calpopup').height() + 25;
|
||||
if (offset_top < 0) {
|
||||
offset_top = 0;
|
||||
}
|
||||
}
|
||||
$('#calpopup').css('left', offset_left);
|
||||
$('#calpopup').css('top', offset_top);
|
||||
|
||||
// Show Popup
|
||||
$('#calpopup').fadeIn('slow');
|
||||
|
||||
// If sucessful call this
|
||||
function domCallback(msg) {
|
||||
$('#calpopup-body').html(msg);
|
||||
}
|
||||
|
||||
// Get NodeID and ItemID
|
||||
var ids = $(this).parent().parent().attr('class');
|
||||
var arrs = ids.split(" ");
|
||||
var arr = arrs[0].split(".");
|
||||
var nid = arr[1];
|
||||
var id = arr[4];
|
||||
|
||||
// fill the div with data
|
||||
$.ajax({
|
||||
type: "GET",
|
||||
url: Drupal.settings.basePath + "?q=jcalendar/getnode/"+nid+"/"+ids,
|
||||
success: function(msg){
|
||||
domCallback(msg);
|
||||
}
|
||||
});
|
||||
|
||||
// On click of the close image
|
||||
$('img#popup-close-img').click(function(x) {
|
||||
$('div#calpopup').fadeOut();
|
||||
$('div#calpopup').remove();
|
||||
});
|
||||
|
||||
$(document).click(function(y) {
|
||||
var $tgt = $(y.target);
|
||||
if (!$tgt.parents().is('div#calpopup')) {
|
||||
$('div#calpopup').fadeOut();
|
||||
$('div#calpopup').remove();
|
||||
$(document).unbind("click");
|
||||
}
|
||||
});
|
||||
|
||||
// Don't Follow the real link
|
||||
return false;
|
||||
});
|
||||
});
|
||||
}
|
Reference in a new issue