Blackboard UI Tag Library


Standard Syntax:
     <%@ taglib prefix="Blackboard UI Tag Library" uri="/bbUI" %>

XML Syntax:
     <anyxmlelement xmlns:Blackboard UI Tag Library="urn:jsptld:/bbUI" />

    The Blackboard User Interface tag library encapsulates Blackboard user 
    interface elements to allow developers easy access to the Blackboard look and feel.
  

Tag Library Information
Display NameNone
Version1.0
Short NameBlackboard UI Tag Library
URI/bbUI
 

Tag Summary
loginWelcome Creates the standard login welcome panel.
loginForm Creates the standard login form ( same look and feel as rendered by login.pl ). validateFormScript - name of the inline script which will validate the login form. errorMessage - error message from previous login attempt
createAccountForm Creates the create-account form. createAccountLink - name of the page that will create a new user account.
copyright Standard HTML snippet for Blackboard copyright notice. showFooterImage-This attribute is added in case the footer needs to be displayed without the image
validateLoginFormScript Validates login form.
inlineScript Inserts inline script into HTML. scriptLanguage - assumed to be JavaScript, if no input is provided. scriptRef1 - reference to existing script. scriptRef2 - reference to another existing script. scriptRef3 - reference to another existing script. scriptRef4 - reference to another existing script.
spacer Creates an invisible area on the page with the specified height and width. height - Vertical size of the spacer in pixels [1]; width - Horizontal size of the spacer in pixels [1];
devDocTemplate combines the docTemplateHead and docTemplateBody tag (for use when you don't need to add items to the HEAD of the HTML doc.
docTemplate combines the docTemplateHead and docTemplateBody tag (for use when you don't need to add items to the HEAD of the HTML doc.
docTemplateHead sets head defaults, such as including the base css sheet and validateForm.js links. Use this tag if you wish to add more style sheets or javascript to the head of your HTML doc.
docTemplateBody Sets the default body tag settings for the HTML page (such as attaching the default style class to the body tag)
coursePage Creates a course page element. It may be used to re-arrange elements on a page from interface to interface. It makes the course available to sub-tags. course - Course data object [used in sub-tags to render course-specific elements];
courseTitleBar Creates a course title bar
titleBar Creates a general use title bar. iconUrl - the URL for the Icon image used in the titlebar; pluginId - the Id for the plugin (known by the plugin developer; and used as the directory root of the plugin, e.g. "/Blackboard/plugins/*pluginId*/images/pluginimg.gif")
instructionBar Creates a general use instruction bar to explain how the page is to be used.
step Creates html for a wizard Step element. number - the number for the step (1, 2, 3 for 1st, 2nd, 3rd in wizard); title - the title of the step;
stepSubmit Creates html for ane entire submit/cancel step element. number - the number for the step (1, 2, 3 for 1st, 2nd, 3rd in wizard); title - the title of the step; cancelUrl - the url to recall the page to if the user cancels; instructions - the message string displayed in this step; submitButton - this optional key is used to look up the button and alt text for a nonstandard button, such as "Next". usage: submitButton="next". The user must make sure that there is a corresponding image and bundle string. image would be \builds\MAINLINE\base\content\locale\en_US\images\ci\formbtns\next_off.gif bundle entry would would be tags.properties: button.label.next=Next
breadcrumbBar Creates the framework for the breadcrumb navigation. environment - whether we are viewing this navigation in the course, control panel, portal, etc. Acceptable values are: PORTAL, COURSE, CTRL_PANEL, SYS_ADMIN; handle - the database field used to uniquely identify the root nav item for the breadcrumb bar. (bar gets the appropriate nav item from the handler, then traverses the navigation tree to iteratively get the item's parents; target - the default target for bc items in this bar, defaults to none breadcrumbs - you can also pass in a collection of Breadcrumb objects mode - enables the display view. Acceptable value is: ENABLE
breadcrumb Navigation item for the breadcrumb bar. href - the optional attribute setting the link for the element; target - the target attribute for the links in this breadcrumb, defaults to none
dataElement This tag will be superceded by type-safe form input tags. label - the text label for the data (form) element; should contain: form input tags. required - indicates that the element is required before submitting form. (Doesn't validate, simply adds *);
dataSubElement This tag will be superceded by type-safe form input tags. label - the text label for the data (form) element; should contain: form input tags. required - indicates that the element is required before submitting form. (Doesn't validate, simply adds *);
instructions Instructions should only be called inside a step.
stepContent StepContent should only be called inside a step. It wraps the enclosed HTML in the appropriate table row and table data code to fit inside the step tag. It is comparable to the specialized tags Instructions and DataElement, but is more generalized since it ONLY contains table code.
button This tag will be superceded by type-safe button tags. It hides the details of a button object (eventually will be functional in javascript and non-javascript modes). type - whether the buton is FORM_ACTION, INLINE, LONG_INLINE, or TOOLBAR; FORM_ACTION corresponds to the "submit"|"cancel" button type ACTION_INLINE corresponds to the "modify"|"remove" button type LONG_INLINE corresponds to inline buttons that don't have the standard button size (e.g., "properties") TOOLBAR corresponds to the toolbar buttons (e.g. "add item") BUT NOT buttons used in actionbars (only old style toolbar buttons) name - the name of the button, which should correspond to the name of the image for the button, minus the "_off.gif"; alt - used for the alt tag for the code; label - NEW inline button behavior: the label will display for text buttons; if it is empty, use the alt instead. action - whether the button submits a form (SUBMIT_FORM) or links to another page (LINK); targetUrl - the target for the page to link to, if it's a link-type button; tabindex - corresponds to the html tabindex property, used to set the tab order of a given link or button height - pixel height of the button (will be deduced from 'type' if not supplied width - pixel width of the button (will be deduced from 'type' if not supplied
okButton This is a type-safe tag wrapping the ButtonTag for OK buttons. It can return to the parent nav item page by default, or take a targetUrl. targetUrl - the target for the page to link to, if it's a link-type button; tabindex - corresponds to the html tabindex property, used to set the tab order of a given link or button
receipt Creates a receipt page using titleBar and button components. iconUrl - the URL for the Icon image used in the titlebar; pluginId - the Id for the plugin (known by the plugin developer and used as the directory root of the plugin, e.g. "/Blackboard/plugins/*pluginId*/images/pluginimg.gif"); recallUrl - OK button, if null will attempt to locate recallUrl from nav item or use javascript back ONLY SHOWN IF submitUrl and cancelUrl are both null submitUrl, cancelUrl - optional attributes to allow the receipt to have two buttons (although either may be used alone).LINK rather than FORM_SUBMIT action
list Creates a list (UI determined by the TYPE attribute). collection - the collection passed to the list (usually a Blackboard filteredList resulting from a Load attempt within the persistence layer. example: a list of users in a course) collectionLabel - a label for the objects inthe list, default is "Objects" object - the BbObject that will be iterated over in the list (example: user) type - the type of list (determines the UI) description - description of the list (required for accessibility compliance) sortUrl - the URL to sort or paginate this list, probably of the form "myPage.jsp?id=_1_2&name=test" or to control the list display, also specify "myPage.jsp?id=_1_2&name=test&sortBy=" + listElement_index + "&startIndex=" + ind resultsPerPage - the number of items to display on a given page. Default is 20, and -1 is "show all" encodeParameters - determines whether the parameters on the URL string of the paging links should be URL encoded. Default is true, and normally won't need to be changed. initialSortCol - the initial column to sort by (optional). The list tag first looks for a request parameter for the sort by value. If it doesn't find one, it uses this value. If this value is not set and it does not find a parameter on the request, no sort triangle will be orange and the sorting will be based on the collection passed in. startPageIndex - The page index as an integer that the list widget should display (optional). The list tag first looks for a request parameter for the page index value. If it doesn't find one, it uses this value. If not specified, the first page will be displayed.
listElement Creates a list item (one "cell" in a list)-- these items will be built up into rows and rendered as a list (examples: First Name, Last Name, Email) width - the optional width setting (used for the width of the column of the list) label - the optional label for the column href - the optional url to use to sort the list by abbr - the abbreviation for screen readers (required for accessibility if a LABEL is supplied) comparator - an optional attribute to specify a comparator used to sort the list.
listOptions Creates a bar that can contain a select all/none/invert dropdown box as well as a 'Items per Page' selection box. This tag will require the name of the form that is rendered in the bbList tag, so that it can interact with it properly. showSelectOptions - set to 'true' if you want the selectOptions to render showItemsPerPage - set to 'true' if you want the 'Items per Page' area to render formName - the name of the form that the bbList element contains
listOptions Creates a bar that can contain a select all/none/invert dropdown box as well as a 'Items per Page' selection box. This tag will require the name of the form that is rendered in the bbList tag, so that it can interact with it properly. showSelectOptions - set to 'true' if you want the selectOptions to render showItemsPerPage - set to 'true' if you want the 'Items per Page' area to render formName - the name of the form that the bbList element contains
simpleList Creates a list (UI determined by the TYPE attribute). collection - the collection passed to the list (usually a Blackboard filteredList resulting from a Load attempt within the persistence layer. example: a list of users in a course) type - the type of list (determines the UI) description - description of the list (required for accessibility compliance)
dateAvailabilitycreates the HTML and JavaScript for the date dropdown and validation TO CONNECT WITH FORM HANDLING: Read from hidden elements: data__course_contents___pk1_pk2__restrict_start_date data__course_contents___pk1_pk2__restrict_end_date On edit, write to tag Date startDate and Date endDate NEW: can now rename these hidden fields with startDateField and endDateField For use with the blackboard.struts.DateAvailabilityForm, set startDateField = "blackboard.struts.DateAvailabilityForm.startDateField"; endDateField = "blackboard.struts.DateAvailabilityForm.endDateField"; pickdate //unknown pickname //unknown make sure that you include a link to the javascript file "/javascript/validateForm.js" in the jsp page when this widget is used, if you are not using the docTemplate or docTemplateHead widgets. (this link has been removed from the widget due to possible javascript conflicts)
dateSelection Creates the HTML for a date dropdown and related JavaScript validation TO CONNECT WITH FORM HANDLING: Read from hidden elements: data__course_contents___pk1_pk2__restrict_start_date On edit, write to tag Date startDate and Date endDate
caretList Widget encapsulating a Caret List. It works like the BreadcrumbBarTag, in that it can accept either child tags (caret) or a collection of CaretBeans (blackboard.servlet.data.CaretBean). description: the table summary (for accessibility/screenreader functionality), describes the function of the caret list. navItem: the handle of a navigation item to use to load a caret list of children nav items
caret Entry in a Caret List. Contains a title, description, and href (which is a link for the title attribute). Only the title is required. The description is set in the body of the tag
module Creates html for a module.
actionItem Action items (such as Add Content), which appear in the ActionBar
actionBar Action items (such as Add Content) appear in the ActionBar. maxItems - The maximum number of actionItems to display in the actionBar. If maxItems is exceeded, the remaining actionItems get rendered as a drop-downlist on the right hand side of the actionBar. icon - Used to display an image next to the dropdown menu if maxItems is exceeded. Needs to include the full HTML img src tag. onChange - Used to hook a JavaScript function to the 'Go' button in the case where maxItems is exceeded. Should be in the form of 'javascript:YourFunctionName();' dropLabel - If there is a dropdown list, this is a text label to the left of the dropdown box
actionDivider This prints out an Action Divider table cell. This tag has no attributes
colorPicker Creates an form element for choosing a color. name - Name of the form element; color - Current color;
modulePersonalizationPage Creates the header and footer for a module personalization page.
modulePersonalizationReceipt Creates a module personalization receipt.
moduleAdminPage Creates the header and footer for a module personalization page.
moduleAdminReceipt Creates a module personalization receipt.
textbox Creates a textbox tag with formatting and MathML controls. isMathML - should the widget include the MathML links? isFormattedText - should the widget include radio buttons for smart/plain/html? isSpellcheck - should the widget include the spellcheck link? mode - modify|insert name - the name of the text area control, used in JS as well label - label for textarea rows - number of rows for textarea cols - number of columns for textarea minLength - validation-- must have a min length of this maxLength - text content can be no longer than maxLength (validation text - the text value of the area xContent - the structured text, in xml format - smarttext|plaintext|html includeJs - should only be true ONCE on a page-- set for the first MathML element on page popupType - defaults to html-- but can configure in future to popup.jsp instead fileLocation - a FileLocation object that will provide the url and file loc of embedded files
toolbarA generic toolbar
toolbarButtonVery similar to an ActionItem containing a link, label and icon
toolbarDividerA vertical divider element
toolbarEmptyA completely empty element ... do with it what you will, but check the documentation for toolbar eccentricities
toolbarFormWrapper for toolbar form elements
toolbarTextA text input form element
toolbarSelectInfo.
navigationItemMenu A box defined by a cascading style sheet, containing all the navigation items belonging to a certain navigation family. Similar to a caret list, but designed for inline navigation links.
box A basic box. The body of the tag is included inside the box. Border color and background color can be specified for visual interfaces.
search A tabbed search interface. Wraps the UI html around whatever content is in the body of the tag Attributes: isShowAdvanced - defaults to false. if true, displays a second tab, for Advanced search, and adds hyperlink wrappers for the inactive tab (note: tabbing between the two views, normal and advanced, is handled by the tab. If a searchUrl (below) is given, the hyperlink for the tabs is created by appending "&mode=advanced|normal". Otherwise, a URL is determined from the request. searchUrl: an optional attribute used to construct the hyperlink for the Advanced|Normal tabs. Default- constructed from the request.
error Handles exception UI exception - the exception that was thrown
dateRangePickercreates the HTML and JavaScript for the date dropdown and validation Calendar startDate - if null, defaults to the current time Calendar endDate - if null, end date dropdown is omitted int datePickerIndex - defaults to 0, should be incremented for additional pickers on a page (NOTE: datePicker and dateRangePicker use the same field naming convention, and should not have the same index if on a page together) String formName - defaults to "forms[0]", should be replaced by the form name attribute if more than one form is used on the page String startCaption - label to use for start date picker, defaults to "Start" String endCaption - label to use for the end date picker, defaults to "End" String endDateField - see below String startDateField - see below boolean checkPastDue - defaults to false, set to true if js validation for past due events is needed boolean isEndChecked - defaults to false, set to true if the end date is set in the data object (as opposed to an as-yet-unset end date) TO CONNECT WITH FORM HANDLING: Hidden field names are set with startDateField and endDateField By default, read from hidden inputs: start_date_0 end_date_0 (if manually setting these names, form name is rendered to page as: startDateField+"_" + datePickerIndex, to allow multiple pickers per page) make sure that you include a link to the javascript file "/javascript/validateForm.js" in the jsp page when this widget is used, if you are not using the docTemplate or docTemplateHead widgets. (this link has been removed from the widget due to possible javascript conflicts)
datePickercreates the HTML and JavaScript for the date dropdown and validation for a single date picker element Calendar startDate - if null, defaults to the current time int datePickerIndex - defaults to 0, should be incremented for additional pickers on a page (NOTE: datePicker and dateRangePicker use the same field naming convention, and should not have the same index if on a page together) String formName - defaults to "forms[0]", should be replaced by the form name attribute if more than one form is used on the page String startCaption - label to use for start date picker, defaults to "Start" String startDateField - see below boolean checkPastDue - defaults to false, set to true if js validation for past due events is needed boolean filterFutureYear - defaults to false, set to true if you wish to restrict year to current year (i.e. Birthdate fields) TO CONNECT WITH FORM HANDLING: Hidden field name is set with startDateField By default, read from hidden inputs: start_date_0 (if manually setting these names, form name is rendered to page as: startDateField+"_" + datePickerIndex, to allow multiple pickers per page) make sure that you include a link to the javascript file "/javascript/validateForm.js" in the jsp page when this widget is used, if you are not using the docTemplate or docTemplateHead widgets. (this link has been removed from the widget due to possible javascript conflicts)
errors This is a replacement for the Struts html:error tag, which does not include the internationalization features. It is assumed that the object specified by "name" is an ActionErrors object, and that for each ActionError it contains, the "key" property is actually the literal message that should be displayed, and not a key into some ResourceBundle. Note that, due to a dependency on Struts, and the fact that Struts 1.0 cannot be loaded from the systemlib classloader, this class is NOT built into the bb-taglib-api.jar. Instead, if you need to use this tag, you must share the class into your webapp src directory. See tmoore for info.
filterList Filters a list using all filter sub tags. collection - the list to be filtered objectId - the Id used to represent each element of the list. className - the type of the list elements. title - Filter title
filter Specifies a filter on a collection propertyValue - The value used in testing this filter filterValue - The value allowed for this filter name - name of this filter
ppgBaseNo Description
inlineFile Displays the specified text file in a pre-formated block. Useful for displaying log files, etc.
multiSelect Creates a MultiSelect tag. This uses the blackboard.servelet.data.MultiSelectBean object to pass data into the list which is displayed in the Select boxes. leftTitle - Left title is the text that appears above the left select-box. It is a descriptive name of what is in the list rightTitle - Right title is the text that appears above the left select-box. leftSelectName - This refers to the name attribute in the select tag for the left multi-select box. defaults to widgetName_left_select and widgetName_right_select where the widgetName is replaced by the specified widgetName (or defaulted to "multiselect" if none is provided) rightSelectName - This refers to the name attribute in the select tag for the right multi-select box. leftCollection - The collection passed to the left Select box. This is a list of MultiSelectBean objects passed to be displayed on the left select box. The setLabel and setValue methods should be set for each member of the list. The setIsSeleted can be set in case some options need to be seleted when the widget first shows up. rightCollection -The collection passed to the right Select box. This is a list of MultiSelectBean objects passed to be displayed on the left select box. The setLabel and setValue methods should be set for each member of the list. The setIsSeleted can be set in case some options need to be seleted when the widget first shows up. formName - This is the name of the form in which the multi-select widget is being used. size - Size refers to the number of rows displayed in the select-boxes. Size is the same for both boxes. width - Width refers to the width in pixels of the select boxes. Width is set with the CSS width attribute and is the same for both boxes. widgetName - Widget Name will precede the hidden fields in the form widgetName_left_values and widgetName_right_values. If widgetName is not specified, the name "multiselect" will be used as a default. type - can be of type "PORTAL_ROLE" . This type will create the standard multiselect for portal roles. After the form is submitted, "widgetName_left_values" and "widgetName_right_values" will be a comma-delimited string of values of all options that were in the respective select box upon form submission.
userRoleSelect Creates a User Role (primary and secondary specific) MultiSelect tag. This uses the blackboard.servelet.data.MultiSelectBean object to pass data into the list which is displayed in the two Select boxes. leftTitle - Left title is the text that appears on the top left of the widget (Available Roles) rightTitle - Right title is the text that appears above top right of the widget (Selected Roles) primaryTitle - The title of the Primary Role section field secondaryTitle - The Title of the Secondary Role selection box leftSelectName - This refers to the name attribute in the select tag for the left multi-select box. defaults to widgetName_left_select and widgetName_right_select where the widgetName is replaced by the specified widgetName (or defaulted to "multiselect" if none is provided) rightSelectName - This refers to the name attribute in the select tag for the right multi-select box. primaryInputName - The refers to the name attribute of the input field used for primary Role leftCollection - The collection passed to the left Select box. This is a list of MultiSelectBean objects passed to be displayed on the left select box. The setLabel and setValue methods should be set for each member of the list. The setIsSeleted can be set in case some options need to be seleted when the widget first shows up. rightCollection -The collection passed to the right Select box. This is a list of MultiSelectBean objects passed to be displayed on the left select box. The setLabel and setValue methods should be set for each member of the list. The setIsSeleted can be set in case some options need to be seleted when the widget first shows up. primaryRoleName - The string which refers to the currently selected primary Role (if any) primaryRoleId - The string which refers to the role_id of the currently selected primary role formName - This is the name of the form in which the multi-select widget is being used. size - Size refers to the number of rows displayed in the select-boxes. Size is the same for both boxes. width - Width refers to the width in pixels of the select boxes. Width is set with the CSS width attribute and is the same for both boxes. widgetName - Widget Name will precede the hidden fields in the form widgetName_left_values and widgetName_right_values. If widgetName is not specified, the name "multiselect" will be used as a default. type - can be of type "PORTAL_ROLE" . This type will create the standard multiselect for portal roles. After the form is submitted, "widgetName_left_values" and "widgetName_right_values" will be a comma-delimited string of values of all options that were in the respective select box upon form submission.
multiSelectAction Performs the various actions on the selection options in the multiselect widget. If there are 3 or less actions, then they will be sidplayed as buttons. In case there are more than three options then it will be displayed as a dropdown. Label - This is the text that will appear on the button or dropdown for that action javaScriptFunc - This is the name of the javascript function which the user has to write to perform a certain action. The name of the function needs to be passed in as a attribute of the tag. This javascript function is called with one parameter, which is the name of the select Box which was passed in outer multiSelect tag.
copyRolesFromUser Copies roles from the given user and selects them in the enclosing multiselect tag. This will only work inside a multiselect tag. formName - the name of the form enclosing the the userId textfield username - the initial value of the username textfield
userPicker UserPickerTag contains a textfield and browse button which launches a new search window for finding users. The usernames are then pasted into the textfield when finished. formName - the name of the form enclosing the the userId textfield username - the initial value of the username textfield textFieldName - the name of the text field for the userId textFieldSize - the size of the text field for the userId selectMultiple - a boolean indicating whether the search page should allow for multiple users to be selected. If true, usernames will be added to the textfield in a comma-delimited list. Default is false;
jsResource This includes the specified Javascript file and associated resource bundles. The file attribute specifies the name of the Javascript file and can also be specified as body content.
filePicker Creates the HTML and JavaScript for selecting a file to upload. The specific controls that are created depend on the presence of the Content System. When the Content System is present, there are controls to select from either the local file system or the Content System; when it is absent only the local file system picker is displayed. formName - the name of the form enclosing the picker pickerName - a unique name for the picker, used to build names for the form fields created by the picker displayName - a human-readable name for this picker. If the not set, it will use generic messages that do not refer to the picker by any name. Generally, this should only be used when multiple file pickers are used on one page. multipleFiles - true if this picker is used with an "Add Another File" button; false if this picker can only be used to choose one file (default: false).
 


Java, JSP, and JavaServer Pages are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries. Copyright 2002-3 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054, U.S.A. All Rights Reserved.