- 12 Ago 2015, 12:20
#61538
Fala pessoal.
Tenho experiencia na criação de módulos para ver. antiga. masssss....
Estou com dificuldades em criar uma nova tabela no banco de dados para um novo módulo na ver. 2.0 do O.C.
Não encontro módulos para exemplo, e essa documentação nao esta ajudando.
http://docs.opencart.com/developer/module/
Bem, tenho um model em admin/model/module.
Obrigado! [ ] 's
Tenho experiencia na criação de módulos para ver. antiga. masssss....
Estou com dificuldades em criar uma nova tabela no banco de dados para um novo módulo na ver. 2.0 do O.C.
Não encontro módulos para exemplo, e essa documentação nao esta ajudando.
http://docs.opencart.com/developer/module/
Bem, tenho um model em admin/model/module.
Código: Selecionar todos
E tenho um controller em /admin/controller/module :<?php
class ModelModuleTeste extends Model {
public function createTable() {
$query = $this->db->query("CREATE TABLE IF NOT EXISTS `".DB_PREFIX."teste` (
`teste_orders_id` int(11) NOT NULL AUTO_INCREMENT,
`teste_id` int(11) NOT NULL,
`teste_name` varchar(64) NOT NULL
PRIMARY KEY (`teste_orders_id`)
)");
}
public function deleteTable() {
$query = $this->db->query("DROP TABLE IF EXISTS " . DB_PREFIX . "teste");
}
}
?>
Código: Selecionar todos
Alguem pode me mostrar o caminho ????<?php
class ControllerModuleteste extends Controller {
private $error = array();
public function install() {
$this->load->model('module/teste');
$this->model_module_teste->createTable();
}
public function uninstall() {
$this->load->model('module/teste');
$this->model_module_teste->deleteTable();
}
public function index() {
$this->load->language('module/teste');
$this->document->setTitle($this->language->get('heading_title'));
$this->load->model('extension/module');
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
if (!isset($this->request->get['module_id'])) {
$this->model_extension_module->addModule('teste', $this->request->post);
} else {
$this->model_extension_module->editModule($this->request->get['module_id'], $this->request->post);
}
$this->session->data['success'] = $this->language->get('text_success');
$this->response->redirect($this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL'));
}
// BOF LANGUAGE
$data['heading_title'] = $this->language->get('heading_title');
$data['text_edit'] = $this->language->get('text_edit');
$data['text_enabled'] = $this->language->get('text_enabled');
$data['text_disabled'] = $this->language->get('text_disabled');
$data['button_save'] = $this->language->get('button_save');
$data['button_cancel'] = $this->language->get('button_cancel');
$data['text_module'] = $this->language->get('text_module');
// EOF LANGUAGE
// BOF ERROR MSG
if (isset($this->error['warning'])) {
$data['error_warning'] = $this->error['warning'];
} else {
$data['error_warning'] = '';
}
// EOF ERROR MSG
// BOF breadcrumbs
$data['breadcrumbs'] = array();
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_home'),
'href' => $this->url->link('common/dashboard', 'token=' . $this->session->data['token'], 'SSL')
);
$data['breadcrumbs'][] = array(
'text' => $this->language->get('text_module'),
'href' => $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL')
);
if (!isset($this->request->get['module_id'])) {
$data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('module/teste', 'token=' . $this->session->data['token'], 'SSL')
);
} else {
$data['breadcrumbs'][] = array(
'text' => $this->language->get('heading_title'),
'href' => $this->url->link('module/teste', 'token=' . $this->session->data['token'] . '&module_id=' . $this->request->get['module_id'], 'SSL')
);
}
// EOF breadcrumbs
if (!isset($this->request->get['module_id'])) {
$data['action'] = $this->url->link('module/teste', 'token=' . $this->session->data['token'], 'SSL');
} else {
$data['action'] = $this->url->link('module/teste', 'token=' . $this->session->data['token'] . '&module_id=' . $this->request->get['module_id'], 'SSL');
}
$data['cancel'] = $this->url->link('extension/module', 'token=' . $this->session->data['token'], 'SSL');
if (isset($this->request->get['module_id']) && ($this->request->server['REQUEST_METHOD'] != 'POST')) {
$module_info = $this->model_extension_module->getModule($this->request->get['module_id']);
}
$data['token'] = $this->session->data['token'];
$data['header'] = $this->load->controller('common/header');
$data['column_left'] = $this->load->controller('common/column_left');
$data['footer'] = $this->load->controller('common/footer');
$this->response->setOutput($this->load->view('module/teste.tpl', $data));
}
protected function validate() {
if (!$this->user->hasPermission('modify', 'module/teste')) {
$this->error['warning'] = $this->language->get('error_permission');
}
return !$this->error;
}
}
Obrigado! [ ] 's

