alfresco - building a really simple wiki
DESCRIPTION
http://tinyurl.com/5exxyoTRANSCRIPT
Built in 60: Build a Simple Wiki with Web Scripts
Luis SalaSenior Director of Solutions Engineering
www.alfresco.com
See the recorded webinar here:http://tinyurl.com/simplewiki
Introduction
Luis Sala, Senior Director of Solutions Engineeringhttp://blogs.alfresco.com/luissala
Former Chief Solutions Architect at Epicentric and Principal SE at Vignette
See the recorded webinar here:http://tinyurl.com/simplewiki
Agenda
● Web Script Overview
● Web Script-based Wiki
● Other Wiki Options
● Quick Demonstration
● Q & A
See the recorded webinar here:http://tinyurl.com/simplewiki
What are Web Scripts?
Web Scripting●Agile Script-Driven MVC●Multiple uses
● Roll your own API
● Create new UI components
● Create portlets/widgets
● Expose WCM/AVM features●Script-based implementation
● Server-side JavaScript
● Freemarker●Limited only by your imagination
● Integration: Create a mashup
● Search: Exposed to other systems.
● Rich Internet Applications
● Cross-language
● Cross-platformJavaScript (Controller)JavaScript (Controller)
Freemarker (View)Freemarker (View)
Alfresco Repository (Model)Alfresco Repository (Model)
Consumer / ClientConsumer / Client
See the recorded webinar here:http://tinyurl.com/simplewiki
Components of a Web Script
● XML Descriptor● URI Templates● Authentication Requirements● Transactional Requirements
● One or more server-side JavaScript files (Controller)● One for each HTTP method (GET, PUT, POST, etc.)
● One or more Freemarker templates (View)● One for each HTTP method and desired output type (HTML, XML, JSON, etc.)
See the recorded webinar here:http://tinyurl.com/simplewiki
Two types of Web Scripts…
● Data Web Script● RESTstyle / RESTful URL● Returns structured data:
XML
JSON
CSV
● UI Web Script● Renders self-contained UI.● Can leverage Data Web Scripts.
See the recorded webinar here:http://tinyurl.com/simplewiki
Web Scripts as Gadgets● Virtually any Web Script can be a gadget by
using its URL.
● http://HOST:PORT/alfresco/wcs/SCRIPT
● Developers have many choices:● HTML● AJAX● JavaScript● JSON● Any combination of the above.
JavaScript (Controller)JavaScript (Controller)
Freemarker (View)Freemarker (View)
Alfresco Repository (Model)Alfresco Repository (Model)
iGoogleiGoogle
HTMLAJAXJSON
See the recorded webinar here:http://tinyurl.com/simplewiki
wiki.get.js (part 1)
// Extract the Wiki Space DBID from PATH// Eg. http://localhost/alfresco/s/wiki/1234var wikiId = parseInt(url.extension);
var nodes = search.luceneSearch("@sys\\:node-dbid\:" + wikiId)
var pageName = args["p"];
if (pageName == null || pageName == "") {pageName = "home";
} // end if
var pageNode = wikiSpace.childByNamePath(pageName);
See the recorded webinar here:http://tinyurl.com/simplewiki
wiki.get.js (part 2)// Get the designated page or home page.if (pageNode == null) {
pageNode = wikiSpace.createFile(pageName);pageNode.content = "This page has not yet been
edited. Please click on the 'Edit' link to modify."pageNode.save();
}
// Translate WikiLinksvar WIKI_LINK = /\[\[([^\|\]]*)(\|([^\]]+))?\]\]/g;var content = (pageNode.content + "").replace(WIKI_LINK, "<a href=\"" + url.service +"?p=$1\">$1</a>");
model.wikiId = wikiId + "";model.pageNode = pageNode;model.pageName = pageNode.name;model.content = content;
See the recorded webinar here:http://tinyurl.com/simplewiki
Other Wiki Alternatives
● MediaWiki Integration
● Available since Alfresco 2.1
● Alfresco Extension for MediaWiki stores content into Alfresco
● Coming in 3.0: MediaWiki inside Alfresco (Quercus)
See the recorded webinar here:http://tinyurl.com/simplewiki
Wiki Article – MediaWiki Preview
See the recorded webinar here:http://tinyurl.com/simplewiki
Wiki Article – MediaWiki Edit
See the recorded webinar here:http://tinyurl.com/simplewiki
Wiki Content stored in Wiki Spaces
See the recorded webinar here:http://tinyurl.com/simplewiki
Repository with Wiki content and images
See the recorded webinar here:http://tinyurl.com/simplewiki
Wiki Article Details Page (with Template)
See the recorded webinar here:http://tinyurl.com/simplewiki
Versioning and Workflow
See the recorded webinar here:http://tinyurl.com/simplewiki
Edit Content
See the recorded webinar here:http://tinyurl.com/simplewiki
DEMO
See the recorded webinar here:http://tinyurl.com/simplewiki
Q&A and Resources
03.04.08
Q&A and Resources● Any Questions?
● Resources:● wiki.alfresco.com/wiki/Web_Scripts● wiki.alfresco.com/wiki/JavaScript_API
● Join the Content Community● alfresco.com
● Participate in the Developer Challenge● alfresco.com/partners/programme/webscripts/
● Join the Alfresco Facebook Group● facebook.com/group.php?gid=6063383762
See the recorded webinar here:http://tinyurl.com/simplewiki
View the recorded webinar
See the recorded webinar here:
http://tinyurl.com/simplewiki
Shapes & Colors
Normal Text
● Bullet● Sub-Bullet
Normal TextNormal Text