Skip to content

Instantly share code, notes, and snippets.

@mrinterweb
mrinterweb / gist:7e23a153a47c25adba1d
Created September 16, 2014 23:44
Ember-data localforage record cache
App.Cache = Em.Object.extend
init: ->
@store = App.__container__.lookup('store:main')
# tries to load the results from localforage cache or from normal adapter
findAll: ->
localforage.getItem(@modelStr).then (cacheItems)=>
if Em.isEmpty(cacheItems)
@findAndCache()
else
@ultimatemonty
ultimatemonty / ember-crud-pattern.js
Created September 23, 2014 14:31
Ember CRUD pattern
App.PostsController = Em.ArrayController.extend({
actions: {
create: function () {
// some validation logic here
return this.send('createPost');
},
save: function (model) {
// some validation logic here
/* A éviter */
function Customer () {
this.name = {};
this.sendMessage = function () { };
}
/* Recommandé */
function Customer () {
// service
angular
.module('app')
.service('logger', logger);
function logger () {
this.logError = function (msg) {
/* */
};
}
import Ember from 'ember';
export default Ember.Component.extend({
classNames: ['range-slider'],
value: 0,
attributeBindings: ['data-slider'],
'data-slider': 0,
valueDidChange: Em.observer('value', function(){
@poteto
poteto / computed-properties.js
Last active August 29, 2015 14:09
Slack-like loading messages in an Ember app
var computed;
App.computed = {};
computed = Ember.computed;
App.computed.sample = function(dependentKey) {
return (computed("" + dependentKey + ".@each", function() {
var items, length;
items = this.getWithDefault(dependentKey, Em.A([]));
@catkins
catkins / localstorage-json.js
Created November 16, 2014 05:01
Local Storage with JSON support
function saveItem(key, value) {
var json = JSON.stringify(value);
localStorage.setItem(key, json);
}
function loadItem(key) {
var json = localStorage.getItem(key);
return JSON.parse(json);
}
export default Ember.Object.extend({
previousUnauthorizedTransition: null,
token: localStorage.token,
username:null,
tokenChanged: function() {
localStorage.token = this.get('token');
}.observes('token')
})
/* Original source: https://gist.github.com/oskarrough/914653b03d886c015320
* Modified fork: https://gist.github.com/consideRatio/761c6286158e70feaed7
*
* Working authentication with
* Firebase 2.0.x + Ember.js 1.8.1 + Ember Data Canary + EmberFire 1.3.0 + Ember CLI
* works for me! oskar@rough.dk
*
* Note: this assumes you've set up login on your Firebase,
* only handles Google and Facebook for now.
*
@dbwhddn10
dbwhddn10 / SassMeister-input.scss
Created July 26, 2014 03:31
Generated by SassMeister.com.
// ----
// Sass (v3.3.10)
// Compass (v1.0.0.alpha.20)
// ----
// -----------------------------------------------------------------------------
// Introduction
// -----------------------------------------------------------------------------
// Here is hacky and experimental solution for cross-scopes extends