/** * Get a list of baner to be added or remove. Write the baner to database. * @param int $gid * @return int */ public function GetBanery($gid = 0) { if (!$this->WS()) { return null; } try { $params = array('sid' => $this->_sid, 'gid' => $gid); $result = $this->WS()->getSC()->__soapCall("GetBanery", array($params)); if ($result->GetBaneryResult->Status != 0) { Errors::LogError("WebService:GetBanery", "Response: " . $result->GetBaneryResult->Message); return 0; } $xml = simplexml_load_string($result->GetBaneryResult->XMLContent); $cnt = 0; foreach ($xml->children() as $node) { $ban = new Baner($node["GID"], $node["jezyk"], $node["serwis"], $node["grupaSerwisu"], $node["miejsceSerwisu"], $node->Status, $node->DataDodania, $node->DataWygasniecia, $node->DataEmisji, $node->UrlDocelowy, $node->GIDGrafiki, $node->Embed); Banery::AddEditBaner($ban); echo DataBase::GetDbInstance()->LastError(); $cnt++; } return $cnt; } catch (Exception $ex) { Errors::LogError("WebService:GetBanery", $ex->getMessage()); return 0; } }
/** * 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"; } }