Make the author field nullable #117

Merged
AmineL merged 3 commits from davidoskky/ReaderForSelfoss-multiplatform:author into master 2022-12-28 14:25:38 +00:00
5 changed files with 12 additions and 5 deletions

View File

@ -46,7 +46,7 @@ data class ParecelableItem(
val link: String,
val sourcetitle: String,
val tags: String,
val author: String
val author: String?
) : Parcelable {
companion object {

View File

@ -73,7 +73,7 @@ class SelfossModel {
val sourcetitle: String,
@Serializable(with = TagsListSerializer::class)
val tags: List<String>,
val author: String
val author: String?
) {
// TODO: maybe find a better way to handle these kind of urls
fun getLinkDecoded(): String {
@ -104,7 +104,7 @@ class SelfossModel {
fun sourceAuthorAndDate(): String {
var txt = this.sourcetitle.getHtmlDecoded()
if (this.author.isNotEmpty()) {
if (!this.author.isNullOrBlank()) {
txt += " (by ${this.author}) "
}
txt += DateUtils.parseRelativeDate(this.datetime)

View File

@ -511,6 +511,7 @@ class Repository(
item.link,
item.sourcetitle,
item.tags.joinToString(","),
item.author,
item.id.toString()
)

View File

@ -0,0 +1,6 @@
CREATE TABLE ITEM_BACKUP AS SELECT `id`, `datetime`, `title`, `content`,
Review

This is unnecessary.

The data will be updated if needed with the update of updateItem you made.

Droping the column and recreating it should by enough.

This is unnecessary. The data will be updated if needed with the update of `updateItem` you made. Droping the column and recreating it should by enough.
Review

Dropping columns was introduced in version 3.35 https://sqlite.org/changes.html

Dropping columns was introduced in version 3.35 https://sqlite.org/changes.html
`unread`, `starred`, `thumbnail`, `icon`, `link`, `sourcetitle`,
`tags` FROM ITEM;
ALTER TABLE ITEM_BACKUP ADD COLUMN `author` TEXT;
DROP TABLE ITEM;
ALTER TABLE ITEM_BACKUP RENAME TO ITEM;

View File

@ -10,7 +10,7 @@ CREATE TABLE ITEM (
`link` TEXT NOT NULL,
`sourcetitle` TEXT NOT NULL,
`tags` TEXT NOT NULL,
`author` TEXT NOT NULL,
`author` TEXT,
PRIMARY KEY(`id`)
);
@ -31,4 +31,4 @@ deleteItemsWhereSource:
DELETE FROM ITEM WHERE `sourcetitle` = ?;
updateItem:
UPDATE ITEM SET `datetime` = ?, `title` = ?, `content` = ?, `unread` = ?, `starred` = ?, `thumbnail` = ?, `icon` = ?, `link` = ?, `sourcetitle` = ?, `tags` = ? WHERE `id` = ?;
UPDATE ITEM SET `datetime` = ?, `title` = ?, `content` = ?, `unread` = ?, `starred` = ?, `thumbnail` = ?, `icon` = ?, `link` = ?, `sourcetitle` = ?, `tags` = ?, `author` = ? WHERE `id` = ?;