| 529 | | if ($delta == 'subscriptions' && user_access('logger')) { |
| 530 | | $result = db_query("SELECT u.uid, u.name, ur.rid |
| 531 | | FROM ({users} u |
| 532 | | INNER JOIN {user_relationships} ur ON u.uid = ur.requestee_id) |
| 533 | | INNER JOIN {user_relationship_types} urt ON ur.rtid = urt.rtid |
| 534 | | WHERE ur.requester_id = %d AND urt.name = '%s' |
| 535 | | ORDER BY ur.rid", $user->uid, 'subscription'); |
| 536 | | |
| 537 | | $items = array(); |
| 538 | | while ($subscription = db_fetch_object($result)) { |
| 539 | | $items[] = l('[x]', 'logger/remove/'. $subscription->rid, array('attributes' => array('title' => "unsubscribe from ". $subscription->name ."'s stream"), 'query' => $destination, 'alias' => TRUE)) .' '. l($subscription->name, 'user/'. $subscription->uid, array('alias' => FALSE)); |
| 540 | | } |
| 541 | | $block['subject'] = t('Subscriptions'); |
| 542 | | $block['content'] = theme('logger_item_list', $items); |
| 543 | | } |
| 544 | | |
| 545 | | elseif ($delta == 'fluksonians' && user_access('logger')) { |
| 546 | | // list all users having the fluksionian role for now |
| 547 | | // to be replaced by a real buddylist later on |
| 548 | | $result = db_query("SELECT u.uid, u.name |
| 549 | | FROM ({users} u |
| 550 | | INNER JOIN {users_roles} ur ON u.uid = ur.uid) |
| 551 | | INNER JOIN {role} r ON ur.rid = r.rid |
| 552 | | WHERE r.name = '%s' |
| 553 | | ORDER BY u.name", 'fluksonian', $user->uid); |
| 554 | | $items = array(); |
| 555 | | while ($fluksonian = db_fetch_object($result)) { |
| 556 | | $items[] = l('[+]', 'logger/add/'. $fluksonian->uid, array('attributes' => array('title' => "subscribe to ". $fluksonian->name ."'s stream"), 'query' => $destination, 'alias' => TRUE)) .' '. l($fluksonian->name, 'user/'. $fluksonian->uid, array('alias' => FALSE)); |
| 557 | | } |
| 558 | | $block['subject'] = t('Fluksonians'); |
| 559 | | $block['content'] = theme('logger_item_list', $items); |
| | 532 | if ($delta == 'fluksonians' && user_access('logger')) { |
| | 533 | $block['content'] = drupal_get_form('_logger_fluksonians_form'); |
| | 592 | * Generates the fluksonians block form. |
| | 593 | */ |
| | 594 | function _logger_fluksonians_form() { |
| | 595 | global $user; |
| | 596 | $fluksonians = db_query("SELECT u.uid, u.name |
| | 597 | FROM ({users} u |
| | 598 | INNER JOIN {users_roles} ur ON u.uid = ur.uid) |
| | 599 | INNER JOIN {role} r ON ur.rid = r.rid |
| | 600 | WHERE r.name = '%s' AND NOT u.uid = %d |
| | 601 | ORDER BY u.name", 'fluksonian', $user->uid); |
| | 602 | |
| | 603 | $subscriptions = db_query("SELECT u.uid, u.name, ur.rid |
| | 604 | FROM ({users} u |
| | 605 | INNER JOIN {user_relationships} ur ON u.uid = ur.requestee_id) |
| | 606 | INNER JOIN {user_relationship_types} urt ON ur.rtid = urt.rtid |
| | 607 | WHERE ur.requester_id = %d AND urt.name = '%s' |
| | 608 | ORDER BY u.name", $user->uid, 'subscription'); |
| | 609 | |
| | 610 | $i = 0; |
| | 611 | $rows = array(); |
| | 612 | $row = array(); |
| | 613 | $subscription = db_fetch_object($subscriptions); |
| | 614 | |
| | 615 | while ($fluksonian = db_fetch_object($fluksonians)) { |
| | 616 | if ($i > 4) { |
| | 617 | $rows[] = $row; |
| | 618 | $row = array(); |
| | 619 | $i = 0; |
| | 620 | } |
| | 621 | if ($fluksonian->uid == $subscription->uid) { |
| | 622 | $row[] = l('[x]', 'logger/remove/'. $subscription->rid, array('attributes' => array('title' => "unsubscribe from ". $subscription->name ."'s stream"), 'query' => $destination, 'alias' => TRUE)) .' '. l($subscription->name, 'user/'. $subscription->uid, array('alias' => FALSE)); |
| | 623 | $subscription = db_fetch_object($subscriptions); |
| | 624 | } |
| | 625 | else { |
| | 626 | $row[] = l('[+]', 'logger/add/'. $fluksonian->uid, array('attributes' => array('title' => "subscribe to ". $fluksonian->name ."'s stream"), 'query' => $destination, 'ali |
| | 627 | as' => TRUE)) .' '. l($fluksonian->name, 'user/'. $fluksonian->uid, array('alias' => FALSE)); |
| | 628 | } |
| | 629 | $i++; |
| | 630 | } |
| | 631 | $rows[] = $row; |
| | 632 | |
| | 633 | $form['fluksonians'] = array( |
| | 634 | '#type' => 'fieldset', |
| | 635 | '#title' => t('Fluksonians'), |
| | 636 | '#description' => t('Select the Fluksonians you wish to add to [+] or clear from [x] the chart.'), |
| | 637 | '#collapsible' => TRUE, |
| | 638 | '#collapsed' => TRUE, |
| | 639 | ); |
| | 640 | $form['fluksonians']['list'] = array( |
| | 641 | '#type' => 'item', |
| | 642 | //'#title' => t('Title'), |
| | 643 | '#value' => theme('table', array(), $rows), |
| | 644 | ); |
| | 645 | |
| | 646 | return $form; |
| | 647 | } |
| | 648 | |
| | 649 | |
| | 650 | /** |