Ejemplo n.º 1
0
 function deleteUserEmailPref($pUser = NULL)
 {
     global $gBitSystem, $gBitUser;
     // if user is NULL get the active one
     if (!is_object($pUser)) {
         $pUser =& $gBitUser;
     }
     // if this group has a board which has a mailing list then act on that
     if (($board = $this->getBoard()) && $board->getPreference('boards_mailing_list')) {
         require_once UTIL_PKG_PATH . 'mailman_lib.php';
         mailman_remove_member($board->getPreference('boards_mailing_list'), $pUser->getField('email'));
     } elseif ($gBitSystem->isPackageActive('switchboard')) {
         global $gSwitchboardSystem;
         $gSwitchboardSystem->deleteUserPref($pUser->mUserId, 'group', 'message', $this->mContentId);
     }
 }
Ejemplo n.º 2
0
} elseif (!empty($_REQUEST['save_list_address'])) {
    $gContent->storePreference('board_sync_list_address', !empty($_REQUEST['board_sync_list_address']) ? $_REQUEST['board_sync_list_address'] : NULL);
} elseif ($gContent->getPreference('boards_mailing_list')) {
    // check for submits that need boards_mailing_list
    if (!empty($_REQUEST['subscribe_boardsync'])) {
        if ($gContent->getPreference('board_sync_list_address')) {
            mailman_addmember($gContent->getPreference('boards_mailing_list'), $boardSyncInbox);
            mailman_setmoderator($gContent->getPreference('boards_mailing_list'), $boardSyncInbox);
        }
    } elseif (!empty($_REQUEST['unsubscribe_boardsync'])) {
        if ($gContent->getPreference('board_sync_list_address')) {
            mailman_remove_member($gContent->getPreference('boards_mailing_list'), $boardSyncInbox);
        }
    } elseif (!empty($_REQUEST['subscribe'])) {
        mailman_addmember($gContent->getPreference('boards_mailing_list'), $gBitUser->getField('email'));
    } elseif (!empty($_REQUEST['unsubscribe'])) {
        mailman_remove_member($gContent->getPreference('boards_mailing_list'), $gBitUser->getField('email'));
    }
}
if ($gContent->getBoardMailingList()) {
    $gBitSmarty->assign('boardsMailingList', $gContent->getBoardMailingList());
    if ($gContent->hasUserPermission('p_boards_boards_members_view')) {
        $members = mailman_list_members($gContent->getPreference('boards_mailing_list'));
        $gBitSmarty->assignByRef('listMembers', $members);
    }
} else {
    $gBitSmarty->assign('suggestedListName', preg_replace('/[^a-z0-9]/', '', strtolower($gContent->getTitle())));
}
// display
$gBitSmarty->assignByRef('board', $gContent);
$gBitSystem->display("bitpackage:boards/mailing_list.tpl", $gContent->getTitle() . " " . tra('Message Board Mailing List'), array('display_mode' => 'list'));