Source of digg-top

/* appjet:version 0.1 */ /**  * @overview This is a very simple implementation of the Digg API  * using basic CSS, lib-xmlobj, and Appjet.<br />  * This displays the Digg top 10 stories by default which can be changed<br />  */ import("lib-xmlobj"); // Write style sheet in header page.head.write(""" <style> body { background-color: #E5ECF3; margin: 30px; } .stories {     background-color: #fff;     font-size: 16px;     border: solid 1px #B7CCE0;     padding: 10px;     margin: 10px 0; } .clear { clear: both; } .stories img {     border: solid 1px #B7CCE0;     padding: 10px;     float: left;     background-color: #fff;     margin-right: 20px;     height: 80px;     width: 80px; } .stories .r-col a { color: #105CB6; text-decoration: none; font-weight: bold;} .stories .r-col a:hover { color: #999; } .in_box {     border: solid 1px #B7CCE0;     padding: 0;     margin: 0;     color: #888;     float: left;     text-align: center; } .target-link {     font-size: 9px;     float: right; } </style>"""); // If no count given as request, or count is more than 50 or less than 1, // change count to 10 if ( ( !request.params.count ) ||     ( request.params.count > 50 ) ||     ( request.params.count < 1 ) ) var count = 20; // Else count is valid so change count to provided count else var count = request.params.count; page.setTitle("Digg-Top :: Top " + count + " stories!"); page.showRenderTime(true); page.setFavicon("http://www.digg.com/favicon.ico"); // Print count change form print(DIV(         FORM(                 {action:"/", method:"get"},                 SPAN({style: "float: left;"}, "Show"),                 INPUT( {name: "count", value: count, size: "2", className: "in_box"} ),                 SPAN({style: "float: left;"}, "items"),                 INPUT( {value: "Go", className: "in_box", size: "1", type: "submit"} ),                 DIV({style: "clear: both;"})         ) )); var appKey = "http://" + appjet.mainDomain + "/" + appjet.appName; // Get XML list from Digg var obj = wget("http://services.digg.com/stories/top?count=" + count + "&type=xml&appkey=" + escape(appKey)); // Declare new XMLObj Stories and variable i for the loop var stories = new XMLObj(obj); var i = 0; // Inititate for loop for ( i = 0; i < count; i++ ) {     // If count is 1, story is not an array so change cur to stories.story     if ( count == 1 ) var cur = stories.story;     // Otherwise, story is an array. So change cur to stories. story[i]     else var cur = stories.story[i];     // Declare link variable as the destination link for current story     var lnk = cur.getAttribute("href");     // Get destination link     var outlnk = cur.getAttribute("link");     // If current story has a thumbnail, change thumbsrc variable to thumbnail link     if ( cur.thumbnail ) var thumbsrc = cur.thumbnail.getAttribute("src");     // Otherwise, point it to a digg logo found     else thumbsrc = "http://digg.com/img/little-digg.gif";     // Print content     print(DIV(             {className:"stories", id:("story"+(i+1)) },             link(lnk, image(thumbsrc)),             DIV(                 {className:"r-col"},                 link(lnk, html(cur.title.getText())),                 SPAN({className: "target-link"}, link(outlnk, "TARGET")),                 html("<hr />"),                 html(cur.description.getText())             ),             DIV({className:"clear"})         )     ); }

Go Back to this app | Get plain source

Powered by AppJet on JGate
source
rendered in 0.264s