Skip to content

Instantly share code, notes, and snippets.

View poteto's full-sized avatar
🥔
ポテト

lauren poteto

🥔
ポテト
View GitHub Profile
{{#if template}}
{{yield}}
{{else}}
{{flash.message}}
{{/if}}
import FlashMessagesService from 'ember-cli-flash/services/flash-messages-service';
export function initialize(_container, application) {
application.register('service:flash-messages', FlashMessagesService, { singleton: true });
application.inject('controller', 'flashes', 'service:flash-messages');
application.inject('route', 'flashes', 'service:flash-messages');
}
export default {
name: 'flash-messages-service',
@poteto
poteto / lazy-video-providers.js
Created December 14, 2014 04:44
lazy-video service
import Ember from 'ember';
import youtube from 'ember-lazy-video/lazy-video-providers/youtube';
import vimeo from 'ember-lazy-video/lazy-video-providers/vimeo';
export default Ember.Object.extend({
getUrl: function(provider, endpoint, videoId, opts) {
var params;
opts = (typeof opts === "undefined") ? {} : opts;
params = Ember.$.param(opts);
return this.get(provider)[endpoint](videoId) + '?' + params;
@poteto
poteto / vimeo.js
Last active August 29, 2015 14:11
provider
import Ember from 'ember';
export default {
apiUrl: function(videoId) {
return '//vimeo.com/api/oembed.json?url=http%3A//vimeo.com/' + videoId;
},
embedUrl: function(videoId) {
return '//player.vimeo.com/video/' + videoId;
},
thumbnailUrl: function(videoId) {
@poteto
poteto / youtube.js
Last active August 29, 2015 14:11
provider
import Ember from 'ember';
export default {
apiUrl: function(videoId) {
return '//gdata.youtube.com/feeds/api/videos/' + videoId;
},
embedUrl: function(videoId) {
return '//www.youtube.com/embed/' + videoId;
},
thumbnailUrl: function(videoId) {
@poteto
poteto / lazy-video.hbs
Last active August 29, 2015 14:11
lazy-video component
{{#if isDisplayed}}
<iframe {{bind-attr src=videoSrc}} width="100%" height="100%" frameBorder="0" allowFullScreen></iframe>
{{else}}
{{#if template}}
{{yield}}
{{else}}
<div class="lazyLoad-play">
<svg>
<path fill-rule="evenodd" clip-rule="evenodd" d="M84.15,26.4v6.35c0,2.833-0.15,5.967-0.45,9.4c-0.133,1.7-0.267,3.117-0.4,4.25l-0.15,0.95c-0.167,0.767-0.367,1.517-0.6,2.25c-0.667,2.367-1.533,4.083-2.6,5.15c-1.367,1.4-2.967,2.383-4.8,2.95c-0.633,0.2-1.316,0.333-2.05,0.4c-0.767,0.1-1.3,0.167-1.6,0.2c-4.9,0.367-11.283,0.617-19.15,0.75c-2.434,0.034-4.883,0.067-7.35,0.1h-2.95C38.417,59.117,34.5,59.067,30.3,59c-8.433-0.167-14.05-0.383-16.85-0.65c-0.067-0.033-0.667-0.117-1.8-0.25c-0.9-0.133-1.683-0.283-2.35-0.45c-2.066-0.533-3.783-1.5-5.15-2.9c-1.033-1.067-1.9-2.783-2.6-5.15C1.317,48.867,1.133,48.117,1,47.35L0.8,46.4c-0.133-1.133-0.267-2.55-0.4-4.25C0.133,38.717,0,35.583,0,32.75V26.4c0-2.833,0.133-5.95,0.4-9.35l0.4-4.25c0.167-0.966,0.417-2.05,0.75-3.25c0.7-2.333,1.567-4.033,2.6-5.1c1.367-1.
@poteto
poteto / lazy-video.js
Last active August 29, 2015 14:11
lazy-video initializer
import LazyVideoProviders from 'ember-lazy-video/services/lazy-video-providers';
export default {
name: 'lazy-video',
initialize: function(container, application){
application.register('service:lazy-video-providers', LazyVideoProviders, { singleton: true });
application.inject('component:lazy-video', 'providers', 'service:lazy-video-providers');
}
};
{{textarea modifiedSubmit="someControllerAction" value=someText}}
@poteto
poteto / cpm-example-1.js
Last active August 29, 2015 14:13
cpm-example-1
import Ember from 'ember';
var computed = Ember.computed;
var get = Ember.get;
export default Ember.Object.extend({
fullName: computed('firstName', 'lastName', function() {
return get(this, 'firstName') + ' ' + get(this, 'lastName');
})
});
import Ember from 'ember';
var computed = Ember.computed;
var get = Ember.get;
export default Ember.Object.extend({
fullName: computed('firstName', 'lastName', function() {
return get(this, 'firstName') + ' ' + get(this, 'lastName');
}),