Skip to content

Instantly share code, notes, and snippets.

@tgoldenberg
tgoldenberg / listen.js
Last active November 8, 2015 01:26
React native audio example
import React from 'react-native';
import myStyles from '../styles/styles';
import Colors from '../styles/colors';
import NavigationBar from 'react-native-navbar';
import {AudioPlayer} from 'react-native-audio';
let {
Text,
View,
TouchableHighlight,
@tgoldenberg
tgoldenberg / index.android.js
Created October 27, 2015 19:28
DDP connection for React Native Android app
var Meteor = require('meteor-client');
// This implements `Meteor.connect`
var DDP = require('ddp');
var Mongo = require('mongo');
let Messages = new Mongo.Collection('messages');
class CCNative extends React.Component{
constructor(props){
super(props);
@tgoldenberg
tgoldenberg / bounce.js
Last active February 18, 2021 17:41
Making a react native icon bounce
const React = require('react-native');
var Icon = require('react-native-vector-icons/FontAwesome');
let {
View,
Text,
Animated,
StyleSheet,
TextInput,
TouchableHighlight,
ScrollView,
@tgoldenberg
tgoldenberg / html
Created October 1, 2015 19:42
Alert handling
// css
@-webkit-keyframes fadeOut {
0% {opacity: 0;}
10% {opacity: 1;}
90% {opacity: 1;}
100% {opacity: 0;}
}
@keyframes fadeOut {
0% {opacity: 0;}
@tgoldenberg
tgoldenberg / mirror_array_sortable.jsx
Created September 25, 2015 21:03
Mirror sorted array with Sortable
...
componentDidMount: function() {
// make elements sortable when editMode == true
var self = this;
SortedElements = Sortable.create(simpleList, {
onEnd: function (/**Event*/evt) {
var oldIndex = evt.oldIndex -1; // element's old index within parent
var newIndex = evt.newIndex -1; // element's new index within parent
if (oldIndex != undefined && newIndex != undefined) {
// swap old and new elements in sidebar list
@tgoldenberg
tgoldenberg / future_streamy.js
Created September 11, 2015 13:53
What I would like to be able to do with Streamy
// chat_room.jsx
submitMessage: function(e) {
e.preventDefault();
var message = $(e.target).find('input').val();
$(e.target).find('input').val('');
Streamy.emit(`outgoing_chat.${this.props._id}`, { from: this.getUsername(), message: message });
},
Streamy.on(`incoming_chat.${this.props._id}`, function(data) {
@tgoldenberg
tgoldenberg / streamy.js
Created September 11, 2015 13:51
Current code for live streaming in Meteor
// chat_room.jsx
submitMessage: function(e) {
e.preventDefault();
var message = $(e.target).find('input').val();
$(e.target).find('input').val('');
Streamy.emit('outgoing_chat', { from: this.getUsername(), message: message });
},
Streamy.on('incoming_chat', function(data) {
class ChargesController < ApplicationController
def create
customer = Stripe::Customer.create(
:email => 'example@stripe.com',
:card => params[:stripeToken]
)
@charge = Charge.new(
price: params[:charge]["amount"].to_i,
user_id: current_user.id,
vendor_id: params[:charge]["owner_id"].to_i,
@tgoldenberg
tgoldenberg / charges_controller.rb
Created September 7, 2015 15:03
charges_controller
class ChargesController < ApplicationController
def new
end
def complete
@charge = Charge.find(params[:charge_id])
@puppy = Puppy.find_by(user_id: @charge.user_id,
arrived: false, name: @charge.item)
Stripe.api_key = ENV["stripe_api_key"]
@tgoldenberg
tgoldenberg / puppy.rb
Last active September 7, 2015 14:59
Puppy model and Charge model
## user.rb
class User < ActiveRecord::Base
....
has_many :puppies, dependent: :destroy
has_many :paid_charges, class_name: 'Charge',
foreign_key: 'user_id', dependent: :destroy
has_many :received_charges, class_name: 'Charge',
foreign_key: 'vendor_id', dependent: :destroy
end
## puppy.rb