¡Bienvenido! ¿Aún no estás registrado?, deberás registrarte antes de poder usar el Chat, Comentar y Descargar en el Foro. Usa un email válido para la activación.
Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

COMPLEMENTOS Rangos por X tiempo (ACT 1.3)
#1

5
Mejor respuesta del mensaje Rangos por X tiempo (ACT 1.3)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]
[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
 
 
Ejecutar esta consulta
 
ALTER TABLE `u_miembrosADD `u_rango_tempINTNOT NULL DEFAULT '0',
ADD `user_rango_antINTNOT NULL DEFAULT '0',
ADD `u_rango_finINT10 NOT NULL DEFAULT '0'
 
 
En admin.php --> inc --> php --> admin.php

Buscar:
 
} elseif($act == 'borrar'){
                if(empty(
$_POST['save'])){
                    
$smarty->assign("tsRangos",$tsAdmin->getAllRangos());
                }else{
                    if(
$tsAdmin->delRango()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/rangos?save=true');
                } 
 
 
Debajo agregar:
 
} elseif($act == 'temp'){
                if(empty(
$_POST['save'])){
                    
$smarty->assign("tsRangos",$tsAdmin->getAllRangos());
                }else{
                    if(
$tsAdmin->assignTemp()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/rangos?save=true');
                } 
 
 
En c.posts.php --> inc --> class --> c.posts.php

Al final buscar:
 
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/


 
 
Arriba agregar:
 
function assignTemp(){
    global 
$tsUser$tsCore;
    
$query db_exec(array(__FILE____LINE__), 'query''SELECT user_id FROM u_miembros WHERE user_name = \''.$tsCore->setSecure($_POST['user']).'\'');
        
$query2 db_exec(array(__FILE____LINE__), 'query''SELECT rango_id FROM u_rangos WHERE rango_id = \''.(int)$_POST['temp_rango'].'\'');
        if((int)
$_POST['temp_type'] == 1)
        
$fin time()+(int)$_POST['tiempo']*60*60;
        elseif((int)
$_POST['temp_type'] == 2)
        
$fin time()+(int)$_POST['tiempo']*60*60*24;
        elseif((int)
$_POST['temp_type'] == 3)
        
$fin time()+(int)$_POST['tiempo']*60*60*24*30;
        
    if(
db_exec('num_rows'$query) == && db_exec('num_rows'$query2) == 1){
        if(
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_rango_ant = user_rango, user_rango = \''.(int)$_POST['temp_rango'].'\', u_rango_temp = \'1\', u_rango_fin = \''.(int)$fin.'\' WHERE user_name = \''.$tsCore->setSecure($_POST['user']).'\''))
        return 
true;
        else
            exit( 
show_error('Error al ejecutar la consulta de la línea '.__LINE__.' de '.__FILE__.'.''db') );
    }else{
    die(
'EL usuario/rango no existe');
    }
    } 
 
 
En c.user.php --> inc --> class --> c.user.php

Buscar:
 
function loadUser($login FALSE)
    {
        
// Cargar datos
        
$sql 'SELECT u.*, s.* FROM u_sessions s, u_miembros u WHERE s.session_id = \''.$this->session->ID.'\' AND u.user_id = s.session_user_id';
        
$query db_exec(array(__FILE____LINE__), 'query'$sql);
        
$this->info db_exec('fetch_assoc'$query);
        
// Existe el usuario?
        
if(!isset($this->info['user_id']))
        {
            return 
FALSE;
        }
        
// PERMISOS SEGUN RANGO
        
$query db_exec(array(__FILE____LINE__), 'query''SELECT r_name, r_color, r_image, r_allows FROM u_rangos WHERE rango_id = '.$this->info['user_id'].' LIMIT 1');
        
$this->info['rango'] = db_exec('fetch_assoc'$query);
        
        
// PERMISOS SEGUN RANGO
        
$datis db_exec('fetch_assoc'db_exec(array(__FILE____LINE__), 'query''SELECT r_allows FROM u_rangos WHERE rango_id = \''.$this->info['user_rango'].'\' LIMIT 1'));
        
$this->permisos unserialize($datis['r_allows']); 
 
        
Debajo agregar:
 
if($this->info['u_rango_temp']){
        if(
$this->info['u_rango_fin'] < time()){
            global 
$tsCore;
        
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET u_rango_temp = \'0\', user_rango = user_rango_ant WHERE user_id = \''.$this->info['user_id'].'\'') or die('Hubo un error al retornar a su rango anterior.');
            
$tsCore->redirectTo($tsCore->CurrentUrl());
         }
        } 
 
 
En m.admin_rangos.tpl --> themes --> default --> templates --> admin_mods --> m.admin_rangos.tpl

Buscar:
 
<tfoot>
                                        <
td colspan="7" style="text-align:right"><a href="?act=nuevo">Agregar nuevo rango &raquo;</a></td>
                                    </
tfoot>
                                </
table>
                                </
div
 
 
Debajo agregar:
 
<p align="center"><a href="{$tsConfig.url}/admin/rangos/?act=temp"><input type="button" class="" value="Asignar rango temporal"/></a></p
 
 
Buscar:
 
{elseif $tsAct == 'borrar'}
                                <
form action="" method="post" id="admin_form">
                                    <
div class="mensajes error">Si borras este rango todos los usuarios que est&eacute;n en &eacute;lser&aacute;n asignados al rango
                                    
                                    
<select name="new_rango">{foreach from=$tsRangos item=r}<option value="{$r.rango_id}style="color:#{$r.r_color}; padding:2px 20px 0;" {if $r.rango_id == 3}selected{/if}>{$r.r_name}</option>{/foreach}</select> <br /> &iquest;Realmente deseas borrar este rango?</div>
                                    
                                    <
label> </label> <input type="submit" name="save" value="S&iacute;, Continuar &raquo;" class="mBtn btnCancel">
                                </
form
 
 
Debajo agregar:
 
{elseif $tsAct == 'temp'}
                                <
form action="" method="post" id="admin_form">
                                <
fieldset>
                               <
dl>
                                    <
dt><label for="temp">Asignar rango:</label></dt>
                                    <
dd><select id="temp" name="temp_rango">{foreach from=$tsRangos item=r}<option value="{$r.rango_id}style="color:#{$r.r_color}; padding:2px 20px 0;">{$r.r_name}</option>{/foreach}</select> </dd>
                                    </
dl>
                                <
dl>
                                    <
dt><label for="user">Al usuario:</label></dt>
                                    <
dd><input type="text" name="user" id="user"/></dd>
                                </
dl>
                                <
dl>
                                    <
dt><label for="tiempo">Durante:</label></dt>
                                    <
dd><input type="num" name="tiempo" id="tiempo"/>
                                    <
select id="tiempo" name="temp_type">
                                    <
option value="1">Horas</option>
                                    <
option value="2">Días</option>
                                    <
option value="3">Meses (30 días)</option>

                                    </
select>
                                    </
dd>
                                </
dl>
                                </
fieldset>
                                     <
input type="submit" name="save" value="Continuar &raquo;" class="mBtn btnCancel">
                                </
form





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

1
No me sale la lista de los rangos, solo se queda en blanco :c

(04-13-2024, 07:45 AM)Krsh escribió: Debes agradecer para ver el contenido...No me sale la lista de los rangos, solo se queda en blanco :c

Ya lo solucione, una disculpa gracias
Responder


Compartir en:

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)