Skip to content

Instantly share code, notes, and snippets.

View Samsinite's full-sized avatar

Sam Clopton Samsinite

View GitHub Profile
@Samsinite
Samsinite / model-save.js
Created October 28, 2015 17:40
Ideal ember model save function
import Ember from 'ember';
export function modelSave(subject, { successMsg, errorMsg, transitionPath, notifyLookupPath, confirmLookupPath, saveFunc }) {
if (!saveFunc) {
saveFunc = subject.save.bind(subject);
}
if (!notifyLookupPath) {
notifyLookupPath = 'service:notify'
}
@Samsinite
Samsinite / ember manifest
Created October 14, 2015 03:59
manifest files
{
"assets": {
"ember-data.js.map": "ember-data.js-e739d346508661e4eec329db5be04dd6.map",
"images\/Porters-App-front-btn-andy.png": "images\/Porters-App-front-btn-andy-9bfb1b0fe208858f51d0b9bdcbe22852.png",
"images\/Porters-App-front-btn-andy@2x.png": "images\/Porters-App-front-btn-andy@2x-476d25b1a887ea6477aa07343b5b9818.png",
"images\/Porters-App-front-btn-ios.png": "images\/Porters-App-front-btn-ios-ece0d518f629b4c95aa05bd5920091a7.png",
"images\/Porters-App-front-btn-ios@2x.png": "images\/Porters-App-front-btn-ios@2x-0ad174e5683bfaec54f68b9a530e7ec0.png",
"images\/Porters-App-front-logo.png": "images\/Porters-App-front-logo-81c9021c6dd1c0aa1a9a301178058f6e.png",
"images\/Porters-App-front-webBG.jpg": "images\/Porters-App-front-webBG-669b50aaae77e5670a388f01fb4c9c04.jpg",
"images\/andy-robot-icon.png": "images\/andy-robot-icon-f6427f417d831ada94502b549cc4f4ae.png",
@Samsinite
Samsinite / pre_deploy.rake
Created October 13, 2015 22:37
Rake pre_deploy task for pre-compiling rails and ember assets, then updating the rails manifest file to point to ember-cli fingerprinted assets
require 'fileutils'
namespace :wildland do
namespace :pre_deploy do
namespace :precompile_assets do
task :rails do
system('RAILS_ENV=production bundle exec rake assets:precompile')
end
task :ember do
@Samsinite
Samsinite / computed-many-through-async.js
Created July 6, 2015 22:21
Ember Data nested join relation computed function
import { createSortableArray } from './sortable-array-proxy';
const { get, set } = Ember;
/****
* TODO: If need sorting, add sort logic
*****/
export default function computedManyThroughAsync(joinRelationAttr, nestedRelationAttr, sortProperties, sortAscending = true) {
return Ember.computed(joinRelationAttr, function() {
var joinRelationPromise = get(this, joinRelationAttr);
@Samsinite
Samsinite / sortable-array-proxy.js
Created July 6, 2015 21:57
Ember sortable array proxy
import Ember from 'ember';
var SortableArrayProxy = Ember.ArrayProxy.extend(Ember.SortableMixin);
export function createSortableArray(arrayToProxy, sortProperties, sortAscending) {
return SortableArrayProxy.create({
content: arrayToProxy,
sortProperties: sortProperties,
sortAscending: sortAscending
});
@Samsinite
Samsinite / bootstrap-input.hbs
Last active August 29, 2015 14:21
bootstrap select compoent
<!-- app/templates/components/bootstrap-input.hbs -->
<label for="{{inputId}}">{{label}}</label>
{{input value=value placeholder=placeholder elementId=inputId classNames="form-control"}}
@Samsinite
Samsinite / application.js
Created May 17, 2015 21:37
LF Serializer
import LFSerializer from 'ember-localforage-adapter/serializers/localforage';
export default LFSerializer;
@Samsinite
Samsinite / index.hbs
Created May 17, 2015 19:55
Workout Index List Markup
<div id="workout-builder">
<div id="workout-builder-index">
<a id="ember986" class="btn btn-primary">New</a>
<table class="table table-striped table-hover">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
<th></th>
</tr>
@Samsinite
Samsinite / pad-number.js
Created May 17, 2015 19:21
Pad Number Helper
import Ember from 'ember';
export function padNumber(params/*, hash*/) {
var str = params[0] + "";
var size = params[1];
while (str.length < size) {
str = "0" + str;
}
@Samsinite
Samsinite / stop-watch.js
Last active August 29, 2015 14:21
Some Stop Watch Code
import Ember from 'ember';
import moment from 'moment';
const { setProperties } = Ember;
export default Ember.Controller.extend({
isRunning: false,
startDisabled: Ember.computed.alias('isRunning'),
stopDisabled: Ember.computed.not('startDisabled'),
cachedDuration: null,