¡Bienvenido a PHPost!

Para participar en el foro, descargar complementos y acceder al chat, es necesario tener una cuenta activa.
Por favor, regístrate utilizando un correo electrónico válido para completar la activación.

Descarga Risus Nova 2.0   (Ver notas de la versión) (ACT-15/06/2026- 21:00 ESP)

Regístrate Descargar Risus Nova
Últimos temas

Estadísticas del foro
  • Mensajes del foro:1,957
  • Temas del foro:614
  • Miembros:1,036
  • Último miembro:carlos007r


Enviado por: zero
04-17-2021, 07:42 PM
Foro: Complementos Terminados
- Sin respuestas

Hola a todos

A petición del usuario Austra, comparto la adaptación de este mod.

Lo que hace es mostrar una descripción de cada post en la home.

[img]Registrate o inicia tu sesión para ver este contenido[/img]



1. Buscamos en c.posts:
 

Código PHP:
$query db_exec(array(__FILE__,__LINE__),'query','SELECT p.post_id,p.post_user,p.post_category,p.post_title,p.post_date,p.post_comments,p.post_puntos,p.post_private,p.post_sponsored,p.post_status,p.post_sticky,u.user_id,u.user_name,u.user_activo,u.user_baneado,c.c_nombre,c.c_seo,c.c_img,r.rango_id,r.r_name,r.r_image FROM p_posts AS p LEFT JOIN u_miembros AS u ON p.post_user = u.user_id  '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == '' ' && u.user_activo = \'1\' && u.user_baneado = \'0\'').' LEFT JOIN p_categorias AS c ON c.cid = p.post_category LEFT JOIN u_rangos AS r ON r.rango_id = u.user_rango WHERE '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == 'p.post_id > 0' 'p.post_status = \'0\' && u.user_activo = \'1\' && u.user_baneado = \'0\'').'  '.$c_where.' '.$s_where.' GROUP BY p.post_id ORDER BY '.$s_order.' DESC LIMIT '.$start);
      
$lastPosts['data'] = result_array($query); 

Y lo reemplazamos por esto:
 
Código PHP:
$query db_exec(array(__FILE__,__LINE__),'query','SELECT p.post_id,p.post_user,p.post_category,p.post_title,p.post_body,p.post_date,p.post_comments,p.post_puntos,p.post_private,p.post_sponsored,p.post_status,p.post_sticky,u.user_id,u.user_name,u.user_activo,u.user_baneado,c.c_nombre,c.c_seo,c.c_img FROM p_posts AS p LEFT JOIN u_miembros AS u ON p.post_user = u.user_id  '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == '' ' && u.user_activo = \'1\' && u.user_baneado = \'0\'').' LEFT JOIN p_categorias AS c ON c.cid = p.post_category WHERE '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == 'p.post_id > 0' 'p.post_status = \'0\' && u.user_activo = \'1\' && u.user_baneado = \'0\'').'  '.$c_where.' '.$s_where.' GROUP BY p.post_id ORDER BY '.$s_order.' DESC LIMIT '.$start);

        
$elements = array(

            
"/(?i)\[url\=(http|https|ftp|irc|ed2k|gopher|telnet|gopher|telnet)(\:\/\/)([^\<\>[:space:]]+?)\](.+?)(\[\/url\])/i",

            
"/(?i)\[quote\=([^\n\r\t\<\>]+?)\]([^\a]+?)\[\/quote\]/i",

            
"/(?i)\[img\=([0-9]{1,3})x([0-9]{1,3})\](http|https|ftp|irc|ed2k|gopher|telnet)(\:\/\/)([^\<\>[:space:]]+?)(\[\/img\])/i",

            
"/(?i)\[img\=(http|https|ftp|irc|ed2k|gopher|telnet)?(\:\/\/)?([^\<\>[:space:]]+)\]/i",

            
"/(?i)\[swf\=(.+?)\]/i",

            
"/(?i)\[goear\=(.+?)\]/i",

            
"/(?i)\[goear\]([a-z0-9]{7})\[\/goear\]/i"

         
);

            

        
$size count$elements );

            

        while (
$row db_exec('fetch_assoc',$query))

        {

            for( 
$elm 0$elm $size$elm++ )

            {

                
$element $elements[$elm];

                
//

                
while( preg_match($element,$row['post_body'] ) )

                {

                    
$row['post_body'] = preg_replace$element,'',$row['post_body'] );

                }

            }

            
//

            
$row['post_body'] = strip_tags(substr($tsCore->parseBBCode($row['post_body']),0,150)).'...';

            
//

            
$lastPosts['data'][] = $row;

        } 


2. Luego en el archivo m.home_last_posts colocamos el siguiente código donde queremos que se vea la descripción:
 
Código PHP:
{$p.post_body



Y listo eso es todo,créditos para el verdadero autor. Nos vemos.

Imprimir


Enviado por: zero
04-17-2021, 07:38 PM
Foro: Complementos Terminados
- Respuestas (1)

Hola a todos,

A pedido de jorge2108 comparto con ustedes un plugin que se encarga de colocar un box de donación en la home completamente administrable desde la configuración.

Quiero dejar en claro que el diseño esta basado en Newrisus 1.0, cada quien lo adapta a su theme

No lo he probado colocando un código de embed de donación porque no tengo, por eso no estoy completamente seguro si funciona con embed, ustedes me dicen si funciona o no para ver que hacemos (así que tomen sus respaldos necesarios).

Les dejo unas caps:

* HOME

[img]Registrate o inicia tu sesión para ver este contenido[/img]


[img]Registrate o inicia tu sesión para ver este contenido[/img]

* ADMIN/CONFIGURACION

[img]Registrate o inicia tu sesión para ver este contenido[/img]


Ahora vamos con la instalación


1. Ejecutar la siguiente consulta
 

Código:
ALTER TABLE w_configuracion ADD c_dontipo VARCHAR( 15 ) NOT NULL AFTER offline_message;

ALTER TABLE w_configuracion ADD c_donembe VARCHAR( 2000 ) NOT NULL AFTER offline_message;

ALTER TABLE w_configuracion ADD c_donmens VARCHAR( 500 ) NOT NULL AFTER offline_message;


2. Buscar en c.core.php
 
Código:
$this->settings['js'] = $this->settings['tema']['t_url'].'/js';


Y abajo agregan
 
Código:
$this->settings['dt'] = $this->settings['c_dontipo'];

$this->settings['de'] = $this->settings['c_donembe'];

$this->settings['dm'] = $this->settings['c_donmens'];


3. Abren c.admin.php y buscan
 
Código:
'url' => $tsCore->setSecure($tsCore->parseBadWords($_POST['url'])),


Y abajo agregan
 
Código:
'dontipo' => $tsCore->setSecure($_POST['dontipo']),

'donembe' => $tsCore->setSecure($_POST['donembe']),

'donmens' => $tsCore->setSecure($_POST['donmens']),


4. Más abajo buscan
 
Código:
`c_recaptcha` = \'' . $c['recaptcha'] . '\',


Al lado colocan
 
Código:
`c_dontipo` = \'' . $c['dontipo'] . '\',`c_donembe` = \'' . $c['donembe'] . '\',`c_donmens` = \'' . $c['donmens'] . '\',


5. Abrimos configuracion.tpl y buscan:
 
Código:
<dl>

            <dt><label class="form-label" for="ai_url">Dirección del sitio:</label></dt>

            <dd><input type="text" class="form-control" id="ai_url" name="url" maxlength="32" value="{$tsConfig.url}" /></dd>

         </dl>


Y abajo agregan


Código:
<dl>

            <dt><label class="form-label" for="ai_dontipo">Plataforma de donación:</label></dt>

            <dd><input type="text" class="form-control" id="ai_dontipo" name="dontipo" value="{$tsConfig.dt}" /></dd>

         </dl>

       

<dl>

            <dt><label class="form-label" for="ai_donembe">Código para donación:</label></dt>

            <dd><input type="text" class="form-control" id="ai_donembe" name="donembe" value="{$tsConfig.de}" /></dd>

         </dl>       

<dl>

            <dt><label class="form-label" for="ai_donmens">Mensaje para donación:</label></dt>

            <dd><input type="text" class="form-control" id="ai_donmens" name="donmens" value="{$tsConfig.dm}" /></dd>

         </dl>



6. Abren t.home.tpl y buscan
 
Código:
{include file='modulos/home/comentarios.tpl'}


Y abajo agregan
 
Código:
{include file='modulos/home/donacion.tpl'}


7. Crean un archivo llamado donacion.tpl y lo colocan dentro de la carpeta home
 
Código:
{if $tsConfig.dt != ''}

<div class="nr-home-box">

    <h6><b>{$tsConfig.dt}</b></h6>

    <hr class="nr-divider">

   <div class="p-2 text-center">

  

 {$tsConfig.de}

<hr class="nr-divider">

<p class="text-gray small pt-1 mt-1 border-top border-light">

{$tsConfig.dm}

</p>

</div>

</div>

{/if} 


Y listo!
 
  • Para que este plugin aparezca o desaparezca en la home necesita tener o no tener el campo de Plataforma de donación (que viene siendo el título del box,Paypal,Patreon,etc).
  • Aunque en la parte del código no necesariamente necesita un embed, tambien pueden colocar un código html con imagen y link incluído, todo depende de su creatividad y gustos.
  • Esto es todo,para los que van a usar un embed me dicen si funciona con el código porque aún no estoy seguro de que funcione.

Saludos a todos.

Imprimir


Enviado por: Chctrpgo
04-16-2021, 06:12 PM
Foro: Complementos Terminados
- Respuestas (3)

Captura gif
 

[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
 
 
 
Ejecutar esta consulta
 
Código PHP:
ALTER TABLE w_configuracion ADD c_puntos_x_fotos INT(11NOT NULL 
 
 
c.admin.php --> inc --> class --> c.admin.php
 
Buscar:
 
Código PHP:
'offline' => empty($_POST['offline']) ? 1
 
 
Debajo agregar:
 
Código PHP:
'puntos_x_fotos' => $tsCore->setSecure($_POST['puntosxfotos']), 
 
 
Buscar:
 
Código PHP:
'\', `offline` = \'' $c['offline'] . 
 
 
Al lado agregar:
 
Código PHP:
'\', `c_puntos_x_fotos` = \'' $c['puntos_x_fotos'] . 
 
 
Les queda así:
 
Código PHP:
'\', `offline` = \'' $c['offline'] . '\', `c_puntos_x_fotos` = \'' $c['puntos_x_fotos'] . 
 
 
c.fotos.php --> inc --> class --> c.fotos.php
 
Buscar:
 
Código PHP:
// INSERTAMOS
db_exec(array(__FILE____LINE__), 'query''UPDATE `f_fotos` SET f_last = \'0\' WHERE f_user = '.$tsUser->uid.' AND f_last = 1'); // LA ULTIMA DEJA DE SERLO
$_SERVER['REMOTE_ADDR'] = $_SERVER['X_FORWARDED_FOR'] ? $_SERVER['X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
if(!
filter_var($_SERVER['REMOTE_ADDR'], FILTER_VALIDATE_IP)) { die('0: Su ip no se pudo validar.'); }
if(
db_exec(array(__FILE____LINE__), 'query''INSERT INTO `f_fotos` (f_title, f_date, f_description, f_url, f_user, f_closed, f_visitas, f_last, f_ip) VALUES (\''.$fData['titulo'].'\', \''.time().'\', \''.$fData['desc'].'\', \''.$img_url.'\', \''.$tsUser->uid.'\', \''.$fData['closed'].'\', \''.$fData['visitas'].'\', \'1\', \''.$_SERVER['REMOTE_ADDR'].'\')')) {
$fid db_exec('insert_id'); 
 
  
Debajo agregar:
 
Código PHP:
// Puntos por fotos by memo
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$tsCore->settings['c_puntos_x_fotos'].'\' WHERE user_id = \''.(int)$tsUser->uid.'\''); 
 
 
fotos.php --> inc --> php --> fotos.php
 
Buscar:
 
Código PHP:
$smarty->assign("tsAviso",array('titulo' => 'Foto Agregada''mensaje' => "La imagen <b>".$titulo."</b> fue agregada."'but' => 'Ver imagen''link' => "{$tsCore->settings['url']}/fotos/{$tsUser->nick}/{$result}/".$tsCore->setSEO($titulo).".html")); 


Reemplazar por:
 
Código PHP:
$smarty->assign("tsAviso",array('titulo' => 'Foto Agregada''mensaje' => "La imagen <font color='red'><b>".$titulo."</b></font> fue agregada.<i>Has recibido una bonificacion de:</i> <blink><font color='green'><b>{$tsCore->settings['c_puntos_x_fotos']}</b></font></blink> Puntos a tu cuenta."'but' => 'Ver imagen''link' => "{$tsCore->settings['url']}/fotos/{$tsUser->nick}/{$result}/".$tsCore->setSEO($titulo).".html")); 

 
m.admin_configs.tpl --> themes --> default --> templates --> admin_mods --> m.admin_configs.tpl

Buscar:
 
Código PHP:
<dl>
<
dt>
<
label for="ai_max_nots">M&aacute;ximo de notificaciones:</label>
<
br /><span>Cuantas notificaciones puede recibir un usuario.</span></dt>
<
dd>
<
input type="text" id="ai_max_nots" name="max_nots" style="width:10%" maxlength="3" value="{$tsConfig.c_max_nots}/>
</
dd>
</
dl
 
  
Debajo agregar:
 
Código PHP:
<dl>
<
dt><label for="puntos_x_fotos">Puntos por Fotos:</label><br /><span>Puntos que recibirá como bonificación un usuario al subir una foto.</span></dt>
<
dd><input type="text" id="puntos_x_fotos" name="puntosxfotos" style="width:10%" maxlength="3" value="{$tsConfig.c_puntos_x_fotos}/></dd>
</
dl>
<
hr /> 



Creditos: Exedras

Imprimir


Enviado por: Chctrpgo
04-15-2021, 05:02 PM
Foro: Complementos Terminados
- Respuestas (2)

Demo
http://Registrate o inicia tu sesión par... contenido
 
 
Ejecutar esta consulta

Código PHP:
ALTER TABLE `p_postsADD `post_usecINT11 NOT NULL DEFAULT '0'
 
 
c.posts.php --> inc --> class --> c.posts.php

Buscar:
Código PHP:
/*
newPost()
*/
function newPost(){
global 
$tsCore$tsUser$tsMonitor$tsActividad;
//
if($tsUser->is_admod || $tsUser->permisos['gopp']){
//
$postData = array(
'date' => time(),
'title' => $tsCore->parseBadWords($tsCore->setSecure($_POST['titulo'], true)),2,
'body' => $tsCore->setSecure($_POST['cuerpo']),
'tags' => $tsCore->parseBadWords($tsCore->setSecure($_POST['tags'], true)),true,1,
'category' => intval($_POST['categoria']), 
 
 
Debajo agregar:
Código PHP:
'sec' => empty($_POST['sec']) ? $tsCore->setSecure($_POST['sec']), 
 
 
Buscar:
Código PHP:
//ANTIFLOOD
$antiflood 2
 
  
Debajo agregar:
Código PHP:
if($postData['sec'] != 0){
$postData['sec'] = $tsUser->getUserID($postData['sec']);
if(
$postData['sec'] == 0) return 'El usuario secundario ingresado no existe.'
 
 
Buscar:
Código PHP:
if(db_exec(array(__FILE____LINE__), 'query''INSERT INTO `p_posts` (post_user, post_category, post_title, post_body, post_date, post_tags, post_ip, post_private, post_block_comments, post_sponsored, post_sticky, 
 
 
Al lado agregar:
Código PHP:
post_usec
 
 
Resultado:
Código PHP:
if(db_exec(array(__FILE____LINE__), 'query''INSERT INTO `p_posts` (post_user, post_category, post_title, post_body, post_date, post_tags, post_ip, post_private, post_block_comments, post_sponsored, post_sticky, post_usec, 
 
 
Buscar:
Código PHP:
\''.(int)$postData['block_comments'].'\', \''.(int)$postData['sponsored'].'\', \''.(int)$postData['sticky'].'\', 
 
 
Al  lado agregar:
Código PHP:
\''.$postData['sec'].'\', 
 
 
Resultado:
Código PHP:
\''.(int)$postData['block_comments'].'\', \''.(int)$postData['sponsored'].'\', \''.(int)$postData['sticky'].'\', \''.$postData['sec'].'\', 
 
  
Buscar:
Código PHP:
$query db_exec(array(__FILE____LINE__), 'query''SELECT post_user, post_sponsored, post_sticky, post_status FROM p_posts WHERE post_id = \''.(int)$post_id.'\' LIMIT 1'); 
 
 
Reemplazar por:
Código PHP:
$query db_exec(array(__FILE____LINE__), 'query''SELECT post_user, post_sponsored, post_sticky, post_usec, post_status FROM p_posts WHERE post_id = \''.(int)$post_id.'\' LIMIT 1'); 
 
 
Buscar:
Código PHP:
if($data['post_status'] != '0' && !$tsUser->is_admod && !$tsUser->permisos['moedpo']) {
return 
'El post no puede ser editado.';
}
//
$postData = array(
'title' => $tsCore->parseBadWords($_POST['titulo'], true),
'body' => $tsCore->setSecure($_POST['cuerpo'], true),
'tags' => $tsCore->parseBadWords($tsCore->setSecure($_POST['tags'], true)),
'category' => $_POST['categoria'],
); 
 
  
Reemplazar por:
Código PHP:
if($data['post_status'] != '0' && !$tsUser->is_admod && !$tsUser->permisos['moedpo'] && $tsUser->uid != $data['post_usec']) {
return 
'El post no puede ser editado.';
}
//
$postData = array(
'title' => $tsCore->parseBadWords($_POST['titulo'], true),
'body' => $tsCore->setSecure($_POST['cuerpo'], true),
'tags' => $tsCore->parseBadWords($tsCore->setSecure($_POST['tags'], true)),
'category' => $_POST['categoria'],
'sec' => empty($_POST['sec']) ? $tsCore->setSecure($_POST['sec']),
);
if(!empty(
$postData['sec'])){
$postData['sec'] = $tsUser->getUserID($postData['sec']);
if(
$postData['sec'] == 0) return 'El usuario secundario ingresado no existe.';

  
  
Buscar:
Código PHP:
post_visitantes = \''.$postData['visitantes'].'\', 
 
 
Al lado agregar:
Código PHP:
post_usec = \''.$postData['sec'].'\', 
 
 
Buscar:
Código PHP:
if(empty($ford['post_id'])){
return 
'El post elegido no existe.';
}elseif(
$ford['post_status'] != '0' && $tsUser->is_admod == && $tsUser->permisos['moedpo'] == false){
return 
'El post no puede ser editado.';
}elseif((
$tsUser->uid != $ford['post_user']) && $tsUser->is_admod == && $tsUser->permisos['moedpo'] == false){
return 
'No puedes editar un post que no es tuyo.';

 
 
Reemplazar por:
Código PHP:
if(empty($ford['post_id'])){
return 
'El post elegido no existe.';
}elseif(
$ford['post_status'] != '0' && $tsUser->is_admod == && $tsUser->permisos['moedpo'] == false){
return 
'El post no puede ser editado.';
}elseif((
$tsUser->uid != $ford['post_user'] && $ford['post_usec'] != $tsUser->uid) && $tsUser->is_admod == && $tsUser->permisos['moedpo'] == false){
return 
'No puedes editar un post que no es tuyo.';
}
$ford['post_usec'] = $tsUser->getUserName($ford['post_usec']); 
 
 
Buscar:
Código PHP:
if(empty($post_id)) return array('deleted','Oops! Este post no existe o fue eliminado.');
// DAR MEDALLA
$this->DarMedalla($post_id);
// DATOS DEL POST
$query db_exec(array(__FILE____LINE__), 'query''SELECT c.* ,m.*, u.user_id FROM `p_posts` AS c LEFT JOIN `u_miembros` AS u ON c.post_user = u.user_id LEFT JOIN `u_perfil` AS m ON c.post_user = m.user_id WHERE `post_id` = \''.(int)$post_id.'\' '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == '' 'AND u.user_activo = \'1\' && u.user_baneado = \'0\'').' LIMIT 1');
//
$postData db_exec('fetch_assoc'$query); 
 
 
Debajo agregar:
Código PHP:
if($postData['post_usec'] > 0){
$postData['aut_sec'] = db_exec('fetch_assoc'db_exec(array(__FILE____LINE__), 'query''SELECT m.*, u.* FROM `p_posts` AS c LEFT JOIN `u_miembros` AS u ON c.post_usec = u.user_id LEFT JOIN `u_perfil` AS m ON c.post_usec = m.user_id WHERE `post_id` = \''.(int)$post_id.'\' '.($tsUser->is_admod && $tsCore->settings['c_see_mod'] == '' 'AND u.user_activo = \'1\' && u.user_baneado = \'0\'').' LIMIT 1')); //
$postData['aut_sec']['rango'] = db_exec('fetch_assoc'db_exec(array(__FILE____LINE__), 'query''SELECT * FROM `u_rangos` WHERE `rango_id` = \''.(int)$postData['aut_sec']['user_rango'].'\' LIMIT 1'));

 
  
Buscar:
Código PHP:
// SUMAR PUNTOS
$query db_exec(array(__FILE____LINE__), 'query''SELECT post_user FROM p_posts WHERE post_id = \''.(int)$post_id.'\' LIMIT 1');
$data db_exec('fetch_assoc'$query);

// ES MI POST?
$is_mypost = ($data['post_user'] == $tsUser->uid) ? true false;
// NO ES MI POST, PUEDO VOTAR
if(!$is_mypost){
// YA LO VOTE?
$votado db_exec('num_rows'db_exec(array(__FILE____LINE__), 'query''SELECT tid FROM p_votos WHERE tid = \''.(int)$post_id.'\' AND tuser = \''.$tsUser->uid.'\' AND type = \'1\' LIMIT 1'));
if(empty(
$votado)){

// COMPROBAMOS LOS PUNTOS QUE PODEMOS DAR
if($tsCore->settings['c_allow_points'] > 0) {
$max_points $tsCore->settings['c_allow_points'];
}elseif(
$tsCore->settings['c_allow_points'] == '-1') { //TRUCO, podrás dar todos los puntos que tengas disponibles
$max_points $tsUser->info['user_puntosxdar'];
}elseif(
$tsCore->settings['c_allow_points'] == '-2') { //TRUCO, podrás dar todos los puntos que quieras (sin abusar ¬¬), se restarán igual, si tienes puesto mantener puntos, estarás debiendo puntos durante una temporada.
$max_points 999999999;
}else{
$max_points $tsUser->permisos['gopfp'];
}
// TENGO SUFICIENTES PUNTOS
if($tsUser->info['user_puntosxdar'] >= $puntos){
if(
$puntos 0) { // Votar sin dar puntos? No, gracias.
if($puntos <= $max_points) { // seroo churra XD ._. No alteraciones de javascript para sumar más de lo que se permite (? LOL ¬¬
// SUMAR PUNTOS AL POST
db_exec(array(__FILE____LINE__), 'query''UPDATE p_posts SET post_puntos = post_puntos + '.(int)$puntos.' WHERE post_id = \''.(int)$post_id.'\'');
// SUMAR PUNTOS AL DUEÑO DEL POST
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$puntos.'\' WHERE user_id = \''.(int)$data['post_user'].'\''); 
 
  
Reemplazar por:
Código PHP:
// SUMAR PUNTOS
$query db_exec(array(__FILE____LINE__), 'query''SELECT post_user, post_usec FROM p_posts WHERE post_id = \''.(int)$post_id.'\' LIMIT 1');
$data db_exec('fetch_assoc'$query);

// ES MI POST?
$is_mypost = ($data['post_user'] == $tsUser->uid || $data['post_usec'] == $tsUser->uid) ? true false;
// NO ES MI POST, PUEDO VOTAR
if(!$is_mypost){
// YA LO VOTE?
$votado db_exec('num_rows'db_exec(array(__FILE____LINE__), 'query''SELECT tid FROM p_votos WHERE tid = \''.(int)$post_id.'\' AND tuser = \''.$tsUser->uid.'\' AND type = \'1\' LIMIT 1'));
if(empty(
$votado)){

// COMPROBAMOS LOS PUNTOS QUE PODEMOS DAR
if($tsCore->settings['c_allow_points'] > 0) {
$max_points $tsCore->settings['c_allow_points'];
}elseif(
$tsCore->settings['c_allow_points'] == '-1') { //TRUCO, podrás dar todos los puntos que tengas disponibles
$max_points $tsUser->info['user_puntosxdar'];
}elseif(
$tsCore->settings['c_allow_points'] == '-2') { //TRUCO, podrás dar todos los puntos que quieras (sin abusar ¬¬), se restarán igual, si tienes puesto mantener puntos, estarás debiendo puntos durante una temporada.
$max_points 999999999;
}else{
$max_points $tsUser->permisos['gopfp'];
}
// TENGO SUFICIENTES PUNTOS
if($tsUser->info['user_puntosxdar'] >= $puntos){
if(
$puntos 0) { // Votar sin dar puntos? No, gracias.
if($puntos <= $max_points) { // seroo churra XD ._. No alteraciones de javascript para sumar más de lo que se permite (? LOL ¬¬
// SUMAR PUNTOS AL POST
db_exec(array(__FILE____LINE__), 'query''UPDATE p_posts SET post_puntos = post_puntos + '.(int)$puntos.' WHERE post_id = \''.(int)$post_id.'\'');
// SUMAR PUNTOS AL DUEÑO DEL POST
if($data['post_usec'] > 0){
$puntos $puntos 2;
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$puntos.'\' WHERE user_id = \''.(int)$data['post_user'].'\'');
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$puntos.'\' WHERE user_id = \''.(int)$data['post_usec'].'\'');
}else{
db_exec(array(__FILE____LINE__), 'query''UPDATE u_miembros SET user_puntos = user_puntos + \''.(int)$puntos.'\' WHERE user_id = \''.(int)$data['post_user'].'\'');

 
 
m.post_content.tpl --> themes --> default --> templates --> modules --> m.post_content.tpl

Buscar:
Código PHP:
{if !$tsUser->is_member}{include file='modules/m.global_ads_728.tpl'}{/if} 
 
 
Debajo agregar:
Código PHP:
{if $tsPost.post_usec == $tsUser->uid}
<
a title="Editar Post" onclick="location.href='{$tsConfig.url}/posts/editar/{$tsPost.post_id}'; return false" href="" class="btnActions">
<
img alt="Editar" src="{$tsConfig.images}/editar.png"/> Editar</a>
{/if} 
 
  
m.agregar_form.tpl --> themes --> default --> templates --> modules --> m.agregar_form.tpl

Buscar:
Código PHP:
<li>
<
label>Tags</label>
<
span style="display: none;" class="errormsg"></span>
<
input type="text" tabindex="4" name="tags" maxlength="128" class="text-inp required" value="{$tsDraft.b_tags}"/>
Una lista separada por comasque describa el contenidoEjemplo: <b>golinglesesCopa OrofutbolChicharitoM&eacute;xico</b>
</
li
 
 
Debajo agregar:
Código PHP:
<li>
<
label>Usuario secundario</label>
<
input type="text" tabindex="4" name="sec" maxlength="128" class="text-inp required" value="{$tsDraft.b_usec}"/>
Puedes insertar aqui un usuario que tendrá permiso para editar el post y los puntos obtenidos en este post se repartirán. <b>Verifica que escribes bien el usuarioescribe las mayúsculasminisculás etcque tenga su nickDe lo contrariosi introduces un usuario incorrecto se perderá mucha información.</b>
</
li
 
 
m.post_autor.tpl --> themes --> default --> templates --> modules --> m.post_autor.tpl
 
Buscar:
Código PHP:
</div>
{/if}
</
div>

<
br /> 
 
  
Debajo agregar:
Código PHP:
<div class="post-autor vcard">
<
div class="box_title">
<
div class="box_txt post_autor">Usuario secundario:</div>
<
div class="box_rss">
<
a href="{$tsConfig.url}/rss/posts-usuario/{$tsPost.aut_sec.user_name}">
<
span style="position:relative;">
<
img border="0" title="RSS con posts de {$tsPost.aut_sec.user_name}alt="RSS con posts de Usuario" style="position:absolute; top:-354px; clip:rect(352px 16px 368px 0px);" src="{$tsConfig.images}/big1v12.png"/>
<
img border="0" style="width:14px;height:12px" src="{$tsConfig.images}/space.gif"/>
</
span>
</
a>
</
div>
</
div>

<
div class="avatarBox">
<
a href="{$tsConfig.url}/perfil/{$tsPost.aut_sec.user_name}">
<
img title="Ver perfil de {$tsPost.aut_sec.user_name}alt="Ver perfil de {$tsPost.aut_sec.user_name}class="avatar" src="{$tsConfig.url}/files/avatar/{$tsPost.aut_sec.user_id}_120.jpg"/>
</
a>
</
div>
<
a href="{$tsConfig.url}/perfil/{$tsPost.aut_sec.user_name}style="text-decoration:none">
<
span class="given-name" style="color:#{$tsPost.aut_sec.rango.r_color}">{$tsPost.aut_sec.user_name}</span>
</
a>
<
br />
<
span class="title">{$tsPost.aut_sec.rango.r_name}</span>
<
br />
<
img src="{$tsConfig.default}/images/space.gif" class="status {$tsPost.aut_sec.status.css}title="{$tsPost.aut_sec.status.t}"/>
<
img src="{$tsConfig.default}/images/icons/ran/{$tsPost.aut_sec.rango.r_image}title="{$tsPost.aut_sec.rango.r_name}/>
<
img src="{$tsConfig.default}/images/icons/{if $tsPost.aut_sec.user_sexo == 0}female{else}male{/if}.png" title="{if $tsPost.aut_sec.user_sexo == 0}Mujer{else}Hombre{/if}" />
<
img src="{$tsConfig.default}/images/flags/{$tsPost.aut_sec.pais.icon}.png" style="padding:2px" title="{$tsPost.aut_sec.pais.name}/>
{if 
$tsPost.aut_sec.user_id != $tsUser->uid}<a href="#" onclick="{if !$tsUser->is_member}registro_load_form();{else}mensaje.nuevo('{$tsPost.aut_sec.user_name}','','','');{/if}return false"><img title="Enviar mensaje privado" src="{$tsConfig.images}/icon-mensajes-recibidos.gif"/></a>{/if}
{if !
$tsUser->is_member}
<
hr class="divider"/>
<
class="btn_g follow_user_post" href="#" onclick="registro_load_form(); return false"><span class="icons follow">Seguir Usuario</span></a>
{elseif 
$tsPost.aut_sec.user_id != $tsUser->uid}
<
hr class="divider"/>
<
class="btn_g unfollow_user_post" onclick="notifica.unfollow('user', {$tsPost.aut_sec.user_id}, notifica.userInPostHandle, $(this).children('span'))" {if !$tsPost.aut_sec.follow}style="display: none;"{/if}><span class="icons unfollow">Dejar de seguir</span></a>
<
class="btn_g follow_user_post" onclick="notifica.follow('user', {$tsPost.aut_sec.user_id}, notifica.userInPostHandle, $(this).children('span'))" {if $tsPost.aut_sec.follow 0}style="display: none;"{/if}><span class="icons follow">Seguir Usuario</span></a>
{/if}
<
hr class="divider"/>
<
div class="metadata-usuario">
<
span class="nData user_follow_count">{$tsPost.aut_sec.user_seguidores}</span>
<
span class="txtData">Seguidores</span>
<
span class="nData" style="color: #0196ff">{$tsPost.aut_sec.user_puntos}</span>
<
span class="txtData">Puntos</span>
<
span class="nData">{$tsPost.aut_sec.user_posts}</span>
<
span class="txtData">Posts</span>
<
span style="color: #456c00" class="nData">{$tsPost.aut_sec.user_comentarios}</span>
<
span class="txtData">Comentarios</span>
</
div>
{if 
$tsUser->is_admod || $tsUser->permisos.modu || $tsUser->permisos.mosu}
<
hr class="divider"/>
<
div class="mod-actions">
<
b>Herramientas</b>
<
a href="{$tsConfig.url}/moderacion/buscador/1/1/{$tsPost.post_ip}class="geoip" target="_blank">{$tsPost.post_ip}</a>
{if 
$tsUser->is_admod == 1}<a href="{$tsConfig.url}/admin/users?act=show&amp;uid={$tsPost.aut_sec.user_id}class="edituser">Editar Usuario</a>{/if}
{if 
$tsPost.aut_sec.user_id != $tsUser->uid} <a href="#" onclick="mod.users.action({$tsPost.aut_sec.user_id}, 'aviso', false); return false;" class="alert">Enviar Aviso</a>{/if}
{if 
$tsPost.aut_sec.user_id != $tsUser->uid && $tsUser->is_admod || $tsUser->permisos.modu || $tsUser->permisos.mosu}
{if 
$tsPost.aut_sec.user_baneado}
{if 
$tsUser->is_admod || $tsUser->permisos.modu}<a href="#" onclick="mod.reboot({$tsPost.aut_sec.user_id}, 'users', 'unban', false); $(this).remove(); return false;" class="unban">Desuspender Usuario</a>{/if}
{else}
{if 
$tsUser->is_admod || $tsUser->permisos.mosu}<a href="#" onclick="mod.users.action({$tsPost.aut_sec.user_id}, 'ban', false); $(this).remove(); return false;" class="ban">Suspender Usuario</a>{/if}
{/if}
{/if}
</
div>
{/if}
</
div>

<
br /> 



Creditos: aperpen

Imprimir


Enviado por: Chctrpgo
04-15-2021, 03:07 PM
Foro: Complementos Terminados
- Respuestas (3)

Captura gif

[img]Registrate o inicia tu sesión para ver este contenido[/img]
 
 
 
Ejecutar esta consulta
 

Código PHP:
ALTER TABLE  `p_categoriasADD  `c_privateINTNOT NULL DEFAULT  '0'
 
 
c.admin.php --> inc --> class --> c.admin.php

Buscar:
 
Código PHP:
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/


 
 
Arriba agregar:
 
Código PHP:
/*
    SetPrivateCat()
    */
    
function SetPrivate()
    {
        global 
$tsCore;
        
//
        
$cid = (int)$_GET['cid'];
        
//
        
$dato db_exec('fetch_assoc'db_exec(array(__FILE____LINE__), 'query''SELECT c_private FROM p_categorias WHERE cid = \''.(int)$cid .'\' LIMIT 1'));
        if (
$dato['c_private'] == 0)
        
$privatize 1;
        else
        
$privatize 0;
        
//INTENTAMOS CAMBIAR LOS POSTS DE LA CATEGORÍA
        
db_exec(array(__FILE____LINE__), 'query''UPDATE p_posts SET post_private = \''.$privatize.'\' WHERE post_category = \''.$cid.'\'');
        if (
db_exec(array(__FILE____LINE__), 'query''UPDATE p_categorias SET c_private = \''.(int)$privatize'\' WHERE cid = \''.(int)$cid .'\''))
           return 
true;
     } 
 
 
c.posts.php --> inc --> class --> c.posts.php
 

Buscar 2 veces:
 
Código PHP:
// SOLO MODERADORES Y ADMINISTRADORES
        
if(empty($tsUser->is_admod)  && $tsUser->permisos['most'] == false) {
        
$postData['sponsored'] = $data['post_sponsored'];
        
$postData['sticky'] = $data['post_sticky'];   
        }  else {
            
$postData['sponsored'] = empty($_POST['patrocinado']) ? 1;
            
$postData['sticky'] = empty($_POST['sticky']) ? 1;
        } 
 
 
Debajo agregar:
 
Código PHP:
$psqsl db_exec(array(__FILE____LINE__), 'query''SELECT c_private FROM p_categorias WHERE cid = \''.(int)$postData['category'].'\'');
        
$qs db_exec('fetch_assoc'$psqsl);
        if(
$qs['c_private'] == 1){
        
$postData['private'] = 1;
        } 
 
  
admin.php --> inc --> php --> admin.php
 
Buscar:
 
Código PHP:
} elseif($act == 'change'){
            if(
$_POST['save']){
                if(
$tsAdmin->MoveCat()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/cats?save=true');
            } 
 
 
Debajo agregar:
Código PHP:
}elseif($act == 'setprivate'){
if(
$tsAdmin->SetPrivate()) $tsCore->redirectTo($tsCore->settings['url'].'/admin/cats?save=true'); 


m.admin_cats.tpl --> themes --> default --> templates --> admin_mods --> m.admin_cats.tpl

Buscar:
 
Código PHP:
<a href="?act=editar&cid={$c.cid}&t=cat"><img src="{$tsConfig.url}/themes/default/images/icons/editar.png" title="Editar Categor&iacute;a"/></a
 
 
Debajo agregar:
 
Código PHP:
<a href="?act=setprivate&cid={$c.cid}"><img src="{$tsConfig.url}/themes/default/images/icons/key.png" title="Activar/desactivar categor&iacute;a privada"/></a

                            

  
                         
Creditos: aperpen

Imprimir


Enviado por: Chctrpgo
04-12-2021, 11:44 AM
Foro: Diseños Terminados
- Respuestas (50)

Hola a todo@s, ya se pueden descargar el tema V7 actualizado y ya funcionando con PHP 8.0.3
Cualquier duda o lo que sea lo pueden preguntar aquí mismo.
Para cualquier otro tema, mods... no duden en preguntar.
Saludos.

 
- Se han actualizado todas las librerías del sistema, ya que las versiones anteriores tenían riesgos conocidos en la seguridad que ponen en peligro los sitios web con esas versiones al público.

- Se ha creado un nuevo diseño basado en la versión de taringa la cual hemos llamado V7 Taringa el tema será llamado default en el directorio, ya que es en base al default de phpost.

- Se han modificado y reestilizado los esquemas agregando un diseño mejorado, limpio y responsivo, que es lo más importante para un sitio web de actualidad.

- Se han corregido muchísimos errores en la actualización del sistema, ya que la versión anterior Risus 1.3 tenía bastantes errores que ya se han corregido y otros debido a todas las actualizaciones de librerías y repositorios de terceros.

- Funcionalidad completa con php 8.0.3 y anteriores, dejando la retrocompatibilidad con todas las versiones de php hasta ahora conocidas.

- Algunas funcionalidades y mejoras fueron agregadas para darle un toque más parecido a lo que buscan los usuarios que usan PHPost.

- Se ha mejorado el sistema en rendimiento y funcionalidad, colocando nuevas rutinas, funciones y correcciones de cosas que no funcionaban según reportes de usuarios.


Actualizado el 08/07/2022

Demo
http://Registrate o inicia tu sesión par... contenido

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]


Mega
http://Registrate o inicia tu sesión par... contenido

Google Drive
http://Registrate o inicia tu sesión par... contenido

Mediafire
http://Registrate o inicia tu sesión par... contenido

Uptobox
http://Registrate o inicia tu sesión par... contenido

4shared
http://Registrate o inicia tu sesión par... contenido

Imprimir


Enviado por: azuna
04-10-2021, 05:55 PM
Foro: Bugs
- Respuestas (3)

Buenas, en primer lugar felicitarlos por el gran trabajo, esta quedando hermoso.

1- BUG
Al hacer click en el logo de taringa, te despliega un menu.

[img]Registrate o inicia tu sesión para ver este contenido[/img]

2-BUG
Images de las imagenes de publicidad, seria mejor quitarlos, cuando agreguen el banner recien aparezca la publicidad, mantener esas imagenes es algo innecesario.

[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]

3-BUG
Este bug es mas de diseño, es decir no se ve nada bien.
[img]Registrate o inicia tu sesión para ver este contenido[/img]

4-BUG EN LAS NOTIFICACIONES, "MONITOR, MAS ESPECIFICO COMENTARIO EN LOS POST, DAR POSITIVO Y RESPONDER UN COMENTARIO"

[img]Registrate o inicia tu sesión para ver este contenido[/img]


5-BUG CRITICO, AL MOMENTO DE SUBIR UNA IMAGEN DESDE LA PC A UN POST, SIMPLEMENTE SE CIERRA EL CUADRO AL DARLE CLICK PARA EXPLORAR EN LA PC.

[img]Registrate o inicia tu sesión para ver este contenido[/img]



5to BUG CRITICO, ESTE BUG NO SE SI ES DE PHPOST O DE CERVERUS, Y RADICA EN LOS BLOQUEOS ENTRE USUARIOS.

EJEMPLO: A BLOQUEA A B,.................ENTONCES B AUN PUEDE COMENTAR EN EL MURO, MANDAR MENSAJES, ME GUSTAS ETC...AL USUARIO A.

DE IGUAL FORMA, SI A BLOQUEA A B Y B BLOQUEA  A, AMBOS IGUAL PUEDEN COMENTAR EN AMBOS.
ESTO HACE QUE SEA UNA FALLA CRITICA DE PRIVIACIDAD, SEGURIDAD.

PARA QUE VEAN MAS A FONDO ESTE PROBLEMA, QUE OTRO USUARIO LES BLOQUEEN A USTEDES Y VERAN QUE USTEDES PODRNA COMENTAR Y VER LAS COSAS DEL USUARIO QUE LOS BLOQUEO.

[img]Registrate o inicia tu sesión para ver este contenido[/img]


[img]Registrate o inicia tu sesión para ver este contenido[/img]


eSO SERIA ALGGUNOS, LA OTRA COSA SERIA MEJORAR UN POCO EL DISEÑO EN ALGUNOS LADOS.}

Gracias por el grna trabajo.

Imprimir


Enviado por: sexyalo32
04-04-2021, 10:43 PM
Foro: Ayuda y Soporte
- Respuestas (1)

estuve mirando varios video de youtube que se puede usar un programa como adbe muse donde no necesitas
conocimiento en programacion para diseño... y se adaptan a wordpress eso theme hecho con adobe muse
¿habria alguna posibilidad de hacer diseño con ese programa para adaptarlo a phpost....

[video=youtube]Registrate o inicia tu sesión para ver este contenido[/video]
 
si no hay posibilidades de hacer diseño con adobe muse... que programa usan para hacer los diseño
de phpost y que archivo hay que tocar... gracias

Imprimir


Enviado por: Staff
04-04-2021, 08:14 PM
Foro: Diseños en Desarrollo
- Respuestas (3)

Venga que ya tenemos la versión ahí quedando igualmente de este lado, pero seguimos trabajando encontrando errores y cosas y reparándolos pues queremos que esta nueva revisión quede perfectamente estable, el que quiera aportar ideas o apoyarnos en la fase de pruebas del sistema es bienvenido y se agradecerá su entusiasmo.
Esto porque entre más rápido tengamos la versión funcional y, ya que ustedes llevan más tiempo con el sistema pueden probar todo completamente y con mayor interés las zonas donde hayan experimentado problemas.
Pero esto agilizará que podamos tener ya la versión 3.0 Cerberus lo más pronto posible.

Demo
http://Registrate o inicia tu sesión par... contenido

Imprimir


Enviado por: Tronlar
04-02-2021, 10:20 PM
Foro: Noticias y Novedades
- Sin respuestas

Hola a tod@s, se está desarrollando el diseño de Taringa V7 totalmente actualizado, pueden opinar que cosas u otras funciones les gustaría.
Aparte se ha actualizado Risus 1.3 a PHPost cerberus 3.0.0, ya funcionando con PHP 8.
Para más información o si necesitan otro tema o mods pueden pedirlo aquí en este tema.

Canal Discord
http://Registrate o inicia tu sesión par... contenido

Imprimir