From 81874649f7f32798acf8d6de59b870865f8c2153 Mon Sep 17 00:00:00 2001 From: Florian Schlichting Date: Sat, 13 Jan 2018 23:22:12 +0100 Subject: [PATCH] external fetch: handle initial NULL of collection.modified --- inc/external-fetch.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/inc/external-fetch.php b/inc/external-fetch.php index a65e6e02..1dc02bce 100644 --- a/inc/external-fetch.php +++ b/inc/external-fetch.php @@ -49,7 +49,7 @@ function fetch_external ( $bind_id, $min_age = '1 hour', $ua_string ) $sql = 'SELECT collection.*, collection.dav_name AS path, dav_binding.external_url AS external_url FROM dav_binding LEFT JOIN collection ON (collection.collection_id=bound_source_id) WHERE bind_id = :bind_id'; $params = array( ':bind_id' => $bind_id ); if ( strlen ( $min_age ) > 2 ) { - $sql .= ' AND collection.modified + interval :interval < NOW()'; + $sql .= ' AND ( collection.modified + interval :interval < NOW() OR collection.modified is NULL )'; $params[':interval'] = $min_age; } $sql .= ' ORDER BY modified DESC LIMIT 1'; @@ -111,7 +111,7 @@ function update_external ( $request ) dbg_error_log("external", "external resource cannot be fetched without curl, please install curl"); return ; } - $sql = 'SELECT bind_id, external_url as url from dav_binding LEFT JOIN collection ON (collection.collection_id=bound_source_id) WHERE dav_binding.dav_name = :dav_name AND collection.modified + interval :interval < NOW()'; + $sql = 'SELECT bind_id, external_url as url from dav_binding LEFT JOIN collection ON (collection.collection_id=bound_source_id) WHERE dav_binding.dav_name = :dav_name AND ( collection.modified + interval :interval < NOW() OR collection.modified is NULL )'; $qry = new AwlQuery( $sql, array ( ':dav_name' => $request->dav_name(), ':interval' => $c->external_refresh . ' minutes' ) ); dbg_error_log("external", "checking if external resource needs update"); if ( $qry->Exec('DAVResource') && $qry->rows() > 0 && $row = $qry->Fetch() ) {