Skip to content

Instantly share code, notes, and snippets.

@shaohua
Created November 13, 2013 01:25
Show Gist options
  • Select an option

  • Save shaohua/7441998 to your computer and use it in GitHub Desktop.

Select an option

Save shaohua/7441998 to your computer and use it in GitHub Desktop.
get_gadget.js
define(["gadget", "cdn.jquery"],function(Gadget, $){
var getOptions = function(){
/* Versal's options.player is an extension
* of Backbone.Events
*/
var player = {};
_.extend(player, Backbone.Events);
/* Gadget options.config is a Backbone model */
var config = new Backbone.Model();
//todo
//implement a better version of save()
config.save = function(){};
config.set('username', 'test_user');
/* Gadget options.userState is a Backbone model */
var userState = new Backbone.Model();
/* Gadget $el is the containing DOM element (jQuery object) */
// remove if exist
if( $('.gadget-test-main').length ){
$('.gadget-test-main').remove();
}
// add a new one
$('body').append('<div class="gadget-test-main"></div>');
var $el = $('.gadget-test-main');
/* Gadget propertySheetSchema is a Backbone model */
var propertySheetSchema = new Backbone.Model();
/* stub out gadget properties */
var options = {
player: player,
config: config,
userState: userState,
$el: $el,
propertySheetSchema: propertySheetSchema
};
return options;
};
var oneNewGadget = function(){
var options = getOptions();
var gadget = new Gadget(options);
gadget.initApp(options);
return gadget;
};
return oneNewGadget;
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment