mirror of
https://github.com/FreshRSS/FreshRSS.git
synced 2026-07-30 00:36:58 -04:00
* Complete two source TODOs: negative UTC offset date parsing and PostgreSQL tag insert _noDelimit() stripped '-' and ':' from the whole ISO 8601 string, including a trailing UTC offset, so a negative offset such as "-05:00" silently lost its sign and corrupted the parsed date. Extract a trailing offset (or "Z") before stripping delimiters and re-append it unchanged. FreshRSS_TagDAOPGSQL::sqlIgnore() returned an empty string as a placeholder, so re-tagging an already-tagged entry produced a real SQL error on PostgreSQL instead of being a silent no-op like on MySQL/SQLite. Replace the sqlIgnore() keyword-injection approach with the sqlIgnoreConflict(string $sql): string pattern already used by EntryDAO, and implement it for PostgreSQL with "ON CONFLICT DO NOTHING". Fixes #7923. Co-Authored-By: Claude <noreply@anthropic.com> * Drop the negative-UTC-offset date fix, already covered by #9071 #9071 already fixes this exact bug in lib_date.php, so keeping this PR focused on the PostgreSQL tag-insert fix only. Co-Authored-By: Claude <noreply@anthropic.com> --------- Co-authored-by: Gerard Alvear <gerard.alvear@logiqd.me> Co-authored-by: Claude <noreply@anthropic.com>