10-27-2021, 07:34 AM
5
Capturas
Ejecutar esta consulta
En admin.php --> inc --> php --> admin.php
Buscar:
Debajo agregar:
En c.posts.php --> inc --> class --> c.posts.php
Al final buscar:
Arriba agregar:
En c.user.php --> inc --> class --> c.user.php
Buscar:
Debajo agregar:
En m.admin_rangos.tpl --> themes --> default --> templates --> admin_mods --> m.admin_rangos.tpl
Buscar:
Debajo agregar:
Buscar:
Debajo agregar:
Creditos: Debes agradecer para ver el contenido...
[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
Código PHP: ( Seleccionar Todo )
ALTER TABLE `u_miembros` ADD `u_rango_temp` INT( 1 ) NOT NULL DEFAULT '0',
ADD `user_rango_ant` INT( 2 ) NOT NULL DEFAULT '0',
ADD `u_rango_fin` INT( 10 ) NOT NULL DEFAULT '0';
En admin.php --> inc --> php --> admin.php
Buscar:
Código PHP: ( Seleccionar Todo )
} 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:
Código PHP: ( Seleccionar Todo )
} 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:
Código PHP: ( Seleccionar Todo )
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
}
Arriba agregar:
Código PHP: ( Seleccionar Todo )
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) == 1 && 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:
Código PHP: ( Seleccionar Todo )
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:
Código PHP: ( Seleccionar Todo )
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:
Código PHP: ( Seleccionar Todo )
<tfoot>
<td colspan="7" style="text-align:right"><a href="?act=nuevo">Agregar nuevo rango »</a></td>
</tfoot>
</table>
</div>
Debajo agregar:
Código PHP: ( Seleccionar Todo )
<p align="center"><a href="{$tsConfig.url}/admin/rangos/?act=temp"><input type="button" class="" value="Asignar rango temporal"/></a></p>
Buscar:
Código PHP: ( Seleccionar Todo )
{elseif $tsAct == 'borrar'}
<form action="" method="post" id="admin_form">
<div class="mensajes error">Si borras este rango todos los usuarios que estén en él, será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 /> ¿Realmente deseas borrar este rango?</div>
<label> </label> <input type="submit" name="save" value="Sí, Continuar »" class="mBtn btnCancel">
</form>
Debajo agregar:
Código PHP: ( Seleccionar Todo )
{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 »" class="mBtn btnCancel">
</form>
Creditos: Debes agradecer para ver el contenido...