Revision: 17645
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at September 11, 2009 10:41 by rolytyler
Initial Code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Persevere Microblog</title>
<!-- Following Tweet class definition must exist in \WEB-INF\jslib\tweet.js:
Class(
{
"id":"Tweet",
"name":"Tweet",
"schema":{
"extends":{"$ref":"../Class/Object"},
"prototype":{},
"properties":{
"name": { optional:true },
"content": { optional:true }
}
}
});
-->
<script djConfig="isDebug:false, parseOnLoad: true" src="../jsclient/dojo/dojo.js"></script>
<script src="../jsclient/persevere/persevere.js"></script>
<script type="text/javascript">
onload = function()
{
// load all the classes from Persevere
displayTweets = function()
{
pjs.load("/Tweet/", function(tweets)
{
var tableHTML = "";
for(var i = tweets.length -1 ; i >= 0; i--)
{
var tweet = tweets[i];
var escapedName = tweet.name.replace(/</,'');
var escapedContent = tweet.content.replace(/</,'');
var age = ((new Date().getTime() - tweet.timestamp) / 1000) + " seconds ago";
tableHTML += "<p>" + escapedName + " : " + escapedContent + " (" + age + ")</p>";
}
document.getElementById("list").innerHTML = tableHTML;
});
}
pjs.loadClasses(/*path*/ null, displayTweets);
addTweet_onclic = /*document.getElementById("addTweet").onclick =*/ function()
{
var name = document.getElementById("sender").value;
var message = document.getElementById("message").value;
if(typeof Tweet == 'undefined'){
return alert('A "Tweet" class must be created in order for this demo to work');
}
if(name && message){
new Tweet({"name":name,"content":message,"timestamp":new Date().getTime()}); // WHY? "message" field (instead of "content") does not work
pjs.commit(displayTweets);
}
};
}
</script>
</head>
<body>
<table border='0' margin='5px'>
<tr><td>Sender:<br><input id='sender' value='me'></td>
<td>What's on your mind?<br><input id='message' value='enter your tweet here!'>
<button id='addTweet' onclick='addTweet_onclic()'>Tweet!</button></td></tr>
</table>
<div id="list" border="1">
</div>
</body>
</html>
Initial URL
Initial Description
This source code based on the "friend" example given with Persevere. It is a simple Twitter-like microblogging program. Note that you need to create a class definition file in "WEB-INF\jslib\tweet.js" for it to work.
Initial Title
Twitter-like Microblogging with Dojo & Persevere
Initial Tags
Initial Language
HTML