Ejemplo n.º 1
0
function import_process_data(&$user, &$data, $more = array())
{
    #
    # First do some sanity-checking on the data before
    # we bother to create a sheet.
    #
    $rsp = import_ensure_valid_data($data);
    if (!$rsp['ok']) {
        return $rsp;
    }
    #
    # CAN I HAS MAH SHEET?
    #
    $sheet_rsp = sheets_create_sheet($user, $more);
    if (!$sheet_rsp['ok']) {
        return $sheet_rsp;
    }
    $sheet = $sheet_rsp['sheet'];
    #
    # OMG!!! IT'S FULL OF DOTS!!!!
    #
    $more['skip_validation'] = 1;
    # see above
    $dots_rsp = dots_import_dots($user, $sheet_rsp['sheet'], $data, $more);
    # No soup for sheet! Or is it the other way around...
    if (!$dots_rsp['ok']) {
        sheets_delete_sheet($sheet);
    } else {
        $dots_rsp['sheet'] = $sheet;
        $count_rsp = sheets_update_dot_count_for_sheet($sheet);
        $dots_rsp['update_sheet_count'] = $count_rsp['ok'];
        if ($more['return_dots']) {
            $dots_rsp['dots'] = dots_get_dots_for_sheet($sheet, $sheet['user_id']);
        }
    }
    return $dots_rsp;
}
Ejemplo n.º 2
0
#
$format = get_str('format');
if (!$format) {
    $format = 'csv';
}
$map = formats_valid_export_map('key by extension');
if (!isset($map[$format])) {
    error_404();
}
# Hey look! At least to start we are deliberately not doing
# any pagination on the 'dots-for-a-sheet' page. We'll see
# how long its actually sustainable but for now it keeps a
# variety of (display) avenues open.
# (20101025/straup)
$more = array('per_page' => $GLOBALS['cfg']['import_max_records'], 'sort' => request_str('_sort'), 'order' => request_str('_order'));
$sheet['dots'] = dots_get_dots_for_sheet($sheet, $GLOBALS['cfg']['user']['id'], $more);
$bbox = implode(", ", array_values($sheet['extent']));
# valid extras are things like
$export_more = array('viewer_id' => $GLOBALS['cfg']['user']['id']);
if ($format == "json" && ($cb = get_str("callback"))) {
    $export_more['callback'] = $cb;
}
// added by seanc(6/21/2011)
if ($format == "json" && isset($sheet['label'])) {
    $export_more['sheet_label'] = $sheet['label'];
    $export_more['sheet_extent'] = $bbox;
}
$export_props = export_collect_user_properties($format);
$export_more = array_merge($export_props, $export_more);
# caching?
$ok_cache = 1;
Ejemplo n.º 3
0
function sheets_load_details(&$sheet, $viewer_id = 0, $more = array())
{
    if ($more['load_extent']) {
        $sheet['extent'] = dots_get_extent_for_sheet($sheet, $viewer_id);
    }
    if ($more['load_dots']) {
        $sheet['dots'] = dots_get_dots_for_sheet($sheet, $viewer_id);
    }
    if ($more['load_user']) {
        $sheet['user'] = users_get_by_id($sheet['user_id']);
    }
}