/** * Return grupa serwisu object. * @return Miejsce */ public function GetGrupaSerwisu() { if ($this->_IsGrupaSerwisuObjSet == false) { $this->_GrupaSerwisuObj = Miejsca::GetMiejsce($this->Getmiejsca_grupa_serwisu(), Miejsca::MIEJSCE_RODZAJ_GRUPY, $this->GetIdJezyk()); $this->_IsGrupaSerwisuObjSet = true; } return $this->_GrupaSerwisuObj; }
/** * Returns a list of articles for given parameters. * @param int $gid_grupy_serwisu * @param int $id_jezyka * @return Artykul[] */ public static function PobierzArtykulyJezykiWDolGrupySerwisu($gid_grupy_serwisu, $id_jezyka = 1045) { $params = array((int) $id_jezyka, Config::$WebGID); $query = "SELECT * FROM #S#artykuly a WHERE CzyWiadomosc=0 AND IdJezyk=? AND serwisy_GID=?"; if (isset($gid_grupy_serwisu) && $gid_grupy_serwisu > 0) { $ideki = Miejsca::GetChildGIDs($gid_grupy_serwisu, Miejsca::MIEJSCE_RODZAJ_GRUPY, $id_jezyka); if (strrpos($ideki, ",") === strlen($ideki) - strlen(",")) { $ideki = substr($ideki, 0, strlen($ideki) - 1); } $query .= " AND miejsca_grupa_serwisu IN({$ideki})"; } $result = DataBase::GetDbInstance()->ExecuteQueryWithParams($query, $params); $list = array(); while ($row = DataBase::GetDbInstance()->FetchArray($result)) { $list[count($list)] = self::BuildArtykul($row); } return $list; }
/** * Synchronize passed element. * @param int $element * @param string $gid * @param boolean $del * @param boolean $force * @return string */ public function SynchronizeSiteElement($element, $gid, $del, $force) { if (!$this->checkwebext()) { return "Function unavailable in this version."; } try { if ($element < 1 || $element > 12) { return "Invalid element: {$element}"; } $ret = 0; WebServiceWeb::WS()->LoginEx(); switch ($element) { case self::SITE_ELEMENT_SERWIS: if ($del) { Serwisy::DeleteSerwis($gid); } else { $ret = WebServiceWeb::WS()->GetService(); } break; case self::SITE_ELEMENT_MIEJSCE_SERWISU: if ($del) { Miejsca::DeleteMiejsce($gid, Miejsca::MIEJSCE_RODZAJ_SERWISU); } else { $ret = WebServiceWeb::WS()->GetMiejsca(Miejsca::MIEJSCE_RODZAJ_SERWISU, $gid); } break; case self::SITE_ELEMENT_MIEJSCE_MENU: if ($del) { Miejsca::DeleteMiejsce($gid, Miejsca::MIEJSCE_RODZAJ_MENU); } else { $ret = WebServiceWeb::WS()->GetMiejsca(Miejsca::MIEJSCE_RODZAJ_MENU, $gid); } break; case self::SITE_ELEMENT_MIEJSCE_GRUPY: if ($del) { Miejsca::DeleteMiejsce($gid, Miejsca::MIEJSCE_RODZAJ_GRUPY); } else { $ret = WebServiceWeb::WS()->GetMiejsca(Miejsca::MIEJSCE_RODZAJ_GRUPY, $gid); } break; case self::SITE_ELEMENT_MENU: if ($del) { Menus::DeleteMenu($gid); } else { $ret = WebServiceWeb::WS()->GetMenu($gid); } break; case self::SITE_ELEMENT_ARTYKUL: if ($del) { Artykuly::DeleteArtykul($gid); } else { $ret = WebServiceWeb::WS()->GetArtykuly($gid); GaleriePozycje::IndeksujGaleriePozycjeDlaArtykulu($gid); } break; case self::SITE_ELEMENT_ARKUSZ_CSS: if ($del) { ArkuszeSkrypty::DeleteArkuszSkrypt($gid, ArkuszeSkrypty::ARKUSZ_RODZAJ_CSS); } else { $ret = WebServiceWeb::WS()->GetArkuszeSkrypty(ArkuszeSkrypty::ARKUSZ_RODZAJ_CSS, $gid); } break; case self::SITE_ELEMENT_ARKUSZ_JS: if ($del) { ArkuszeSkrypty::DeleteArkuszSkrypt($gid, ArkuszeSkrypty::ARKUSZ_RODZAJ_JS); } else { $ret = WebServiceWeb::WS()->GetArkuszeSkrypty(ArkuszeSkrypty::ARKUSZ_RODZAJ_JS, $gid); } break; case self::SITE_ELEMENT_BANER: if ($del) { Banery::DeleteBaner($gid); } else { $ret = WebServiceWeb::WS()->GetBanery($gid); } break; case self::SITE_ELEMENT_GRAFIKA: $pfn = base64_decode($gid); if ($del) { Grafiki::DeleteGrafike($gid); } else { if ($force) { Grafiki::DeleteGrafike($gid); } } $ret = WebServiceWeb::WS()->GetGrafiki($gid); break; case self::SITE_ELEMENT_GALERIA: if ($del) { Galerie::DeleteGaleria($gid); } else { $ret = WebServiceWeb::WS()->GetGalerie($gid); GaleriePozycje::IndeksujGaleriePozycjeDlaGalerii($gid); } break; case self::SITE_ELEMENT_GALERIA_POZYCJA: if ($del) { GaleriePozycje::DeleteGaleriaPozycja($gid); } break; case self::SITE_ELEMENT_OSOBA: if ($del) { Osoby::DeleteOsoba($gid); } else { $ret = WebServiceWeb::WS()->GetOsoby($gid); } break; default: break; } WebServiceWeb::WS()->Logout(); return "Element: {$element}, GID: {$gid}, ret: {$ret}"; } catch (Exception $ex) { Errors::LogError("WebAPI:SynchronizeSiteElement", $ex->getMessage()); return "ERROR"; } }
/** * Write the miejsca to database. * @param array $node * @param int $typ * @return null */ private function SaveMiejsce($node, $typ) { if (!$this->WS()) { return null; } $miejsce = new Miejsce($node["GID"], $node["jezyk"], $typ, $node["serwis"], $node["parent"], $node["lp"] == null ? 0 : $node["lp"], $node->NazwaGlowna, $node->Nazwa, $node->Grafika, $node->Link, $node->Inne, $node->Uwagi); Miejsca::AddEditMiejsce($miejsce); echo DataBase::GetDbInstance()->LastError(); }
/** * Return children collection. * @return Miejsce[] */ public function GetPodrzedne() { if ($this->_IsPodrzedneSet == false) { $this->_Podrzedne = Miejsca::GetMiejsca($this); $this->_IsPodrzedneSet = true; } return $this->_Podrzedne; }