public function routeShutdown(Zend_Controller_Request_Abstract $request) { if ($request->getModuleName() == 'admin' || APPLICATION_ENV != 'development') { return; } $frontController = Zend_Controller_Front::getInstance(); $options = array('plugins' => array('Variables', 'Database' => array('adapter' => Z_Db_Table::getDefaultAdapter()), 'File' => array('basePath' => SITE_PATH), 'Memory', 'Time', 'Registry', 'Cache' => array('backend' => Z_Cache::getbackend()), 'Exception')); $debug = new ZFDebug_Controller_Plugin_Debug($options); $frontController->registerPlugin($debug); }
protected function __construct() { self::$_instance = new Zend_Log(); if (Z_Db_Table::getDefaultAdapter()) { // $logModel = new Z_Model_Log(); // $logTable = $logModel->info('name'); $writer = new Zend_Log_Writer_Db(Z_Db_Table::getDefaultAdapter(), 'z_log'); } else { $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . DIRECTORY_SEPARATOR . 'data/info.log'); } self::$_instance->addWriter($writer); }
public function rebuildAction() { $this->disableRenderView(); $this->ajaxGo($this->view->url(array('action' => $this->z_defaultAction, 'id' => NULL))); $id = $this->_getParam('id'); $tableModel = $this->z_model; $fieldModel = new Z_Model_Dbtablesfields(); $tableObject = $tableModel->find($id)->current(); $fieldObjects = $fieldModel->fetchAll(array('dbtable_id=?' => $id), 'orderid asc'); $modelName = 'Site_Model_' . implode('_', array_map('ucfirst', explode('_', $tableObject->title))); $model = new $modelName(); $columns = $model->info('metadata'); $fieldset = array(); foreach ($fieldObjects as $field) { $fieldset[] = $field->title; if ($field->title == 'id') { continue; } if (array_key_exists($field->title, $columns) && $field->type == $columns[$field->title]['DATA_TYPE']) { continue; } $queryStr = ""; $queryStr = '`' . $field->title . '`'; $queryStr .= ' ' . strtoupper($field->type); $queryStr .= $field->len ? '(' . $field->len . ')' : ''; $queryStr .= $field->is_null ? ' NULL' : ' NOT NULL'; $queryStr .= $field->default == 'asdefine' ? " DEFAULT '" . $field->default_value . "'" : ''; if (array_key_exists($field->title, $columns)) { $queryStr = 'ALTER TABLE `' . $tableObject->title . '` CHANGE `' . $field->title . '` ' . $queryStr; } else { $queryStr = 'ALTER TABLE `' . $tableObject->title . '` ADD ' . $queryStr; } Z_FlashMessenger::addMessage($queryStr); Z_Db_Table::getDefaultAdapter()->query($queryStr); } foreach ($columns as $column => $columnPropertyes) { if ($column == 'id') { continue; } if (!in_array($column, $fieldset)) { $queryStr = 'ALTER TABLE `' . $tableObject->title . '` DROP `' . $column . '`'; Z_FlashMessenger::addMessage($queryStr); Z_Db_Table::getDefaultAdapter()->query($queryStr); } } }