// kontroller at bruger har administratorrettighed til gruppen $admin_gruppemedlemskab = backend_hent_gruppemedlemskab($_SESSION['brugernavn'], $gruppenavn); if ($admin_gruppemedlemskab['gruppeadmin'] != true) { die('Access denied'); } } } if (empty($gruppenavn)) { // vis gruppeoversigt $smarty->assign('grupper', $grupper); $smarty->assign('contenttemplate', 'admin-groups-list.tpl'); } else { // vis administration af gruppens medlemmer $gruppe = backend_hent_gruppe($gruppenavn); $gruppemedlemmer = backend_hent_gruppe_medlemmer($gruppenavn); $gruppemedlemmer_eksterne = backend_hent_gruppe_medlemmer_eksterne($gruppenavn); if ($_POST['action'] == 'save') { $mail_modtag_medlemmer = $_POST['mail_modtag']; $mail_forfatter_medlemmer = $_POST['mail_forfatter']; // for hvert gruppemedlem foreach ($gruppemedlemmer as $medlem) { // tjek for rettelser i mail_modtag og mail_forfatter $delta = array(); $ny_mail_modtag = $mail_modtag_medlemmer[$medlem['brugernavn']] == 1; if ($medlem['mail_modtag'] != $ny_mail_modtag) { $delta['mail_modtag'] = $ny_mail_modtag; } $ny_mail_forfatter = $mail_forfatter_medlemmer[$medlem['brugernavn']] == 1; if ($medlem['mail_forfatter'] != $ny_mail_forfatter) { $delta['mail_forfatter'] = $ny_mail_forfatter; }
vent_indtil_ingen_instans_af('/usr/bin/minimalist'); // opret hoved minimalist-mappen hvis den ikke findes i forvejen mkdir_ne(MINIMALIST_DIR); $aliases_linjer = explode("\n", trim(file_get_contents(UNIXFILE_ALIASES))); $mail_liste_navne = array(); $grupper = backend_hent_grupper(); foreach ($grupper as $gruppe) { $liste_navn = preg_replace('/[^A-Za-z._-]/', '', $gruppe['mail_liste_navn']); if (!$liste_navn) { continue; } $mail_liste_navne[] = $liste_navn; // lav mappe til mailliste navne, og lav fil med mail addresser mkdir_ne(MINIMALIST_DIR . '/' . $liste_navn); $liste = ''; $medlemmer = array_merge(backend_hent_gruppe_medlemmer($gruppe['gruppenavn']), backend_hent_gruppe_medlemmer_eksterne($gruppe['gruppenavn'])); if ($gruppe['gruppenavn'] == 'nyk_alle_beboere') { file_put_contents('/tmp/mailtest', print_r(backend_hent_gruppe_medlemmer('nyk_alle_beboere'), true)); } foreach ($medlemmer as $medlem) { if (!$medlem['email']) { continue; } $liste .= $medlem['email'] . lav_options($medlem) . "\n"; } $liste_sti = MINIMALIST_DIR . '/' . $liste_navn . '/list'; if (@file_get_contents($liste_sti) !== $liste) { file_put_contents($liste_sti, $liste, LOCK_EX); } // skriv footer-fil hvis der er angivet footer $footer_sti = MINIMALIST_DIR . '/' . $liste_navn . '/footer';