function salvar($dados) { $pedido = new JCRUD($this->tabela, $dados); if ($pedido->id) { $pedido->update(); } else { $pedido->insert(); } // salva os itens do pedido if (isset($dados['itens'])) { foreach ($dados['itens'] as $item) { $dadosItem = array('idPedido' => $pedido->id, 'nome' => $item['nome'], 'valor' => $item['valor'], 'valorOriginal' => $item['valorOriginal'], 'quantidade' => $item['quantidade']); $this->adicionarItem($dadosItem); } } return $pedido; }
function salvar() { // chama o class util require_once ECOMP_PATH_CLASS . DS . 'ebasic.util.php'; // se não existir um nome, retorma erro if (empty($_POST['nome'])) { return false; } // carrega do post para a var dados $dados = $_POST; // apaga variaveis inuteis unset($dados['option'], $dados['task'], $dados['view'], $dados['layout']); // abre a tabela de campos do ecomp $campo = new JCRUD(ECOMP_TABLE_CAMPOS, $dados); // abre a tabela de componentes $componente = new JCRUD(ECOMP_TABLE_COMPONENTES, array('id' => $campo->idcomponente)); // abre a tabela de tipos $tipo = new JCRUD(ECOMP_TABLE_TIPOS, array('id' => $campo->idtipo)); // limpa o alias, caso não exista, gera um alias com o nome $campo->alias = eUtil::texto_limpo($campo->alias) ? eUtil::texto_limpo($campo->alias) : eUtil::texto_limpo($campo->nome); // se o id não existir, inseri! if (!$campo->id) { // cria um novo campo na tabela do componente JCRUD::query("ALTER TABLE `" . ECOMP_TABLE_COMPONENTES . "_{$componente->alias}` ADD `{$campo->alias}` {$tipo->code}"); // inseri o registro $campo->insert(); // retorna msg de ok para o usuário return true; } else { // se o alias do campo mudou $r = $campo->busca_por_id($campo->id); if ($campo->alias != $r->alias or $campo->idtipo != $r->idtipo) { // altera o campo na tabela do componente JCRUD::query("ALTER TABLE `" . ECOMP_TABLE_COMPONENTES . "_{$componente->alias}` CHANGE `{$r->alias}` `{$campo->alias}` {$tipo->code}"); } // atualiza o registro $campo->update(); // retorna msg de ok para o usuário return true; } }
function salvar() { require_once ECOMP_PATH_CLASS . DS . 'wideimage' . DS . 'lib' . DS . 'WideImage.inc.php'; // carrega o post $dados = $_POST; $idcomponente = JRequest::getVar('idcomponente', 0); $idcadastro = JRequest::getVar('idcadastro', 0); $path_dest = ECOMP_PATH_IMAGENS; $file = JRequest::getVar('Filedata', null, 'files', 'array'); $file_name = JFile::makeSafe($file['name']); $file_ext = strtolower(JFile::getExt($file_name)); $file_tmp = $file['tmp_name']; if ($file_ext != 'png') { $file_ext = 'jpg'; } $js = JRequest::getVar('js', 0); // remove variaveis inuteis unset($dados['Filedata'], $dados['Filename'], $dados['sid'], $dados['task'], $dados['view'], $dados['option'], $dados['js'], $dados['Upload'], $dados['layout']); // carrega os dados $imagem = new JCRUD(ECOMP_TABLE_CADASTROS_IMAGENS, $dados); if ($imagem->id) { $imagem->update(); } else { $imagem->insert(); } if ($file['error'] != 4) { $file_dest = $path_dest . DS . $imagem->id . '.' . $file_ext; $file_new = $path_dest . DS . $imagem->id . '.redimensionada.' . $file_ext; $file_db = $imagem->id . '.' . $file_ext; $file_p = $path_dest . DS . $imagem->id . '_p.jpg'; $file_m = $path_dest . DS . $imagem->id . '_m.jpg'; //die(print_r($file , true)); if (JFile::upload($file_tmp, $file_dest)) { if ($file_ext != 'png') { wiImage::load($file_dest)->resize(1024, 1024, 'inside', 'down')->saveToFile($file_new, null, 90); // Cria imagem 800x600 //$file_800 = $path_dest.DS.$imagem->id.'_800x600.jpg'; //ecompHelper::redimensionaImg($file_new, $file_800, 800, 600, 'inside', 'down', 90); // Cria imagem 640x480 //$file_640 = $path_dest.DS.$imagem->id.'_640x480.jpg'; //ecompHelper::redimensionaImg($file_new, $file_640, 640, 480, 'inside', 'down', 90); // Cria imagem 320x240 //$file_320 = $path_dest.DS.$imagem->id.'_320x240.jpg'; //ecompHelper::redimensionaImg($file_new, $file_320, 320, 240, 'inside', 'down', 90); } else { JFile::copy($file_dest, $file_new); } // apaga a imagem grande unlink($file_dest); // se o nome do arquivo cadastro anteriormente for diferente if ($imagem->file != $file_db) { // apaga o arquivo velhos @unlink($path_dest . DS . $imagem->file); @unlink($file_p); @unlink($file_m); } // renomeia a imagem redimencionada pela o destino JFile::move($file_new, $file_dest); // cria a imagem mini wiImage::load($file_dest)->resize(100, 100, 'inside', 'down')->saveToFile($file_p, null, 90); // cria a imagem mini wiImage::load($file_dest)->resize(250, 250, 'inside', 'down')->saveToFile($file_m, null, 90); // muda o nome do arquivo no banco $imagem->file = $file_db; // atualiza o banco de dados $imagem->update(); } } // se o post for enviado por js if ($js == "1") { echo 'texto de ok!'; jexit(); } return true; }
function publish($valor) { $cids = JRequest::getVar('cid', array(0), 'request', 'array'); foreach ($cids as $id) { $idcomponente = JRequest::getVar('idcomponente', 0); // abre a tabela de componentes do ecomp $componente = new JCRUD(ECOMP_TABLE_COMPONENTES, array('id' => $idcomponente)); // abre a tabela de cadastro $cadastro = new JCRUD(ECOMP_TABLE_COMPONENTES . "_{$componente->alias}", array('id' => $id)); // $cadastro->published = $valor; $cadastro->update(); } }
// permissoes $permissoes = ''; $permissoes_novas = JRequest::getvar('permissoes', array()); $permissoes_total = count($permissoes_novas); $permissoes_count = 0; foreach ($permissoes_novas as $permissao) { $permissoes_count++; $permissoes .= $permissoes_count != $permissoes_total ? "{$permissao}\n" : $permissao; } $dados['permissoes'] = $permissoes; // abre a tabela com os novo dados $grupo = new JCRUD('jos_edesktop_usuarios_grupos', $dados); // verifica se o registro já existe if ($grupo->id) { // verifica se o usuario logado tem permissão jAccess('grupos.editar'); // atualiza os dados do registro $grupo->update(); // carrega as vars de retorno $retorno = 'updateOk'; $msg = 'Dados do grupo de usuário foram atualizados com sucesso!'; } else { // verifica se o usuario logado tem permissão jAccess('grupos.adicionar'); // cadastra o novo registro $grupo->insert(); // carrega as vars de retorno $retorno = 'insertOk'; $msg = 'Grupo de usuário cadastrado com sucesso!'; } jexit(json_encode(array('msg' => $msg, 'retorno' => $retorno, 'id' => $grupo->id)));
$msg .= '- As senhas não estão iguais.<br>'; } } if (!empty($msg)) { jexit(json_encode(array('tipo' => 'error', 'msg' => 'Preencha corretamente o(s) seguinte(s) campo(s):<br><br>' . $msg))); } // remove a var limit unset($dados['limit']); // abre a tabela com os novo dados $usuario = new JCRUD('jos_users', $dados); // verifica se o registro já existe if ($usuario->id) { // verifica se o usuario logado tem permissão jAccess('usuarios.editar'); // atualiza os dados do usuario $usuario->update(); // verifica se o user admin if ($usuario->id != 62) { // adiciona valores na tabela jos_core_acl_aro $aro = new JCRUD("jos_core_acl_aro"); $aro = $aro->busca_por_id($usuario->id, 'value'); $aro->name = $usuario->name; $aro->update(); // adiciona valores na tabela jos_core_acl_groups_aro_map $groups_aro_map = new JCRUD("jos_core_acl_groups_aro_map"); $groups_aro_map = $groups_aro_map->busca_por_id($aro->id, 'aro_id'); $groups_aro_map->group_id = $dados['gid']; $groups_aro_map->update('aro_id'); } // carrega as vars de retorno $retorno = 'updateOk';
function EcompBuildRoute(&$query) { $vars = $query; $menu =& JSite::getMenu(); $item =& $menu->getItem($vars['Itemid']); $params = $menu->getParams($vars['Itemid']); $idcomponente = $params->get('idcomponente'); $idcadastro = isset($vars['id']) ? $vars['id'] : $params->get('idcadastro'); $segments = array(); $values = array(); $conf =& JFactory::getConfig(); // abre a tabela de regras de rotas $r = new JCRUD(ECOMP_TABLE_ROUTERS_RULES); $r = $r->busca("WHERE itemid = '{$item->id}' AND published = '1' AND trashed != '1' ORDER BY ordering ASC"); foreach ($r as $rules) { if ($rules->type == '1') { // nome da tebela do componente $idcomp = $rules->idcomponente > 0 ? $rules->idcomponente : $idcomponente; $tabela = eHelper::componente_tabela_nome($idcomp); $c = new JCRUD($tabela); $x = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : '0'; $c = $c->busca_por_id($x); if ($c) { $campo = $rules->alias1; if ($campo == '' || JFilterOutput::stringURLSafe($c->{$campo}) == '') { $campo = $rules->alias2; } $segments[] = JFilterOutput::stringURLSafe($c->{$campo}); $values[$rules->get_var] = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : $rules->get_value; } } if ($rules->type == '2') { $segments[] = JFilterOutput::stringURLSafe($rules->alias1); $values[$rules->get_var] = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : $rules->get_value; } if ($rules->type == '3') { $s = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : $rules->get_value; $segments[] = JFilterOutput::stringURLSafe($s); $values[$rules->get_var] = $s; } // categoria if ($rules->type == '4') { $c = new JCRUD(ECOMP_TABLE_CATEGORIAS); $y = (int) $rules->get_value; $x = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : $y; $c = $c->busca_por_id($x); if ($c) { $campo = 'alias'; if (JFilterOutput::stringURLSafe($c->{$campo}) == '') { $campo = 'nome'; } $segments[] = JFilterOutput::stringURLSafe($c->{$campo}); $values[$rules->get_var] = isset($vars[$rules->get_var]) ? $vars[$rules->get_var] : $rules->get_value; } } // exclui a var caso exista if (isset($query[$rules->get_var])) { unset($query[$rules->get_var]); } } // exclui a var view 'padrao' if (isset($vars['view']) && $vars['view'] == 'padrao') { unset($query['view']); } //////////////////////////////////////////// //// CACHE /////////////////////////////////////////// if (count($segments)) { // verifica se o sef_suffix esta ativado $sef_suffix = $conf->getValue('config.sef_suffix') ? '.html' : ''; $url = join('/', $segments) . $sef_suffix; $params = http_build_query($values, '', '&'); $dados = array('id' => 0, 'itemid' => $item->id, 'url' => $url, 'params' => $params); // adicionao a rota na tabela cache $c = new JCRUD(ECOMP_TABLE_ROUTERS_CACHE, $dados); $cc = $c->busca("WHERE itemid = '{$item->id}' AND url = '{$url}'"); if (count($cc)) { $c->id = $cc[0]->id; $c->update(); } else { $c->insert(); } } return $segments; }
function salvar() { // chama o class util require_once ECOMP_PATH_CLASS . DS . 'ebasic.util.php'; // abre o banco $db =& JFactory::getDBO(); // se não existir um nome, retorma erro if (empty($_POST['nome'])) { return false; } // carrega do post para a var dados $dados = $_POST; // apaga variaveis inuteis unset($dados['option'], $dados['task'], $dados['view'], $dados['layout']); // captura o nome da nova tabela $tabela_nova = eUtil::texto_limpo($dados['nome']); // abre a tabela de componentes do ecomp $componente = new JCRUD(ECOMP_TABLE_COMPONENTES, $dados); // abre a tabela de menu/componentes $menu = new JCRUD(ECOMP_TABLE_JCOMPONENTS); // se o id não existir, inseri! if (!$componente->id) { // verifica se a tabela ja existe if ($this->existe_tabela($tabela_nova)) { return false; } // cria a nova tabela JCRUD::query("\r\n\t\t\t\tCREATE TABLE IF NOT EXISTS " . ECOMP_TABLE_COMPONENTES . "_{$tabela_nova}(\r\n\t\t\t\t `id` int(11) NOT NULL AUTO_INCREMENT,\r\n\t\t\t\t `published` int(11) NOT NULL DEFAULT '1',\r\n\t\t\t\t `ordering` int(11) NOT NULL DEFAULT '0',\r\n\t\t\t\t `trashed` int(11) NOT NULL DEFAULT '0',\r\n\t\t\t\t `view_item` int(11) NOT NULL DEFAULT '0',\r\n\t\t\t\t `view_lista` int(11) NOT NULL DEFAULT '0',\r\n\t\t\t\t `view_busca` int(11) NOT NULL DEFAULT '0',\r\n\t\t\t\t PRIMARY KEY (`id`)\r\n\t\t\t\t) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1;\r\n\t\t\t"); // inseri o registro if ($componente->insert()) { // busca o id do menu ecomp $ecomp_menu = $menu->busca_por_sql("SELECT * FROM @tabela@ WHERE name = 'eComp' AND admin_menu_alt = 'eComp'"); // cadastra um novo menu $menu->enabled = 1; $menu->admin_menu_link = "option=com_ecomp&view=cadastros&idcomponente={$componente->id}"; $menu->parent = $ecomp_menu[0]->id; $menu->ordering = -1; $menu->iscore = 1; $menu->name = $componente->nome; $menu->admin_menu_alt = $componente->nome; $menu->insert(); $componente->idmenuadmin = $menu->id; $componente->alias = $tabela_nova; $componente->update(); return true; } } else { // captura o nome da tabela velha $tabela_velha = $componente->alias; // se o nome da tabela mudou if ($tabela_nova != $tabela_velha) { // verifica se a tabela ja existe if ($this->existe_tabela($tabela_nova)) { return false; } // altera o nome da tabela JCRUD::query("RENAME TABLE " . ECOMP_TABLE_COMPONENTES . "_{$tabela_velha} TO " . ECOMP_TABLE_COMPONENTES . "_{$tabela_nova}"); // atualiza o alias do regitro $componente->alias = $tabela_nova; } // atualiza o registro if ($componente->update()) { $menu->id = $componente->idmenuadmin; $menu->name = $componente->nome; $menu->admin_menu_alt = $componente->nome; // atualiza o menu $menu->update(); return true; } } }