ReeGO webFace

Služba určená pro rychlé a jednoduché nasazení a publikování obsahu z aplikace ReeGO, jako jsou výpisy nemovitostí (zakázek), poptávek, seznam makléřů, stránek s detaily apod. na váš stávající web.

Náročnost nasazení:

malá
Časová náročnost nasazení:
několik minut

  1. Funguje na principu online: dotaz - odpověď během prohlížení stránek.
  2. Jednoduše vložíte krátký PHP kód do vašeho stávajícího webu. O zbytek se postará ReeGO server.
  3. Získaná data jsou 100% validní dle standardů W3C.
  4. Srozumitelný DIV layout pro grafické přizpůsobení CSS. Neomezené možnosti pro vaše grafické návrháře.
  5. Nejedná se o vložený <iframe />. Roboti google a jiné vyhledávače tak indexují generované obsahy na rozdíl od metod s vloženým <iframe />.

© ReeGO Development s.r.o.
Všechny dokumenty nacházející se v této sekci slouží jako manuál a technická dokumentace pro zákazníky systémů ReeGO. Žádná část manuálu nesmí být kopírována ani přenášena jakýmkoliv způsobem (elektronicky, mechanicky, fotograficky či jinak), ani uveřejněna bez předchozí dohody a písemného svolení ReeGO Development s.r.o. Výjimku tvoří pouze zdrojové kódy příkladů, které pro účely tvorby programového kódu mohou být kopírovány i měněny.

Metoda advertList - získání výpisu nemovitostí

Je nejčastěji volaná metoda. Generuje <div> dlaždice výpisu nabídky. Explicitně lze konfigurovat polem ‚switches‘.

Konfigurace:

Pole „switchts“ můžeme použít, nebo nemusíme. Konfigurace pomocí pole switches je nepovinná. Pokud konfigurační pole vynecháte, bude vrácen výpis ve výchozím nastavení. V příkladu č. 1 je právě toto pole vynechané a vypisuje se tedy výchozím způsobem.

Asociativní pole „switches“ může obsahovat tři prvky. Prvek „own“, „order“ a „other“.

  1. Prvek „own “ je další asociativní pole s prvky rozepsanými níže. V poli „own“ použijte takové prvky, které chcete přetížit oproti výchozí konfiguraci.
  2. Pole „order“ je indexové pole prvků, které systému říká, v jakém pořadí a co se má na výstupu vykreslovat. Např. „order“ => array („pic“, „title“) nařizuje systému vykreslit nejprve blok s fotkou, teprve pak blok s titulkem a dále už nic víc. Použijete-li pole order, tak systém vykreslí jen ty bloky, které jsou v tomto poli uvedeny. Žádné bloky, které byly zapnuty v poli „own“ a nejsou uvedeny v poli „order“, nebudou vykresleny.
  3. Pole „other“ je opět asociativní pole prvků „maxRow“, “ attrInRow“ a „noResult“.

    • Hodnota prvku „maxRow“ určuje maximální počet dlaždic, nebo chcete-li řádků výpisu, který se má zobrazovat na jedné stránce. Minimální možný počet dlaždic jsou tři na jednu stránku a maximální 100. Bude-li uvedená hodnota nižší nebo vyšší, než je povolená mez, bude vykreslen mezní minimální nebo maximální počet dlaždic.
    • Prvek „attrInRow“ může obsahovat HTML atributy, které budou přidány do <div> bloku každé dlaždice. Např.: atribut onclick=““.
    • Prvek „noResult“ může obsahovat HTML kód, který bude zobrazován při nenalezení nebo nezobrazení žádné dlaždice. Například v momentě, kdy nastavení filtru hledaných záznamů žádné záznamy neodpovídají.
     

Struktura pole „switches“:

$switches  =  array(
"own" => array() ,
"order" => array(),
"other" => array()
)


Struktura pole „own“ a všechny prvky, které lze použít (na příkladu je zároveň znázorněná výchozí konfigurace zobrazení):

"own" => array(
"id" => array(true,'Číslo zakázky: ',false,'',true), // číslo zakázky
"title" => array(30,'',true,"Titulek",true), // titulek zakázky (primární jazyk)
"titleEn" => array(0,'',true,"Titulek anglicky",true), // titulek (alternativní jazyk)
"titleGe" => array(0), // titulek (alternativní jazyk)
"state" => array(20), // stav zakázky
"excluzive" => array(20), // exkluzivita
"tip" => array(20), // označení „náš tip“
"price" => array(50,'',true,"Cena",true), // cena zakázky
"priceNote" => array(100), // poznámka k ceně
"type" => array(10), // typ nemovitosti
"function" => array(10), // typ zakázky
"pic" => array(60,'',false,false,true), // titulní obrázek *)
"localityBasic" => array(0), // lokalita nem. (celá adresa - veřejná)
"localityObject" => array(0), // lokalita nem. (celá adresa)
"localityUlice" => array(20), // lokalita jen ulice
"localityCobce" => array(20), // lokalita jen část obce
"localityObec" => array(20), // lokalita jen obec
"localityOkres" => array(20), // lokalita jen okres
"description" => array(250), // podrobný popis nem. (prim. jazyk)
"descriptionEn" => array(0), // podrobný popis alt. jazyk
"descriptionGe" => array(0), // podrobný popis alt. jazyk
"brokerPic" => array(60,'',false,false,true), // obrázek makléře *)
"brokerName" => array(true), // jméno makléře
"brokerEmail" => array(true,'',false,false,true), // email makléře
"brokerGsm" => array(true), // mobil makléře
"brokerRank" => array(true,'',false,false,true), // zařazení makléře
"link" => array(true,'',false,false,true) // odkaz na detail nem. **)
)

Každým prvkem pole „own“ je opět pole, které může mít až 6 dalších prvků. Jejich struktura je znázorněna níže: 

  1. První prvek zpravidla bývá maximální délka řetězce při vykreslování (datový typ „int“). Může se použít „true“ (bool). Je-li hodnota nastavena „true“, text se zobrazuje a nezkracuje. Je-li hodnota prvního prvku „false“, blok se nebude vykreslovat vůbec. Ostatní prvky jsou v tomto případě bezpředmětné. U obrázků (a položek v předchozí struktuře označenými *) se tímto prvkem definuje šířka obrázku.
  2. V druhém prvku můžete použít libovolný řetězec, který se má zobrazovat před každým blokem. V řetězci můžete použít HTML kód, popř. i inline javascript.
  3. Třetí prvek pole definuje zobrazení seřazovacího tlačítka sestupně / vzestupně v záhlaví („true“ znamená zobrazovat, „false“ nebo nenastaveno znamená nezobrazovat). Podmínkou zobrazení tlačítek v záhlaví je, že nepotlačíte blok záhlaví v poli prvku čtvrtého. Seřazovací tlačítka podporují pouze tyto prvky pole „own“: title, titleEn, titleGe, price, state, excluzive a brokerName.
  4. Čtvrtý prvek potlačuje záhlaví („true“ – nezobrazovat záhlaví, „false“ nebo nenastaveno znamená zobrazovat záhlaví).
  5. Pátý prvek definuje, jak má být zobrazena položka hypertextového linku odkazujícího na detail („true“ zobrazovat jako odkaz, „false“ nebo nenastaveno zobrazovat jako prostý text).
  6. Šestý prvek může obsahovat řetězec, který se vkládá do prostoru atributů daného bloku. Tzn., že může obsahovat např. inline styl nebo inline javascript. Např. můžete přidat javascript na událost toho bloku (onclick=“vaseJsFunkce(this); return false; “). 


 
Na praktických ukázkách vám ukáži napojení webu službou webFace a volání metody advertList. Pro názornost jsem připravil několik příkladů. Všechny příklady jsou realizovány na nezávislém www hostingu. U příkladů je vždy k dispozici odkaz na výsledek a zároveň jsou připojené i zdrojové soubory PHP a CSS. Zdrojové kódy si můžete stáhnout v zip souboru. Uvedené příklady na sebe navazují a vedou k vytvoření jednoduchého statického realitního webu na platformě apache s podporou PHP5 bez použití databáze. Máme rádi jQuery, proto knihovnu jQuery linkujeme do každé stránky. Pro funkčnost stránek není jQuery knihovna nutná, ale v našem seriálu jí v několika příkladech využijeme. Třeba pro ReeGO webFace našeptávače a v připravovaném chatu s klienty bude nutné použít javascriptové knihovny doJaRee, která vyžaduje implementaci jQuery.     

Nejprve si ukážeme chování výpisu bez konfigurace za použití velmi jednoduchého CSS stylu.

Příklad 1http://demokancelar.soundpro.cz/vypis1/vypis.php

PHP kód: náhled
CSS kód:  náhled


V dalším příkladu vám ukáži, jak konfigurovat možnosti zobrazení dlaždice výpisu. Necháme zobrazovat titulek zakázky, obrázek o šířce 300px a popis nemovitosti zkrácený na 150 znaků. Nastavíme šest dlaždic na stránku a lehce vylepšíme grafický styl pomocí CSS.

Příklad 2: http://demokancelar.soundpro.cz/vypis2/vypis.php

PHP kód: náhled
CSS kód: náhled

V dalším příkladu potlačíme textový popisek „Titulní obrázek“ (může být zbytečný), přidáme cenu, odkaz „více“, možnost řazení podle ceny a zrušíme v záhlaví řazení podle titulku. V CSS nastavíme bustu pro zakázky bez obrázku, stanovíme pevnou šířku stránky, vycentrujeme blok stránky na střed a nastavíme větší velikost písma u ceny v dlaždici.

Příklad 3: http://demokancelar.soundpro.cz/vypis3/vypis.php

PHP kód: náhled
CSS kód: náhled

Ke každému <div> bloku jednotlivých položek můžeme připojit atributy pro různé účely, včetně javascript událostí, např. onclick=““. V dalším příkladu připojím událost onmouseover na blok s titulkem, která vyvolá vypsání „Hello“ javascript funkcí altert. V této ukázce přejeďte kurzorem myši přes blok titulku. Dále vypnu aktivní odkaz u všech položek kromě obrázku a textu „Více“.  Atributy pro celou dlaždici je možné přidat v asociativním poli „other“ prvek „attrInRow“.

Příklad 4: http://demokancelar.soundpro.cz/vypis4/vypis.php

PHP kód: náhled
CSS kód: náhled