mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-02 13:32:51 +00:00
Remove items/attachments from index on delete
This commit is contained in:
parent
64c96942a9
commit
0ba1736bc8
@ -302,13 +302,17 @@ object OItem {
|
||||
.map(AddResult.fromUpdate)
|
||||
|
||||
def deleteItem(itemId: Ident, collective: Ident): F[Int] =
|
||||
QItem.delete(store)(itemId, collective)
|
||||
QItem
|
||||
.delete(store)(itemId, collective)
|
||||
.flatTap(_ => fts.removeItem(logger, itemId))
|
||||
|
||||
def getProposals(item: Ident, collective: Ident): F[MetaProposalList] =
|
||||
store.transact(QAttachment.getMetaProposals(item, collective))
|
||||
|
||||
def deleteAttachment(id: Ident, collective: Ident): F[Int] =
|
||||
QAttachment.deleteSingleAttachment(store)(id, collective)
|
||||
QAttachment
|
||||
.deleteSingleAttachment(store)(id, collective)
|
||||
.flatTap(_ => fts.removeAttachment(logger, id))
|
||||
|
||||
def setAttachmentName(
|
||||
attachId: Ident,
|
||||
|
@ -87,6 +87,10 @@ trait FtsClient[F[_]] {
|
||||
)
|
||||
)
|
||||
|
||||
def removeItem(logger: Logger[F], itemId: Ident): F[Unit]
|
||||
|
||||
def removeAttachment(logger: Logger[F], attachId: Ident): F[Unit]
|
||||
|
||||
/** Clears the index – removes everything. */
|
||||
def clearAll(logger: Logger[F]): F[Unit]
|
||||
|
||||
@ -113,6 +117,12 @@ object FtsClient {
|
||||
def indexData(logger: Logger[F], data: Stream[F, TextData]): F[Unit] =
|
||||
logger.warn("Full-text search is disabled!")
|
||||
|
||||
def removeItem(logger: Logger[F], itemId: Ident): F[Unit] =
|
||||
logger.warn("Full-text search is disabled!")
|
||||
|
||||
def removeAttachment(logger: Logger[F], attachId: Ident): F[Unit] =
|
||||
logger.warn("Full-text search is disabled!")
|
||||
|
||||
def clearAll(logger: Logger[F]): F[Unit] =
|
||||
logger.warn("Full-text search is disabled!")
|
||||
|
||||
|
@ -42,6 +42,14 @@ final class SolrFtsClient[F[_]: Effect](
|
||||
}
|
||||
} yield ()).compile.drain
|
||||
|
||||
def removeItem(logger: Logger[F], itemId: Ident): F[Unit] =
|
||||
logger.debug(s"Remove item '${itemId.id}' from index") *>
|
||||
solrUpdate.delete(s"${Field.itemId.name}:${itemId.id}")
|
||||
|
||||
def removeAttachment(logger: Logger[F], attachId: Ident): F[Unit] =
|
||||
logger.debug(s"Remove attachment '${attachId.id}' from index") *>
|
||||
solrUpdate.delete(s"${Field.attachmentId.name}:${attachId.id}")
|
||||
|
||||
def clearAll(logger: Logger[F]): F[Unit] =
|
||||
logger.info("Deleting complete full-text index!") *>
|
||||
solrUpdate.delete("*:*")
|
||||
|
@ -146,7 +146,7 @@ viewSearchBar flags model =
|
||||
div
|
||||
[ classList
|
||||
[ ( "invisible hidden", not model.menuCollapsed )
|
||||
, ( "ui secondary menu container", True )
|
||||
, ( "ui secondary stackable menu container", True )
|
||||
]
|
||||
]
|
||||
[ a
|
||||
|
Loading…
x
Reference in New Issue
Block a user