Index: send.module =================================================================== RCS file: /cvs/drupal/contributions/modules/send/send.module,v retrieving revision 1.32 diff -u -r1.32 send.module --- send.module 12 Feb 2007 06:00:01 -0000 1.32 +++ send.module 17 Jul 2007 20:52:49 -0000 @@ -246,3 +246,45 @@ return call_user_func_array($func, $args); } } +/** + * Implementation of hook_block(). + */ +function send_block($op = 'list', $delta = 0, $edit = array()) { + switch ($op) { + case 'list' : + $blocks[0]['info'] = t('Most Emailed'); + return $blocks; + case 'configure' : + $form['send_block_num_results'] = array( + '#type' => 'textfield', + '#title' => t('Number of emailed nodes to display'), + '#default_value' => variable_get('send_block_num_results',5), + + ); + return $form; + case 'save' : + variable_set('send_block_num_results',(int) $edit['send_block_num_results']); + case 'view' : + if(user_access('access content')) { + $num_results = variable_get('send_block_num_results',5); + $sql = 'SELECT s.nid, count(*) as count, n.title FROM {send_recipient} ' + .'s, node n where s.nid = n.nid GROUP BY s.nid order by count desc ' + .'limit %d'; + $result = db_query($sql,$num_results); + while ($i = db_fetch_object($result)) { + $items[] = l($i->title,'node/'.$i->nid); + } + $block['subject'] = t('Most Emailed'); + $block['content'] = theme('send_most_emailed', $items); + } + return $block; + } +} +function theme_send_most_emailed($items) { + $output = "