Пример #1
0
/**
 * Remove unwanted items from an array using a key pattern.
 * @param $data (array) Array of data.
 * @param $pattern (string) Regular expression pattern for key to be removed.
 * @return array sanitized array.
 */
function sanitizeExportArray($data, $pattern)
{
    foreach ($data as $k => $v) {
        if (preg_match($pattern, $k) > 0) {
            unset($data[$k]);
        } elseif (is_array($v)) {
            $data[$k] = sanitizeExportArray($v, $pattern);
        }
    }
    return $data;
}
Пример #2
0
                        $objdata['capacity'] = $capacity;
                    }
                    // get all groups IDs
                    $perm_groups = array_merge($perm_groups, array_keys($objdata['permissions']));
                    if ($userlevel >= K_AUTH_ADMINISTRATOR) {
                        $objdata['permissions'] = F_getGroupsPermsDesc($objdata['permissions']);
                    }
                    $data['asset']['datacenter']['DCN' . $m['dcn_id']]['suite']['STS' . $m['sts_id']]['rack']['RCK' . $m['rck_id']]['object']['OBJ' . $m['obj_id']] = $objdata;
                }
            }
        } else {
            F_display_db_error();
        }
        // filter data by removing unwanted fields
        if (!empty($pattern)) {
            $data['asset'] = sanitizeExportArray($data['asset'], $pattern);
        }
        // create a list of users that belongs to each group (if any)
        $data['groups'] = array();
        if ($userlevel >= K_AUTH_ADMINISTRATOR) {
            if (!empty($perm_groups)) {
                foreach ($perm_groups as $group_id => $prm) {
                    $sqlug = 'SELECT user_id, user_lastname, user_firstname, user_name, user_email, group_name
						FROM ' . K_TABLE_USERS . ', ' . K_TABLE_USERGROUP . ', ' . K_TABLE_GROUPS . '
						WHERE usrgrp_user_id=user_id AND group_id=usrgrp_group_id AND usrgrp_group_id=' . $group_id . '
						ORDER BY group_name, user_lastname, user_firstname, user_name';
                    if ($rug = F_db_query($sqlug, $db)) {
                        while ($mug = F_db_fetch_array($rug)) {
                            $data['groups'][$mug['group_name']][] = $mug['user_lastname'] . ' ' . $mug['user_firstname'] . ' [' . $mug['user_name'] . '] - ' . $mug['user_email'];
                        }
                    } else {