The following document contains the results of RAT (Release Audit Tool).
***************************************************** Summary ------- Generated at: 2013-11-13T11:31:16-05:00 Notes: 0 Binaries: 0 Archives: 0 Standards: 18 Apache Licensed: 1 Generated Documents: 0 JavaDocs are generated and so license header is optional Generated files do not required license headers 17 Unknown Licenses ******************************* Unapproved licenses: /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-path/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-type/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-with-views/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/embedded-experiences/YouTube/YouTubePlayer.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/makeRequest.js /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth10a/YouTube/YouTube.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth2/google/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.html /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.js /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/preferences/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/selection/selection-listener/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/gadget.xml /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.css /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.html /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.js ******************************* Archives: ***************************************************** Files with Apache License headers will be marked AL Binary files (which do not require AL headers) will be marked B Compressed archives will be marked A Notices, licenses etc will be marked N AL /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/pom.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-path/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-type/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-with-views/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/embedded-experiences/YouTube/YouTubePlayer.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/makeRequest.js !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth10a/YouTube/YouTube.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth2/google/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.html !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.js !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/preferences/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/selection/selection-listener/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/gadget.xml !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.css !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.html !????? /Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.js ***************************************************** Printing headers for files without AL header... ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-path/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Actions by Path"> <Require feature="dynamic-height"></Require> <Require feature="actions"> <Param name="action-contributions"> <![CDATA[ <actions> <action id="org-opensocial-explorer-red" path="container/menus/actions" label="Red Action" tooltip="Execute the red action" /> <action id="org-opensocial-explorer-yellow" path="container/menus/actions" label="Yellow Action" tooltip="Execute the yellow action" /> <action id="org-opensocial-explorer-green" path="container/menus/actions" label="Green Action" tooltip="Execute the green action" /> </actions> ]]> </Param> </Require> </ModulePrefs> <Content type="html"> <![CDATA[ <script type="text/javascript"> function initActions() { gadgets.actions.updateAction({ id: "org-opensocial-explorer-red", callback: function(){execute("red")} }); gadgets.actions.updateAction({ id: "org-opensocial-explorer-yellow", callback: function(){execute("yellow")} }); gadgets.actions.updateAction({ id: "org-opensocial-explorer-green", callback: function(){execute("green")} }); // Adjust the height gadgets.window.adjustHeight(); } function execute(color) { document.body.style.backgroundColor=color; } // Register the function to run with the gadget is done loading gadgets.util.registerOnLoadHandler(initActions); </script> <h2>Click on an action to change the background color</h2> ]]> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-by-type/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Actions by Type"> <Require feature="dynamic-height"></Require> <Require feature="actions"> <Param name="action-contributions"> <![CDATA[ <actions> <action id="org-opensocial-explorer-person" dataType="opensocial.Person" label="Person Action" tooltip="Execute the person action" /> <action id="org-opensocial-explorer-message" dataType="opensocial.Message" label="Message Action" tooltip="Execute the message action" /> <action id="org-opensocial-explorer-file" dataType="opensocial.File" label="File Action" tooltip="Execute the file action" /> </actions> ]]> </Param> </Require> </ModulePrefs> <Content type="html"> <![CDATA[ <script type="text/javascript"> function initActions() { gadgets.actions.updateAction({ id: "org-opensocial-explorer-person", callback: execute }); gadgets.actions.updateAction({ id: "org-opensocial-explorer-message", callback: execute }); gadgets.actions.updateAction({ id: "org-opensocial-explorer-file", callback: execute }); } function execute(selection) { var div = document.getElementById("selection"); div.innerHTML = gadgets.json.stringify(selection); } // Register the function to run with the gadget is done loading gadgets.util.registerOnLoadHandler(initActions); </script> <div>Run an action bound to a type to see the information for the selected object(s) of that type:</div> <div id="selection"></div> ]]> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/actions/actions-with-views/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Actions with Views"> <Require feature="dynamic-height"></Require> <Require feature="actions"> <Param name="action-contributions"> <![CDATA[ <actions> <action id="org-opensocial-explorer-red" path="container/menus/actions" label="Red Action" tooltip="Execute the red action" view="red"/> <action id="org-opensocial-explorer-yellow" path="container/menus/actions" label="Yellow Action" tooltip="Execute the yellow action" view="yellow"/> <action id="org-opensocial-explorer-green" path="container/menus/actions" label="Green Action" tooltip="Execute the green action" view="green"/> </actions> ]]> </Param> </Require> </ModulePrefs> <Content type="html" view="default,red,yellow,green"> <![CDATA[ <script type="text/javascript"> function initActions() { gadgets.window.adjustHeight(); } // Register the function to run with the gadget is done loading gadgets.util.registerOnLoadHandler(initActions); </script> <h2>Click on an action to change the background color</h2> ]]> </Content> <Content type="html" view="red"> <![CDATA[ <script type="text/javascript"> document.body.style.backgroundColor="red"; </script> ]]> </Content> <Content type="html" view="yellow"> <![CDATA[ <script type="text/javascript"> document.body.style.backgroundColor="yellow"; </script> ]]> </Content> <Content type="html" view="green"> <![CDATA[ <script type="text/javascript"> document.body.style.backgroundColor="green"; </script> ]]> </Content> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/embedded-experiences/YouTube/YouTubePlayer.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="YouTube Player" description="YouTube Player Using Embedded Experiences" height="400" width="700"> <Require feature="embedded-experiences"></Require> <Require feature="dynamic-height"></Require> </ModulePrefs> <Content type="html"> <![CDATA[ <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function() { //Register this listener so we can get the embedded experience context data gadgets.ee.registerContextListener(function(context) { showVideo(context); }); }); function showVideo(context){ document.getElementById("player").innerHTML = '<object width="480" height="385"><param name="movie" value="http://www.youtube.com/v/' + context + '?fs=1&hl=en_US"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/' + context + '?fs=1&hl=en_US" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"></embed></object>'; gadgets.window.adjustHeight(); }; </script> <div id="player"> </div> ]]> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Make Request Example"> <Require feature="dynamic-height"></Require> </ModulePrefs> <Content type="html"> <![CDATA[ <script type="text/javascript" src="makeRequest.js"></script> <h4>Select an NHL team and press "GO!" to see more information</h4> <select id="team"> <option value="BOS">Boston</option> <option value="PHI">Philadelphia</option> <option value="TBL">Tampa Bay</option> <option value="CHI">Chicago</option> <option value="VAN">Vancouver</option> <option value="SJS">San Jose</option> </select> <button type="button" onclick="lookupTeam()">GO!</button> <br /> Team ID: <span id="teamID"></span><br /> Team Name: <span id="name"></span><br /> Conference: <span id="conference"></span><br /> Division: <span id="division"></span> <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function(){ gadgets.window.adjustHeight(); }); </script> ]]> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/makeRequest/makeRequest.js ======================================================================= function lookupTeam() { var index = document.getElementById('team').selectedIndex; var options = document.getElementById('team').options; var teamID = options[index].value; var params = {}; params[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.JSON; var url = 'http://www.nicetimeonice.com/api/teams/' + teamID; gadgets.io.makeRequest(url, function(response) { if (response.errors.length == 0) { var data = response.data; document.getElementById('teamID').innerHTML = data.teamID; document.getElementById('name').innerHTML = data.name; document.getElementById('conference').innerHTML = data.conference; document.getElementById('division').innerHTML = data.division; gadgets.window.adjustHeight(); } else { gadgets.error('There was an error making the request.'); } }, params); } ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth10a/YouTube/YouTube.xml ======================================================================= <?xml version="1.0" encoding="UTF-8" ?> <Module> <ModulePrefs title="YouTube Gadget" width="700" scrolling="true"> <Require feature="dynamic-height" /> <Require feature="embedded-experiences" /> <Require feature="oauthpopup" /> <Require feature="tabs" /> <OAuth> <Service name="YouTube"> <Request url="https://www.google.com/accounts/OAuthGetRequestToken?scope=http://gdata.youtube.com" /> <Access url="https://www.google.com/accounts/OAuthGetAccessToken" /> <Authorization url="https://www.google.com/accounts/OAuthAuthorizeToken?oauth_callback=http://sandbox.opensocial2.org:8080gadgets/oauthcallback" /> </Service> </OAuth> </ModulePrefs> <Content type="html" view="embedded,default"> <![CDATA[ <style type="text/css"> .youTubeWrapper{ font: 75%/1.5 Arial,Helvetica,sans-serif; } #comments{ margin-left: -45px; } .comment{ background-color: #F4F5F6; border-bottom: 1px solid #FFFFFF; list-style-type: none; overflow: hidden; padding: 7px; } .comment .commentAvatar{ float: left; margin-right: 5px; } .comment .commentAvatar img{ width: 24px; } .comment .commentMeta a{ font-weight: bold; color: #000000; } .comment .commentMeta { color: #666666; ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/oauth/oauth2/google/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8" ?> <Module> <ModulePrefs title="Demo OAuth2 Authorization Code Gadget (Simple pull from Google Contacts)"> <OAuth2> <Service name="googleAPI" scope="https://www.google.com/m8/feeds/"> </Service> </OAuth2> <Require feature="oauthpopup" /> <!-- <Preload authz="oauth2" oauth_service_name="googleAPI" href="https://www.google.com/m8/feeds/contacts/default/full" /> --> </ModulePrefs> <Content type="html"> <![CDATA[ <style> #main { margin: 0px; padding: 0px; font-size: small; } </style> <div id="main" style="display: none"> </div> <div id="approval" style="display: none"> <a href="#" id="personalize">Personalize this gadget</a> <ol> <b><u>In order to use this Demo Gadget you must</u></b> <li>Have or create a Google account and know your userid and password</li> <li>Register a new application at <a href="https://code.google.com/apis/console">https://code.google.com/apis/console</a></li> <li>Make sure your app's "Redirect URIs" applies to your shindig environment (e.g. http://localhost:8080/gadgets/oauth2callback)</li> <li>Update the Google client "Client ID" and "Client Secret" in the OAuth2 persistence (default is <code>config/oauth2.json</code>)</li> <li>Restart the server</li> <li>Click the link above to initiate the authorization process</li> </ol> </div> <div id="waiting" style="display: none"> Please click <a href="#" id="approvaldone">I've approved access</a> once you've approved access to your data. </div> <div id="error" style="display: none;background-color:yellow;font-size:xx-small;" title="An error occured processing your request"> <div id="error_code"><u>code:</u></div> <div id="error_uri"><u>uri:</u></div> <div id="error_description"><u>description:</u></div> <div id="error_explanation"><u>explanation:</u></div> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Open Views Demo"> <Require feature="dynamic-height"></Require> <Optional feature="open-views"></Optional> <Optional feature="embedded-experiences"></Optional> </ModulePrefs> <Content type="html" href="open-views.html" /> <Content type="html" view="tab"> <![CDATA[ <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function() { gadgets.views.setReturnValue('Thanks for closing the tab view!'); }); </script> <h1>Tab View</h1> <button onclick="gadgets.views.close();">Close</button> ]]> </Content> <Content type="html" view="sidebar"> <![CDATA[ <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function() { gadgets.views.setReturnValue('Thanks for closing the sidebar view!'); }); </script> <h1>Sidebar View</h1> <button onclick="gadgets.views.close();">Close</button> ]]> </Content> <Content type="html" view="dialog"> <![CDATA[ <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function() { gadgets.views.setReturnValue('Thanks for closing the dialog view!'); }); </script> <h1>Dialog View</h1> <button onclick="gadgets.views.close();">Close</button> ]]> </Content> <Content type="html" view="embedded"> <![CDATA[ <script type="text/javascript"> gadgets.util.registerOnLoadHandler(function() { gadgets.views.setReturnValue('Thanks for closing the embedded experience!'); gadgets.ee.registerContextListener(function(context) { document.getElementById('contextData').innerHTML = gadgets.json.stringify(context); }); ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.html ======================================================================= <html> <head> <script type="text/javascript" src="open-views.js"></script> </head> <body> <h3>What would you like to open?</h3> <select id="type"> <option value="gadget">Gadget</option> <option value="url">URL</option> <option value="ee">Embedded Experience</option> </select> <h3>Where would you like to open it?</h3> <select id="viewTarget"> <option></option> <option value="TAB">Tab</option> <option value="DIALOG">Dialog</option> <option value="MODALDIALOG">Modal Dialog</option> <option value="FLOAT">Float</option> <option value="SIDEBAR">Sidebar</option> </select> <div id="viewSection"> <h3>What view would you like to open?</h3> <select id="view"> <option value="tab">Tab View</option> <option value="sidebar">Sidebar View</option> <option value="dialog">Dialog View</option> </select> </div> <div id="urlSection" style="display: none;"> <h3>URL To Open</h3> <input type="text" id="url" value="http://opensocial.org"></input> </div> <div id="eeSection" style="display: none;"> <h3>Embedded Experience Data Model</h3> <textarea id="dataModel" rows="10" cols="70"></textarea> </div> <br/> <div> <button id="open">Open</button> </div> </body> </html> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/open-views/all-features/open-views.js ======================================================================= var currentSite; function initButtons() { document.getElementById('open').onclick = open; document.getElementById('type').onchange = typeChange; setEEDataModel(); gadgets.window.adjustHeight(); } function typeChange(e) { hideFields(); var type = e.currentTarget.value; if(type === 'gadget') { document.getElementById('viewSection').setAttribute('style', 'display: block;'); } else if(type === 'url') { document.getElementById('urlSection').setAttribute('style', 'display: block;'); } else { document.getElementById('eeSection').setAttribute('style', 'display: block;'); } gadgets.window.adjustHeight(); } function setEEDataModel() { //WARNING!!! The below line of code is specific to this container //not every container will do this do don't rely on it var gadgetUrl = gadgets.views.getParams().gadgetUrl; var dataModel = { "gadget" : gadgetUrl, "context" : { "message" : "The open-views feature rocks!" } }; document.getElementById('dataModel').value = gadgets.json.stringify(dataModel); } function hideFields() { document.getElementById('viewSection').setAttribute('style', 'display: none;'); document.getElementById('urlSection').setAttribute('style', 'display: none;'); document.getElementById('eeSection').setAttribute('style', 'display: none;'); } function open() { var type = document.getElementById('type').value; if(type === 'url') { gadgets.views.openUrl(getUrl(), function(site) { currentSite = site; }, getViewTarget()); } else if(type === 'gadget') { ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/preferences/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Preferences Gadget" description="Tests setting and getting user preferences." width="320" height="400"> <Require feature="setprefs"/> <Require feature="settitle"/> <Require feature="dynamic-height"/> </ModulePrefs> <UserPref name="hello_pref" display_name="Name" default_value="World" datatype="string" required="true"/> <UserPref name="number_pref" display_name="Number" default_value="0" datatype="string" required="true"/> <UserPref name="list_pref" display_name="List" default_value="foo|bar|foobar" datatype="list" required="true"/> <UserPref name="boolean_pref" display_name="Boolean" default_value="false" datatype="bool" required="true"/> <UserPref name="enum_pref" display_name="Enum" default_value="Red" datatype="enum" required="true"> <EnumValue value="Red" display_value="Red"/> <EnumValue value="Green" display_value="Green"/> <EnumValue value="Blue" display_value="Blue"/> <EnumValue value="Gray" display_value="Gray"/> <EnumValue value="Purple" display_value="Purple"/> <EnumValue value="Black" display_value="Black"/> </UserPref> <UserPref name="set_pref" display_name="Set this preference" datatype="string" required="false"/> <Content type="html"> <![CDATA[ <div id="enum_div"></div> <div id="boolean_div"</div> <div id="number_div"</div> <div id="list_div"></div> <div id="set_div"> Set the pref value: <input id="setPrefInput" type="text" /><br /> <button id="setPrefBtn" type="button" onclick="setPref()">Set the pref</button> </div> <script type="text/javascript"> function setPref(){ var prefs = new gadgets.Prefs(); prefs.set("set_pref", document.getElementById("setPrefInput").value); } function displayMsg(){ var enumDiv = document.getElementById('enum_div'); var boolDiv = document.getElementById('boolean_div'); var listDiv = document.getElementById('list_div'); var numberDiv = document.getElementById('number_div'); var setPrefDiv = document.getElementById('set_div'); // Get userprefs var prefs = new gadgets.Prefs(); // enumDiv enumDiv.style.color = prefs.getString("enum_pref"); var enumDivHtml = "<br><h1>"; enumDivHtml += "Hello, "; enumDivHtml += prefs.getString("hello_pref"); ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/selection/selection-listener/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Selection Listener"> <Require feature="dynamic-height"></Require> <Require feature="selection"></Require> </ModulePrefs> <Content type="html"> <![CDATA[ <script type="text/javascript"> function execute(selection) { var div = document.getElementById("selection"); div.innerHTML = gadgets.json.stringify(selection); // Adjust the height gadgets.window.adjustHeight(); } // Register the function to run with the gadget is done loading gadgets.util.registerOnLoadHandler(function() { gadgets.selection.addListener(execute); }); </script> <div>Select a OpenSocial datatype in the menu to see its value:</div> <div id="selection"></div> ]]> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/gadget.xml ======================================================================= <?xml version="1.0" encoding="UTF-8"?> <Module> <ModulePrefs title="Welcome Gadget" description="Welcome people to the OpenSocial Explorer"> <Require feature="minimessage" /> </ModulePrefs> <Content type="html" href="welcome.html"> </Content> </Module> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.css ======================================================================= .mmlib_table { width: 100%; font: bold 9px arial,sans-serif; font-size: medium; background-color: #fff4c2; border-collapse: separate; border-spacing: 3px; padding: 1px 0px; } ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.html ======================================================================= <html> <head> <link type="text/css" rel="stylesheet" href="welcome.css"/> <script type="text/javascript" src="welcome.js"></script> </head> </html> ======================================================================= ==/Users/ryanjbaxter/git-repos/opensocial/explorer/gadget-specs/src/main/specs/welcome/welcome.js ======================================================================= function welcome() { var miniMessage = new gadgets.MiniMessage(); miniMessage.createStaticMessage("Welcome to the OpenSocial Explorer!"); miniMessage.createStaticMessage("Click on the tabs at the top to see all resources that a gadget is using, including HTML, CSS, and JavaScript."); miniMessage.createStaticMessage("Click on the samples in the navigator on the left to view other sample gadgets."); } gadgets.util.registerOnLoadHandler(welcome);