public function createHeader() { $tools = new Idealo_Universal_Tools_IdealoTools(); $schema = $this->quoting . Mage::helper('csvexport')->__('Article number') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Article name') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Manufacturer') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Category') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Short description') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Long description') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Image(s)') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Deeplink') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Price') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('EAN') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Article number in shop') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Weight') . $this->quoting . $this->seperator; foreach ($this->shipping as $ship) { if ($ship['active'] == '1') { foreach ($this->payment as $payment) { if ($payment['active'] == '1' && strpos($payment['country'], $ship['title']) !== false) { $schema .= $this->quoting . $payment['title'] . '_' . $ship['title'] . $this->quoting . $this->seperator; } } } } $schema .= $this->quoting . Mage::helper('csvexport')->__('portocomment') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Base price') . $this->quoting . $this->seperator; $attribute_list = explode(';', $tools->getValue('csvexport/extra/extra_attributes')); $schema .= $this->quoting . Mage::helper('csvexport')->__('extraAttributes') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Delivery time') . $this->quoting . $this->seperator . $this->quoting . Mage::helper('csvexport')->__('Manufacturer Part Number') . $this->quoting . $this->seperator; if ($this->minOrderPrice != '') { $schema .= $this->quoting . Mage::helper('csvexport')->__('additional costs due to minimum order value') . $this->quoting . $this->seperator; } $schema .= "\n"; setlocale(LC_ALL, 'de_DE'); $date = date("d.m.y H:i:s"); $schema .= $this->quoting . Mage::helper('csvexport')->__('Feed last generated at') . ' ' . $date . ' ' . Mage::helper('csvexport')->__('hours') . $this->quoting . $this->seperator; $schema .= "\n"; $schema .= $this->quoting . Mage::helper('csvexport')->__('idealo - csv export module v.') . VERSION_NUMBER_IDEALO . ' ' . Mage::helper('csvexport')->__('for Magento 1.4.x - 1.7.0 from') . ' ' . VERSION_DATE . $this->quoting . $this->seperator; $schema .= "\n"; $path = substr(__FILE__, 0, -52); $fp = fopen($path . 'export/' . $this->filename, "w+"); fputs($fp, $schema); fclose($fp); }
public function runExport() { $tools = new Idealo_Universal_Tools_IdealoTools(); if ($tools->getValue('csvexport/cron/cron') == '1') { $connection = Mage::getSingleton('core/resource')->getConnection('core_read'); $filename = $tools->getValue('csvexport/file/name'); $select = "SELECT count(*) FROM `" . TABLE_PREFIX . "catalog_product_entity`;"; $art_number = $connection->fetchAll($select); $art_number = $art_number[0]['count(*)']; $interval = $tools->getValue('csvexport/step/interval'); if ($interval == '' || $interval <= 0 || $art_number < $interval) { $interval = $art_number; } $part = 0; while ($part * $interval <= $art_number + $interval) { $export = new Idealo_Csvexport_Tools_Idealo($part * $interval, $interval, $part); $part++; } $base = substr(__FILE__, 0, -51); $create_file = new Idealo_Csvexport_Tools_CreateFile($base, $filename, MODULE_VERSION_TEXT); } }
public function checkSettings() { $tools = new Idealo_Universal_Tools_IdealoTools(); $file = $tools->getValue('csvexport/file/name'); $seperator = $tools->getValue('csvexport/file/seperator'); $not_set = array(); if ($file == '') { $not_set[] = 'Please enter a feed name!'; } if ($seperator == '') { $not_set[] = 'Please define a column dividing value!'; } elseif (strlen($seperator) > 1) { $not_set[] = 'The column dividing value can only consist of one character!'; } $idealo_shipping = new Idealo_Universal_Tools_IdealoShipping('csvexport'); $shipping = $idealo_shipping->shipping; $shipping_active = false; foreach ($shipping as $ship) { if ($ship['active'] == '1') { $shipping_active = true; if ($ship['price'] == '') { $not_set[] = $ship['db']; } else { if ($ship['type'] == 'hard') { if (!is_numeric($ship['price'])) { $not_set[] = 'Wrong shipping costs format ' . $ship['title'] . '!'; } } else { $shippingCostsDE = explode(";", $ship['price']); if (count($shippingCostsDE) <= 1) { $not_set[] = 'Wrong shipping costs format for ' . $ship['title'] . '!'; } else { foreach ($shippingCostsDE as $costs) { $costs = explode(":", $costs); if (count($costs) <= 1) { $not_set[] = 'Wrong shipping costs format ' . $ship['title'] . '!'; break; } } } } } } } if (!$shipping_active) { $not_set[] = 'Please activate shipping costs for at least one country!'; } $idealo_payment = new Idealo_Universal_Tools_IdealoPayment('csvexport'); $payment = $idealo_payment->payment; $payment_active = false; foreach ($payment as $pay) { if ($pay['active'] == '1') { $payment_active = true; break; } } if (!$payment_active) { $not_set[] = 'At least one payment method must be activated for each activated shipping country!'; } if (count($not_set) > 0) { return $not_set; } return true; }