/** * [gruppe|person][403|404][[auth,ids]] * @param unknown_type $params */ function churchcal_saveShares($params) { $log = ""; $orig = churchcal_getShares($params); // Ich gehe das urspr�ngliche durch $domaintypes = array(); $domaintypes[] = "person"; $domaintypes[] = "gruppe"; foreach ($domaintypes as $domaintype) { if (isset($orig[$domaintype])) { foreach ($orig[$domaintype] as $key_authid => $authid) { // Ich schaue was nicht mehr dabei ist und l�sche foreach ($authid as $domainid) { if (!isset($params[$domaintype]) || !isset($params[$domaintype][$key_authid]) || !in_array($domainid, $params[$domaintype][$key_authid])) { $log .= "<p>Entferne {$domaintype}, {$key_authid}, {$domainid}"; db_query("delete from {cc_domain_auth} where domain_type=:domaintype and domain_id=:domain_id\n and auth_id=:auth_id and daten_id=:daten_id", array(':domain_id' => $domainid, ":domaintype" => $domaintype, ":auth_id" => $key_authid, ":daten_id" => $params["cat_id"])); } } } } // Ich schaue was neu dabei ist und f�ge hinzu! if (isset($params[$domaintype])) { foreach ($params[$domaintype] as $key_authid => $authid) { foreach ($authid as $domainid) { $log .= "<p>Suche {$domaintype}, {$key_authid}, {$domainid}"; if (!isset($orig[$domaintype]) || !isset($orig[$domaintype][$key_authid]) || !in_array($domainid, $orig[$domaintype][$key_authid])) { $log .= "<p>Erganze {$domaintype}, {$key_authid}, {$domainid}"; db_query("insert into {cc_domain_auth} (domain_type, domain_id, auth_id, daten_id)\n values( :domaintype, :domain_id, :auth_id, :daten_id)", array(':domain_id' => $domainid, ":domaintype" => $domaintype, ":auth_id" => $key_authid, ":daten_id" => $params["cat_id"])); } } } } } return $log; }
/** * [gruppe|person][403|404][[auth,ids]] * * @param array $params * @return */ function churchcal_saveShares($params) { $log = ""; $orig = churchcal_getShares($params); // look at the original foreach (array("person", "gruppe") as $domainType) { if (isset($orig[$domainType])) { foreach ($orig[$domainType] as $authKey => $authId) { // look what's removed and delete it foreach ($authId as $domainId) { if (!isset($params[$domainType]) || !isset($params[$domainType][$authKey]) || !in_array($domainId, $params[$domainType][$authKey])) { $log .= "<p>Delete {$domainType}, {$authKey}, {$domainId}"; db_query("DELETE FROM {cc_domain_auth}\n WHERE domain_type=:domaintype AND domain_id=:domain_id AND auth_id=:auth_id AND daten_id=:daten_id", array(':domain_id' => $domainId, ":domaintype" => $domainType, ":auth_id" => $authKey, ":daten_id" => $params["cat_id"])); } } } } // look what's added and save it if (isset($params[$domainType])) { foreach ($params[$domainType] as $authKey => $authId) { foreach ($authId as $domainId) { $log .= "<p>Search {$domainType}, {$authKey}, {$domainId}"; if (!isset($orig[$domainType]) || !isset($orig[$domainType][$authKey]) || !in_array($domainId, $orig[$domainType][$authKey])) { $log .= "<p>Add {$domainType}, {$authKey}, {$domainId}"; db_query("INSERT INTO {cc_domain_auth} (domain_type, domain_id, auth_id, daten_id)\n VALUES( :domaintype, :domain_id, :auth_id, :daten_id)", array(':domain_id' => $domainId, ":domaintype" => $domainType, ":auth_id" => $authKey, ":daten_id" => $params["cat_id"])); } } } } } return $log; }