Scaling API-first – The story of a global engineering organization
Your First Lotus Connections 2.5 Customisations Made Easy
1. Your First Lotus Connections 2.5
Customisations Made Easy
(DEV05)
Stuart McIntyre, Collaboration Matters Limited
29th October 2009
2. Your Host
✤ Stuart McIntyre
✤ Technical Director, Collaboration Matters
✤ Connections Specialist
✤ Blogger
✤ Feel free to contact me:
blog.collaborationmatters.com
facebook.com/stuartmcintyre
lotusconnectionsblog.com
twitter.com/stuartmcintyre
quickrblog.com
www.linkedin.com/in/mcintyre
lotusliveblog.com
stuart@collaborationmatters.com
3. This Session
✤ Your First Lotus Connections 2.5 Customisations Made Easy
✤ Topics:
✤ Demonstrate some of the key areas where Lotus Connections 2.5
can be customised
✤ Themes and skins
✤ Profiles
✤ What next?
✤ Q&A
14. Introducing LC2.5
✤ Whilst only a point-release, LC2.5 probably the most significant update
to product so far
✤ Announced on 18th August, shipped on 28th August
✤ Generated massive demand for adoption amongst existing users and
outside
✤ All information in this presentation is correct for Connections 2.5.
Details may be different in 2.0.x - we’ll try to point this out as we go
15. Profiles Communities
Quickly find the people you need by All your social software needs Create, find, join, and work with
searching across your organisation and communities of people who share a
ready for business common interest, responsibility, or area
connecting to others. of expertise
Bookmarks Blogs Activities
Save, organize and share bookmarks; Use a weblog to present your idea and Organize your work, plan next steps, and
discover bookmarks that have been get feedback from others; learn from the easily tap your expanding professional
qualified by others with similar interests expertise and experience of others who network to help execute your everyday
& expertise blog deliverables, faster
Homepage Files Wikis
Manage your attention by viewing Upload and share any type of file with Create wiki spaces for individuals,
relevant social data aggregated across colleagues and communities. Store groups, and communities to coauthor
your subscriptions, notifications, and versions and view downloads, comments pages. View changes across pages,
network of colleagues. and ratings. ratings, and comments.
26. Look and Feel - Themes
An example
customised
LC2.5
theme
27. Theme Components
✤ Each theme is made up of multiple components:
✤ CSS
✤ header.html
✤ footer.html
✤ images
28. CSS Theme File
✤ CSS file affects the design (look and feel) but not
the layout or functionality of Connections UI
✤ Controls all of the colours and background
images
✤ Allows Web Designer to make changes to
elements like link colours and background
images
29. Header.html 1/2
✤ Controls appearance of banner, including logo and feature tabs
✤ Links to CSS file
✤ Found in:
✤ <Profile_Home>/installedApps/<nodename>/<feature EAR>/<feature WAR>/
nav/templates/header.html
✤ e.g. /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/
machineNode01Cell/Blogs.ear/blogs.war/nav/templates/header.html
30. Header.html 2/2
<!-- Copyright IBM Corp. 2006, 2009All Rights Reserved.-->
<div class="lotusRightCorner">
<div class="lotusInner">
<!-- The following lines are required for Accessibility and are used by screen readers. Please do not remove -->
<a href="#mainContent" id="lotusAccessLinkMainContent" accesskey="S" class="lotusAccess">
<img src="{{default images}}/blank.gif" alt="Skip to main content link. Accesskey S" />
</a>
<a href="#tabNavigation" id="lotusAccessLinkTabNavigation" accesskey="1" class="lotusAccess">
<img src="{{default images}}/blank.gif" alt="Skip to tab navigation link. Accesskey 1" />
</a>
<a href="#subNavigation" id="lotusAccessLinkSubNavigation" accesskey="2" class="lotusAccess">
<img src="{{default images}}/blank.gif" alt="Skip to sub navigation. Accesskey 2" />
</a>
<div class="lotusLogo" id="lotusLogo"><span class="lotusAltText">Lotus Connections</span></div>
<ul class="lotusInlinelist lotusUtility lotusNowrap" id="headerMenuContainer"
><li class="lotusFirst" id="headerUserText" style="display: {{ header username display }};"><span class="lotusUser" id="headerUserName">{{ header username }}</
span></li
><li class="{{ header help class }}" id="headerHelpLi"><a href="{{ header help link }}" id="headerHelpLink">{{ label.header.help }}</a></li
><li id="logoutLi"><a href="{{ header loginout link }}" id="logoutLink" >{{ header loginout label }}</a></li></ul>
<ul class="lotusInlinelist lotusLinks">{{application links: li }}</ul>
</div>
31. Footer.html 1/2
✤ Controls appearance of footer
✤ Great place to add links to other corporate sites, resources or tools
✤ Default has many IBM-specific links
✤ Found in:
✤ <Profile_Home>/installedApps/<nodename>/<feature EAR>/<feature WAR>/
nav/templates/footer.html
✤ e.g. /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/
machineNode01Cell/Blogs.ear/blogs.war/nav/templates/footer.html
33. Images 1/2
✤ Contains 400+ images used to build a Connections page
✤ Found in:
✤ <Profile_Home>/installedApps/<nodename>/<feature EAR>/<feature WAR>/
nav/common/styles/images
✤ e.g. /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/
machineNode01Cell/Blogs.ear/common/styles/images
34. Images 2/2
✤ Many images are transparent and can be used across all themes
✤ Others are closely tied to default theme colour scheme,and must be
regenerated - not so many with 2.5
2.0.x vs. 2.5
35. So why so many copies of themes?
✤ WAS apps are typically self-contained
✤ It is possible (though not necessarily desirable) to customise each
theme individually
✤ Allows those customers using just Profiles or Activities to
customise without additional steps
✤ Recommended to move to a single copy of theme on the HTTP
server ASAP, certainly before customisation for production
36. Creating a custom theme
✤ Five step process:
✤ Move default theme to HTTP Server
✤ Configure LC2.5 to use HTTP-based theme
✤ Test
✤ Customise theme
✤ Test
37. Moving theme to HTTP server 1/3
✤ Create directory on HTTP server for theme
✤ e.g.
✤ c:IBMHTTPServerhtdocsen_USmytheme
✤ /opt/IBM/HTTPServer/htdocs/en_US/mytheme
✤ Create sub-directory for css and html:
✤ c:IBMHTTPServerhtdocsen_USmythemecss_html
✤ /opt/IBM/HTTPServer/htdocs/en_US/mytheme/css_html
✤ From profiles application, copy across header.html, footer.html, defaultTheme.css and themeImages
directory into mytheme/css_html
✤ Copy images directory into mytheme/images
✤ c:IBMHTTPServerhtdocsen_USmythemeimages
✤ /opt/IBM/HTTPServer/htdocs/en_US/mytheme/images
38. Moving theme to HTTP server 2/3
# cd /opt/IBM/HTTPServer/htdocs/en_US/mytheme
# ls -lR .
drwxr-xr-x3 root system 256 2009-09-11 06:14 css_html
drwxr-xr-x3 root system 20480 2009-09-11 06:00 images
./css_html:
-rw-r--r--1 root system 64094 2009-09-11 05:47 defaultTheme.css
-rw-r--r--1 root system3910 2009-09-09 08:27 footer.html
-rw-r--r--1 root system1696 2009-09-11 05:56 header.html
-rw-r--r--1 root system 64093 2009-09-09 07:38 mytheme.css
drwxr-xr-x2 root system4096 2009-09-09 07:38 themeImages
...
./css_html/themeImages:
-rw-r--r--1 root system 202 2009-09-09 07:38 btnSpecialBkgd.png
-rw-r--r--1 root system 19091 2009-09-09 07:38 loginBkgd.png
...
./images:
-rw-r--r-- 1 root system 15163 2009-09-09 07:06 16pxIcons.gif
-rw-r--r-- 1 root system1203 2009-09-09 07:06 2secondary_cols.jpg
...
39. Moving theme to HTTP server 3/3
✤ Check you can access the files via a browser:
✤ e.g.
✤ http://connections.myorg.com/images/logo.png
✤ http://connections.myorg.com/mytheme/header.html
✤ http://connections.myorg.com/mytheme/footer.html
✤ http://connections.myorg.com/mytheme/defaultTheme.css
40. Configure Connections to use
✤ Edit LotusConnections-config.xml *
✤ Search for ‘style enabled’, change lines:
<style enabled="false">
<!-- leave "admin_replace" for any fields you do not wish to override -->
<header url="admin_replace"/>
<footer url="admin_replace"/>
<images ssl_url="admin_replace" url="admin_replace"/>
<caching value="private, max-age=3601"/>
</style>
✤ to: <style enabled="true">
<!-- leave "admin_replace" for any fields you do not wish to override -->
<header url="http://connections.myorg.com/mytheme/css_html/header.html"/>
<footer url="http://connections.myorg.com/mytheme/css_html/footer.html"/>
<images ssl_url="https://connections.myorg.com/mytheme/images" url="http://
connections.myorg.com/mytheme/images"/>
<caching value="private, max-age=3601"/>
</style>
* Using appropriate wsadmin commands to checkin/checkout
41. Configure Connections to use
✤ Tell Connections to use CSS from mytheme directory
✤ Edit mytheme/css_html/header.html, add relative (not absolute)
link to CSS file just below
<div class=”lotusInner”>:
<div class="lotusRightCorner">
<div class="lotusInner">
<link rel="stylesheet" href="/mytheme/css_html/defaultTheme.css" type="text/css">
✤ Save file. Restart WAS. Restart HTTP.
42. Testing
✤ Access the site via a browser
✤ Should see Connections appearing same as previously, but with
images, header and footer from HTTP site
✤ Test by ‘View Image’ on Lotus
Connections logo, or by adding
comment to HTML files and
using ‘View Source’
43. Trouble-shooting
✤ If content is not appearing from HTTP server:
✤ Clear Browser Cache
✤ Restart WAS again - sometimes this takes 2 restarts
✤ Check paths used and validity of LotusConnections-config.xml
44. Customising Images
✤ Recommended to use web standard image sizes, formats and
dimensions when creating theme images (copy default theme for
guidance)
✤ Plan design and create images before creating/editing CSS
✤ Do not use transparent 24-bit PNG - not all supported browsers
support them
✤ Keep all images in HTTP Server mytheme/images directory and
reduce size wherever possible
45. Changing Lotus Connections logo
✤ In LC2.0.x logo image was set in header.html
✤ In LC2.5 it is in the CSS file:
✤ Open mytheme/defaultTheme.css, search for lotusLogo:
.lotusui .lotusLogo, .lotusLoginLogo{height:18px;width:104px;background-image:url(../images/
logo.png);background-repeat:no-repeat;}/*height, width values are in this file to aid in
retheming*/
✤ To link to your image:
.lotusui .lotusLogo, .lotusLoginLogo{height:73px;width:160px;background-image:url(./images/
acme.png);background-repeat:no-repeat;}/*height, width values are in this file to aid in
retheming*/
46. Changing Lotus Connections logo
✤ Note, height and width do not scale image, just crop:
lotusui .lotusLogo, .lotusLoginLogo{height:18px;width:39px;background-image:url(../images/
acme.png);background-repeat:no-repeat;}/*height, width values are in this file to aid in
retheming*/
✤ Instead, but resize the image itself
.lotusui .lotusLogo, .lotusLoginLogo{height:18px;width:39px;background-image:url(../images/
acme18.png);background-repeat:no-repeat;}/*height, width
values are in this file to aid in retheming
✤ Recommended to keep to 18px height, so long rectangular logos
work best
47. Adding additional links to Header
✤ Connections automatically populates the list of features at the top
of each page from those installed and enabled
✤ It is straightforward to add additional links to the list
✤ Edit header.html, and adjust after the line,
<ul class="lotusInlinelist lotusLinks">{{application links: li }}
✤ e.g. <ul class="lotusInlinelist lotusLinks">{{application links: li }}
<a href="http://quickr.acme.com">Places</a>
</ul>
✤ Need to restart the WAS server to take effect
48. Adding/editing links in Footer
✤ The links in the LC2.5 footer are very IBM-centric and are ripe for
replacing with organisational resources (Help desk, training,
homepage etc.)
✤ To change, edit footer.html, e.g:
<tr>
<th>ACME Connections</th>
<th>{{ label.footer.help.heading }}</th>
<th class="lconnFooterToolsHeader">{{ label.footer.tools.heading }}</th>
<th class="lotusLast">{{ label.footer.about.heading }}</th>
</tr>
<tr>
<td><ul id="lotusFooterULConnections">
<a href="http://www.acme.com">ACME Home</a><br>
<a href="http://helpdesk.acme.com/request">Raise a Help Request</a><br>
<a href="http://helpdesk.acme.com/password">Reset My Password</a>
</ul></td>
✤ Must restart WAS server to take effect
49. Lotus Connections Branding
✤ Changes covered so far do not change look and feel of
Connections features
✤ Significant modifications are possible using CSS and image
changes
✤ Additional UI changes can be accomplished within JSPs and by
using iWidgets (out of scope of this session)
50. Included Themes
✤ In addition to defaultTheme, there are four other LC2.5
themes shipped with the product: goldTheme,
greenTheme, metalTheme and redTheme
✤ These can be used by copying to HTTP server and
linking to the CSS file from header.html
51. Custom Themes 1/2
✤ Most organisations wish to create their
own theme according to corporate UI
guidelines or branding Lotus Connections Theme Editing Guide
Editing or Creating a New Lotus Connections Theme
Page 1 of 4
It is recommended you have knowledge of CSS (Cascading Style Sheets) HTML and image creation/editing techniques before editing or creating a new theme.
The default (blue) theme is controlled by the css file "defaultTheme.css" located here: common/styles/defaultTheme.css
IMPORTANT: Please make a backup copy of the original "defaultTheme.css" before making any changes.
To create a new theme based on one of the existing themes, just choose a theme, duplicate it (copy, paste) and then proceed to change the colors, background images (if
you have new images to replace the originals) and styles to create a custom branded theme for your Lotus Connections software.
TIP: If creating a new theme using new images, place any new images into a new folder and reference where the css file should look for the new images.
E.G. the default theme buttons are stored here: /images/buttonBkgd.png
the RED theme buttons are stored here: /images/red/buttonBkgd.png
Take the included theme CSS that is
HTML / CSS Class Name Description Default Blue Theme Red Theme Comments
✤ body
Page
Background
Color
#fbfcfd #efe6cc
Some
background
Page images may
Background need to be
images/background.png images/red/background.png
Image (can be repeated
repeated) horizontally,
vertically or
closest to desired look and feel, and
both.
Main Content border-top-color: #568dd0 border-top-color: #9b3031
#lotusMain, Area
.lotusMain (central page Left side panel background image Left side panel background image (grey
area) (light blue blend) blend)
Default Link
a:link, a:visited
color
a.lotusAction, a.lotusAction:visited Action Links
(more actions
.lotusActions a, .lotusActions a:visited etc.)
.lotusVCard a:link, .lotusVCard a:visited, #105cb6 #9f060d
Popup person
copy to new file, e.g. acmeTheme.css
.lotusVCard a:hover, .lotusVCard a:focus, a:active
card link color
(V Card)
.lotusVCard .lotusPersonActions .lotusInlinelist li
.dijitCalendarYearLabel .dijitCalendarPreviousYear,
.dijitCalendarYearLabel, .dijitCalendarNextYear
Mouse Over
a:hover, a:focus, a:active Default Link
color
a.lotusAction:hover, a.lotusAction:focus,
Action Links
a.lotusAction:active, .lotusActions a:hover,
mouse over
.lotusActions a:focus, .lotusActions a:active,
(more actions
.lotusTags a.lotusAction:hover, .lotusTags #05386b #6f0207
etc.)
a.lotusAction:focus, .lotusTags a.lotusAction:active
Change
color and
a.lotusMyLink:hover, a.lotusMyLink:focus,
My Links border
.lotusMyLinks a:hover, .lotusMyLinks a:focus
bottom
color
Person Name
a.lotusPerson, a.lotusPerson:visited
Link color
#578cca #a7853c
.lotusTags a:link, .lotusTags a:visited,
Use theme colour chart (for 2.0.x but still
Tag link color
a.lotusTag:link, a.lotusTag:visited
✤
Change
.lotusTags a:hover, .lotusTags a:focus, .lotusTags
Tag links and color and
a:active, a.lotusTag:hover, a.lotusTag:focus,
underline mouse #05386b #ba9a55 border
a.lotusTag:active, a.lotusPerson:hover,
over color bottom
a.lotusPerson:focus, a.lotusPerson:active
color
Change details
.lotusView background-image: url background-image: url
view buttons
(images/views.gif); (images/red/views.gif);
Change
color and
relevant) from LC Wiki to assist with
.lotusActionMenu li.lotusMenuSeparator
Action menu border top
#b3cae9 #9b3031
separator color
.dijitMenuSeparatorTop
Dividers
between links in
#lotusBanner ul li, .lotusBanner ul li the top right border-left-color: #639ade border-left-color: #ac9e69
(name | help |
login)
#lotusBanner ul.lotusLinks li.lotusSelected a, Background box
.lotusBanner ul.lotusLinks li.lotusSelected a color on
selected main background-color: #649de1 background-color: #cfb275
.dijitMenu
colour transformations
navigation
ul.lotusActionMenu links
file://C:UsersKarl ThompsonDocumentsUI designsConnectionsThemesTheme M... 14/05/2008
http://www-10.lotus.com/ldd/lcwiki.nsf/dx/Creating_a_Connections_Theme_Dec2008.pdf/$file/Creating_a_Connections_Theme_Dec2008.pdf
52. Custom Themes 2/2
✤ Get your web designers, communications department etc. on board
✤ Start on paper!
✤ For each of the colours in the colour chart, match to appropriate
colour from corporate guidelines/branding
✤ Then edit CSS, and test in browser
✤ Some images will need to be changed for colour match
✤ Don’t forget that fonts and font sizes can be changed as well as
colours
✤ Recommend the user of Firebug for ad-hoc testing and dedicated
CSS editing tools
53. Customising Communities
✤ It is also possible to personalise the look and feel of individual
communities, including theme templates
✤ Use same CSS templates as overall theme - create some to
complement your overall custom theme
54. Customising Profiles
✤ The other principal area where most organisations customise Lotus Connections
(even for pilots) is Profiles
✤ Common changes include:
✤ Customising which fields are populated from LDAP
✤ Changing field labels or field order
✤ Enabling/disabling editing of fields
✤ Adding custom fields
✤ Adding additional profile types
✤ There are many more expert topics (integration of data from other sources etc.),
but these are the basics
55. Customising Profiles population
http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/
t_prof_install_profiles_db.html
✤ Topic is well covered in the InfoCenter
✤ Population Wizard has also made it more straightforward,
however worth covering the options
✤ Recommend that one always uses manual process after initial
population, to control who gets added and how
✤ Manual import can be scheduled using CRON or Windows
Scheduler
56. Customising Profiles population
✤ Import is a two stage process (even if driven by Wizard), first
collecting the relevant entries from LDAP, then populating Profiles
with specified information
✤ Collection of names is driven by collect_dns script, according to
settings specified in profiles_tdi.properties
source_ldap_collect_dns_file=collect.dns
source_ldap_search_base=o=acme
source_ldap_search_filter=(&(uid=*)(objectclass=inetOrgPerson))
source_ldap_url=ldap://ldap.acme.com:389
source_ldap_use_ssl=false
source_ldap_user_login=cn=LDAPBind
source_ldap_user_password={encr}<encrypted password>
57. Customising Profiles population
✤ Names that reside within search base and match search filter are
deposited in collect.dns CN=Neil Burston,ou=it,o=acme
CN=Mitch Cohen,ou=it,o=acme
CN=Sharon Bellamy,ou=it,o=acme
CN=Stuart McIntyre,ou=it,o=acme
✤ Some pilots have specified only selected users to be imported,
hence manual editing on collect.dns - not recommended!
✤ Populate_from_dn_file is then run to load new users within
collect.dns into Profiles, acting upon settings in
map_dbrepos_from_source.properties
58. Customising Profiles population
✤ map_dbrepos_from_source.properties specifies match between
LDAP and Profiles fields:
alternateLastname=null
bldgId=null
✤ Customise according to your org’s blogUrl=null
populated fields in LDAP calendarUrl=null
countryCode=c
courtesyTitle=null
✤ Watch for field lengths and validation deptNumber=null
description=description
(see validate_dbrepos_fields.properties) ...
✤ Some field lengths are very restrictive, particularly Department (16
characters) and Country alternateLastname=64
(3 - for ISO codes) blogUrl=256
bldgId=64
calendarUrl=256
✤ Can be a good use for extended fields to courtesyTitle=64
deptNumber=16
replace default attributes description=1048576
...
59. Controlling attributes listed
✤ Attribute listing and whether editable is controlled in profiles-
config.xml, set by Profile Type
✤ Initially there is just the ‘default’ Profile Type
✤ Order of attributes in configuration file controls order on screen
✤ How many of you use ‘IP Telephony Number’? So how to stop it
appearing?
61. Hiding a Profiles attribute
✤ Connections 2.5 now has the intelligence to hide fields when empty, but
still appear in Edit My Profile. So how to hide completely?
✤ Edit profiles-config.xml, find the <profileLayout profileType="default">
stanza, and the relevant attribute:
<editableAttribute showLabel="true" hideIfEmpty="true">ipTelephoneNumber</
editableAttribute>
✤ Simply comment out the entry:
<!-- <editableAttribute showLabel="true" hideIfEmpty="true">ipTelephoneNumber</editableAttribute>
-->
✤ Restart the WAS server
IP Telephony no longer appears to
the user
62. Controlling editable attributes 1/2
✤ A familiar request is to stop the Assistant attribute being editable by
the end user, but for that attribute to still appear in the profile
63. Controlling editable attributes 2/2
✤ Again, edit profiles-config.xml, find the ‘default’ profile type
definitions, and the appropriate attribute:
<editableAttribute showLabel="true" hideIfEmpty="true" hcard="true" email="secretaryEmail"
uid="secretaryUid" userid="secretaryUserid" appendHtml="<br/>">secretaryName</editableAttribute>
✤ To stop the attribute being editable, modify ‘editableAttribute’ to be
‘attribute’:
<attribute showLabel="true" hideIfEmpty="true" hcard="true" email="secretaryEmail"
uid="secretaryUid" userid="secretaryUserid" appendHtml="<br/>">secretaryName</attribute>
Assistant no longer
appears in the Edit
My Profile screen
64. Controlling attribute labels 1/2
✤ When profiles are displayed, some attributes are displayed with
labels, others are not:
The secretary/assistant’s name is
displayed with a label, whilst the phone
number and email address are not
✤ So, how to show the label for the Phone number?
65. Controlling attribute labels 2/2
✤ Again, edit profiles-config.xml, find the ‘default’ profile type
definitions, and the appropriate attribute:
<attribute showLabel="false" hideIfEmpty="true" appendHtml="<br/>">telephoneNumber</attribute>
✤ To make the default attribute label appear, change the showLabel
value:
<attribute showLabel="true" hideIfEmpty="true" appendHtml="<br/>">telephoneNumber</attribute>
The label for the
phone number is
now shown
66. Changing Profiles attribute labels
✤ Default attribute labels (designed to be multi-lingual) can be
irrelevant or misunderstood in many organisations, and thus need to
be changed
✤ Also, it is often it is easier
to change labels than to
create new attributes from
scratch
67. Changing Profiles attribute labels
http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/
t_admin_profiles_add_custom_strings.html
✤ In Connections 2.5, process has changed
✤ LC2.5 provides external resource bundle loader
for adding and updating strings to Profiles and
Communities.
✤ Mechanism used when performing the following
tasks:
✤ Adding custom extension attributes
✤ Customizing the Profiles business card
✤ Adding custom widgets to Communities and Profiles
✤ Configuring the vCard export feature
✤ Too complex to describe here
69. Adding new attributes
✤ Concept of Extension Attributes included in profiles
✤ Three step process:
✤ Add new attribute to profiles-config.xml (in ExtensionAttributes
stanza and again where it should be displayed) - mandatory
✤ Add label for attribute using Bundle file (optional)
✤ Add to TDI import process (optional)
70. Adding a new attribute 1/2
✤ First add to Extension Attribute stanza:
<profileExtensionAttributes>
<simpleAttribute extensionId="homeAddress" length="64" />
<xmlFileAttribute
extensionId="profileLinks"
...
</xmlFileAttribute>
</profileExtensionAttributes>
✤ Then within the Profile Type(s) it should appear in:
<contactInformation>
...
<editableAttribute showLabel="true" hideIfEmpty="true" email="true">groupwareEmail</editableAttribute>
<!-- <editableAttribute showLabel="true" hideIfEmpty="true" link="true">calendarUrl</editableAttribute> -->
<!-- <editableAttribute showLabel="true" hideIfEmpty="true" link="true">freeBusyUrl</editableAttribute> -->
<editableAttribute showLabel="true" hideIfEmpty="true" blogUrl="true">blogUrl</editableAttribute>
<extensionAttribute showLabel="false" editable="true" extensionIdRef="homeAddress" />
</contactInformation>
✤ Save and restart the WAS server
71. Adding a new attribute 2/2
New attribute will appear for editing
and display (if populated), but will not
have appropriate label
72. Adding label for new attribute 2/2
Attribute is now correctly labelled
73. Populating extension attributes
✤ Steps so far will allow new attributes to be populated by the user
✤ However, it is possible to populate via TDI too
✤ Add to <TDISOL>/conf/LotusConnections-conf/tdi-profile-
config.xml
<profileExtensionAttributes>
<simpleAttribute extensionId="homeAddress" length="64" userLabel="Home Address"
userTypeString="String" sourceKey="homeAddress"/>
<xmlFileAttribute extensionId="profileLinks" schemaFile="profile-links.xsd" indexBindingExpr="/
linkroll/link/@name | /linkroll/link/@url">
<indexFields>
<indexField fieldName="linkName" fieldExpr="/linkroll/link/@name" />
</indexFields>
</xmlFileAttribute>
</profileExtensionAttributes>
74. Troubleshooting
✤ Many issues are caused by caching within the WAS server and
HTTP server - always restart WAS if editing XML, JAR or HTML
files - CSS changes do not require restart
✤ Most files within Connections/WAS are case-sensitive - check and
double-check case and syntax
✤ Always use appropriate WSADMIN checkin/checkout procedures
for XML configuration files - saves a lot of pain with typos
✤ It is worth investing in a pre-production/test system configured
as live for testing customisations first
75. What next?
✤ Other areas where customisation may be desired:
✤ Additional Profile Types (e.g. Active vs. Leavers, Students vs. Staff)
✤ See CuriousMitch article at http://www.curiousmitch.com/CuriousMitch/mitch2.nsf/d6plinks/MCON-7LK2X2 and Infocenter http://
publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/index.jsp?topic=/com.ibm.connections.25.help/
c_admin_profiles_add_profile_type.htmlc_admin_profiles_add_profile_type.html
✤ Business Card
✤ See Infocenter http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/
c_admin_profiles_customize_biz_card_links.html
✤ Search Results
✤ See Infocenter http://publib.boulder.ibm.com/infocenter/ltscnnct/v2r0/topic/com.ibm.connections.25.help/
t_admin_profiles_customize_search_results.html
✤ Notifications
✤ See great developerWorks paper on Notifications http://www.ibm.com/developerworks/lotus/documentation/d-ls-lcnotifications/?
S_TACT=105AGX13&S_CMP=LP
76. Lotus Connections Resources
Infocenter http://tinyurl.com/20infocenter
Wiki http://tinyurl.com/connectwiki
Support Page http://tinyurl.com/consupport
Support Forum http://tinyurl.com/20forum
developerWorks articles http://tinyurl.com/condevworks
Software Catalog http://tinyurl.com/consoftcat
Product Page http://tinyurl.com/conhome
With thanks to Mitch Cohen http://curiousmitch.com
77. But in truth, social software
users do and the business
problems the tools address.
Jakob Nielsen, Usability Guru
Source: http://www.slideshare.net/marknadsstod/getting-real-about-enterprise-20
78. My Takeaways
Lotus Connections supports (and
embraces) customisation
Many areas appropriate for
customisation - a never-ending feast!
Agree and document your scope and
priorities - stick to it!
Use appropriate change management,
versioning and testing processes
Have fun and make Connections work
for you and your organisation...
Image: http://www.slideshare.net/Niezette/100-pictures-for-powerpoint-presentations