in der Geburtstagsliste ist beim Selektieren der Rollen (sowohl bei der Pluginfreigabe als auch bei der Konfiguration) der SQL falsch. Mach Dir nichts draus: dieser Fehler zieht sich durch das gesamte Admidio-System, bei allen Entwicklern

Der SQL ab Zeile 298 in preferences.php (Reiter Konfiguration) und der ab 374 (Reiter Freigabe) müssten meiner Meinung nach beide heißen:
Code: Alles auswählen
$sql = 'SELECT rol.rol_id, rol.rol_name, cat.cat_name
FROM '.TBL_CATEGORIES.' as cat, '.TBL_ROLES.' as rol, '.TBL_MEMBERS.' as mem
WHERE cat.cat_id = rol.rol_cat_id
AND mem.mem_rol_id = rol.rol_id
/* Nicht für Termin-Teilnehmer */
AND cat.cat_name_intern <> \'CONFIRMATION_OF_PARTICIPATION\'
/* Nur Rollen, die auch aktiver Mitglieder haben */
AND ( mem.mem_begin <= \''.DATE_NOW.'\'
AND mem.mem_end >= \''.DATE_NOW.'\')
/* Nur Rollen, der aktuellen Organisation */
AND ( cat.cat_org_id = '.$gCurrentOrganization->getValue('org_id').'
OR cat.cat_org_id IS NULL )
/* Gruppieren und sortieren */
GROUP BY cat.cat_name, rol.rol_name
ORDER BY cat.cat_name, rol.rol_name
';
Vielleicht könnte man das als globale Funktion mal auslagern, damit nicht jeder seinen eigenen SQL zusammenbauen muss? Auch nutzt jeder die Anführungszeichen unterschiedlich: der eine schreibt
Code: Alles auswählen
$sql = 'SELECT ...
FROM '.TBL_IRGENDWAS.' as iwa, ...
/* So dass dann Maskiert werden muss */
WHERE a=\'Suchstring\'
AND b=\''.$Suchvariable.'\'
...';
Code: Alles auswählen
$sql = "SELECT ...
FROM ".TBL_IRGENDWAS." as iwa, ...
WHERE a='Suchstring'
AND b='".$Suchvariable."'
...";
Oliver