/** * Set handled data item. * * @param [[@doctodo param_type:value]] $value [[@doctodo param_description:value]] * * @return [[@doctodo return_type:setHandledDataItem]] [[@doctodo return_description:setHandledDataItem]] */ public function setHandledDataItem($value) { if (isset($this->_pairedDataItem)) { $this->pairedDataItem->handledDataItem = $value; } if (!$this->_handledDataItem && $value) { $this->dataSource->reduceRemaining($this); } $this->clean(); return $this->_handledDataItem = $value; }
/** * [[@doctodo method_description:reduceRemaining]]. * * @param cascade\components\dataInterface\DataItem $dataItem [[@doctodo param_description:dataItem]] */ public function reduceRemaining(DataItem $dataItem) { $n = 0; // if foreign (handle does foreign -> local) if ($dataItem->isForeign && in_array($this->settings['direction'], ['to_local', 'both'])) { $n++; } // if local (handle does local -> foreign) if (!$dataItem->isForeign && in_array($this->settings['direction'], ['to_foreign', 'both'])) { $n++; } $this->task->reduceRemaining($n); }