hey ropu - thanks for reading the change! i don't think i quite understand your comment though - what did you see what wrong?
- cassie On Thu, Jul 17, 2008 at 12:52 PM, Ropu <[EMAIL PROTECTED]> wrote: > hi cassie > > is this line OK? > +++ incubator/shindig/trunk/features/caja/feature.xml Thu Jul 17 12:37:30 > 2008 > + <script > src="res:///com/google/caja/plugin/domita-minified.js"></script> > > > ropu > > On Thu, Jul 17, 2008 at 4:37 PM, <[EMAIL PROTECTED]> wrote: > > > Author: doll > > Date: Thu Jul 17 12:37:30 2008 > > New Revision: 677699 > > > > URL: http://svn.apache.org/viewvc?rev=677699&view=rev > > Log: > > SHINDIG-436 > > Patch from Mike Samuel. The caja js is now pulled directly from the caja > > maven repo. The java integration has been updated and the caja > integration > > now works. > > > > If you uncomment the caja dependency in opensocial-current/feature.xml > and > > toggle the "use caja" box in the sample container you should be able to > see > > this work on the java side. > > > > > > Removed: > > incubator/shindig/trunk/features/caja/caja.js > > incubator/shindig/trunk/features/caja/domita.js > > incubator/shindig/trunk/features/caja/html-sanitizer.js > > incubator/shindig/trunk/features/caja/html4-defs.js > > incubator/shindig/trunk/features/caja/log-to-console.js > > incubator/shindig/trunk/features/caja/permissive.js > > incubator/shindig/trunk/features/caja/unicode.js > > Modified: > > incubator/shindig/trunk/features/caja/feature.xml > > incubator/shindig/trunk/features/opensocial-current/feature.xml > > incubator/shindig/trunk/features/opensocial-reference/container.js > > incubator/shindig/trunk/features/pom.xml > > incubator/shindig/trunk/java/gadgets/pom.xml > > > > > > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentFilter.java > > > incubator/shindig/trunk/javascript/samplecontainer/samplecontainer.html > > incubator/shindig/trunk/pom.xml > > > > Modified: incubator/shindig/trunk/features/caja/feature.xml > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/features/caja/feature.xml?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/features/caja/feature.xml (original) > > +++ incubator/shindig/trunk/features/caja/feature.xml Thu Jul 17 12:37:30 > > 2008 > > @@ -16,18 +16,11 @@ > > KIND, either express or implied. See the License for the > > specific language governing permissions and limitations under the > License. > > > > - TODO(doll): The caja.js file referenced here should come from maven > > - or something. We should not have our own copy of it. > > +The javascript referenced here should be found in the caja jar. > > --> > > <feature> > > <name>caja</name> > > <gadget> > > - <script src="caja.js"></script> > > - <script src="html4-defs.js"></script> > > - <script src="html-sanitizer.js"></script> > > - <script src="unicode.js"></script> > > - <script src="domita.js"></script> > > - <script src="log-to-console.js"></script> > > - <script src="permissive.js"></script> > > + <script > > src="res:///com/google/caja/plugin/domita-minified.js"></script> > > </gadget> > > </feature> > > > > Modified: incubator/shindig/trunk/features/opensocial-current/feature.xml > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/features/opensocial-current/feature.xml?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/features/opensocial-current/feature.xml > > (original) > > +++ incubator/shindig/trunk/features/opensocial-current/feature.xml Thu > Jul > > 17 12:37:30 2008 > > @@ -20,6 +20,9 @@ > > <feature> > > <name>opensocial-0.8</name> > > <dependency>opensocial-reference</dependency> > > + <!-- <dependency>caja</dependency> --> > > + <!-- Must include the "caja" feature to display samplecontainer --> > > + <!-- gadgets when "use caja" is checked --> > > <gadget> > > <script src="jsonperson.js"></script> > > <script src="jsonactivity.js"></script> > > @@ -57,7 +60,7 @@ > > opensocial.Container.setContainer(new ShindigContainer()); > > } > > > > - if (configParams.enableCaja) { > > + if (window['caja']) { > > opensocial.Container.get().enableCaja(); > > } > > }); > > > > Modified: > > incubator/shindig/trunk/features/opensocial-reference/container.js > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/features/opensocial-reference/container.js?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/features/opensocial-reference/container.js > > (original) > > +++ incubator/shindig/trunk/features/opensocial-reference/container.js > Thu > > Jul 17 12:37:30 2008 > > @@ -514,6 +514,9 @@ > > // By default, only allow references to anchors. > > if (/^#/.test(uri)) { > > return '#' + > > encodeURIComponent(decodeURIComponent(uri.substring(1))); > > + // and files on the same host > > + } else if (/^\/(?:[^\/][^?#]*)?$/) { > > + return encodeURI(decodeURI(uri)); > > } > > // This callback can be replaced with one that passes the URL through > > // a proxy that checks the mimetype. > > @@ -535,77 +538,548 @@ > > caja = window["caja"]; > > attachDocumentStub = window["attachDocumentStub"]; > > > > - var outers = caja.copy(___.sharedOuters); > > + var imports = caja.copy(___.sharedImports); > > + ___.getNewModuleHandler().setImports(imports); > > > > - // TODO(doll): We need to add caja allows for the gadgets namespace so > > that > > - // this works properly. It does not belong in gadgets. > > - var igOnload = window["_IG_RegisterOnloadHandler"]; > > - if (igOnload) { > > - outers._IG_RegisterOnloadHandler = ___.simpleFunc(igOnload); > > + attachDocumentStub('-g___', uriCallback, imports); > > + var gadgetRoot = document.createElement('div'); > > + gadgetRoot.className = 'g___'; > > + imports.htmlEmitter___ = new HtmlEmitter(gadgetRoot); > > + document.body.appendChild(gadgetRoot); > > + > > + // Add the opensocial APIs and mark them callable and readable. > > + imports.gadgets = gadgets; > > + imports.opensocial = opensocial; > > + // The below described the opensocial reference APIs. > > + // A prefix of "c_" specifies a class, "m_" a method, "f_" a field, > > + // and "s_" a static member. > > + // Derived from > > http://code.google.com/apis/opensocial/docs/0.8/reference/ . > > + var opensocialSchema = { > > + c_gadgets: { > > + c_MiniMessage: { > > + m_createDismissibleMessage: 0, > > + m_createStaticMessage: 0, > > + m_createTimerMessage: 0, > > + m_dismissMessage: 0 > > + }, > > + c_Prefs: { > > + m_getArray: 0, > > + m_getBool: 0, > > + m_getCountry: 0, > > + m_getFloat: 0, > > + m_getInt: 0, > > + m_getLang: 0, > > + m_getMsg: 0, > > + m_getString: 0, > > + m_set: 0, > > + m_setArray: 0 > > + }, > > + c_Tab: { > > + m_getCallback: 0, > > + m_getContentContainer: 0, > > + m_getIndex: 0, > > + m_getName: 0, > > + m_getNameContainer: 0 > > + }, > > + c_TabSet: { > > + m_addTab: 0, > > + m_alignTabs: 0, > > + m_displayTabs: 0, > > + m_getHeaderContainer: 0, > > + m_getSelectedTab: 0, > > + m_getTabs: 0, > > + m_removeTab: 0, > > + m_setSelectedTab: 0, > > + m_swapTabs: 0 > > + }, > > + c_flash: { > > + s_embedCachedFlash: 0, > > + s_embedFlash: 0, > > + s_getMajorVersion: 0 > > + }, > > + c_io: { > > + c_AuthorizationType: { > > + s_NONE: 0, > > + s_OAUTH: 0, > > + s_SIGNED: 0 > > + }, > > + c_ContentType: { > > + s_DOM: 0, > > + s_FEED: 0, > > + s_JSON: 0, > > + s_TEXT: 0 > > + }, > > + c_MethodType: { > > + s_DELETE: 0, > > + s_GET: 0, > > + s_HEAD: 0, > > + s_POST: 0, > > + s_PUT: 0 > > + }, > > + c_ProxyUrlRequestParameters: { > > + s_REFRESH_INTERVAL: 0 > > + }, > > + c_RequestParameters: { > > + s_AUTHORIZATION: 0, > > + s_CONTENT_TYPE: 0, > > + s_GET_SUMMARIES: 0, > > + s_HEADERS: 0, > > + s_METHOD: 0, > > + s_NUM_ENTRIES: 0, > > + s_POST_DATA: 0 > > + }, > > + s_encodeValues: 0, > > + s_getProxyUrl: 0, > > + s_makeRequest: 0 > > + }, > > + c_json: { > > + s_parse: 0, > > + s_stringify: 0 > > + }, > > + c_pubsub: { > > + s_publish: 0, > > + s_subscribe: 0, > > + s_unsubscribe: 0 > > + }, > > + c_rpc: { > > + s_call: 0, > > + s_register: 0, > > + s_registerDefault: 0, > > + s_unregister: 0, > > + s_unregisterDefault: 0 > > + }, > > + c_skins: { > > + c_Property: { > > + s_ANCHOR_COLOR: 0, > > + s_BG_COLOR: 0, > > + s_BG_IMAGE: 0, > > + s_FONT_COLOR: 0 > > + }, > > + s_getProperty: 0 > > + }, > > + c_util: { > > + s_escapeString: 0, > > + s_getFeatureParameters: 0, > > + s_hasFeature: 0, > > + s_registerOnLoadHandler: 0, > > + s_unescapeString: 0 > > + }, > > + c_views: { > > + c_View: { > > + m_bind: 0, > > + m_getUrlTemplate: 0, > > + m_isOnlyVisibleGadget: 0 > > + }, > > + c_ViewType: { > > + s_CANVAS: 0, > > + s_HOME: 0, > > + s_PREVIEW: 0, > > + s_PROFILE: 0 > > + }, > > + s_bind: 0, > > + s_getCurrentView: 0, > > + s_getParams: 0, > > + s_requestNavigateTo: 0 > > + }, > > + c_window: { > > + s_adjustHeight: 0, > > + s_getViewportDimensions: 0, > > + s_setTitle: 0 > > + } > > + }, > > + c_opensocial: { > > + c_Activity: { > > + c_Field: { > > + s_APP_ID: 0, > > + s_BODY: 0, > > + s_BODY_ID: 0, > > + s_EXTERNAL_ID: 0, > > + s_ID: 0, > > + s_MEDIA_ITEMS: 0, > > + s_POSTED_TIME: 0, > > + s_PRIORITY: 0, > > + s_STREAM_FAVICON_URL: 0, > > + s_STREAM_SOURCE_URL: 0, > > + s_STREAM_TITLE: 0, > > + s_STREAM_URL: 0, > > + s_TEMPLATE_PARAMS: 0, > > + s_TITLE: 0, > > + s_TITLE_ID: 0, > > + s_URL: 0, > > + s_USER_ID: 0 > > + }, > > + m_getField: 0, > > + m_getId: 0, > > + m_setField: 0 > > + }, > > + c_Address: { > > + c_Field: { > > + s_COUNTRY: 0, > > + s_EXTENDED_ADDRESS: 0, > > + s_LATITUDE: 0, > > + s_LOCALITY: 0, > > + s_LONGITUDE: 0, > > + s_POSTAL_CODE: 0, > > + s_PO_BOX: 0, > > + s_REGION: 0, > > + s_STREET_ADDRESS: 0, > > + s_TYPE: 0, > > + s_UNSTRUCTURED_ADDRESS: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_BodyType: { > > + c_Field: { > > + s_BUILD: 0, > > + s_EYE_COLOR: 0, > > + s_HAIR_COLOR: 0, > > + s_HEIGHT: 0, > > + s_WEIGHT: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_Collection: { > > + m_asArray: 0, > > + m_each: 0, > > + m_getById: 0, > > + m_getOffset: 0, > > + m_getTotalSize: 0, > > + m_size: 0 > > + }, > > + c_CreateActivityPriority: { > > + s_HIGH: 0, > > + s_LOW: 0 > > + }, > > + c_DataRequest: { > > + c_DataRequestFields: { > > + s_ESCAPE_TYPE: 0 > > + }, > > + c_FilterType: { > > + s_ALL: 0, > > + s_HAS_APP: 0, > > + s_TOP_FRIENDS: 0 > > + }, > > + c_PeopleRequestFields: { > > + s_FILTER: 0, > > + s_FILTER_OPTIONS: 0, > > + s_FIRST: 0, > > + s_MAX: 0, > > + s_PROFILE_DETAILS: 0, > > + s_SORT_ORDER: 0 > > + }, > > + c_SortOrder: { > > + s_NAME: 0, > > + s_TOP_FRIENDS: 0 > > + }, > > + m_add: 0, > > + m_newFetchActivitiesRequest: 0, > > + m_newFetchPeopleRequest: 0, > > + m_newFetchPersonAppDataRequest: 0, > > + m_newFetchPersonRequest: 0, > > + m_newRemovePersonAppDataRequest: 0, > > + m_newUpdatePersonAppDataRequest: 0, > > + m_send: 0 > > + }, > > + c_DataResponse: { > > + m_get: 0, > > + m_getErrorMessage: 0, > > + m_hadError: 0 > > + }, > > + c_Email: { > > + c_Field: { > > + s_ADDRESS: 0, > > + s_TYPE: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_Enum: { > > + c_Drinker: { > > + s_HEAVILY: 0, > > + s_NO: 0, > > + s_OCCASIONALLY: 0, > > + s_QUIT: 0, > > + s_QUITTING: 0, > > + s_REGULARLY: 0, > > + s_SOCIALLY: 0, > > + s_YES: 0 > > + }, > > + c_Gender: { > > + s_FEMALE: 0, > > + s_MALE: 0 > > + }, > > + c_LookingFor: { > > + s_ACTIVITY_PARTNERS: 0, > > + s_DATING: 0, > > + s_FRIENDS: 0, > > + s_NETWORKING: 0, > > + s_RANDOM: 0, > > + s_RELATIONSHIP: 0 > > + }, > > + c_Presence: { > > + s_AWAY: 0, > > + s_CHAT: 0, > > + s_DND: 0, > > + s_OFFLINE: 0, > > + s_ONLINE: 0, > > + s_XA: 0 > > + }, > > + c_Smoker: { > > + s_HEAVILY: 0, > > + s_NO: 0, > > + s_OCCASIONALLY: 0, > > + s_QUIT: 0, > > + s_QUITTING: 0, > > + s_REGULARLY: 0, > > + s_SOCIALLY: 0, > > + s_YES: 0 > > + }, > > + m_getDisplayValue: 0, > > + m_getKey: 0 > > + }, > > + c_Environment: { > > + c_ObjectType: { > > + s_ACTIVITY: 0, > > + s_ACTIVITY_MEDIA_ITEM: 0, > > + s_ADDRESS: 0, > > + s_BODY_TYPE: 0, > > + s_EMAIL: 0, > > + s_FILTER_TYPE: 0, > > + s_MESSAGE: 0, > > + s_MESSAGE_TYPE: 0, > > + s_NAME: 0, > > + s_ORGANIZATION: 0, > > + s_PERSON: 0, > > + s_PHONE: 0, > > + s_SORT_ORDER: 0, > > + s_URL: 0 > > + }, > > + m_getDomain: 0, > > + m_supportsField: 0 > > + }, > > + c_EscapeType: { > > + s_HTML_ESCAPE: 0, > > + s_NONE: 0 > > + }, > > + c_IdSpec: { > > + c_Field: { > > + s_GROUP_ID: 0, > > + s_NETWORK_DISTANCE: 0, > > + s_USER_ID: 0 > > + }, > > + c_PersonId: { > > + s_OWNER: 0, > > + s_VIEWER: 0 > > + }, > > + m_getField: 0, > > + m_setField: 0 > > + }, > > + c_MediaItem: { > > + c_Field: { > > + s_MIME_TYPE: 0, > > + s_TYPE: 0, > > + s_URL: 0 > > + }, > > + c_Type: { > > + s_AUDIO: 0, > > + s_IMAGE: 0, > > + s_VIDEO: 0 > > + }, > > + m_getField: 0, > > + m_setField: 0 > > + }, > > + c_Message: { > > + c_Field: { > > + s_BODY: 0, > > + s_BODY_ID: 0, > > + s_TITLE: 0, > > + s_TITLE_ID: 0, > > + s_TYPE: 0 > > + }, > > + c_Type: { > > + s_EMAIL: 0, > > + s_NOTIFICATION: 0, > > + s_PRIVATE_MESSAGE: 0, > > + s_PUBLIC_MESSAGE: 0 > > + }, > > + m_getField: 0, > > + m_setField: 0 > > + }, > > + c_Name: { > > + c_Field: { > > + s_ADDITIONAL_NAME: 0, > > + s_FAMILY_NAME: 0, > > + s_GIVEN_NAME: 0, > > + s_HONORIFIC_PREFIX: 0, > > + s_HONORIFIC_SUFFIX: 0, > > + s_UNSTRUCTURED: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_NavigationParameters: { > > + c_DestinationType: { > > + s_RECIPIENT_DESTINATION: 0, > > + s_VIEWER_DESTINATION: 0 > > + }, > > + c_Field: { > > + s_OWNER: 0, > > + s_PARAMETERS: 0, > > + s_VIEW: 0 > > + }, > > + m_getField: 0, > > + m_setField: 0 > > + }, > > + c_Organization: { > > + c_Field: { > > + s_ADDRESS: 0, > > + s_DESCRIPTION: 0, > > + s_END_DATE: 0, > > + s_FIELD: 0, > > + s_NAME: 0, > > + s_SALARY: 0, > > + s_START_DATE: 0, > > + s_SUB_FIELD: 0, > > + s_TITLE: 0, > > + s_WEBPAGE: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_Permission: { > > + s_VIEWER: 0 > > + }, > > + c_Person: { > > + c_Field: { > > + s_ABOUT_ME: 0, > > + s_ACTIVITIES: 0, > > + s_ADDRESSES: 0, > > + s_AGE: 0, > > + s_BODY_TYPE: 0, > > + s_BOOKS: 0, > > + s_CARS: 0, > > + s_CHILDREN: 0, > > + s_CURRENT_LOCATION: 0, > > + s_DATE_OF_BIRTH: 0, > > + s_DRINKER: 0, > > + s_EMAILS: 0, > > + s_ETHNICITY: 0, > > + s_FASHION: 0, > > + s_FOOD: 0, > > + s_GENDER: 0, > > + s_HAPPIEST_WHEN: 0, > > + s_HAS_APP: 0, > > + s_HEROES: 0, > > + s_HUMOR: 0, > > + s_ID: 0, > > + s_INTERESTS: 0, > > + s_JOBS: 0, > > + s_JOB_INTERESTS: 0, > > + s_LANGUAGES_SPOKEN: 0, > > + s_LIVING_ARRANGEMENT: 0, > > + s_LOOKING_FOR: 0, > > + s_MOVIES: 0, > > + s_MUSIC: 0, > > + s_NAME: 0, > > + s_NETWORK_PRESENCE: 0, > > + s_NICKNAME: 0, > > + s_PETS: 0, > > + s_PHONE_NUMBERS: 0, > > + s_POLITICAL_VIEWS: 0, > > + s_PROFILE_SONG: 0, > > + s_PROFILE_URL: 0, > > + s_PROFILE_VIDEO: 0, > > + s_QUOTES: 0, > > + s_RELATIONSHIP_STATUS: 0, > > + s_RELIGION: 0, > > + s_ROMANCE: 0, > > + s_SCARED_OF: 0, > > + s_SCHOOLS: 0, > > + s_SEXUAL_ORIENTATION: 0, > > + s_SMOKER: 0, > > + s_SPORTS: 0, > > + s_STATUS: 0, > > + s_TAGS: 0, > > + s_THUMBNAIL_URL: 0, > > + s_TIME_ZONE: 0, > > + s_TURN_OFFS: 0, > > + s_TURN_ONS: 0, > > + s_TV_SHOWS: 0, > > + s_URLS: 0 > > + }, > > + m_getDisplayName: 0, > > + m_getField: 0, > > + m_getId: 0, > > + m_isOwner: 0, > > + m_isViewer: 0 > > + }, > > + c_Phone: { > > + c_Field: { > > + s_NUMBER: 0, > > + s_TYPE: 0 > > + }, > > + m_getField: 0 > > + }, > > + c_ResponseItem: { > > + c_Error: { > > + s_BAD_REQUEST: 0, > > + s_FORBIDDEN: 0, > > + s_INTERNAL_ERROR: 0, > > + s_LIMIT_EXCEEDED: 0, > > + s_NOT_IMPLEMENTED: 0, > > + s_UNAUTHORIZED: 0 > > + }, > > + m_getData: 0, > > + m_getErrorCode: 0, > > + m_getErrorMessage: 0, > > + m_getOriginalDataRequest: 0, > > + m_hadError: 0 > > + }, > > + c_Url: { > > + c_Field: { > > + s_ADDRESS: 0, > > + s_LINK_TEXT: 0, > > + s_TYPE: 0 > > + }, > > + m_getField: 0 > > + }, > > + s_getEnvironment: 0, > > + s_hasPermission: 0, > > + s_newActivity: 0, > > + s_newDataRequest: 0, > > + s_newMediaItem: 0, > > + s_newMessage: 0, > > + s_newNavigationParameters: 0, > > + s_requestCreateActivity: 0, > > + s_requestPermission: 0, > > + s_requestSendMessage: 0, > > + s_requestShareApp: 0 > > + } > > + }; > > + function whitelist(schema, obj) { > > + if (!obj) { return; } // Occurs for optional features > > + for (var k in schema) { > > + if (schema.hasOwnProperty(k)) { > > + var m = k.match(/^([mcs])_(\w+)$/); > > + var type = m[1], name = m[2]; > > + switch (type) { > > + case 'c': > > + ___.allowRead(obj, name); > > + whitelist(schema[k], obj[name]); > > + break; > > + case 'm': > > + ___.allowCall(obj.prototype, name); > > + break; > > + case 'f': > > + ___.allowRead(obj.prototype, name); > > + break; > > + case 's': > > + if ('function' === typeof obj[name]) { > > + ___.allowCall(obj, name); > > + } else { > > + ___.allowRead(obj, name); > > + } > > + break; > > + } > > + } > > + } > > } > > - > > - attachDocumentStub('pre-', uriCallback, outers); > > - > > - // Temporarily adding some gadgets calls to the opensocial code. > > - // This should move into the gadgets js code very soon. > > - outers.gadgets = gadgets; > > - > > - // Adding all of the available opensocial calls as defined in the spec > > - outers.opensocial = opensocial; > > - ___.all2( > > - ___.allowCall, outers.opensocial, > > - ['requestSendMessage', 'requestShareApp', 'requestCreateActivity', > > - 'hasPermission', 'requestPermission', 'getEnvironment', > > 'newDataRequest', > > - 'newActivity', 'newActivityMediaItem', 'newMessage']); > > - > > - ___.all2( > > - ___.allowCall, opensocial.Collection.prototype, > > - ['getById', 'size', 'each', 'asArray', 'getTotalSize', > > 'getOffset']); > > - > > - ___.all2( > > - ___.allowCall, opensocial.Person.prototype, > > - ['getId', 'getDisplayName', 'getField', 'isViewer', 'isOwner']); > > - > > - ___.allowCall(opensocial.Address.prototype, 'getField'); > > - ___.allowCall(opensocial.BodyType.prototype, 'getField'); > > - ___.allowCall(opensocial.Email.prototype, 'getField'); > > - ___.allowCall(opensocial.Name.prototype, 'getField'); > > - ___.allowCall(opensocial.Organization.prototype, 'getField'); > > - ___.allowCall(opensocial.Phone.prototype, 'getField'); > > - ___.allowCall(opensocial.Url.prototype, 'getField'); > > - > > - ___.allowCall(opensocial.Activity.prototype, 'getId'); > > - ___.allowCall(opensocial.Activity.prototype, 'getField'); > > - > > - ___.allowCall(opensocial.MediaItem.prototype, 'getField'); > > - > > - ___.allowCall(opensocial.ResponseItem.prototype, 'hadError'); > > - ___.allowCall(opensocial.ResponseItem.prototype, 'getError'); > > - ___.allowCall(opensocial.ResponseItem.prototype, > > 'getOriginalDataRequest'); > > - ___.allowCall(opensocial.ResponseItem.prototype, 'getData'); > > - > > - ___.allowCall(opensocial.DataResponse.prototype, 'hadError'); > > - ___.allowCall(opensocial.DataResponse.prototype, 'get'); > > - > > - ___.all2( > > - ___.allowCall, opensocial.DataRequest.prototype, > > - ['getRequestObjects', 'add', 'send', 'newFetchPersonRequest', > > - 'newFetchPeopleRequest', 'newFetchPersonAppDataRequest', > > - 'newUpdatePersonAppDataRequest', 'newFetchActivitiesRequest']); > > - > > - ___.allowCall(opensocial.Environment.prototype, 'getDomain'); > > - ___.allowCall(opensocial.Environment.prototype, 'supportsField'); > > - > > - ___.allowCall(opensocial.Enum.prototype, 'getKey'); > > - ___.allowCall(opensocial.Enum.prototype, 'getDisplayValue'); > > - > > - ___.allowCall(opensocial.Message.prototype, 'getField'); > > - ___.allowCall(opensocial.Message.prototype, 'setField'); > > - > > - var moduleHandler = ___.freeze({ > > - getOuters: ___.simpleFunc(function() { return outers; }), > > - handle: ___.simpleFunc(function(newModule) { newModule(outers); }) > > - }); > > - > > - ___.setNewModuleHandler(moduleHandler); > > + whitelist(opensocialSchema, window); > > }; > > > > Modified: incubator/shindig/trunk/features/pom.xml > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/features/pom.xml?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/features/pom.xml (original) > > +++ incubator/shindig/trunk/features/pom.xml Thu Jul 17 12:37:30 2008 > > @@ -72,8 +72,7 @@ > > <exclude>**/*.gif</exclude> > > <exclude>**/*.jpeg</exclude> > > <exclude>**/*.png</exclude> > > - > > - <!-- Caja has some bugs too --> > > + <!-- Caja is already minified --> > > <exclude>**/caja/*.js</exclude> > > </excludes> > > </configuration> > > > > Modified: incubator/shindig/trunk/java/gadgets/pom.xml > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/pom.xml?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/java/gadgets/pom.xml (original) > > +++ incubator/shindig/trunk/java/gadgets/pom.xml Thu Jul 17 12:37:30 2008 > > @@ -131,6 +131,11 @@ > > <scope>compile</scope> > > </dependency> > > <dependency> > > + <groupId>caja</groupId> > > + <artifactId>json_simple</artifactId> > > + <scope>compile</scope> > > + </dependency> > > + <dependency> > > <groupId>net.oauth</groupId> > > <artifactId>core</artifactId> > > <scope>compile</scope> > > > > Modified: > > > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentFilter.java > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentFilter.java?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- > > > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentFilter.java > > (original) > > +++ > > > incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/servlet/CajaContentFilter.java > > Thu Jul 17 12:37:30 2008 > > @@ -21,17 +21,19 @@ > > import org.apache.shindig.gadgets.GadgetContentFilter; > > import org.apache.shindig.gadgets.GadgetException; > > > > +import com.google.caja.lexer.CharProducer; > > import com.google.caja.lexer.ExternalReference; > > +import com.google.caja.lexer.FilePosition; > > +import com.google.caja.lexer.InputSource; > > import com.google.caja.opensocial.DefaultGadgetRewriter; > > -import com.google.caja.opensocial.GadgetContentRewriter; > > -import com.google.caja.opensocial.UriCallback; > > import com.google.caja.opensocial.GadgetRewriteException; > > +import com.google.caja.opensocial.UriCallback; > > import com.google.caja.opensocial.UriCallbackException; > > import com.google.caja.opensocial.UriCallbackOption; > > -import com.google.caja.reporting.SimpleMessageQueue; > > -import com.google.caja.reporting.MessageQueue; > > import com.google.caja.reporting.Message; > > import com.google.caja.reporting.MessageContext; > > +import com.google.caja.reporting.MessageQueue; > > +import com.google.caja.reporting.SimpleMessageQueue; > > > > import java.io.IOException; > > import java.io.Reader; > > @@ -65,16 +67,16 @@ > > }; > > > > MessageQueue mq = new SimpleMessageQueue(); > > - GadgetContentRewriter rw = new DefaultGadgetRewriter(mq); > > - Readable input = new StringReader(content); > > - Appendable output = new StringBuilder(); > > + DefaultGadgetRewriter rw = new DefaultGadgetRewriter(mq); > > + CharProducer input = CharProducer.Factory.create( > > + new StringReader(content), > > + FilePosition.instance(new InputSource(retrievedUri), 2, 2, 1, > 1)); > > + StringBuilder output = new StringBuilder(); > > > > try { > > rw.rewriteContent(retrievedUri, input, cb, output); > > } catch (GadgetRewriteException e) { > > throwCajolingException(e, mq); > > - } catch (UriCallbackException e) { > > - throwCajolingException(e, mq); > > } catch (IOException e) { > > throwCajolingException(e, mq); > > } > > > > Modified: > > incubator/shindig/trunk/javascript/samplecontainer/samplecontainer.html > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/javascript/samplecontainer/samplecontainer.html?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- > incubator/shindig/trunk/javascript/samplecontainer/samplecontainer.html > > (original) > > +++ > incubator/shindig/trunk/javascript/samplecontainer/samplecontainer.html > > Thu Jul 17 12:37:30 2008 > > @@ -51,10 +51,10 @@ > > var stateFileUrl = baseUrl + 'state-basicfriendlist.xml'; > > var stateFileUrlCookie = 'sampleContainerStateFileUrl'; > > > > -var useCaja = false; > > -var useCache = true; > > -var usePermissive = false; > > -var doEvil = false; > > +var useCaja; > > +var useCache; > > +var usePermissive; > > +var doEvil; > > var gadget; > > > > var viewerId = "john.doe"; > > @@ -93,13 +93,18 @@ > > }); > > }; > > > > -function changeGadgetUrl() { > > +function unpackFormState() { > > useCaja = document.getElementById("useCajaCheckbox").checked; > > useCache = document.getElementById("useCacheCheckbox").checked; > > - gadgets.container.nocache_ = useCache ? 0 : 1; > > - > > usePermissive = > document.getElementById("usePermissiveCheckbox").checked; > > doEvil = document.getElementById("doEvilCheckbox").checked; > > +} > > + > > +function changeGadgetUrl() { > > + unpackFormState(); > > + > > + gadgets.container.nocache_ = useCache ? 0 : 1; > > + > > setEvilBit(); > > > > stateFileUrl = document.getElementById("stateFileUrl").value; > > @@ -260,19 +265,23 @@ > > > > </script> > > </head> > > -<body onLoad="initGadget();"> > > +<body onLoad="unpackFormState(); initGadget();"> > > <div id="headerDiv"> > > <div style="float:left">Gadget testing container</div> > > <div class="subTitle"> > > Displaying gadget: <input type="text" size="75" id="gadgetUrl"/> > > - <input type="checkbox" id="useCacheCheckbox" checked="true"/>use > > cache > > - <input type="checkbox" id="useCajaCheckbox"/>use caja > > - <input type="checkbox" id="usePermissiveCheckbox"/>use permissive > > + <input type="checkbox" id="useCacheCheckbox" checked="true" > > + /><label for="useCacheCheckbox">use cache</label> > > + <input type="checkbox" id="useCajaCheckbox" > > + /><label for="useCajaCheckbox">use caja</label> > > + <input type="checkbox" id="usePermissiveCheckbox" > > + /><label for="usePermissiveCheckbox">use permissive</label> > > > > <br/> > > > > Using state: <input type="text" size="75" id="stateFileUrl"/> > > - <input type="checkbox" id="doEvilCheckbox"/>do evil > > + <input type="checkbox" id="doEvilCheckbox" > > + /><label for="doEvilCheckbox">do evil</label> > > > > <br/> > > <br/> > > > > Modified: incubator/shindig/trunk/pom.xml > > URL: > > > http://svn.apache.org/viewvc/incubator/shindig/trunk/pom.xml?rev=677699&r1=677698&r2=677699&view=diff > > > > > ============================================================================== > > --- incubator/shindig/trunk/pom.xml (original) > > +++ incubator/shindig/trunk/pom.xml Thu Jul 17 12:37:30 2008 > > @@ -771,7 +771,13 @@ > > <dependency> > > <groupId>caja</groupId> > > <artifactId>caja</artifactId> > > - <version>r820</version> > > + <version>r1899</version> > > + <scope>compile</scope> > > + </dependency> > > + <dependency> > > + <groupId>caja</groupId> > > + <artifactId>json_simple</artifactId> > > + <version>r1</version> > > <scope>compile</scope> > > </dependency> > > <dependency> > > > > > > > > > -- > .-. --- .--. ..- > R o p u >

