public function getControllerFileName($realModule, $controller) { $parts = explode('_', $realModule); $realModule = implode('_', array_splice($parts, 0, 2)); $file = AO::getModuleDir('controllers', $realModule); if (count($parts)) { $file .= DS . implode(DS, $parts); } $file .= DS . uc_words($controller, DS) . 'Controller.php'; return $file; }
public function getTimelineData() { return file_get_contents(AO::getModuleDir('etc', 'Mage_Reports') . DS . 'flexTestDataTimeline.xml'); }
/** * Deprecated * * @return string */ public function getCharsetOption() { $options = ''; $fileName = AO::getModuleDir('etc', 'Mage_Oscommerce') . DS . 'charsets.xml'; if (is_readable($fileName)) { $xml = new Varien_Simplexml_Config(); $xml->loadFile($fileName); $charsets = $xml->getNode('charset'); foreach ($charsets as $charset) { $attributes = $charset->attributes(); $options .= '<option value=' . $attributes['name'] . '>' . $charset->family . ' (' . $attributes['name'] . ')</option>'; } } return $options; }
/** * Run webservice * * @param Mage_Api_Controller_Action $controller * @return Mage_Api_Model_Server_Adapter_Soap */ public function run() { $urlModel = AO::getModel('core/url')->setUseSession(false); if ($this->getController()->getRequest()->getParam('wsdl')) { // Generating wsdl content from template $io = new Varien_Io_File(); $io->open(array('path' => AO::getModuleDir('etc', 'Mage_Api'))); $wsdlContent = $io->read('wsdl.xml'); $template = AO::getModel('core/email_template_filter'); $wsdlConfig = new Varien_Object(); $queryParams = $this->getController()->getRequest()->getQuery(); if (isset($queryParams['wsdl'])) { unset($queryParams['wsdl']); } $wsdlConfig->setUrl(htmlspecialchars($urlModel->getUrl('*/*/*', array('_query' => $queryParams)))); $wsdlConfig->setName('Magento'); $wsdlConfig->setHandler($this->getHandler()); $template->setVariables(array('wsdl' => $wsdlConfig)); $this->getController()->getResponse()->setHeader('Content-Type', 'text/xml')->setBody($template->filter($wsdlContent)); } elseif ($this->_extensionLoaded()) { $this->_soap = new SoapServer($urlModel->getUrl('*/*/*', array('wsdl' => 1))); use_soap_error_handler(false); $this->_soap->setClass($this->getHandler()); $this->getController()->getResponse()->setHeader('Content-Type', 'text/xml')->setBody($this->_soap->handle()); } else { $this->fault('0', 'Unable to load Soap extension on the server'); } return $this; }
/** * Run module modification sql * * @param string $actionType install|upgrade|uninstall * @param string $fromVersion * @param string $toVersion * @return bool */ protected function _modifyResourceDb($actionType, $fromVersion, $toVersion) { $resModel = (string) $this->_connectionConfig->model; $modName = (string) $this->_moduleConfig[0]->getName(); $sqlFilesDir = AO::getModuleDir('sql', $modName) . DS . $this->_resourceName; if (!is_dir($sqlFilesDir) || !is_readable($sqlFilesDir)) { AO::getResourceModel('core/resource')->setDbVersion($this->_resourceName, $toVersion); return $toVersion; } // Read resource files $arrAvailableFiles = array(); $sqlDir = dir($sqlFilesDir); while (false !== ($sqlFile = $sqlDir->read())) { $matches = array(); if (preg_match('#^' . $resModel . '-' . $actionType . '-(.*)\\.(sql|php)$#i', $sqlFile, $matches)) { $arrAvailableFiles[$matches[1]] = $sqlFile; } } $sqlDir->close(); if (empty($arrAvailableFiles)) { AO::getResourceModel('core/resource')->setDbVersion($this->_resourceName, $toVersion); return $toVersion; } // Get SQL files name $arrModifyFiles = $this->_getModifySqlFiles($actionType, $fromVersion, $toVersion, $arrAvailableFiles); if (empty($arrModifyFiles)) { AO::getResourceModel('core/resource')->setDbVersion($this->_resourceName, $toVersion); return $toVersion; } $modifyVersion = null; foreach ($arrModifyFiles as $resourceFile) { $sqlFile = $sqlFilesDir . DS . $resourceFile['fileName']; $fileType = pathinfo($resourceFile['fileName'], PATHINFO_EXTENSION); // Execute SQL if ($this->_conn) { try { switch ($fileType) { case 'sql': $sql = file_get_contents($sqlFile); if ($sql != '') { $result = $this->run($sql); } else { $result = true; } break; case 'php': $conn = $this->_conn; /** * useful variables: * - $conn: setup db connection * - $sqlFilesDir: root dir for sql update files */ try { #$conn->beginTransaction(); $result = (include $sqlFile); #$conn->commit(); } catch (Exception $e) { #$conn->rollback(); throw $e; } break; default: $result = false; } if ($result) { /*$this->run("replace into ".$this->getTable('core/resource')." (code, version) values ('".$this->_resourceName."', '".$resourceFile['toVersion']."')");*/ AO::getResourceModel('core/resource')->setDbVersion($this->_resourceName, $resourceFile['toVersion']); } } catch (Exception $e) { echo "<pre>" . print_r($e, 1) . "</pre>"; throw AO::exception('Mage_Core', AO::helper('core')->__('Error in file: "%s" - %s', $sqlFile, $e->getMessage())); } } $modifyVersion = $resourceFile['toVersion']; } if ($actionType == 'upgrade' && $modifyVersion != $toVersion) { AO::getResourceModel('core/resource')->setDbVersion($this->_resourceName, $toVersion); } else { $toVersion = $modifyVersion; } self::$_hadUpdates = true; return $toVersion; }
public function getDashboard() { return file_get_contents(AO::getModuleDir('etc', 'Mage_Reports') . DS . 'flexDashboard.xml'); }