CLICK TO ADD MAIN TITLE - PowerPoint PPT Presentation

About This Presentation
Title:

CLICK TO ADD MAIN TITLE

Description:

Every Module has an associated Type A Type could have more than one instance ... properties for a module using this same object ... Packaging the Module Type ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 28
Provided by: jj24
Category:
Tags: add | click | main | title | module

less

Transcript and Presenter's Notes

Title: CLICK TO ADD MAIN TITLE


1
My First Building Block as a Portal Module
Heather NatourSenior Lead EngineerBlackboard
Inc.September 29, 2005
2
Road Map
  • What are Portals?
  • Module Types
  • Creating Modules
  • API

3
Audience
  • Building Blocks Developers that want to create
    Blackboard Community System Modules
  • Java/JSP Programmers
  • Some knowledge of Building Blocks Programming
  • Or Just Interested to see whats possible with
    Community System Modules

4
What are Portals?
  • Provides an Entry Point
  • Provides a Customized User Experience
  • Unites several sources of information and present
    them in one central place
  • Sites can customize Portal for a specific type of
    user or market
  • Student, Faculty, East, West
  • Sticky

5
Example of a sticky Portal
6
Blackboard Community System Components
Tab
Contents
Layout
Module
Module Edit
Minimize
Delete
7
Module Types
  • Code for the Module
  • Every Module has an associated Type A Type
    could have more than one instance
  • One or more JSP pages

8
Pre Built Module Types
  • Include HTML
  • Include URL
  • RSS Channel

9
Module Type JSP Pages
  • View
  • What gets displayed when the module is rendered
  • Admin
  • Edit Global properties
  • Edit
  • User customizable properties

10
View
  • Rendered Inline
  • No HTML Header or Body Tags

11
Edit
Calls the edit page
12
Edit
13
Admin
Manage Modules Page
Admin Page for Global Configuration
14
Admin
15
Creating Module Types
  • JSP is easiest
  • Tags Provided for Edit and Admin Pages (more info
    in Dev Guide)
  • modulePersonalizationPage
  • modulePersonalizationReceipt
  • moduleAdminPage
  • moduleAdminReceipt

16
Portal API
  • Java
  • Class CustomData
  • In package blackboard.portal.external
  • Javadoc available in SDK

17
Portal API
  • To get the Global CustomData for a module, use
    getModuleData(context)
  • CustomData data CustomData.getModuleData(pageCon
    text)
  • String text data.getValue(body.lunchMenu)
  • String text data.getValue(body.type)

18
Portal API
  • Can also save Global properties for a module
    using this same object

CustomData data CustomData.getModuleData(pageCon
text) String text data.setValue(body.lunchMenu
, Roast Turkey) String text
data.setValue(body.type,Entrée) data.save()
19
Portal API
  • Similar Methods exist to set user specific data

CustomData data CustomData.getModulePersonalizat
ionData(pageContext) String text
data.setValue(userpref.display,
ALL) data.save()
20
Packaging the Module Type
  • Put it in a System Extension Package
  • JSPs in /module directory
  • ltmodule-type ext-ref"smpl-module" title"Sample
    Plug-in Module Type" uicreatable"true"gt
  • ltjsp-dirgtmodulelt/jsp-dirgt
  • ltjspgt
  • ltviewgtview.jsplt/viewgt
  • lteditgtedit.jsplt/editgt
  • ltadmingtadmin.jsplt/admingt
  • lt/jspgt
  • lt/module-typegt

21
Creating a Module
  • Can specify a module type already in the system
    or in the same installation package
  • Many modules can be created using the Bb supplied
    types
  • Could leverage types that become available in the
    community

22
Creating a Module
  • Module is packaged as a standard Building Blocks
    Package
  • bb-manifest.xml
  • module
  • channel

23
Specifying a Module
  • Manifest Entry (Module Def)

ltmodule type"portal/channel" isadmin"true"
useraddable"true" isdeletable"true"
title"Sample Channel Module"gt ltdescriptiongtSample
channel module. This module accesses the RSS
channel installed with this plug-in.lt/descriptiongt
ltExtraInfogt ltproperty key"channel.id"
type"String"gtmacnewslt/propertygt lt/ExtraInfogt lt/mo
dulegt
24
Specifying a Module
  • Channel Manifest Entry (Channel Def)

ltrss-channel ext-refmacnews" titleMac
News"gt ltdata-urlgt http//www.macnn.xml/macnn.xml
lt/data-urlgt lt/rss-channelgt
25
Specifying a Module
  • Can also optionally specify Institution Roles
    (Primary and Secondary)

ltmodule-groupsgt ltmodule-group idstudent"/gt
ltmodule-group idfaculty"/gt lt/module-groupsgt
26
Demonstration!

27
Thank you!
Write a Comment
User Comments (0)
About PowerShow.com