Posteador
MattBally
Aprendiz



(Actualizacion 1.2) Gestionar comentarios desde Admin




Buenas tardes, vuelvo con este tema que actualize con otro mod, esta vez, el Credito es para : alexander1712

Bueno, gracias a el, saco muchos mods muy buenos, por ej: Fuente, Comunidades v4, Phpost Musica, Phpost Juegos! y tiene mas seguro.

AVISO: Yo estoy usando la V5 de To-Up, tambien los codigos se puede usar en Default, menos en la parte de m.admin.sidemenu, ya que en la V5 es : a.a-sidebar .

Comenzemos con la actualizacion del mod:

Busquen el archivo c.admin.php en Inc/class y busquen :

/****************** ADMINISTRACIÓN DE FOTOS ******************/


Y arriba de eso, ponemos este codigo:

/****************** ADMINISTRACIÓN DE COMENTARIOS ACTUALIZADO ******************/

function GetAdminComents()
{
global $tsCore;
//
$max = 18; // MAXIMO A MOSTRAR
$limit = $tsCore->setPageLimit($max, true);

//
$query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT p.post_title, p.post_id, u.user_id, u.user_name, c.cid, c.c_body, c.c_date, c.c_ip, s.c_seo FROM p_comentarios AS c LEFT JOIN u_miembros AS u ON c.c_user = u.user_id LEFT JOIN p_posts AS p ON c.c_post_id = p.post_id LEFT JOIN p_categorias AS s ON s.cid = p.post_category WHERE c.cid > \'0\' ORDER BY cid DESC LIMIT ' . $limit);
//

$data['data'] = result_array($query);

// coments
$query = db_exec(array(__FILE__, __LINE__), 'query', 'SELECT COUNT FROM p_comentarios WHERE cid > \'0\'');
list($total) = db_exec('fetch_row', $query);

$data['pages'] = $tsCore->pageIndex($tsCore->settings['url'] . "/admin/coments?", $_GET['s'], $total, $max);
//
return $data;
}

function DelAdminComents($id)
{
$id = (int) $id; //filtro anti sqli id.
db_exec(array(__FILE__, __LINE__), 'query', "delete from p_comentarios where cid = $id";
}

function GetAdminComent_unique($id)
{
$id = (int) $id;
$query = db_exec(array(__FILE__, __LINE__), 'query', "SELECT cid, c_body FROM p_comentarios WHERE cid = $id";
return db_exec('fetch_array', $query);
}

function UPDAdminComents($id,$corpus)
{
$id = (int) $id; //filtramos
$corpus = db_exec('real_escape_string', htmlspecialchars(stripslashes($corpus))); //lo recontra re filtramos
db_exec(array(__FILE__, __LINE__), 'query', "update p_comentarios
set c_body='$corpus'
where cid=$id";
echo show_error('Error al ejecutar la consulta de la línea '.__LINE__.' de '.__FILE__., 'db');
}


Ahora busquen el archivo admin.php en Inc/Php y busquen :

// POSTS


Y arriba de eso, ponemos este codigo:

////////////////////////////////////////////////////////////////////
// coments by alexander1712
} elseif($action == 'coments'){
if(!$act) {
$smarty->assign("tsAdminComents",$tsAdmin->GetAdminComents());
} elseif ($act == 'c_delete') {
$tsAdmin->DelAdminComents($_GET['id']);
$smarty->assign("tsAdminComents",$tsAdmin->GetAdminComents());
} elseif ($act == 'c_editar') { //levantar datos y hacer formulario
$smarty->assign("tsAdminComentsContent",$tsAdmin->GetAdminComent_unique($_GET['id']));
} elseif ($act == 'c_edit2') { //guardar datos
$tsAdmin->UPDAdminComents($_POST['id'],$_POST['cuerpo']);
$smarty->assign("tsAdminComents",$tsAdmin->GetAdminComents());
}
////////////////////////////////////////////////////////////////////


Ahora busquemos este archivo t.admin.tpl en tutheme/templates y busquen:

{include file='admin_mods/m.admin_posts.tpl'}


Y abajo poner este codigo:

{elseif $tsAction == 'coments'}
{if $tsAct!='c_editar'}
{include file='admin_mods/m.admin_coments.tpl'}
{else}
{include file='admin_mods/m.admin_coments_edit.tpl'}
{/if}


Ahora creen un archivo que sea .tpl , el nombre del archivo se tiene que llamar: m.admin_coments.tpl .y copien todo este codigo

<div class="boxy-title">
<h3>Administrar Comentarios</h3>
</div>
<div id="res" class="boxy-content" style="position:relative">
{if $tsAct == '' || $tsAct == 'c_delete' || $tsAct == 'c_edit2'}
{if !$tsAdminComents.data}
<div class="phpostAlfa">No hay comentarios.</div>
{else}
<table cellpadding="0" cellspacing="0" border="0" class="admin_table" width="100%" align="center">
<thead>
<th>ID</th>
<th>Autor</th>
<th>Comentario</th>
<th>Fecha</th>
<th>Post</th>
<th>ip</th>
<th>Acciones <a id="actionsee" onclick="$('#actionsee').slideUp( 120, 'easeInOutElastic'); $('.right').fadeOut('slow').css('width', '920px').slideDown( 1700, 'easeInOutElastic'); $('.left').slideUp( 1500, 'easeInOutElastic'); $('#moreinfo').slideDown('fast'); "><img src="{$tsConfig.default}/images/icons/details.png" width="14px" height="14px" title="M&aacute;s informaci&oacute;n" /></a></th>
</thead>
<tbody>
{foreach from=$tsAdminComents.data item=c}
<tr id="post_{$c.cid}">
<td>{$c.cid}</td>
<td><a href="{$tsConfig.url}/perfil/{$c.user_name}" class="hovercard" uid="{$c.user_id}">{$c.user_name}</a></td>
<td>{$c.c_body|truncate:50}</td>
<td>{$c.c_date|hace:true}</td>
<td id="status_post_{$p.cid}"><a href="{$tsConfig.url}/posts/{$c.c_seo}/{$c.post_id}/{$c.post_title|seo}.html" target="_blank">{$c.post_title|truncate:30}</a></td>
<td id="moreinfo1_2"><a href="{$tsConfig.url}/moderacion/buscador/1/1/{$c.c_ip}" class="geoip" target="_blank">{$c.c_ip}</a></td>
<td class="admin_actions">
<a href="{$tsConfig.url}/admin/coments?act=c_editar&id={$c.cid}"><img src="{$tsConfig.default}/images/icons/editar.png" title="Editar Comentario" /></a>
<a href="{$tsConfig.url}/admin/coments?act=c_delete&id={$c.cid}"><img src="{$tsConfig.default}/images/icons/close.png" title="Borrar Comentario" /></a>
</td>
</tr>
{/foreach}
</tbody>
<tfoot>
<td colspan="7">P&aacute;ginas: {$tsAdminComents.pages}</td>
</tfoot>
</table>
{/if}
{/if}
</div>


Y lo suben a tutheme/templates/admin_mods

Y ahora creen otro archivo que sea tpl. , el nombre del archivo se tiene que llamar : m.admin_coments_edit.tpl y copien todo el codigo

<center>
<div class="form-add-post" >

<form action="{$tsConfig.url}/admin/coments?act=c_edit2" method="post" name="newartist" autocomplete="off">
<ul class="clearbeta">
<li>
<label>Comentario</label>
<span style="display: none;" class="errormsg"></span>
<br /><input type="hidden" value="{$tsAdminComentsContent.cid}" name="id"/><textarea name="cuerpo" tabindex="2" style="min-height:200px; width:600px;" >{$tsAdminComentsContent.c_body}</textarea>
</li>
</ul>
<div class="end-form clearbeta" style="width:600px;">
<center><input tabindex="8" value="Guardar!" name="preview" class="mBtn btnGreen" style="width: auto; margin-left: 5px;" type="submit"></center>
</div>
</form>

</div>
</center>


Y ahora vayamos a buscar el archivo a.a-sidebar , se encuentra en V5/templates/b_toup/administracion y busquen :

<li><a {if $tsAction == 'rangos'}id="activo-mod"{/if} href="{$tsConfig.url}/admin/rangos" style="width: 228px;"><img src="{$tsConfig.tema.t_url}/images/icons/crown.png" />Rangos de Usuarios</a></li>


Y abajo de eso, agregan esto

<li><a {if $tsAction == 'posts'}id="activo-mod"{/if} href="{$tsConfig.url}/admin/coments" style="width: 228px;"><img src="{$tsConfig.tema.t_url}/images/icons/users.png" />Todos los Comentarios</a></li>


Y listo, asi va a quedar :



Aviso/b] El color negro esta puesto a proposito para la seguridad de mis usuarios de mi pagina.

Y ahora para los que quieren el Default con este mod, tiene que hacer todos los pasos menos el a.a-sidebar, Busquen el archivo m.admin.sidemenu.tpl que se encuentra en tutheme/templates/admin_mods y añaden esto abajo de todos los posts:

<li id="a_posts"><span class="cat-title"><a href="{$tsConfig.url}/admin/coments"> todos los Comentarios</a></span></li>


Y listo, ya estara el Mod en Default tambien , saludos y hasta la proxima , vendre con otra actualizacion, si no sabes actualizar y queres que lo haga, decime y con gusto te ayudo. SOLO APORTO CON LA ACTUALIZACION PARA LOS USUARIOS DE PHPOST QUE NO SEPAN COMO ACTUALIZAR LA VERSION.


0 Comentarios


Cargando comentarios espera un momento...
No tienes permisos para comentar.

Para poder comentar necesitas estar Registrado. O.. ya tienes usuario? Logueate!
Ir al cielo