Bueno hace una banda que no posteaba algo en esta seccion :P,
este mod consiste en darle al usuario la posibilidad de poder llamar la atencion en la pagina principal en los posts, el usuario elige el tipo sea regular, semanal, mensual, anual.
no se como explicar les dejo esto mejor:



Serviría para resaltar el post sobre los demás. Por ejemplo: Si un hace un post de imagenes de Photoshop que le tomo 5 horas; este metodo implicaría que pueda ser resaltado sobre un Copy & Paste del diario.

Habría tres jerarquías: -Regular, -Mensual, - Anual. La regular es la categoria que aparecería con un solo palito. La Mensual con dos palitos. Y la anual con tres palitos. La regular se podría usar todas la veces que se quiera. La mensual se podría usar 1 vez al mes y la anual una vez al año. Esto implicaría que cuando uno va a la pagina de inicio y ve un post con tres palitos tenga mas tendencia a abrirlo que a uno de un palito porque seria menos usual.
Si uno gasta el post anual a la hora de agregar un post le aparecería un circulo rojo en anual. Con el mensual lo mismo y el regular estaría siempre verde.
Restricciones:Regular:Infinitos al año. Mensual:12 al año (uno por mes).Anual: Uno al año.
Instalacion:
Abran el post.php
busquen por:
function Post()
{
global $txt, $scripturl, $topic, $db_prefix, $modSettings, $board, $ID_MEMBER;
global $user_info, $sc, $board_info, $context, $settings, $sourcedir;
global $options, $func, $language;
loadLanguage('Post');
agregen despues:
// verificamos si ya paso el tiempo
$tiempo_definido = array(
1 => time() - 60 * 60 * 24,
2 => time() - 60 * 60 * 24 * 7,
3 => time() - 60 * 60 * 24 * 31,
3 => time() - 60 * 60 * 24 * 31 * 12
);
$tipos = array(
1 => 'dia',
2 => 'semana',
3 => 'mes',
4 => 'anio'
);
$inverted_tipos = array_flip($tipos);
$request = db_query("SELECT temp.ID_TOPIC, temp.ID_MEMBER, temp.tipo, temp.time
FROM {$db_prefix}tempusedstatus as temp
WHERE temp.ID_MEMBER = $ID_MEMBER",__FILE__,__LINE__);
while($row = mysql_fetch_assoc($request)){
if($row['time'] < $tiempo_definido[$row['tipo']]){
$tipo = $tipos[$row['tipo']];
db_query("UPDATE {$db_prefix}log_statusused SET $tipo = 0 WHERE ID_MEMBER = $row[ID_MEMBER]",__FILE__,__LINE__);
db_query("DELETE FROM {$db_prefix}tempusedstatus WHERE ID_MEMBER = $row[ID_MEMBER] AND ID_TOPIC = $row[ID_TOPIC]",__FILE__,__LINE__);
}
}
mysql_free_result($request);
$request = db_query("SELECT ID_MEMBER, dia, semana, mes, anio
FROM {$db_prefix}log_statusused
WHERE ID_MEMBER = $ID_MEMBER",__FILE__,__LINE__);
$precartuchos = mysql_fetch_assoc($request);
mysql_free_result($request);
$context['posibles_cartuchos'] = array();
$strtr = array('dia' => 'regular', 'semana' => 'semanal', 'mes' => 'mensual', 'anio' => 'anual');
foreach($precartuchos as $pre => $val){
if(empty($val))
$context['posibles_cartuchos'][] = array($inverted_tipos[$pre], strtr($pre, $strtr), $pre);
}
busquen por:
createPost($msgOptions, $topicOptions, $posterOptions);
agregen despues:
// categoria temporal.
if(isset($_POST['stat_post']) && !empty($_POST['stat_post'])){
$tiposStatus = array(
1 => 'dia',
2 => 'semana',
3 => 'mes',
4 => 'anio'
);
$request = db_query("SELECT ID_MEMBER, ".$tiposStatus[$_POST['stat_post']]." as tipoPost
FROM {$db_prefix}log_statusused
WHERE ID_MEMBER = $ID_MEMBER
LIMIT 1",__FILE__,__LINE__);
$assoc = mysql_fetch_assoc($request);
$is_already_in_log = mysql_num_rows($request) > 0 ? true : false;
mysql_free_result($request);
if(empty($assoc['tipoPost'])){
db_query("INSERT IGNORE INTO {$db_prefix}tempusedstatus (ID_TOPIC, ID_MEMBER, tipo, time)
VALUES($topicOptions[id], $ID_MEMBER, ".(int)$_POST['stat_post'].", ".time().")",__FILE__,__LINE__);
}
$tipos = array();
if(!$is_already_in_log){
foreach($tiposStatus as $t => $v)
$tipos[$v] = $_POST['stat_post'] == $t ? 1 : 0;
db_query("INSERT IGNORE INTO {$db_prefix}log_statusused (ID_MEMBER, ".implode(', ', array_keys($tipos)).")
VALUES($ID_MEMBER, ".implode(', ', $tipos).")",__FILE__,__LINE__);
}else{
$rowForModify = $tiposStatus[$_POST['stat_post']];
db_query("UPDATE {$db_prefix}log_statusused SET $rowForModify = 1",__FILE__,__LINE__);
}
if(empty($assoc['tipoPost']))
db_query("UPDATE {$db_prefix}topics SET clase = " . (int) $_POST['stat_post'] . " WHERE ID_TOPIC = " . $topicOptions['id'],__FILE__,__LINE__);
}
}
abran el post.template.php
busquen por:
echo'<br><font class="size11"><b>', $txt['options'],'</b></font>';
agregen antes:
if(!empty($context['posibles_cartuchos'])){
echo '<br /><br /><strong>Categoria temporal:</strong><br /><select name="stat_post" tabindex="3" size="5" style="width:230px"/>
<option value="0">Seleccionar categoria temporal</option>';
foreach($context['posibles_cartuchos'] as $cartucho){
echo '<option value="'.$cartucho[0].'">'.$cartucho[1].' (válida para 1 '.$cartucho[2].')</option>';
}
echo '</select><br /><br />';
}abran el recent.php
busquen por:
die('Error');
agregen abajo:
function define_class_post($class){
$output = '';
// un simple div que nos servira de barra.
$templateDiv = '<div style="height:16px; margin-top:2px; width:5px; margin-left:1px; background:%s; float:left"></div>';
// definimos los colores, segun el estado del post claro esta.
$define_class_post = array(
1 => sprintf($templateDiv, '#CCCCCC'), // dia
2 => sprintf($templateDiv, '#0080FF'), // semanal
3 => sprintf($templateDiv, '#088A08'), // mes
4 => sprintf($templateDiv, '#B40404'), // year
);
// 1, 2, 3 o 4 segun el tipo de post.
for($i = 1; $i <= $class; $i++)
$output .= $define_class_post[$class];
return $output;
}
busquen por:
, posterName, puntos, m.hiddenOption, posterTime
agregen despues:
, t.clase
busquen por:
'favourites' => $favourites['fav'],
agregen abajo:
'postclase' => empty($posts['clase']) ? '' : define_class_post($posts['clase'])
abran el recent.template.php
busquen por:
echo'<span title="', censorText($np['title']), '"><a href="', $scripturl ,'?topic=', $np['id'],'">',censorText($np['title']), </a></span>agregen despues:
<div style="float:right">'.$np['postclase'].'</div>suban el
jerarquia_posts.php a la raiz de su sitio.
ejecutenlo
suweb.com/
jerarquia_posts.phples queda en blanco despues de ejecutarlo, esperan que carge la pagina y lo borran desde su ftp

saludos!