Skip to content

Pluginad

Pluginad laiendavad Entu võimalusi objektitüübi tasandil. Plugin on tüübi plugin objekt, mis on lisatud objektitüübile selle plugin parameetri kaudu.

Loo plugina objektid Seadistamise alas, seejärel viida neile objektitüübi plugin parameetrist.

Pluginate kategooriad

Kasutajaliidese pluginad avatakse muutmissahtlis iframi vahekaardina kõrvuti standardse muutmisvormiga. Kasuta neid kohandatud loomise või muutamise kogemuste jaoks — CSV-importija, vormiassistent või integratsioon, mis tõmbab andmeid välisest teenusest. Plugin saab konteksti URL-päringuparameetritena ja renderdatakse Entu enda kasutajaliideses.

Veebikonksu pluginad on serveripoolsed päästikud. Kui objekt salvestatakse või luuakse, saadab Entu POST-päringu plugina URL-ile taustal ilma kasutajat blokeerimata. Kasuta neid andmete edastamiseks välistele süsteemidele, automatiseerimiste käivitamiseks, kolmanda osapoole teenustega sünkroonimiseks või mistahes tausta loogika käitamiseks, mis peaks reageerima andmemuutustele.

Plugina parameetrid

ParameeterKirjeldus
nameKuvanimetus, mis kuvatakse muutmissahtlis vahekaardi sildina (kasutajaliidese pluginate puhul).
typeMis tüüpi plugin see on — vaata pluginate tüüpe allpool.
urlKasutajaliidese pluginate jaoks — iframi vahekaardil laaditud URL. Veebikonksu pluginate jaoks — URL, mis saab POST-päringu.
new_windowTõeväärtus. Kui true, avatakse plugina URL uues brauseriaknas iframi vahekaardi asemel.

Pluginate tüübid

TüüpKäivitatakseMis juhtub
entity-editMuutmissahtel avati olemasoleva objekti jaoksPlugina URL laaditakse iframi vahekaardina. URL saab account, entity, locale, token.
entity-addMuutmissahtel avati uue objekti loomiseksPlugina URL laaditakse iframi vahekaardina. URL saab account, type, parent (kui lisatakse alam-objektina), locale, token.
entity-edit-webhookSeda tüüpi olemasolev objekt on salvestatudServer saadab POST-i { db, plugin, entity: { _id }, token } plugina URL-ile. Token on lühiealine JWT (1 min). Tulista-ja-unusta.
entity-add-webhookSeda tüüpi uus objekt on loodudSama serveripoolne POST nagu eespool, käivitatakse loomisel.

Kasutajaliidese plugina URL-parameetrid

Kui Entu laadib kasutajaliidese plugina iframes, lisab see plugina URL-ile need päringuparameetrid:

ParameeterKirjeldus
accountAndmebaasi identifikaator
entityObjekti ID (entity-edit jaoks)
typeObjektitüübi ID (entity-add jaoks)
parentÜlemobjekti ID (entity-add puhul alam-objekti loomisel)
localePraeguse kasutajaliidese keelekood
tokenLühiealine JWT token API-kõnede tegemiseks praeguse kasutaja nimel

Veebikonksu koorma

Veebikonksu pluginate jaoks (entity-edit-webhook, entity-add-webhook) saadab Entu POST-päringu selle JSON-koorma kujul:

json
{
  "db": "mydatabase",
  "plugin": "PLUGIN_ENTITY_ID",
  "entity": {
    "_id": "ENTITY_ID"
  },
  "token": "SHORT_LIVED_JWT"
}

token kehtib 1 minut ja seda saab kasutada objekti lugemiseks või muutmiseks API kaudu. Veebikonksu käivitamine on tulista-ja-unusta — Entu ei oota vastust ega proovi uuesti tõrke korral.

WARNING

Veebikonksu kohaletoimetamine pole garanteeritud. Kui sinu lõpp-punkt on maas või tagastab vea, läheb päring kaotsi. Rakenda oma korduskatsumise või järjekorra loogika, kui töökindlus on oluline.

Sisseehitatud pluginad

Entu pakub valmis pluginate komplekti, mida majutatakse aadressil github.com/entu/plugins. Seadista need, luues plugina objekti ja seades selle url-iks vastava plugina URL.

Skeemimallid

Kiire viis oma andmebaasi skeemi seadistamiseks nullist alustamata. Selle asemel, et käsitsi määratleda objektitüübid ja nende parameetrid, vali valmis tüüp jagatud malliteegist — näiteks Raamat, Dokument, Kaust või Audiovisuaalne salvestis — ja Entu kopeerib objektitüübi ning selle parameetrite definitsioonid (nimi, tüüp, järjekord jne) sinu andmebaasi. Saad parameetrite nimekirja üle vaadata enne importimist ja need, mida ei vaja, märkimata jätta.

CSV import

Objektide hulgiimport tabelist. Lae üles CSV-fail, vaata read eelvaates üle, vali importima minevad read ja vastenda iga CSV-veerg objekti parameetriga. Toetab laias valikus tekstikodeeringuid, seega töötavad vanemad süsteemidest pärit ekspordid ilma käsitsi teisendamiseta.

Discogsi import

Otsi muusika andmebaasist Discogs ja lisa väljaandeid otse oma kogusse. Sisesta esitaja või albumi pealkiri, sirvi tulemusi ja klõpsa Impordi — Entu loob objekti pealkirja, esitaja, sildi, aasta, formaadi, žanri, vöötkoodi ja muu metaandmetega automaatselt täidetuna.

Esteri import

Otsi ESTER ühiskataloogi, mida kasutavad Eesti kõrgkooli- ja avalikud raamatukogud. Leia raamatuid ja publikatsioone pealkirja, autori, ISBN-i või ISSN-i järgi ja impordi need täieliku bibliograafilise metaandmetega objektidena.

KML import

Impordi geograafilisi asukohti KML-failidest (formaat, mida kasutavad Google Earth ja enamik GIS-tööriistu). Pärast üleslaadimist kuvatakse kõigi failist leitud kohtade loend, vali, milliseid kaasata, ja need luuakse objektidena koos nime, kirjelduse ja koordinaatide parameetritega.

Juurdepääsukontroll

Plugina objektid kasutavad sama õiguste ja jagamise mudelit nagu kõik teised objektid. Muutmissahtel kuvab plugina vahekaarte ainult nende pluginate jaoks, millele praegusel kasutajal on juurdepääs.

Sea plugina objektil _sharing: domain, et see oleks saadaval kõigile autenditud kasutajatele, või _sharing: public, et avalikustada see isegi autentimata külastajatele. Jäta see private-ks ja määra selgesõnalised _viewer (või kõrgemad) õigused konkreetsetele isikutele või gruppidele, et piirata juurdepääsu.

See võimaldab teatud pluginaid avalikustada kõigile (nt CSV-importija kõigile toimetajatele), säilitades samal ajal teiste piiramise administraatoritele või konkreetsetele tiimidele.

TIP

Kasutaja vajab minimaalselt _viewer õigusi plugina objektil, et vahekaart ilmuks. Veebikonksu pluginad on serveripoolsed ega kuvata kasutajaliideses, kuid nende objekt järgib endiselt sama õigustemudelit haldamise eesmärkidel.