Complete the following steps to enable the ConnectionsExpert Profiles and Community widgets.
Important Basic Information
To add the ConnectionsExpert widgets, you will need to perform the following steps. Click on the link for more information.
- Working with configuration files
Using wsadmin: https://www.ibm.com/support/knowledgecenter/SSYGQH_6.0.0/admin/admin/t_admin_wsadmin_starting.html
Check-out/check-in configuration files: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/admin/t_admin_common_checkout_config_file.html - Register a resource bundle and copy string files
Register a resource bundle and define strings: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/customize/t_admin_profiles_add_custom_strings.html
Access the customization directory: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/customize/t_customize_find_custom_directory.html - Configure the AJAX proxy: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/secure/t_admin_config_ajax_proxy.html
- Adding custom widgets
Community widgets: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/admin/c_admin_communities_add_custom_widgets.html
Profile widgets: https://www.ibm.com/support/knowledgecenter/en/SSYGQH_6.0.0/admin/admin/c_admin_profiles_add_custom_widgets.html - Register custom widgets (only required for 6.0 CR1 and later): https://www.ibm.com/support/knowledgecenter/SSYGQH_6.0.0/admin/admin/r_admin_gadget_reg_ws_commands.html
Register Resource Bundle
Check-out the LotusConnections-config.xml file and add the following lines in the
<resources></resources>
Section:
<!-- panagenda ConnectionsExpert --> <widgetBundle name="com.panagenda.ce.widgets" prefix="ceWidgets"/> <!-- panagenda ConnectionsExpert -->
Copy String Files
Copy the following files into the strings directory within your customization directory (CONNECTIONS_SHARED/customization/strings):
English: | German: | Spanish: | Dutch: |
---|---|---|---|
Configure the AJAX Proxy
To allow the widgets to connect to your ConnectionsExpert appliance, you need to configure the AJAX proxy by editing the proxy-config.tpl:
Please add following policy after the
<!-- BEGIN CUSTOMIZATIONS HERE -->
Section:
<!-- panagenda ConnectionsExpert --> <proxy:policy url="https://YOUR_CE_URL/*" acf="none" basic-auth-support="true"> <proxy:actions> <proxy:method>GET</proxy:method> <proxy:method>POST</proxy:method> </proxy:actions> <proxy:headers> <proxy:header>content-type</proxy:header> <proxy:header>accept-encoding</proxy:header> <proxy:header>User-Agent</proxy:header> <proxy:header>Accept.*</proxy:header> <proxy:header>Content.*</proxy:header> <proxy:header>Authorization.*</proxy:header> <proxy:header>X-Method-Override</proxy:header> <proxy:header>If-.*</proxy:header> <proxy:header>Pragma</proxy:header> <proxy:header>Cache-Control</proxy:header> <proxy:header>X-Update-Nonce</proxy:header> </proxy:headers> <proxy:cookies> <proxy:cookie>LtpaToken</proxy:cookie> <proxy:cookie>LtpaToken2</proxy:cookie> <proxy:cookie>panagenda_gadget</proxy:cookie> </proxy:cookies> </proxy:policy> <!-- panagenda ConnectionsExpert -->
Change YOUR_CE_URL into your ConnectionsExpert FQDN or IP address.
Add ConnectionsExpert Widgets
You need to configure the ConnectionsExpert widgets within the widget-config.xml file.
Community Widget
Add following widget definition into the
<resource type="community"><widgets><definitions>
section within widget-config.xml:
<!-- panagenda ConnectionsExpert --> <widgetDef defId="widgetCommunityUsage" description="widgetCommunityUsage.desc" bundleRefId="ceWidgets" modes="view fullpage" showInPalette="true" themes="wpthemeNarrow wpthemeWide wpthemeBanner" uniqueInstance="true" resourceOwnerWidget="true" loginRequired="true" url="https://YOUR_CE_URL/gadgets/communitystats.xml"> <itemSet> <item name="res_id" value="{resourceId}"/> </itemSet> </widgetDef> <!-- panagenda ConnectionsExpert -->
Change YOUR_CE_URL into your ConnectionsExpert FQDN or IP address.
Profiles Widget
Add following widget definition into the
<resource type="profile"><widgets><definitions>
section within widget-config.xml:
<!-- panagenda ConnectionsExpert --> <widgetDef defId="widgetProfilesCommunities" bundleRefId="ceWidgets" primaryWidget="false" modes="view" themes="wpthemeWide" loginRequired="true" url="https://YOUR_CE_URL/gadgets/mycommunities.xml"> </widgetDef> <!-- panagenda ConnectionsExpert -->
Change YOUR_CE_URL into your ConnectionsExpert FQDN or IP address.
Also, add following widget instance definition into the
<resource type="profile"><widgets><layout resourceSubType="default"><page pageId="profilesView">
section. We recommend putting it after the "backgroundInfo" definition:
<!-- panagenda ConnectionsExpert --> <widgetInstance defIdRef="widgetProfilesCommunities" uiLocation="tabsWidget1"/> <!-- panagenda ConnectionsExpert -->
Register ConnectionsExpert Widgets
This step is only needed for Connections 6 CR1 and later.
Start a wsadmin session and execute following commands:
execfile("newsAdmin.py") NewsWidgetCatalogService.addWidget(title="CE Profile Community widget", text="CE Profile Community widget", url="https://YOUR_CE_URL/gadgets/mycommunities.xml", categoryName=WidgetCategories.NONE, isGadget=FALSE,appContexts=[WidgetContexts.EMBEDXP], policyFlags=[GadgetPolicyFlags.TRUSTED], prereqs=["profiles"]) NewsWidgetCatalogService.addWidget(title="CE Community Usage widget", text="CE Community Usage widget", url="https://YOUR_CE_URL/gadgets/communitystats.xml", categoryName=WidgetCategories.NONE, isGadget=FALSE,appContexts=[WidgetContexts.EMBEDXP], policyFlags=[GadgetPolicyFlags.TRUSTED], prereqs=["communities"])
Change YOUR_CE_URL into your ConnectionsExpert FQDN or IP address.
Enable both widgets using the following command (need to be executed for both widgets ids):
NewsWidgetCatalogService.enableWidget("WIDGET_ID")
Refresh the cache to enable the changes:
NewsWidgetCatalogService.clearWidgetCaches()
Optional: Add Community Widget to all Communities
Follow this steps to add the Community widget to all existing Communities as well as all new Communities. You need to edit the widget-config.xmlfile and customize the
<resource type="community"><widgets><layout resourceSubType="default"><page pageId="communityOverview">
section by editing following lines:
<!-- panagenda ConnectionsExpert --> <widgetInstance defIdRef="widgetCommunityUsage" uiLocation="col2"/> <!-- panagenda ConnectionsExpert -->
Optional: Customizations
UI Strings
You can change the widget title as well as the widget description by editing following values in the associated property file:
Profiles Widget Title: widgetProfilesCommunities
Community Widget Title: widgetCommunityUsage
Community Widget Description: widgetCommunityUsage.desc
In addition to the provided languages (see copy string files), you can also add other languages by creating new property files using following syntax: com.panagenda.ce.widgets_XX.properties (Example: com.panagenda.ce.widgets_ru.properties).
Widget Layout
You can customize the look and feel of the widget by providing your our CSS customization. Therefore you need to add your customizations into ceWidgets/custom.css file and copy it into your Community customization directory (CONNECTIONS_SHARED/customization/communities/ceWidgets).
To load your customizations you need to customize your widget definitions and add following items into the
<itemSet></itemSet>
section. Please also create the itemSet section within your Profiles widget definition:
<itemSet> <item name="css" value="{communitiesSvcRef}/ceWidget/custom.css"/> </itemSet>
Custom Authentication
In case you customized your LTPA token and/or using any custom authentication providers be sure to add any custom cookies and headers into AJAX definition:
<proxy:headers> <proxy:header>CUSTOM_HEADER</proxy:header> </proxy:headers> <proxy:cookies> <proxy:cookie>CUSTOM_COOKIE</proxy:cookie> </proxy:cookies>
You also need to include the following item into the
<itemSet></itemSet>
section of all widget configurations (widget-config.xml). Please also create the itemSet section within your Profiles widget definition:
<itemSet> <item name="cookie" value="COOKIE_NAME"/> </itemSet>
Disable Community Overview Widget
This default configuration will provide a full-page Community widget as well as a Community Overview widget. If you like to disable the Overview widget you can do so by changing following line in your Community widget definition within the widget-config.xml. Be aware of that this will also remove the option to delete the widget using the Connections UI (you can still delete the widget using the administrative backend):
modes="fullpage"
Synchronize nodes and restart the environment
To enable your customizations please synchronize your nodes and restart your whole Connections environment.
Troubleshooting
This section will help to troubleshoot issues related to the configuration of the ConnectionsExpert widgets.
Widgets Content is not shown
The widget is not shown any content. "Gateway" or "not allowed" errors are displayed. Review your proxy-config.xml configuration.
You can test the AJAX proxy using the following URL: https://YOUR_CONNECTIONS_URL/communities/ajaxProxy/https/YOUR_CE_URL/gadgets/communitystats.xml
Custom CSS is not used
Check your custom.css file for issues. Also, check the widget-config.xml for issues related to itemset section. Use following URL to access your custom.css file: https://YOUR_CONNECTIONS_URL/communities/ceWidgets/custom.css.
Check the file path in case it is not accessible. Alternatively: Use browser developer tools to inspect the rendered iFrame in the iWidget to check if the CSS was correctly linked in the file.
Strings are not loaded
Review the strings directory or the resources section of the LotusConnections-config.xml.