Projekt

Obecné

Profil

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í.