¡Bienvenido a PHPost!

Para participar en el foro, descargar complementos y acceder al chat, necesitas una cuenta activa. Usa un correo electrónico válido para completar la activación.

Crear cuenta gratis

¿Ya tienes cuenta? Inicia sesión aquí

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

COMPLEMENTOS Administrar Menús (Act)
#1

3
Mejor respuesta del mensaje Administrar Menús (Act)Capturas
[img]Registrate o inicia tu sesión para ver este contenido[/img]
[img]Registrate o inicia tu sesión para ver este contenido[/img]



Ejecutar estas consultas
CREATE TABLE IF NOT EXISTS `p_menu` (
  `
menu_idint(11NOT NULL AUTO_INCREMENT,
  `
menu_namevarchar(30NOT NULL,
  `
menu_hrefvarchar(100NOT NULL,
  `
menu_titlevarchar(50NOT NULL,
  `
menu_activeint(1NOT NULL DEFAULT '1',
  `
menu_permisosint(1NOT NULL DEFAULT '0',
  `
menu_opcionesint(1NOT NULL DEFAULT '0',
  
PRIMARY KEY (`menu_id`)
ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=

INSERT INTO `p_menu` (`menu_id`, `menu_name`, `menu_href`, `menu_title`, `menu_active`, `menu_permisos`, `menu_opciones`) VALUES
(3'Posts''posts''Ir a Posts'000),
(
4'Fotos''fotos''Ir a Fotos'020),
(
1'TOPs''top''Ir a TOPs'000),
(
2'Administración''admin''Panel de Administrador'040),
(
5'Identificarme''--''Identificarme'011),
(
6'Registrate!''--''Registrate!'012); 

 

En c.admin.php --> inc --> class --> c.admin.php

Al final antes del último }:


Agregar:
 
/****************** ADMINISTRACIÓN DE MENU ******************/

    
function AdminMenu(){
        
$maximo 10// Limite a Mostrar
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT * FROM p_menu LIMIT ' $maximo);
         
$data['data'] = result_array($query);
         return 
$data;
    }
    
    function 
getMenu(){
        
$id $_GET['Mid'];
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT * FROM p_menu WHERE menu_id = \''.(int)$id.'\'');
        
$data db_exec('fetch_assoc'$query);
    return 
$data;
        }
    
    function 
AgregarMenu (){
    global 
$tsCore;
    
$data = array(
    
'menu_name' => $tsCore->setSecure($_POST['menuName']),
    
'menu_href' => $tsCore->setSecure($_POST['menuHref']),
    
'menu_title' => $tsCore->setSecure($_POST['menuTitle']),
    
'menu_active' => $tsCore->setSecure($_POST['menuActive']) ? 1,
    
'menu_permisos' => $tsCore->setSecure($_POST['menuPermisos']),
    
'menu_opciones' =>  $tsCore->setSecure($_POST['menuOpciones']), );
    if (empty(
$data['menu_name']))
        die (
'Debes ingresar un Nombre');
    elseif (empty(
$data['menu_href']) && $data['menu_permisos'] != 1)
        die (
'Debes ingresar la URL del nuevo menu.');
    elseif (empty(
$data['menu_title']))
        die (
'Debes ingresar el titulo (title) del nuevo menu.');
    elseif(
db_exec(array(__FILE____LINE__), 'query''INSERT INTO `p_menu` (`menu_name`, `menu_href`, `menu_title`, `menu_active`, `menu_permisos`, `menu_opciones`) VALUES (\''.$tsCore->setSecure($data['menu_name']).'\', \''.$tsCore->setSecure($data['menu_href']).'\', \''.$tsCore->setSecure($data['menu_title']).'\', \''.$tsCore->setSecure($data['menu_active']).'\', \''.$tsCore->setSecure($data['menu_permisos']).'\', \''.$tsCore->setSecure($data['menu_opciones']).'\')'));
    }
    
    function 
borrarMenu (){
    
$id $_GET['Mid'];
    if(
db_exec(array(__FILE____LINE__), 'query''DELETE FROM `p_menu` WHERE `menu_id` = \''.(int)$id.'\''))
    return 
true;
}
        
    function 
editMenu (){
      global 
$tsCore;
        
$id $_GET['Mid'];
        
$name $tsCore->setSecure($_POST['menuName2']);
        
$href $tsCore->setSecure($_POST['menuHref2']);
        
$title $tsCore->setSecure($_POST['menuTitle2']);
        
$active =  $tsCore->setSecure($_POST['menuActive2']) ? 1;
        
$permis $tsCore->setSecure($_POST['menuPermisos2']);
        
$opcion $tsCore->setSecure($_POST['menuOpciones2']);
    if(
db_exec(array(__FILE____LINE__), 'query''UPDATE `p_menu` SET `menu_name` = \''.$name.'\', `menu_href` = \''.$href.'\',  `menu_title` = \''.$title.'\',  `menu_active` = \''.$active.'\',  `menu_permisos` = \''.$permis.'\', `menu_opciones` = \''.$opcion.'\' WHERE menu_id = \''.(int)$id.'\''));
    } 


En c.core.php --> inc --> class --> c.core.php

Al final antes del último }:


Agregar:
 
/*        
        getLevel()
    */
    
function getLevel(){
        global 
$tsUser;
    
//EMPEZAMOS DESDE ARRIBA
        //ADMINS
        
if($tsUser->is_admod == 1// SOLO ADMIN
        
return 4;
        elseif(
$tsUser->is_admod 0// SOLO MOD Y SUPERIORES
        
return 3;
        elseif(
$tsUser->is_member == 1// SOLO MIEMBROS Y SUPERIORES
        
return 2;
        elseif(
$tsUser->is_member == 0// SOLO PARA LOS VISITANTES
        
return 1;
        elseif(
$tsUser->is_member >= 0// CUALQUIERA .-.
        
return 0;
        
    }
    
     function 
verMenu () {
      
# CONSULTA
        
$maximo 10;
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT * FROM p_menu LIMIT ' $maximo);
        
$data['data'] = result_array($query);
        
        return 
$data;
      } 


En admin.php --> inc --> php --> admin.php

Buscar:
 
/** NOTICIAS **/
    
} elseif($action == 'news'){
        if(empty(
$act)) $smarty->assign("tsNews",$tsAdmin->getNoticias());
        elseif(
$act == 'nuevo' && !empty($_POST['not_body'])){
            if(
$tsAdmin->newNoticia()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/news?save=true');
        } elseif(
$act == 'editar'){
            if(!empty(
$_POST['not_body'])){
                if(
$tsAdmin->editNoticia()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/news?save=true');
            } else 
$smarty->assign("tsNew",$tsAdmin->getNoticia());
        }  elseif(
$act == 'borrar'){
          if(
$tsAdmin->delNoticia()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/news?borrar=true');
        }
    } 


Agregar al lado:
 
elseif($action == 'menus'){
        
$smarty->assign("AdminMenu",$tsAdmin->AdminMenu());
        if(
$act == 'agregar' && !empty($_POST['save']) && $tsUser->uid == 1){
        
$smarty->assign("tsMenus",$tsAdmin->AgregarMenu());
        
$tsCore->redirectTo($tsCore->settings['url'].'/admin/menus?save=true');}
        elseif(
$act == 'edit' ){
        
$smarty->assign("tsMN",$tsAdmin->getMenu());
        if(!empty(
$_POST['save']) && $tsUser->uid == 1){
        if(
$tsAdmin->editMenu()); $tsCore->redirectTo($tsCore->settings['url'].'/admin/menus?save=true');} }
        elseif(
$act == 'delete' && $tsUser->uid == 1){
        if(
$tsAdmin->borrarMenu());
        
$tsCore->redirectTo($tsCore->settings['url'].'/admin/menus?borrar=true');
    }
    } 


En header.php

Buscar:
 
// Mensajes
    
$smarty->assign('tsMPs',$tsMP->mensajes); 


Debajo agregar:
 
//Menu
    
$smarty->assign("verMenu",$tsCore->verMenu());

    
// Nivel de Usuario
    
$smarty->assign('tsUserLevel',$tsCore->getLevel()); 


En t.admin.tpl --> themes --> default --> templates --> t.admin.tpl

Buscar:    
 
{elseif $tsAction == 'temas'}
                                {include 
file='admin_mods/m.admin_temas.tpl'


Debajo agregar:
 
{elseif $tsAction == 'menus'}
 {include 
file='admin_mods/menus.tpl'


En m.admin_sidemenu.tpl --> themes --> default --> templates --> admin_mods --> m.admin_sidemenu.tpl

Buscar:    
 
<li id="a_temas"><span class="cat-title"><a href="{$tsConfig.url}/admin/temas">Temas y apariencia</a></span></li


Debajo agregar:
 
<li id="a_menus"><span class="cat-title"><a href="{$tsConfig.url}/admin/menus">Administrar Menús</a></span></li


En head_menu.tpl --> themes --> default --> templates --> sections --> head_menu.tpl

Buscar:    
 
{if $tsConfig.c_allow_portal && $tsUser->is_member == true}
                <
li class="tabbed {if $tsPage != 'home' && $tsPage != 'posts' && $tsPage != 'tops' && $tsPage != 'admin' && $tsPage != 'fotos'}here{/if}" id="tabbedhome">
                    <
a title="Ir a Inicio" onclick="menu('home', this.href); return false;" href="{$tsConfig.url}/mi/"><span> </span></a>
                </
li>
                {/if}
                <
li class="tabbed {if $tsPage == 'posts' || $tsPage == 'home'}here{/if}" id="{if $tsConfig.c_allow_portal && $tsUser->is_member}tabbedposts{else}tabbedhome{/if}">
                    <
a title="Ir a Posts" onclick="menu('posts', this.href); return false;" href="{$tsConfig.url}/posts/">Posts <img alt="Drop Down" src="{$tsConfig.tema.t_url}/images/arrowdown.png"></a>
                </
li>                
                {if 
$tsConfig.c_fotos_private == '1' && !$tsUser->is_member}{else}                                
                <
li class="tabbed {if $tsPage == 'fotos'}here{/if}" id="tabbedfotos">
                    <
a title="Ir a Fotos" onclick="menu('fotos', this.href); return false;" href="{$tsConfig.url}/fotos/">Fotos <img alt="Drop Down" src="{$tsConfig.tema.t_url}/images/arrowdown.png"></a>
                </
li>                                
                {/if}
                <
li class="tabbed {if $tsPage == 'tops'}here{/if}" id="tabbedtops">
                    <
a title="Ir a TOPs" onclick="menu('tops', this.href); return false;" href="{$tsConfig.url}/top/">TOPs <img alt="Drop Down" src="{$tsConfig.tema.t_url}/images/arrowdown.png"></a>
                </
li>
                {if 
$tsUser->is_member}
                    {if 
$tsUser->is_admod == 1}
                <
li class="tabbed {if $tsPage == 'admin'}here{/if}" id="tabbedAdmin">
                    <
class=qtip title="Panel de Administrador" onclick="menu('Admin', this.href); return false;" href="{$tsConfig.url}/admin/">Administraci&oacute;<img alt="Drop Down" src="{$tsConfig.tema.t_url}/images/arrowdown.png"></a>
                </
li>
                       {/if}
                {else}
                <
li class="tabbed registrate">
                    <
a title="Registrate!" onclick="registro_load_form(); return false" href=""><b>Registrate!</b></a>
                </
li>
                {/if} 


Reemplazar por:
 
{foreach from=$verMenu.data item=v}                
                {if 
$v.menu_active != '1'}
                {if 
$v.menu_permisos == '0' || $v.menu_permisos == '1' && $tsUserLevel == || $v.menu_permisos == '2' && $tsUserLevel >= || $v.menu_permisos == '3' && $tsUserLevel >= || $v.menu_permisos == '4' && $tsUserLevel == 4}
                <
li class="tabbed" id="tabbed">
                <
a title="{$v.menu_title}{if $v.menu_permisos != '1'}href="{$tsConfig.url}/{$v.menu_href}/"{/if} {if $v.menu_permisos == '1' && $v.menu_opciones == '1'}href="javascript:open_login_box()"{/if} {if $v.menu_permisos == '1' && $v.menu_opciones == '2'}onclick="close_login_box(); registro_load_form(); return false"{/if}> <span>{$v.menu_name}  <img alt="Drop Down" src="{$tsConfig.tema.t_url}/images/arrowdown.png"></span></a>
                {if 
$v.menu_permisos == '1' && $v.menu_opciones == '1'}
                {include 
file='sections/logueo.tpl'}
                {/if}
                </
li>
                {/if}
                {/if}
                {/foreach} 
 

Buscar y eliminar:    
 
<div class="identificarme">
                    <
a title="Identificarme" href="javascript:open_login_box()" class="iniciar_sesion">Identificarme</a>
                </
div>
                <
div id="login_box" style="display: none;">
                    <
div class="login_header">
                        <
img title="Cerrar mensaje" onclick="close_login_box();" class="login_cerrar" src="Registrate o inicia tu sesión para ver este contenido" style="left:220px">
                    </
div>
                    <
div class="login_cuerpo">
                      <
span class="gif_cargando floatR" id="login_cargando" style="display: none;"></span>
                      <
div id="login_error" style="display: none; padding:3px 0;"></div>
                        <
form action="javascript:login_ajax()" method="post">
                            <
label>Usuario</label>
                            <
input type="text" class="ilogin" id="nickname" name="nick" maxlength="64">
                            <
label>Contraseña</label>
                            <
input type="password" class="ilogin" id="password" name="pass" maxlength="64">
                            <
input type="checkbox" id="rem" name="rem" value="true" checked="checked" /> <label for="rem">Recordar usuario</label>
                            <
input type="submit" title="Entrar" value="Entrar" style="width:198px; margin-top:5px;" class="mBtn btnOk">
                        </
form>
                        <
div class="login_footer">
                          <
a href="#" onclick="remind_password();">¿Olvidaste tu contraseña?</a>
                            <
br/>
                            <
a href="#" onclick="resend_validation();">¿No lleg&oacuteel correo de validaci&oacute;n?</a>
                            <
br/>
                          <
a style="color:green;" onclick="open_login_box(); registro_load_form(); return false" href="">
                            <
strong>Registrate Ahora!</strong>
                          </
a>
                        </
div>
                  </
div>
                </
div


En acciones.js --> themes --> default --> js --> acciones.js

Al final agregar:    
 
$(document).ready(function(){$("#mostraropci").click(function(e){$("#opcionesdemenu").fadeIn(500),$("#opcionesdemenu2").fadeOut(500)})}),$(document).ready(function(){$("#ocultaropci").click(function(e){$("#opcionesdemenu").fadeOut(500),$("#opcionesdemenu2").fadeIn(500)})}),$(document).ready(function(){$("#ocultaropci2").click(function(e){$("#opcionesdemenu").fadeOut(500),$("#opcionesdemenu2").fadeIn(500)})}),$(document).ready(function(){$("#ocultaropci3").click(function(e){$("#opcionesdemenu").fadeOut(500),$("#opcionesdemenu2").fadeIn(500)})}),$(document).ready(function(){$("#ocultaropci4").click(function(e){$("#opcionesdemenu").fadeOut(500),$("#opcionesdemenu2").fadeIn(500)})}); 


En admin.css --> themes --> default --> css --> admin.css

Buscar:    
 
li#a_temas {background-image: url(../images/icons/color.png);} 


Debajo agregar:
 
li#a_menus {background-image: url(../images/icons/menus.png);} 



Y subir esta carpeta

Mega
Debes agradecer para ver el contenido...

Google Drive
Debes agradecer para ver el contenido...

Mediafire
Debes agradecer para ver el contenido...

Uptobox
Debes agradecer para ver el contenido...

4shared
Debes agradecer para ver el contenido...



Creditos:  Debes agradecer para ver el contenido...
Responder


Compartir en:

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)