Page 3 - Contents
5 Preface: About This Guide 5 Getting Additional Information 7 Chapter 1: Customizing How the Wiki Looks 7 Theme File Structure Overview 9 Variant Theme File Structure Overview 10 Wireframe Theme File Structure Overview 12 Creating a Theme 13 Editing CSS Files 14 Editing Property List Files 14 About...
Page 4 - Chapter 3: Managing Wiki Content
37 Chapter 3: Managing Wiki Content 37 Migrating Wiki Content From Other Websites 37 Backing Up the Wiki Server 39 Wiki File Structure Overview 40 Manually Editing Raw Content 41 Viewing a Wiki’s Administration Settings 44 Viewing a Page’s Metainformation 45 Managing Attachments 4 Contents
Page 5 - Create custom themes; Getting Additional Information; For information about setting up web service, see:; Pr; About This Guide
5 This guide explains how to create custom themes, allow specific protocols, CSS styles, and HTML tags and attributes, and manage wiki content. The default Wiki Server configuration makes it easy for groups to collaborate and communicate. Users can create and edit wiki pages, tag and cross-reference...
Page 7 - Customizing How the Wiki Looks
7 This chapter describes how to customize a wiki’s appearance. You can use a wiki’s admin settings to do the following: Change the wiki’s title  Change the wiki’s theme  Add a custom tag-search sidebar to the main page  Choose who can make comments and which comments are moderated  Create a podc...
Page 9 - Variant Theme File Structure Overview; For example, the block theme has its shared CSS files located in:
Chapter 1 Customizing How the Wiki Looks 9 Variant Theme File Structure Overview Prebuilt themes have several variants, which all share the same layout but might have different banners or color schemes. Shared CSS files are in the main theme’s folder, while variants have separate CSS files located i...
Page 10 - Wireframe Theme File Structure Overview
Wireframe Theme File Structure Overview The wireframe theme is a good example theme to customize, because unlike the other built-in themes, its CSS files are all located in its main theme folder (in the /Library location and not in the /usr location). It was designed as a bare-bones theme, which you...
Page 12 - Creating a Theme; To create a copy of the wireframe theme with permissions intact:; sudo
Creating a Theme The easiest way to create a theme is to take the existing wireframe theme, make a copy of it with permissions intact, and then customize the copy. If you edit the included themes instead of copying them to new themes, your edits may be overwritten later by a software update. To crea...
Page 13 - Editing CSS Files
Chapter 1 Customizing How the Wiki Looks 13 6 Restart the web service by doing one of the following: Restart the server.  In Server Preferences, click Web, move the slider to Off, and then to On.  In Server Admin, open the disclosure triangle for your server, select Web, click Stop  Web, and then...
Page 14 - CSS Mastery: Advanced Web Standards Solutions,; Editing Property List Files; About Property List Editor; Mac OS X Server v10.5 Administration Tools CD,
Here are some published CSS guides: Â CSS: The Definitive Guide, 3rd Edition, by Eric Meyer. O’Reilly Media, Inc. 2006. Â CSS Mastery: Advanced Web Standards Solutions, by Andy Budd, Simon Collison, and Cameron Moll. Friends of ED. 2006. Editing Property List Files Every theme has a theme.plist file...
Page 15 - About Property List Files; About Property List Keys and Values; strings; About Dictionaries; dictionary; About Arrays; Arrays
Chapter 1 Customizing How the Wiki Looks 15 Property List Editor doesn’t show comments, so if you want to see the example sidebars provided in the wireframe’s theme.plist, you’ll need to open the theme.plist file in a text editor and remove the comment markers surrounding the example sidebars. About...
Page 16 - Here is the sidebars array in a plain text editor:; Here is an example of an array with a single string:; Here is an example of an array with multiple strings:; About Comments
Here is the sidebars array in a plain text editor: <key>sidebars</key><array> <dict> sidebar keys and values </dict> <dict> sidebar keys and values </dict></array> Here is an example of an array with a single string: <array> <string> value ...
Page 17 - Changing General Theme Settings
Chapter 1 Customizing How the Wiki Looks 17 Changing General Theme Settings The wireframe theme’s theme.plist includes keys and values for the following general settings: Key Default Value Possible Values Optional or Required Description bannerImageHeight 99 Any number, 0 or more Optional The amount...
Page 18 - Creating Sidebars; Understanding the Types of Sidebars; All sidebars require the following keys:
Creating Sidebars If you haven’t created a sidebar before, it might be easier to customize an example sidebar to suit your needs. In the wireframe theme’s theme.plist file, there is a sidebars section that contains an array of sidebars you can customize: <key>sidebars</key><array> ...
Page 19 - Static Unique Keys; Static sidebars have the following keys:; Each dictionary entry has the following keys:
Chapter 1 Customizing How the Wiki Looks 19 Static Unique Keys Static sidebars list predefined URLs. “Useful Links” is an example static sidebar. Static sidebars have the following keys: Key Example Value Possible Values Optional or Required Description urls Not applicable An array of dictionary ent...
Page 20 - Search Unique Keys; Search sidebars have the following unique keys:
Key Example Value Possible Values Optional or Required Description snippet Click here to see your server’s homepage. Any string Optional Used for the link’s tool tip.To enable tool tips, comment out the following block in the theme’s grouphome.css file: .grouphome .snippet{ display:none; } Search Un...
Page 21 - Calendar Unique Keys; Calendar sidebars have the following unique keys:
Chapter 1 Customizing How the Wiki Looks 21 Key Example Value Possible Values Optional or Required Description sort modifiedDate, createdDate, title, author One or more of the following in the same array:  title  author  authorLongName  lastModifiedAuthor  lastModifiedAuthor LongName  createdD...
Page 22 - Tag Unique Keys; Tag sidebars have the following unique keys:; Recent Activity Unique Keys; Recent activity sidebars have the following unique keys:; Overview of the Example Sidebars
Tag Unique Keys Tag sidebars list wiki, blog, and mailing list entries that use a specific tag or set of tags. The most recently modified entries are listed first. Tag sidebars have the following unique keys: Key Example Value Possible Values Optional or Required Description tag hot A single string ...
Page 23 - Using the Example Sidebars; To comment out specific sidebars:; In Terminal, enter the following command:
Chapter 1 Customizing How the Wiki Looks 23 Using the Example Sidebars The wireframe theme’s theme.plist file includes several sidebar examples. All of these examples are commented out by default. You’ll need to remove the comments marks if you want to use the example sidebars as custom sidebars. If...
Page 25 - Adding JavaScript and XSL Files; To add JavaScript files or XSL files to a theme:
Chapter 1 Customizing How the Wiki Looks 25 Adding JavaScript and XSL Files The wiki server supports the use of custom JavaScript and Extensible Stylesheet Language (XSL) files. JavaScript and XSL change the content you’re displaying, whereas CSS controls the presentation of content. For example, yo...
Page 26 - About JavaScript; Here are some published JavaScript guides:
2 Restart the web service by doing one of the following: Restart the server.  In Server Preferences, click Web, move the slider to Off, and then to On.  In Server Admin, open the disclosure triangle for your server, select Web, click Stop  Web, and then click Start Web.Enter the following in Term...
Page 27 - JavaScript Example; About XSL
Chapter 1 Customizing How the Wiki Looks 27 JavaScript Example The following example JavaScript function adds a header link next to the magnifier button that points to www.apple.com, and changes the “Other Wikis” link to point to www.apple.com: Event.observe(window, 'load', function() { // add anoth...
Page 28 - Viewing Dynamic XML; context
28 Chapter 1 Customizing How the Wiki Looks If you edit a copy of the default.xsl file, you must also make copies of all of the XSL files that include the original default.xsl file, and then change them to include the edited default.xsl file. Viewing Dynamic XML The wiki server dynamically generates...
Page 29 - Restart the web service by doing one of the following:
Chapter 1 Customizing How the Wiki Looks 29 3 Restart the web service by doing one of the following: Restart the server.  In Server Preferences, click Web, move the slider to Off, and then to On.  In Server Admin, open the disclosure triangle for your server, select Web, click Stop  Web, and then...
Page 30 - This chapter describes how to enable specific protocols, CSS; These whitelists affect all wikis on the server.; Allowing Specific Protocols,
30 This chapter describes how to enable specific protocols, CSS styles, and HTML tags and attributes. The default wiki server setup simplifies administration by automatically removing potentially harmful protocols, CSS styles, and HTML tags and attributes. The wiki server is capable of allowing all ...
Page 31 - Creating a Custom Whitelist
Chapter 2 Allowing Specific Protocols, CSS Styles, and HTML Tags and Attributes 31 Creating a Custom Whitelist To create a custom whitelist, create a plain text file named whitelist.plist in: /Library/Application Support/Apple/WikiServer/ The following sections describe this example whitelist.plist ...
Page 32 - About the Custom Whitelist’s Structure; The following lines are required in the custom whitelist:; Allowing Specific URL Protocols
About the Custom Whitelist’s Structure The following lines are required in the custom whitelist: <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple. com/DTDs/PropertyList-1.0.dtd"> <plist version...
Page 33 - Allowing Specific HTML Tags and Attributes; To allow specific HTML tags and attributes:; Create a tags key and follow it with a dict.
Chapter 2 Allowing Specific Protocols, CSS Styles, and HTML Tags and Attributes 33 For example, to allow the use of the font-size style attribute, create the following block: <key>styles</key><array> <string>font-size</string></array> To allow the HTML “style” att...
Page 34 - About the Built-in Whitelist; Protocols Allowed in the Built-in Whitelist; The built-in whitelist allows these protocols:
<array> <string>src</string> <string>type</string> <string>width</string> <string>height</string> </array></dict> About the Built-in Whitelist You can’t change the built-in whitelist. However, a software update could change the allowe...
Page 35 - CSS Styles Allowed in the Built-in Whitelist; The built-in whitelist allows these CSS styles:; HTML Tags and Attributes Allowed in the Built-in Whitelist; The built-in whitelist allows these HTML tags and attributes:
Chapter 2 Allowing Specific Protocols, CSS Styles, and HTML Tags and Attributes 35 Protocol tel telnet vnc webcal xmpp CSS Styles Allowed in the Built-in Whitelist The built-in whitelist allows these CSS styles: Style text-decoration font-weight font-style HTML Tags and Attributes Allowed in the Bui...
Page 37 - Managing Wiki Content
37 This chapter describes how to manage wiki content using tools and the command-line. Using tools and the command line allows you to migrate, back up, and edit raw wiki content. Migrating Wiki Content From Other Websites AppleWikiImporter is a tool that can traverse a website that has a page listin...
Page 39 - Wiki File Structure Overview; The illustration below shows group wiki files and folders.
Chapter 3 Managing Wiki Content 39 Wiki File Structure Overview By default, the wiki server stores group wikis in /Library/Collaboration/Groups/. The illustration below shows group wiki files and folders. index.db metadata.plist /Library/Collaboration/Groups/ attachments/ page.html page.plist wiki/ ...
Page 40 - Manually Editing Raw Content; AtomPub
The Groups folder in the wiki data store includes the following critical wiki files and folders: File or Folder Name Purpose group_name / Enabling web services for a group creates a folder with the group’s short name. group_name /index.db Automatically changed when you edit wiki content. If you manu...
Page 41 - To regenerate the index after editing raw wiki content:; Viewing a Wiki’s Administration Settings
Chapter 3 Managing Wiki Content 41 For more information about AtomPub, see: Website URL RFC 4287: The Atom Syndication Format atompub.org/rfc4287.html RFC 5023: The Atom Publishing Protocol tools.ietf.org/html/rfc5023 To regenerate the index after editing raw wiki content: 1 Delete /Library/Collabor...
Page 42 - The metadata.plist file includes the following keys:
The metadata.plist file includes the following keys: Key Example Value Description GUID 28CC6BE9-11C1-456C-A3B2-8FCF5520A1DB Uniquely identifies the wiki.This value must correspond to the group record’s GUID in the directory domain.To view a group record's GUID, use Workgroup Manager. For more infor...
Page 43 - To manually edit wiki administration settings:
Chapter 3 Managing Wiki Content 43 To manually edit wiki administration settings: 1 Stop the web service by doing one of the following: In Server Preferences, click Web and move the slider to Off.  In Server Admin, open the disclosure triangle for your server, select Web, and click  Stop Web.Enter...
Page 44 - Viewing a Page’s Metainformation
6 Start the web service by doing one of the following: In Server Preferences, click Web and move the slider to On.  In Server Admin, open the disclosure triangle for your server, select Web, and click  Start Web.Enter the following in Terminal:  $ sudo serveradmin start teams; If prompted, enter ...
Page 45 - Managing Attachments; filename
Key Example Value Description tombstoned <true/>, <false/> Originally set to false, this is set to true when a page is temporarily deleted.If a page is permanently deleted, the entire page_uid .page/ folder is removed. uid groups/ group_name /wiki/ page_uid / Unique identifier for the wi...