/** * Get a unique string for a user, depending on this group memberships. * * String ready to be used as part of the CacheID of the output views. * Useful when there aren't another user-based access privilegies, just group permissions. * * @param integer $uid User ID to get the group memberships from. Default: current user. * * @return string Cache GIDs string to use on Zikula_View. */ public static function getGidCacheString($uid = null) { $str = UserUtil::getGroupListForUser($uid, '_'); return $str == '-1' ? 'guest' : 'groups_' . $str; }
public function exportToCsv($args){ $optFields = $args['optFields']; $d = date('_Ymd_Hi') ; $filename = $args['filename'];//="")?$args['filename']:"exportUsers" . $d. '.csv'; $delimiter = isset($args['delimiter'])?$args['delimiter'] : ';'; $titlerow = array(); $groups = false; $titlerow[] ="uname"; $sql = "SELECT uid, uname"; foreach ($optFields as $key => $value) { if ($value) { if ($key != "export_groups") $sql .= ",". $key; // generate CSV header line switch ($key) { case "activated" : $titlerow[] ="activated"; break; case "email": $titlerow[] ="email"; break; case "iw_nom": $titlerow[] ="firstname"; break; case "iw_cognom1": $titlerow[] ="lastname1"; break; case "iw_cognom2": $titlerow[] ="lastname2"; break; case "iw_naixement": $titlerow[] ="birthdate"; break; case "iw_sex": $titlerow[] ="gender"; break; case "export_groups": $titlerow[] ="in"; $groups = true; break; } } } $sql.= " FROM users, IWusers WHERE uid = iw_uid"; // Get users info $rs = DBUtil::executeSQL($sql); $rsm = DBUtil::marshallObjects($rs); // Get groups from every user // if ($groups) { foreach ($rsm as $key => $user){ if ($groups) { // Get all groups $rsm[$key]['in'] = UserUtil::getGroupListForUser($user['uid'], "|"); } // Remove uid field array_splice($rsm[$key], 0, 1); } $result = array(); FileUtil::exportCSV($rsm, $titlerow, $delimiter, '"', $filename); return true; //$result; }