items back in personal data download, chunked this time
This commit is contained in:
parent
f20464112f
commit
8f31935b7d
2 changed files with 29 additions and 3 deletions
2
boot.php
2
boot.php
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
set_time_limit(0);
|
set_time_limit(0);
|
||||||
|
|
||||||
define ( 'FRIENDIKA_VERSION', '2.1.925' );
|
define ( 'FRIENDIKA_VERSION', '2.1.926' );
|
||||||
define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
|
define ( 'DFRN_PROTOCOL_VERSION', '2.1' );
|
||||||
define ( 'DB_UPDATE_VERSION', 1044 );
|
define ( 'DB_UPDATE_VERSION', 1044 );
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@ function uexport_init(&$a) {
|
||||||
}
|
}
|
||||||
$contact = array();
|
$contact = array();
|
||||||
$r = q("SELECT * FROM `contact` WHERE `uid` = %d ",
|
$r = q("SELECT * FROM `contact` WHERE `uid` = %d ",
|
||||||
local_user()
|
intval(local_user())
|
||||||
);
|
);
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
|
@ -28,7 +28,7 @@ function uexport_init(&$a) {
|
||||||
|
|
||||||
$profile = array();
|
$profile = array();
|
||||||
$r = q("SELECT * FROM `profile` WHERE `uid` = %d ",
|
$r = q("SELECT * FROM `profile` WHERE `uid` = %d ",
|
||||||
local_user()
|
intval(local_user())
|
||||||
);
|
);
|
||||||
if(count($r)) {
|
if(count($r)) {
|
||||||
foreach($r as $rr)
|
foreach($r as $rr)
|
||||||
|
@ -41,6 +41,32 @@ function uexport_init(&$a) {
|
||||||
header("Content-type: text/json");
|
header("Content-type: text/json");
|
||||||
echo str_replace('\\/','/',json_encode($output));
|
echo str_replace('\\/','/',json_encode($output));
|
||||||
|
|
||||||
|
$r = q("SELECT count(*) as `total` FROM `item` WHERE `uid` = %d ",
|
||||||
|
intval(local_user())
|
||||||
|
);
|
||||||
|
if(count($r))
|
||||||
|
$total = $r[0]['total'];
|
||||||
|
|
||||||
|
// chunk the output to avoid exhausting memory
|
||||||
|
|
||||||
|
for($x = 0; $x < $total; $x += 500) {
|
||||||
|
$item = array();
|
||||||
|
$r = q("SELECT * FROM `item` WHERE `uid` = %d LIMIT %d, %d",
|
||||||
|
intval(local_user()),
|
||||||
|
intval($x),
|
||||||
|
intval(500)
|
||||||
|
);
|
||||||
|
if(count($r)) {
|
||||||
|
foreach($r as $rr)
|
||||||
|
foreach($rr as $k => $v)
|
||||||
|
$item[][$k] = $v;
|
||||||
|
}
|
||||||
|
|
||||||
|
$output = array('item' => $item);
|
||||||
|
echo str_replace('\\/','/',json_encode($output));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
killme();
|
killme();
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in a new issue