public function preDispatch() { parent::preDispatch(); if (Mage::registry('ced_csmarketplace_current_store')) { Mage::unRegister('ced_csmarketplace_current_store'); } if (Mage::registry('ced_csmarketplace_current_website')) { Mage::unRegister('ced_csmarketplace_current_website'); } Mage::register('ced_csmarketplace_current_store', Mage::app()->getStore()->getId()); Mage::register('ced_csmarketplace_current_website', Mage::app()->getStore()->getWebsiteId()); }
public function runAction() { @set_time_limit(0); Mage::app()->cleanCache(); // Clean all cach $this->_initImport(); $importModel = Mage::registry('oscommerce_adminhtml_import'); /** @var $importModel Mage_Oscommerce_Model_Oscommerce */ $totalRecords = array(); if ($tablePrefix = $importModel->getTablePrefix()) { $importModel->getResource()->setTablePrefix($tablePrefix); } // Start handling charsets $connCharset = $this->getRequest()->getParam('connection_charset'); if ($connCharset) { $importModel->getSession()->setConnectionCharset($connCharset); $importModel->getResource()->setConnectionCharset($connCharset); } $dataCharset = $this->getRequest()->getParam('data_charset'); if ($dataCharset) { $importModel->getSession()->setDataCharset($dataCharset); $importModel->getResource()->setDataCharset($dataCharset); } // End hanlding charsets $timezone = $this->getRequest()->getParam('timezone'); $importModel->getSession()->setTimezone($timezone); $importModel->getResource()->resetConnectionCharset(); if ($tablPrefix = $importModel->getTablePrefix()) { $importModel->getResource()->setTablePrefix($tablPrefix); } $importModel->getResource()->setImportModel($importModel); $importModel->getResource()->importCollection($importModel->getId()); // Setting Locale for stores $locales = explode("|", $this->getRequest()->getParam('store_locale')); $storeLocales = array(); if ($locales) { foreach ($locales as $locale) { $localeCode = explode(':', $locale); $storeLocales[$localeCode[0]] = $localeCode[1]; } } $importModel->getSession()->setStoreLocales($storeLocales); $importModel->getResource()->setStoreLocales($storeLocales); // End setting Locale for stores $websiteId = $this->getRequest()->getParam('website'); $websiteCode = $this->getRequest()->getParam('website_code'); $options = $this->getRequest()->getParam('import'); // Checking Website, StoreGroup and RootCategory //if (!$websiteId) { $importModel->getResource()->setWebsiteCode($websiteCode); // $importModel->getResource()->createWebsite(); //} else { // $importModel->getResource()->createWebsite($websiteId); //} // End checking Website, StoreGroup and RootCategory $importModel->getResource()->importStores(); $importModel->getResource()->importTaxClasses(); $importModel->getResource()->createOrderTables(); if (isset($options['categories'])) { $importModel->getSession()->setIsProductWithCategories(true); $totalRecords['categories'] = $importModel->getResource()->getCategoriesCount(); } if (isset($options['products'])) { $totalRecords['products'] = $importModel->getResource()->getProductsCount(); } if (isset($options['customers'])) { $totalRecords['customers'] = $importModel->getResource()->getCustomersCount(); } if (isset($options['customers']) && isset($options['orders'])) { $totalRecords['orders'] = $importModel->getResource()->getOrdersCount(); } if ($totalRecords) { $importModel->setTotalRecords($totalRecords); Mage::unRegister('oscommerce_adminhtml_import'); Mage::register('oscommerce_adminhtml_import', $importModel); } $this->getResponse()->setBody($this->getLayout()->createBlock('oscommerce/adminhtml_import_run')->toHtml()); $this->getResponse()->sendResponse(); }
/** * Get the commission Setting based on group * * @param int $vendor_id * @return array */ public function getCommissionSettings($vendor_id = 0) { $vendor = Mage::getModel('csmarketplace/vendor')->load($vendor_id); $groupCode = $this->getDefaultGroup(); if ($vendor && $vendor->getId()) { if (Mage::registry('current_order_vendor')) { Mage::unRegister('current_order_vendor'); } Mage::register('current_order_vendor', $vendor); $groupCode = $vendor->getGroup(); if ($groupCode) { $groups = Ced_CsMarketplace_Model_System_Config_Source_Group::getGroups(); if (isset($groups[$groupCode]['model'])) { $group = $groups[$groupCode]['model']; } else { $group = 'csmarketplace/vendor_group_' . strtolower($groupCode); } try { $group = Mage::getModel($group); } catch (Exception $e) { } /* $classFile = str_replace(' ', DIRECTORY_SEPARATOR, ucwords(str_replace('_', ' ', str_replace('/', ' ', $group)))); if(file_exists($classFile)) { echo $classFile;die; } else { echo "else";die; } */ if (is_object($group) && ($settings = $group->getCommissionSettings($vendor))) { return $settings; } } } else { if (Mage::registry('current_order_vendor')) { Mage::unRegister('current_order_vendor'); } } return array('type' => $this->getDefaultCommissionMode(), 'rate' => $this->getDefaultCommissionFee(), 'group' => $groupCode); }