isError()) { exit_no_group(); } session_require_perm ('project_admin', $group->getID()) ; // // Post Changes to database // if (getStringFromRequest('post_changes') == 'y') { // // Add list // if (getStringFromRequest('add_list') == 'y') { if (check_email_available($group, $group->getUnixName() . '-' . getStringFromPost('list_name'), $error_msg)) { $mailingList = new MailingList($group); if (!form_key_is_valid(getStringFromRequest('form_key'))) { exit_form_double_submit('mail'); } if(!$mailingList || !is_object($mailingList)) { form_release_key(getStringFromRequest("form_key")); exit_error(_('Error getting the list'),'mail'); } elseif($mailingList->isError()) { form_release_key(getStringFromRequest("form_key")); exit_error($mailingList->getErrorMessage(),'mail'); } if(!$mailingList->create( getStringFromPost('list_name'), getStringFromPost('description'), getIntFromPost('is_public', 1) )) { form_release_key(getStringFromRequest("form_key")); exit_error($mailingList->getErrorMessage(),'mail'); } else { $feedback .= _('List Added'); } } else { form_release_key(getStringFromRequest("form_key")); } // // Change status // } elseif (getStringFromPost('change_status') == 'y') { $mailingList = new MailingList($group, getIntFromGet('group_list_id')); if(!$mailingList || !is_object($mailingList)) { exit_error(_('Error getting the list'),'mail'); } elseif($mailingList->isError()) { exit_error($mailingList->getErrorMessage(),'mail'); } if(!$mailingList->update( unInputSpecialChars(getStringFromPost('description')), getIntFromPost('is_public', MAIL__MAILING_LIST_IS_PUBLIC) )) { exit_error($mailingList->getErrorMessage(),'mail'); } else { $feedback .= _('List updated'); } } } // // Reset admin password // if (getIntFromRequest('reset_pw') == 1) { $mailingList = new MailingList($group, getIntFromGet('group_list_id')); if(!$mailingList || !is_object($mailingList)) { exit_error(_('Error getting the list'),'mail'); } elseif($mailingList->isError()) { exit_error($mailingList->getErrorMessage(),'mail'); } if($mailingList->getStatus() == MAIL__MAILING_LIST_IS_CONFIGURED) { if(!$mailingList->update( $mailingList->getDescription(), $mailingList->isPublic(), MAIL__MAILING_LIST_PW_RESET_REQUESTED )) { exit_error($mailingList->getErrorMessage(),'mail'); } else { $feedback .= _('Password reset requested'); } } } // // Form to add list // if(getIntFromGet('add_list')) { mail_header(array('title' => _('Add a Mailing List'))); print '
';
printf(_('Lists are named in this manner:
projectname-listname@%1$s'), forge_get_config('lists_host'));
print '
'; print _('It will take 6-24 Hours for your list to be created.'); print '
'; $mlFactory = new MailingListFactory($group); if (!$mlFactory || !is_object($mlFactory) || $mlFactory->isError()) { exit_error($mlFactory->getErrorMessage(),'mail'); } $mlArray =& $mlFactory->getMailingLists(); if ($mlFactory->isError()) { echo ''._('Error').' '._('Unable to get the lists') .$mlFactory->getErrorMessage().'
'; mail_footer(array()); exit; } $tableHeaders = array( _('Existing mailing lists') ); // // Show lists // $mlCount = count($mlArray); if($mlCount > 0) { echo $HTML->listTableTop($tableHeaders); for ($j = 0; $j < $mlCount; $j++) { $currentList =& $mlArray[$j]; if ($currentList->isError()) { echo ''._('Error').' '.sprintf(_('Unable to get the list %s'), $group->getPublicName()) .'
'; echo ''.sprintf(_('You can administrate lists from here. Please note that private lists can still be viewed by members of your project, but are not listed on %1$s.'), forge_get_config ('forge_name')).'
'; echo ''; $mlCount = count($mlArray); if($mlCount > 0) { $tableHeaders = array( _('Mailing list'), '', '', '' ); echo $HTML->listTableTop($tableHeaders); for ($i = 0; $i < $mlCount; $i++) { $currentList =& $mlArray[$i]; if ($currentList->isError()) { echo '