mirror of
https://github.com/FreshRSS/FreshRSS.git
synced 2026-05-18 13:24:37 -04:00
[sqlite export] add username and timestamp (#8169)
* [sqlite export] add username and timestamp add username and timestamp to sqlite user export, similar to the ZIP export. Useful for archiving purposes. * Fix case of backups and other DB types https://github.com/FreshRSS/FreshRSS/pull/8169#issuecomment-3476079108 --------- Co-authored-by: Alexandre Alapetite <alexandre@alapetite.fr>
This commit is contained in:
@@ -751,7 +751,14 @@ class FreshRSS_importExport_Controller extends FreshRSS_ActionController {
|
||||
Minz_Error::error(404);
|
||||
return;
|
||||
}
|
||||
|
||||
$this->view->sqlitePath = $path;
|
||||
$this->view->sqliteName = basename($path);
|
||||
if ($this->view->sqliteName === 'db.sqlite') {
|
||||
$username = Minz_User::name() ?? '_';
|
||||
$date = date('Y-m-d_H-i-s', filemtime($path) ?: time());
|
||||
$this->view->sqliteName = 'freshrss_' . $username . '_' . $date . '_db.sqlite';
|
||||
}
|
||||
$this->view->_layout(null);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -92,6 +92,7 @@ class FreshRSS_View extends Minz_View {
|
||||
/** @var null|array<array{name:string,size:int,mtime:int}> */
|
||||
public ?array $sqliteArchives = null;
|
||||
public string $sqlitePath;
|
||||
public string $sqliteName;
|
||||
|
||||
// Form login
|
||||
public int $cookie_days;
|
||||
|
||||
@@ -3,7 +3,7 @@ declare(strict_types=1);
|
||||
/** @var FreshRSS_View $this */
|
||||
@ob_end_clean(); // Ensure no buffer
|
||||
header('Content-Type: application/vnd.sqlite3');
|
||||
header('Content-Disposition: attachment; filename="' . basename($this->sqlitePath) . '"');
|
||||
header('Content-Disposition: attachment; filename="' . $this->sqliteName . '"');
|
||||
header('Cache-Control: private, no-store, max-age=0');
|
||||
header('Last-Modified: ' . gmdate('D, d M Y H:i:s \\G\\M\\T', @filemtime($this->sqlitePath) ?: 0));
|
||||
header('Content-Length: ' . (@filesize($this->sqlitePath) ?: 0));
|
||||
|
||||
Reference in New Issue
Block a user