Event Registration Demo and Setup <ul><li>This application allows a team to setup events, such as this Xpages Workshop, and allow people on the web to register for them
On the Domino server, there is a database named events.nsf
Events is the application interface and where event data will be captured </li><ul><li>Events.nsf has a Registration form in it and nothing else </li></ul><li>On the Domino server, there is a database named users.nsf
Users is a copy of a Public Name and Address Book, and is registered in Directory Assistance as a secondary address book
Anyone listed in users will be able to login to the server and use the Events application </li></ul>
Using the Editable Area <ul><li>When the custom control containing the Editable Area is put on an XPage, it allows the developer to put arbitrary content into that spot </li><ul><li>Think of it as a placeholder the control developer has set aside for the Xpage developer </li></ul><li>Example: For left-hand column of a layout, I, as the layout builder, want to define a space for a navigator. But I don't want to arbitrarily decide what that navigator will be or what it will contain.
By putting an Editable Area in the layout, when the layout control is used on an Xpage, the Xpage developer can decide what kind of navigator he wants to put there and simply drag it into the Editable Area placeholder.
The Application Layout Control <ul><li>If the Application Layout control was on an Xpage, the developer could add a page or view navigator in the “LeftColumn” Editable Area
But what if the application will use the same navigation for every Xpage?
It makes sense to add the navigation at the “layout” custom control level
Then every Xpage that uses the “layout” control will already have the navigator built-in
We also would like to allow the Xpage developer to append additional content into the “LeftColumn” so we'll make sure there's still an Editable Area available at the Xpage level
We'll create the Navigator in its own custom control, and when we're done, add it to the “layout” custom control
First, we need to update the code in the “layout” custom control </li></ul>
Copy Code Snippets #2 to “layout” code_snippets.txt #2
What's That Code Do? <ul><li>The <this.facets> tag tells the Application Layout control that we are going to take advantage of the Editable Areas it had defined
The panel with xp:key=”LeftColumn” identifies that this content is going in the “LeftColumn” facet defined in the Application Layout control
Within the panel, we can now put a custom control (like a navigator)
Also within the panel, we define our own Editable Area called “LeftColumn” that will be passed on to the Xpage using this custom control </li><ul><li>That gives the Xpage developer to ALSO add a control at the Xpage level </li></ul><li>The same thing applies for the “RightColumn” facet
The callback for “OneUIMainAreaCallback” is special. Because the Application Layout control did not specify a facetName property for that Editable Area, it falls outside the scope of the <this.facet> tag
It allows for multiple controls to be loaded inside of it
By adding the callback to “layout” we pass on the ability to use it at the Xpage level </li></ul>
Build site navigator <ul><li>Create new custom control
QueryParam: searchText </li></ul><li>This tells the application to enable the search bar, put “Search...” as the default value in the input box which will be cleared when user clicks inside it
When the user clicks search button, the “Search” Xpage (not built yet) will be returned and a queryString parameter of “searchText=” will be provided to that page with the value of what was input into the field </li></ul>
Create a Search XPage <ul><li>Create new Xpage named “Search”
Drag a label control on to the page, give it the label, “Search String: “
Resources <ul><li>Almost all the information today is coming from the project at openntf.org </li><ul><li>http://extlib.openntf.org/ </li></ul><li>Some of the videos surfaced there are also making their way into the Domino wiki media gallery </li><ul><li>http://www-10.lotus.com/ldd/ddwiki.nsf/xpViewCategories.xsp?lookupName=Media%20gallery </li></ul></ul>
The information contained in this publication is provided for informational purposes only. While efforts were made to verify the completeness and accuracy of the information contained in this publication, it is provided AS IS without warranty of any kind, express or implied. WorkFlow Studios shall not be responsible for any damages arising out of the use of, or otherwise related to, this publication or any other materials. Nothing contained in this publication is intended to, nor shall have the effect of, creating any warranties or representations from WorkFlow Studios or its suppliers or licensors, or altering the terms and conditions of the applicable license agreement governing the use of IBM software.
References in this presentation to IBM products, programs, or services do not imply that they will be available in all countries in which IBM operates. Product release dates and/or capabilities referenced in this presentation may change at any time at IBM’s sole discretion based on market opportunities or other factors, and are not intended to be a commitment to future product or feature availability in any way. Nothing contained in these materials is intended to, nor shall have the effect of, stating or implying that any activities undertaken by you will result in any specific sales, revenue growth or other results.
IBM, the IBM logo, Lotus, Lotus Notes, Notes, Domino and Lotusphere are trademarks of International Business Machines Corporation in the United States, other countries, or both.
Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
Dissemination or reuse of this presentation is allowed provided full attribution to WorkFlow Studios is made by retaining the title slide and this legal disclaimer slide in their original form. </li></ul>