Autorius Tema: Naujų žinučių sekimo įrankiai  (Skaityta 13090 kartus)

Neprisijungęs Lukas

  • Administratorius
  • Herojus
  • ******
  • Įrašai: 7431
  • Karma: +232/-15
    • Žiūrėti profilį
Naujų žinučių sekimo įrankiai
« Įrašytas: 2012-07-15 09:55:47 am »
Norint, kad forumas būtų kiek galima panašesnis į įprastą pokalbį yra keli būdai kaip greičiau pamatyti naujas žinutes.  Pats papraščiausias yra RSS naujienų prenumeravimas

http://forumas.manualai.lt/.xml/?type=rss

Per rss galima gauti pakankamai nemazai informacijos, daugelis variantu yra aprasyti cia:

http://www.simplemachines.org/community/index.php?topic=25009.0

Per RSS galima gauti viso forumo naujas žinutes, tik konkrečios temos ar informaciją apie naujus narius ir t.t.

---------------------------------------------------------------------------------------------------------------------

Kitas įrankis yra čia:

http://forumas.manualai.lt/app_new_posts.php

NUORODA Į JĮ YRA FORUMO PAČIOJE APAČIOJE

Šioje vietoje yra matomos pačios naujausios žinutės ir kai yra naujų - išoka alert box'as su pranešimu apie naujas žinutes ir jūsų naudojama naršyklė turėtų jus perkelti į šį puslapį, kad pamatytumėte kokia yra nauja žinutė. Yra matoma tema, kurioje buvo parašyta žinutė, taip pat autorius, laikas ir žinutės pradžia.

Šį įrankį padariau gana skubotai, todėl jo kodas tikrai nėra tvarkingas. Šiaip ar anaip jį pateikiu čia, kad galėtumėt juo pasinaudojus sukurti kitus įrankius, su kuriais galima būtų matyti naujausias žinutes.

<?php 
ob_start
();
$width '975px;';
 
?>

<div style="width: <?php echo $width?>; margin: 0 auto;">
<?php

$rss 
'http://forumas.manualai.lt/index.php?action=.xml;sa=recent;limit=5';
$xmlstr file_get_contents($rss);
$newPosts = new SimpleXMLElement($xmlstr);

echo 
'<table id="newspaper-a">
<thead>
<tr>
<th scope="col" width="200">Lenta</th>
<th scope="col" width="200">Tema</th>
<th scope="col" >Žinutė</th>
<th scope="col" width="200">Autorius</th>
<th scope="col" width="100">Laikas</th>
</tr>
</thead>
<tfoot>
<tr>
<td colspan="5"><em>Manualai.lt forumo <a target="_blank" href="http://forumas.manualai.lt/index.php?action=unread;all;start=0">Visos neskaitytos temos</a></em></td>
</tr>
</tfoot>
<tbody>
'
;
$md5 '';
foreach(
$newPosts as $post){
$lenta '<a target="_blank" href="'.$post->board->link.'">'.$post->board->name.'</a>';
$tema '<a target="_blank" href="'.$post->topic->link.'">'.$post->topic->subject.'</a>';
$autorius '<a target="_blank" href="'.$post->poster->link.'">'.$post->poster->name.'</a>';
$zinute $post->body;
$laikas $post->time;
$zinute strip_tags($zinute);

if(strlen($zinute) > 200){
$zinute substr($zinute0200).'...';
}


$zinute '<a target="_blank" href="'.$post->link.'">'.$zinute.'</a>';

$line '
<tr>
<td>'
.$lenta.'</td>
<td>'
.$tema.'</td>
<td>'
.$zinute.'</td>
<td>'
.$autorius.'</td>
<td>'
.$laikas.'</td>
</tr>'
;
echo $line;
$md5 .= $line;
}

echo 
'</table>';

echo 
'
</tbody>
</table>
'
;
echo 
'<div id="md5" style="display:none;">'.md5($md5).'</div>';
?>

</div>
<?php $body ob_get_contents();  ob_end_clean();?>

<?php ob_start(); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://opengraphprotocol.org/schema/" xml:lang="utf-8" lang="utf-8" >
<head>
<title>-</title>
<style type="text/css">
a{
color: #333;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}

#newspaper-a {
font-family:"Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size:12px;
width:<?php echo $width?>;
text-align:left;
border-collapse:collapse;
border:1px solid #69c;
}

#newspaper-a tbody tr:hover td,#newspaper-b tbody tr:hover td {
color:#339;
background:#d0dafd;
}

#newspaper-a th {
font-weight:400;
font-size:14px;
color:#039;
border-bottom:1px dashed #69c;
padding:12px 17px;
}

#newspaper-a td {
color:#669;
padding:5px 15px;
}

#newspaper-b th {
font-weight:400;
font-size:14px;
color:#039;
padding:15px 10px;
}

#newspaper-b td {
color:#669;
border-top:1px dashed #fff;
padding:7px;
}

#newspaper-c {
font-family:"Lucida Sans Unicode", "Lucida Grande", Sans-Serif;
font-size:12px;
width:480px;
text-align:left;
border-collapse:collapse;
border:1px solid #6cf;
margin:10px;
}

#newspaper-c th {
font-weight:400;
font-size:13px;
color:#039;
text-transform:uppercase;
border-right:1px solid #0865c2;
border-top:1px solid #0865c2;
border-left:1px solid #0865c2;
border-bottom:1px solid #fff;
padding:20px;
}

#newspaper-c td {
color:#669;
border-right:1px dashed #6cf;
padding:10px 20px;
}
</style>
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript">
// var oldHtml = updateContent();
// var newHtml;

$(document).ready(function(){



$.ajaxSetup ({ 
        cache: false 
    });

var oldmd5 = $("#md5").html();
var newmd5 = $("#md5").html();
var yraNaujienu = false;
var timer_atnaujinaTurini;
var timer_arSufocusavo;
var timer_titleKeitineja;

timer_atnaujinaTurini = setInterval(function(){
updateContent();
newmd5 = $("#md5").html();
if(newmd5 != oldmd5){
console.log('atnaujino ir rado pokyciu');
yraNaujienu = true;
oldmd5 = $("#md5").html();
alert('Yra naujienų!');
} else {
// console.log('atnaujino be naujienu');
document.title = '-';
}
},5000);

timer_arSufocusavo = setInterval(function(){
if(window.focus()){
yraNaujienu = false;
}
}, 1000);

timer_titleKeitineja = setInterval(function(){
if(yraNaujienu){
if(document.title == 'Yra naujienų'){
document.title = '';
} else {
document.title = 'Yra naujienų';
}
} else {
document.title = '';
}
}, 500);



});

function updateContent(){
$.get('app_new_posts.php?part=body', function(data) {
  $('body').html(data);
  return data;
});

}


</script>
<meta http-equiv="refresh" content="600">
</head>
<body>
<div id="body">
<?php echo $body?>
</div>
</body>
</html>

<?php $all ob_get_contents();  ob_end_clean();?>

<?php 

if(isset($_GET['part'])){
switch($_GET['part']){
case 'body':
echo $body;
break;
default:
echo $all;
}
} else {
echo $all;
}

?>



---------------------------------------------------------------------------------------------------------------------



Visi kas padarysit kokį nors įrankį, kuris padėtų greičiau pamatyti apie naujas žinutes rašykit man pm arba susikurkite tam temą čia:

http://forumas.manualai.lt/jusu-idejos-pasiulymai-ir-nusiskundimai/

Jei nesugalvojat ką galėtumėt padaryti tai štai keli pasiūlymai:



---------------------------------------------------------------------------------------------------------------------

Šioje temoje dėsiu jūsų sukurtus įrankius :)
« Paskutinį kartą keitė: 2012-07-15 13:30:09 pm sukūrė Lukas Liesis »
Jūsų draugas, kolega ir puslapio administratorius,

Lukas.

Gerda Photography
Serveriai.lt 50% nuolaida!
Free Hosting
Free Templates

Manualai.lt Forumas

Naujų žinučių sekimo įrankiai
« Įrašytas: 2012-07-15 09:55:47 am »