Skip to content

Instantly share code, notes, and snippets.

@Fabax
Created February 6, 2013 19:19
Show Gist options
  • Save Fabax/4725010 to your computer and use it in GitHub Desktop.
Save Fabax/4725010 to your computer and use it in GitHub Desktop.
JS : AutoTweet
<!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">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.css" />
<script src="http://code.jquery.com/jquery-1.8.2.min.js"></script>
<script src="http://code.jquery.com/mobile/1.2.0/jquery.mobile-1.2.0.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="viewport" content="width=device-width" />
<title>Clichy Tigers</title>
<script type="text/javascript" src="jquery.js"></script>
<link rel="stylesheet" href="style.css">
</head>
<body >
<div data-role="page">
<div data-role="header">
<h1>Sosh autoTweet</h1>
</div><!-- /header -->
<div data-role="content">
<!-- //Boutons -->
<div data-role="controlgroup" data-type="horizontal">
<a href="#" data-role="button" title="start" id="startQuad" >Start</a>
<a href="#" data-role="button" title="pause" id="pauseQuad">Pause</a>
<a href="#" data-role="button" title="reset" id="resetQuad">Reset</a>
</div>
<br />
<br />
<ul data-role="listview" >
<li id="quad">Messages</li>
</ul>
</div><!-- /content -->
</div><!-- /page -->
<script>
//instanciation des variables
//QUAD
var quadMsg = ['']; // tableau contenant toutes les stings à twitter
var quadI = 1; // Int pour l'incrementation qui sert à parcourir le tableau
var quadT =''; // variable contenant le settimeout
var timeQuad = 5000;
var now = new Date();
// fonction appellée apres avoir cliqué sur "start"
// 1) va chercher le fichier csv
// 2) si 1) reussi, decoupe toutes les strings etant separé par ','. puis les stock dans le tableau quadMsg
// 3) appelle la fonction tweet Interval
function tweetStart(){
$.ajax({
type: "GET",
url: 'csv/koko.csv'
}).done(function(csv) {
console.log('csv');
console.log(csv);
console.log(timeQuad);
quadMsg = csv.split(',');
console.log(quadMsg);
tweetTimeoutQuad(timeQuad,'quad');
});
}
// lance le settimeut qui lui meme lance la fonction quadTweet
// CHANGER CETTE FONCTON !!! la separer pour eviter les conflits
function tweetTimeoutQuad(){
quadT = setTimeout("quadTweet()", timeQuad);
console.log('Quad tweetTimeout');
}
function tweetPause(){
clearTimeout(quadT);
}
function tweetReset(){
clearTimeout(quadT);
tweetPause('quad');
quadI = 0;
$('#quad').empty();
tweetStart('quad');
}
// 1) fait un requete post vers traitement php en passant comme arguement un cellule du tableau quadMsg
// 2) si 1) reussi affiche le message tweeté dans la "console"
// 3) reset le setTimeout
// 4) change la valeur time par un random
// 5) Appel la fonction tweetTimeout
function quadTweet(){
if(quadMsg[quadI] != undefined){
console.log('quadTweet');
$.ajax({
type: "POST",
url: "traitement/traitementQuad.php",
data: { new_tweet: quadMsg[quadI] }
}).done(function(resp) {
now = new Date();
console.log('Quad tweet done');
$('#quad').html('<li> numbre : '+quadI+' : '+quadMsg[quadI]+' sent ! <br> at '+now+'</li>');
quadI = Math.floor((Math.random()*587)+1);
clearTimeout(quadT);
timeQuad = (Math.floor((Math.random()*1200)+1))*1000;
tweetTimeoutQuad(timeQuad);
});
}else{
tweetReset('quad');
}
}
jQuery(document).ready(function($) {
//Quad
$('#startQuad').bind('click', function(){ tweetStart(); });
$('#pauseQuad').bind('click', function(){ tweetPause(); });
$('#resetQuad').bind('click', function(){ tweetReset(); });
});
</script>
</body>
</html>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment