Ejemplo n.º 1
0
$sheet = sheets_get_sheet($sheet_id, $GLOBALS['cfg']['user']['id'], array('load_extent' => 1));
if (!$sheet) {
    error_404();
}
if (!sheets_can_view_sheet($sheet, $GLOBALS['cfg']['user']['id'])) {
    error_403();
}
$is_own = $sheet['user_id'] == $GLOBALS['cfg']['user']['id'] ? 1 : 0;
#
# Ensure that this is something we can export
#
$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;
Ejemplo n.º 2
0
 } else {
     unset($args['page']);
     $query_args = http_build_query($args);
     $pagination_url = "{$GLOBALS['cfg']['abs_root_url']}search/?" . $query_args;
     $page_as_queryarg = 1;
     if ($args['u']) {
         unset($args['u']);
         $query_args = http_build_query($args);
         $smarty->assign("query_all_url", "{$GLOBALS['cfg']['abs_root_url']}search/?" . $query_args);
     }
 }
 $GLOBALS['smarty']->assign("pagination_url", $pagination_url);
 $GLOBALS['smarty']->assign("pagination_page_as_queryarg", $page_as_queryarg);
 $perms_map = dots_permissions_map();
 $GLOBALS['smarty']->assign_by_ref('permissions_map', $perms_map);
 $formats = array_values(formats_valid_export_map());
 $GLOBALS['smarty']->assign("export_formats", $formats);
 $formats_pretty_names = formats_pretty_names_map();
 $GLOBALS['smarty']->assign_by_ref("formats_pretty_names", $formats_pretty_names);
 # create a simplfied object for js
 $json_fields = array("id", "created", "details", "geohash", "is_interactive", "latitude", "longitude", "user_id", "perms", "sheet_id");
 if ($rsp['dots']) {
     $ddd = array();
     foreach ($rsp['dots'] as $dot) {
         $bb = array();
         foreach ($json_fields as $fi) {
             if (isset($dot[$fi])) {
                 if ($fi == "details") {
                     $_details = array();
                     foreach ($dot[$fi] as $de) {
                         $_details[] = array('label' => $de[0]['label'], 'value' => $de[0]['value']);