Plán Hradu - API » Historie » Revize 2
Revize 1 (Tomáš Zikmund, 2023-10-15 16:19) → Revize 2/5 (Tomáš Zikmund, 2023-10-15 16:20)
h1. Plán Hradu - API h2. Plan (výchozí stav) - API calls * Výpis výsledku v obdobném stylu jako u search - agregace dle archivů, stránkování, až 20 itemů na 1 stránku Manuální přepnutí místnosti v roletce (Room) se musí projevit i přepnutím koresponudujícího patra * Zdrojové URL: http://147.228.173.159/plan h4. Výchozí inicializace při otevření záložky Plánu: * Kontrola autorizace uživatele: await fetch("http://147.228.173.159/api/isauth/", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Zajištění přístupu ke všem archivům inventáře (tj. 1595 Brussels až 2020 Prague): await fetch("http://147.228.173.159/api/inventories", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Načtení místností (objektů) umístěných na plánku - defaultně first floor, vrací všechny místnosti včetně souřadnic a umístění v svg grafice (ucelený seznam, včetně místností mimo defaultní patro) Některé místnosti nejsou vizualizovány v plánu - atribut: in_plan -> false Rozlišení daného patra: dle atributu: floor --Objekt s id:200 se v plánku nevyskytuje (in_plan = false) await fetch("http://147.228.173.159/api/plan/all", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Vykreslení SVG grafiky korespondujícího patra --Žádoucí v mapě vykreslovat pouze objekty s odpovídající hodnotou atributu floor Výchozí patro (first floor) - alternativně ground_floor, či second_floor: await fetch("http://147.228.173.159/api/downloads/first_floor", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Seznam místností v rámci plánu - nacházející se v daném patře. Pojí se s API call http://147.228.173.159/api/plan/all - provázání přes id Přehled místností/komnat, namísto souřadnic a korespondujících podlaží MŮŽE obsahovat pole zanořených objektů "Places" - pozice/umístění v dané komnatě Opět se jedná o ucelený seznam všech komnat: await fetch("http://147.228.173.159/api/plan/list", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Výpis záložek (tab view) archivů, v nichž se nalezená/odpovídající díla nacházejí. Atribut data představuje pole, v nichž je uložen počet děl v daném archivu (např. kolik děl je v archivu 1648 Prague apod.) (Zde není vypsáno nic) await fetch("http://147.228.173.159/api/graph?activeTab=0&page=1&tabbed=true&room=0&cursor=0&items=20%27&group=inventory", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); * Výchozí předvolba výpisu položek - Room/Place/Cursor=0 (Není zvolena žádná místnost) Na jednu stránku výpis až 20 položek Možnost agregace výsledků v URL přes zahrnutí atributu inventory (vynecháním se zobrazí kompletní seznam) - &inventory=1621_Prague_A (Zde není vypsáno nic) await fetch("http://147.228.173.159/api/search_v2?activeTab=0&page=1&tabbed=true&room=0&cursor=0&items=20", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); h4. Již vybraná místnost a poloha v místnosti: Vybrání komnaty 9 ("Spanish Hall (today Rudolf Gallery") a pozice 1 ("on the floor"). (komnata = room; pozice = place) Zvolen archiv 1621 Prague A, place 1 ("on the floor"), druhá stránka seznamu: await fetch("http://147.228.173.159/api/search_v2?activeTab=0&page=2&tabbed=true&room=9&place=1&cursor=20&items=20&inventory=1621_Prague_A", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); Výpis záložek (tab view) archivů, v nichž se nalezená/odpovídající díla nacházejí. Atribut data představuje pole, v nichž je uložen počet děl v daném archivu (např. kolik děl je v archivu 1648 Prague apod.) Vypis archivů: 1621 Prague A, 1621 Prague B, 1635 Prague, data: 24, 24, 15 (vše počty položek) await fetch("http://147.228.173.159/api/graph?activeTab=0&page=1&tabbed=true&room=9&place=1&cursor=0&items=20%27&group=inventory", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/plan", "method": "GET", "mode": "cors" }); Možnost přesměrování na detail položky (Item view - zde obraz PrgA-1253) - viz níže: await fetch("http://147.228.173.159/api/concordances/PrgA-1253", { "credentials": "include", "headers": {}, "referrer": "http://147.228.173.159/item/PrgA-1253", "method": "GET", "mode": "cors" }); Při vypisování aktuální komnaty a místa (room + places) se u objektu roomu vypisuje identifikátor pokoje a hodnota atributu label. Následuje POUZE hodnota atribut label objektu places, identifikátor se neuvádí.