**/ define('WEBAPI_CURRENCY_INCORRECT_SHORTCUT', 'Błędny parametr SHORTCUT.'); /** * Klasa StCurrencyBackendWebApi * * @package stWebApiPlugin * @subpackage libs **/ class stCurrencyBackendWebApi extends autoStCurrencyBackendWebApi { /** * Aktualizacja danych * * @param object $object obiekt z parametrami * @return object obiekt z true * @throws WEBAPI_INCORRECT_ID WEBAPI_UPDATE_ERROR WEBAPI_REQUIRE_ERROR * @todo dodać walidacje danych **/ public function UpdateCurrencyExchangeByShortcut($object) { stWebApi::getLogin($object->_session_hash, 'webapi_write'); $this->TestAndValidateUpdateCurrencyExchangeByShortcutFields($object); $c = new Criteria(); $c->add(CurrencyPeer::SHORTCUT, $object->shortcut); $item = CurrencyPeer::doSelectOne($c); if ($item) { $this->setFieldsForUpdateCurrencyExchangeByShortcut($object, $item); //Zapisywanie danych do bazy try { $item->save(); } catch (Exception $e) { throw new SoapFault('2', sprintf($this->__(WEBAPI_UPDATE_ERROR), $e->getMessage())); } // Zwracanie danych $object = new StdClass(); $object->_update = 1; return $object; } else { throw new SoapFault('1', $this->__(WEBAPI_CURRENCY_INCORRECT_SHORTCUT)); } } /** * Pobieranie danych * * @param object $object obiekt z parametrami * @return object okiekt z danymi * @throws WEBAPI_INCORRECT_ID WEBAPI_REQUIRE_ERROR **/ public function GetCurrencyByShortcut($object) { if (isset($object->_culture)) $this->__setCulture($object->_culture); stWebApi::getLogin($object->_session_hash, 'webapi_read'); $this->TestAndValidateGetCurrencyByShortcutFields($object); $c = new Criteria(); $c->add(CurrencyPeer::SHORTCUT, $object->shortcut); $item = CurrencyPeer::doSelectOne($c); if ($item) { $object = new StdClass(); $this->getFieldsForGetCurrencyByShortcut($object, $item); return $object; } else { throw new SoapFault('1', $this->__(WEBAPI_CURRENCY_INCORRECT_SHORTCUT)); } } }