Jug algeria x wiki-atelier

Preview:

Citation preview

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

Sommaire

• Premiers pas sur XWiki

• Créer une application sous XWiki

• Ressources :

– JRE : Java Runtime Environment .

– XWiki Enterprise 3.4 : Standalone.

Aperçu général.

Ajout d'utilisateur et groupe

Gestion des droits

• 3 Niveaux : Wiki, Espace ou Document

• 2 Éléments: Utilisateur ou Groupe

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

Personnalisation graphique

Personnalisation graphique

Menu

Logo Header

PanelsView

Métas données

• XWiki Classes

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

• XWiki Objects

Scripting : Velocity

• http://velocity.apache.org/

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

#end{{/velocity}}

Scripting : Groovy

• http://groovy.codehaus.org/

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

}{{/groovy}}

Créer une application sous XWiki

Application foire aux questions

Source :

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

1- Créer la XWiki Class

1- Créer la XWiki Class

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

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

3-Créer la FAQ Template

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}}

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}}

Testé le résultat :)

Qui a des questions ?

Liens utiles

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

• Mailing List : devs@xwiki.org• Blogs :

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

Mon email : farouk.korteby@gmail.com