Example #1
0
define(function(require){

	var
	Backbone       = require("backbone"),
	Handlebars     = require("handlebars"),
	$              = require("jquery"),

	MasterBaseView = require( 'views/masterbaseview' ),
	Collection     = require('collections/photos/album-photos'),
	AlbumThumbnail = require('views/photos/album-thumbnail');
	

	return MasterBaseView.extend({

		modelView: AlbumThumbnail,

		emptyCollectionTemplate: Handlebars.compile(""),

		init: function(){
			App.vent.on( "profile:dataLoaded", this.update, this );
			this.collection = new Collection();
		},

		update: function( data ){
			this.collection.reset( data.get( "imagesWrapper" ).collection );
			return this;
		}

	});

});
Example #2
0
define(function(require){

	var
	Handlebars     = require("handlebars"),
	template       = require("text!templates/people/person.hbr"),
	MasterBaseView = require( 'views/masterbaseview' );

	return MasterBaseView.extend({
		template: Handlebars.compile( template ),
		className: "people"
	});

});
Example #3
0
define(function(require){

	var
	Backbone       = require("backbone"),
	Handlebars     = require("handlebars"),
	$              = require("jquery"),

	MasterBaseView = require("views/masterbaseview");

	return MasterBaseView.extend({
		//Nothing yet
	});

});
Example #4
0
define(function(require){

	var
	Backbone        = require("backbone"),
	Handlebars      = require("handlebars"),
	$               = require("jquery"),
	UploaderModal   = require('views/photos/uploader-modal'),

	MasterBaseView  = require('views/masterbaseview'),
	MasterBaseModel = require( 'models/masterbasemodel' ),
	Photos          = require('views/photos/album-photos'),
	template        = require("text!templates/photos/album.hbr");


	return MasterBaseView.extend({

		template: Handlebars.compile( template ),

		init: function(){
			this.photos = new Photos();
			this.photos.collection.on("reset add", this.render, this );
			this.model = new MasterBaseModel();
		},

		preRender: function(){
			this.model.set({
				count: this.photos.collection.length
			});
		},

		postRender: function(){
			this.$("#photosContainer")
			.html( this.photos.renderCollection( null, { collection: this.photos.collection } ).el );
			return this;
		},

		events:{
			"click #addPhotos": function(){
				this.uploaderModal = new UploaderModal({
					collection: this.photos.collection
				});
			}
		}

	});

});
Example #5
0
define(function(require){

	var
	Backbone       = require("backbone"),
	Handlebars     = require("handlebars"),
	$              = require("jquery"),
	Helper         = require('helper'),

	MasterBaseView = require( 'views/masterbaseview' ),
	Like           = require("views/like/like"),
	Comments       = require("views/comments/comments"),
	template       = require("text!templates/wall/post.hbr");


	return MasterBaseView.extend({

		contextId: "comment",

		tagName: "article",

		className: "media",

		template: Handlebars.compile( template ),

		nodes:{
			comments: ".comments"
		},

		postRender: function(){
			if( this.model.has( "commentsWrapper" ) ){
				var commentData = this.model.get("commentsWrapper").collection;
				this.comments = new Comments( {
					data: commentData,
					parentId: this.model.get( "id" ),
					parentType: "COMMENT"
				} );
				this.$( this.nodes.comments )
				.append( this.comments.render().el );
			}

			return this;
		}

	});

});
Example #6
0
define(function(require){

	var
	Backbone       = require("backbone"),
	Handlebars     = require("handlebars"),
	$              = require("jquery"),
	Helper         = require('helper'),

	MasterBaseView = require( 'views/masterbaseview' );


	return MasterBaseView.extend({

		//DOM events

	});

});
Example #7
0
define(function(require){

	var

	$              = require("jquery"),
	Backbone       = require("backbone"),
	Handlebars     = require("handlebars"),

	MasterBaseView = require( 'views/masterbaseview' ),
	Model          = require("models/like/like"),
	template       = require("text!templates/like/like.hbr");


	return MasterBaseView.extend({

		template: Handlebars.compile( template ),

		init: function( options ){
			this.options = options || { type: "heart", data: { count: 0, actioned: null } };
			this.model = new Model( this.options.data );
			this.model.on( "sync change", this.renderToDom, this );
			this.model.url = App.api.get( "like", this.options.contextId );
			this.id = this.options.parentId;
		},

		events: {
			'click' : 'registerLike'
		},

		registerLike: function(){
            		this.model.persist( this.id, this.model.get("actioned") ? { type: "DELETE"} : null );
		},

		bindData: function( aModel ){
			this.model.set( aModel.get("likes") );
			this.id = aModel.id;
			this.renderToDom();
		}

	});
});
define(function(require){

	var

	_              = require("_"),

	Collection     = require( "collections/people/people" ),
	Person         = require( "views/people/person" ),
	MasterBaseView = require( "views/masterbaseview" );


	return MasterBaseView.extend({

		modelView: Person,

		emptyCollectionTemplate: Handlebars.compile( "<div class='alert alert-info' style='text-align:center'>No people yet! (Sort it out</div>" ),

		init: function(){
			this.collection = new Collection();
			App.vent.on( "profile:dataLoaded", this.update, this );
			this.render = this.renderPeople;
		},

		update: function( data ){
			this.collection.reset( data.get( this.options.type ).collection );
		},

		renderPeople: function(){
			this.renderCollection();
			var self = this;
			_.defer( function(){
				self.masonry( '.people' );
			} );
			return this;
		}

	});

});