/** * Implode $arr to comma separated WHERE condition and clean string * @param unknown $arr */ function db_implode($arr) { return db_cleanParam(implode(",", $arr)); }
/** * get person(s) by group id as array[group][person] * * @param array $params * - params[ids] = comma-separated liste of group ids * @return array with persons */ function churchservice_getPersonByGroupIds($params) { $ids = db_cleanParam($params["ids"]); $res = db_query("SELECT g.bezeichnung, gpg.gruppe_id g_id, p.id p_id, gp.id gp_id, p.vorname, p.name,\n p.email, gp.imageurl, p.cmsuserid, gpg.status_no leiter\n FROM {cdb_person} p, {cdb_gemeindeperson} gp, {cdb_gemeindeperson_gruppe} gpg, {cdb_gruppe} g\n WHERE gpg.gemeindeperson_id=gp.id AND gp.person_id=p.id AND g.id=gpg.gruppe_id\n AND gpg.status_no>=0 AND gpg.gruppe_id IN (" . $ids . ")"); $arr = array(); foreach ($res as $p) { if (!isset($arr[$p->g_id])) { $arr[$p->g_id] = array(); } $tags_res = db_query("SELECT * FROM {cdb_gemeindeperson_tag}\n WHERE gemeindeperson_id=:gp_id", array(":gp_id" => $p->gp_id)); $p->tags = array(); foreach ($tags_res as $tag) { $p->tags[] = $tag->tag_id; } $arr[$p->g_id][$p->p_id] = $p; } return $arr; }