Sample Drupal BLOCK Code
function my_module_block($op = 'list', $delta = 0) {
switch ($op) {
case 'list':
$block[0]['info'] = t('jQuery Hearbeat Test');
return $block;
break;
case 'view':
jquery_heartbeat_set(
1500,
'heartbeat-demo1',
'',
'$.my_script.percent_bar(\'heartbeat-demo2\');
$.my_script.random_num(\'heartbeat-demo3\');
$.my_script.random_clr(\'heartbeat-demo4\');',
TRUE);
$output = '<div id="heartbeat-demo1">'
. t('Loading jQuery Hearbeat Test ...')
. '</div>'
. '<div id="heartbeat-demo2">'
. '<table><tbody>'
. '<tr>'
. '<td class="left"> </td>'
. '<td class="right"> </td>'
. '</tr>'
. '<tr><td class="percent" colspan="2"> </td></tr>'
. '</tbody></table>'
. '</div>'
. '<div id="heartbeat-demo3">'. t('Guessing ...') .'</div>';
$block['subject'] = t('jQuery Hearbeat Test');
$block['content'] = $output;
return $block;
break;
}
}
Sample JavaScript Callback Code
_my_script_unique.counter = -1;
function _my_script_unique() {
return _my_script_unique.counter++;
}
function _my_script_random(iMin, iMax) {
return iMin + Math.floor(Math.random() * (iMax - iMin + 1));
}
$.my_script = {
percent_bar: function(sID) {
var iVal = _jheartbeat_unique() % 100;
if (iVal < 1) iVal = 1;
$('#'+ sID +' .left').css('width', iVal +'%');
$('#'+ sID +' .right').css('width', (100 - iVal) + '%');
$('#'+ sID +' .percent').html('<em>'+ iVal +'%</em>');
},
random_num: function(sID) {
var iVal = _jheartbeat_random(1, 1000);
$('#'+ sID).html('<span class="label">Magic number:</span> '+
'<span class="data">'+ iVal +'</span>');
},
random_clr: function(sID) {
var iR = _jheartbeat_random(0, 255);
var iG = _jheartbeat_random(0, 255);
var iB = _jheartbeat_random(0, 255);
$('#'+ sID).css('background-color', 'rgb('+ iR +','+ iG +','+ iG +')');
$('#'+ sID).css('color', '#FFF');
}
};