Esempio n. 1
0
 function createPrice($currencyCode, $value, $type)
 {
     if (is_object($this->ContentObjectAttribute) && $this->currencyByCode($currencyCode)) {
         return eZMultiPriceData::create($this->ContentObjectAttribute->attribute('id'), $this->ContentObjectAttribute->attribute('version'), $currencyCode, $value, $type);
     }
     return false;
 }
        // update objects
        $offset = 0;
        $limit = 1000;
        $cli->output('Converting', false);
        while ($offset < $objectListCount) {
            $objectList = eZContentObject::fetchSameClassList($class->attribute('id'), true, $offset, $limit);
            $offset += count($objectList);
            foreach ($objectList as $object) {
                $contentObjectID = $object->attribute('id');
                $objectVersions =& $object->versions();
                foreach ($objectVersions as $objectVersion) {
                    $version = $objectVersion->attribute('version');
                    $objectAttributeList = eZContentObjectAttribute::fetchSameClassAttributeIDList($priceClassAttributeID, true, $version, $contentObjectID);
                    foreach ($objectAttributeList as $objectAttribute) {
                        $priceValue = $objectAttribute->attribute('data_float');
                        $multiprice = eZMultiPriceData::create($objectAttribute->attribute('id'), $version, $defaultCurrencyCode, $priceValue, eZMultiPriceData::VALUE_TYPE_CUSTOM);
                        $multiprice->store();
                        $objectAttribute->setAttribute('data_type_string', 'ezmultiprice');
                        $objectAttribute->setAttribute('data_float', 0);
                        $objectAttribute->setAttribute('sort_key_int', 0);
                        $objectAttribute->store();
                    }
                }
                $cli->output('.', false);
                ++$convertedObjectsCount;
            }
        }
        $cli->output(' ');
    }
}
// create/update autoprices.