Created
February 17, 2010 15:34
-
-
Save stuff/306717 to your computer and use it in GitHub Desktop.
UWA skeleton, french version
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0" encoding="utf-8"?> | |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> | |
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:widget="http://www.netvibes.com/ns/" > | |
<head> | |
<title>Titre du widget</title> | |
<link rel="icon" type="image/png" href="http://www.netvibes.com/favicon.ico" /> | |
<meta name="author" content="John Doe" /> | |
<meta name="website" content="http://exemple.org" /> | |
<meta name="description" content="Une description" /> | |
<meta name="keywords" content="voici, des, mots-clefs" /> | |
<meta name="screenshot" content="http://exemple.org/widget-full.png" /> | |
<meta name="thumbnail" content="http://exemple.org/widget-logo.png" /> | |
<meta name="apiVersion" content="1.2-ginger" /> | |
<meta name="autoRefresh" content="20" /> | |
<meta name="debugMode" content="true" /> | |
<link rel="stylesheet" type="text/css" href="http://www.netvibes.com/themes/uwa/style.css" /> | |
<script type="text/javascript" src="http://www.netvibes.com/js/UWA/load.js.php?env=Standalone"></script> | |
<style type="text/css"> | |
/* | |
déclarez vos règles css ici, en les préfixant du nom de votre widget | |
*/ | |
.MonWidget h1 { | |
color:green; | |
} | |
</style> | |
<widget:preferences> | |
<preference name="url" type="text" label="URL" defaultValue="http://feeds.feedburner.com/NetvibesDevBlog" /> | |
<preference name="password" type="password" label="Password" /> | |
<preference name="displayImages" type="boolean" label="Display images?" defaultValue="true" /> | |
<preference name="limit" type="range" label="Number of items to display" defaultValue="10" step="1" min="1" max="25" /> | |
<preference name="category" type="list" label="Category" defaultValue="1st" onchange="onCategoryPrefChange"> | |
<option value="all" label="all" /> | |
<option value="1st" label="First category" /> | |
<option value="2nd" label="Second category" /> | |
<option value="3rd" label="Third category" /> | |
</preference> | |
<preference name="search" type="hidden" defaultValue="" /> | |
</widget:preferences> | |
<script type="text/javascript"> | |
var MonWidget = { | |
// variable servant à stocker les données (cache) | |
data: null, | |
// variable servant à stocker les éléments du dom du widget | |
elements: {}, | |
// cette methode est appelée par widget.onLoad | |
load: function(){ | |
// création du squelette de base | |
MonWidget.buildSkeleton(); | |
// chargement d'un flux rss en ajax, MonWidget.parse est utilisé en callback | |
UWA.Data.getFeed(widget.getValue('url'), MonWidget.parse); | |
}, | |
// nous créeons ici le squelette de base du widget | |
buildSkeleton: function(){ | |
// on s'assure que le corps du widget est complètement vide | |
widget.body.empty(); | |
// on créer un DIV qui sera le conteneur principal, que l'on inject dans le corps du widget | |
MonWidget.elements['conteneur'] = widget.createElement('div', { | |
'class' : 'MonWidget' | |
}).inject(widget.body); | |
// affichage d'un message pour faire patienter pendant le chargement | |
MonWidget.elements['conteneur'].setText('Chargement...'); | |
}, | |
// est appelée quand le flux rss est totalement chargé. | |
// 'data' contient alors le flux transformé en JSON par le proxy de netvibes | |
parse: function(data){ | |
// on remplis notre variable 'MonWidget.data' avec les infos qui nous interressent | |
MonWidget.data = { | |
'titreFlux': data.title, | |
'titrePremierArticle': data.items[0].title | |
} | |
// on lance finalement l'affichage final de notre widget | |
MonWidget.display(); | |
}, | |
// methode pour afficher le résultat de notre requête ajax | |
display: function(){ | |
var html = '<h1>' + MonWidget.data.titreFlux + '</h1>'; | |
html += '<h2>' + MonWidget.data.titrePremierArticle + '</h2>'; | |
MonWidget.elements['conteneur'].setHTML(html); | |
} | |
}; | |
// widget.onLoad est la première méthode appelée par le framework UWA pour démarrer votre widget | |
widget.onLoad = MonWidget.load; | |
// widget onRefresh est appelé quand l'utilisateur clique sur le bouton pour rafraichir le widget, | |
// ici nous appelons directement la methode widget.onLoad du dessus. | |
widget.onRefresh = widget.onLoad; | |
// cette méthode est appelée quand l'utilisateur change la préférence "category" | |
widget.onCategoryPrefChange = widget.onLoad; | |
</script> | |
</head> | |
<body> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment