Note that the JsWidget is currently under development but a 0.3 preview is available.
This widget generated will be similar to the chooser currently deployed at CC Labs.
The following is a simple example of how the widget would be included in a page to create a license selector. A live demonstration is available on the CC labs site.
<html> <link rel="stylesheet" href="http://labs.creativecommons.org/jswidget/tags/0.3/example_web_app/example-widget-style.css" /> <head> <title>Example Widget Page</title> </head> <body> . . . <div id="cc_widget_container"> <script src="http://api.creativecommons.org/jswidget/tags/0.3/complete.js"></script>
. . . </body> </html>
You can play with a 0.3 pre-release right now!
- 2007-08-01: Released 0.3. This release introduces Internet Explorer compatibility, Apache Content Negotiation to handle user language selection even if the server doesn't provide it for us, a hopefully-stable API for selecting a license, and license seeding.
- 2007-07-25: Released 0.2. The UI now doesn't ask or contain spurious questions, plus translation is halfway there.
- 2007-07-19: Released 0.1. Don't try to use this in production, but DO let us know how it fits into your systems and what you would want us to change.
- NOTE that whatever license version you provide, we always upgrade it to the most recent version the jurisdiction offers. We do display a Message underneath the license icon saying we did this.
- You can append ?locale=XX to your call to complete.js to choose a language. The example distributed as index.html in the distribution package sets the language to US English this way.
- If omitted, Apache Content Negotiation will select the most appropriate language based on the user's preferences, defaulting to US English.
All of these result extraction systems are demonstrated in the examples.
- There are two hidden form fields called cc_js_license_uri and cc_js_license_name that respectively store the URI and name of the license selected by the user. Just do
document.getElementById("cc_js_result_uri").value(or "cc_js_result_name" instead) and you'll have the license information.
- There is an extra hidden form field containing the link to the image used. Simply get the element whose ID is cc_js_result_img and you will have a URL that is a permanent image. Hotlinking these images is allowed and encouraged.
- You can use the example style provided in the example application to get you going. We urge you to put this file on your own web server and not rely on the copy hosted on labs.creativecommons.org.
- What we really want you to do is to change the style of our divs and spans and so-forth to make them fit in to your application. To do that, you should copy the example style file into one of your own CSS files and modify it until you really like it.
- All JsWidget HTML elements that have IDs or classes start with "cc_js_" to avoid namespace collisions.
The following list of general goals to remind us what we want out of JsWidget. You can expect most of it for 1.0.
See JsWidget/Plan to see what features are planned for what versions.
- Generate HTML suitable for use in a form which presents the basic license selector
- Provide compatibility with all A-grade browsers
- Provide up to date license information by
- Support new, expanded metadata including attributionName, attributionUrl and morePermissions.
- FIXME: Tell users what they can expect to vary within e.g. 1.0
- e.g., if a new jurisdiction appears, should we add it to an existing tag? If a new translation appears?
- Compare to expectations of API