21
XWiki Développement rapide d'une application basée sur XWiki

Jug algeria x wiki-atelier

Embed Size (px)

Citation preview

Page 1: Jug algeria x wiki-atelier

XWikiDéveloppement rapide d'une application basée sur XWiki

Page 2: Jug algeria x wiki-atelier

Sommaire

• Premiers pas sur XWiki

• Créer une application sous XWiki

• Ressources :

– JRE : Java Runtime Environment .

– XWiki Enterprise 3.4 : Standalone.

Page 3: Jug algeria x wiki-atelier

Aperçu général.

Page 4: Jug algeria x wiki-atelier

Ajout d'utilisateur et groupe

Page 5: Jug algeria x wiki-atelier

Gestion des droits

• 3 Niveaux : Wiki, Espace ou Document

• 2 Éléments: Utilisateur ou Groupe

• 3 Droits : Autorisé, Non autorisé, Hérité

Page 6: Jug algeria x wiki-atelier

Personnalisation graphique

Page 7: Jug algeria x wiki-atelier

Personnalisation graphique

Menu

Logo Header

PanelsView

Page 8: Jug algeria x wiki-atelier

Métas données

• XWiki Classes

– Types : Number, String, TextArea, Password, Boolean, Static List, Date..

• XWiki Objects

Page 9: Jug algeria x wiki-atelier

Scripting : Velocity

• http://velocity.apache.org/

• {{velocity}}#set($words = ["Some", "velocity", "code"])#foreach($word in $words)$word ##

#end{{/velocity}}

Page 10: Jug algeria x wiki-atelier

Scripting : Groovy

• http://groovy.codehaus.org/

• {{groovy}}def list = ["one", "two"]list.each { item ->println "* ${item}"

}{{/groovy}}

Page 11: Jug algeria x wiki-atelier

Créer une application sous XWiki

Application foire aux questions

Source :

http://platform.xwiki.org/xwiki/bin/view/DevGuide/FAQTutorial

Page 12: Jug algeria x wiki-atelier

1- Créer la XWiki Class

Page 13: Jug algeria x wiki-atelier

1- Créer la XWiki Class

Page 14: Jug algeria x wiki-atelier

2-Créer l’aperçu d’une FAQ

Page 15: Jug algeria x wiki-atelier

2-Créer l’aperçu d’une FAQ

Page 16: Jug algeria x wiki-atelier

3-Créer la FAQ Template

Page 17: Jug algeria x wiki-atelier

5- Créer la page d’accueil de la FAQ

• = Existing FAQ entries =

{{velocity}}#set($sql = ", BaseObject as obj where obj.name = doc.fullName and obj.className = 'FAQ.FAQClass' and obj.name <> 'FAQ.FAQTemplate'")#set($results = $xwiki.searchDocuments($sql))#if($results.empty)No FAQ has been created yet!

#else#foreach ($item in $results)#set($faq = $xwiki.getDocument($item))* [[${faq.display("question").replace("<p>", "").replace("</p>",

"")}>>${item}]]#end

#end{{/velocity}}

Page 18: Jug algeria x wiki-atelier

5- Créer la page d’accueil de la FAQ

• {{velocity}}#set($columns = ["question", "doc.creationDate", "_actions"])#set($columnsProperties = {

"question" : { "type" : "text", "link" : "view", "html" : "true", "sortable":true },

"_actions" : {"actions": ["edit","delete"]}})#set($options = {

"className":"FAQ.FAQClass","translationPrefix" : "faq.","tagCloud" : true,"rowCount": 10

})#livetable("faq" $columns $columnsProperties $options){{/velocity}}

Page 19: Jug algeria x wiki-atelier

Testé le résultat :)

Page 20: Jug algeria x wiki-atelier

Qui a des questions ?

Page 21: Jug algeria x wiki-atelier

Liens utiles

• Site officiel : http://www.xwiki.org• Contributions : http://extensions.xwiki.org• Site de l’entreprise : http://www.nearbee.com

• Mailing List : [email protected]• Blogs :

– Vincent Massol http://massol.myxwiki.org– XE Incubator : http://incubator.myxwiki.org

Mon email : [email protected]