/**
 * Extract arguments for Prepopulate from the array.
 * Build a 'query' array suitable for use by Prepopulate.
 *
 * @param $target : array
 *   Array build from syntax defining arguments for use by the plugin.
 *  Any elements recognized by freelinking_prepopulate will be used.
 *
 * @see freelinking_prepopulate_list_fields(), l()
 */
function freelinking_prepopulate_fields_from_array($plugin, $target)
{
    $query = array();
    $prepopulate = array_intersect_key(freelinking_prepopulate_list_fields($plugin), $target);
    foreach ($prepopulate as $field => $values) {
        // If it's an organic group, break the groups out to separate values.
        if ($field == 'og') {
            $query[$values['prepopulate']] = $target[$field];
        } elseif ($field == 'taxonomy') {
            if (!strpos($target[$field], ':')) {
                $query[$values['prepopulate'] . '[1]'] = $target[$field];
                continue;
            }
            list($vocab, $terms) = explode(':', $target[$field]);
            if (is_int($vocab)) {
                $query[$values['prepopulate'] . '[' . $vocab . ']'] = $terms;
            } else {
                $query[$values['prepopulate'] . '[1]'] = $terms;
            }
        } else {
            $query[$values['prepopuplate']] = $target[$field];
        }
    }
    return $query;
}
/**
 * Extract arguments for Prepopulate from the array.
 * Build a 'query' array suitable for use by Prepopulate.
 *
 * @param $target : array
 *   Array build from syntax defining arguments for use by the plugin.
 *  Any elements recognized by freelinking_prepopulate will be used.
 *
 * @see freelinking_prepopulate_list_fields(), l()
 */
function freelinking_prepopulate_fields_from_array($plugin, $target)
{
    $query = array();
    $prepopulate = array_intersect_key(freelinking_prepopulate_list_fields($plugin), $target);
    foreach ($prepopulate as $field => $values) {
        // If it's an organic group, break the groups out to separate values.
        if ($field == 'og') {
            $query[$values['prepopulate']] = $target[$field];
        } else {
            $query[$values['prepopuplate']] = $target[$field];
        }
    }
    return $query;
}