/** * Basic access check for writing data, checks for same shopid, should be overridden if field oxshopid does not exist * * @param oxBase $oObj loaded shop object * @param array $aData fields to be written, null for default * * @throws Exception on now access * * @return null */ public function checkWriteAccess($oObj, $aData = null) { return; $myConfig = oxConfig::getInstance(); if (!$myConfig->getConfigParam('blMallUsers')) { parent::checkWriteAccess($oObj, $aData); } }
/** * check for write access for id * * @param oxBase $oObj loaded shop object * @param array $aData fields to be written, null for default * * @throws Exception on now access * * @return null */ public function checkWriteAccess($oObj, $aData = null) { return; if ($oObj->oxorderarticles__oxordershopid->value != oxConfig::getInstance()->getShopId()) { throw new Exception(oxERPBase::$ERROR_USER_NO_RIGHTS); } parent::checkWriteAccess($oObj, $aData); }
/** * Imports order status. Returns import status (TRUE if success) * * @param object $oType type object * @param object $aRow db row array * * @return bool */ protected function _importOrderStatus(oxERPType $oType, $aRow) { $oOrderArt = oxNew("oxorderarticle", "core"); $oOrderArt->load($aRow['OXID']); if ($oOrderArt->getId()) { try { if ($this->_sCurrVersion != "0.1") { $oType->checkWriteAccess($oOrderArt->getId()); } // store status $aStatuses = unserialize($oOrderArt->oxorderarticles__oxerpstatus->value); $oStatus = new stdClass(); $oStatus->STATUS = $aRow['OXERPSTATUS_STATUS']; $oStatus->date = $aRow['OXERPSTATUS_TIME']; $oStatus->trackingid = $aRow['OXERPSTATUS_TRACKID']; $aStatuses[$aRow['OXERPSTATUS_TIME']] = $oStatus; $oOrderArt->oxorderarticles__oxerpstatus = new oxField(serialize($aStatuses), oxField::T_RAW); $oOrderArt->save(); return true; } catch (Exception $ex) { return false; } } return false; }