Skip to content

Instantly share code, notes, and snippets.

@3dd13
3dd13 / controllers.js
Created June 15, 2015 12:33
Testing ngCordova geolocation watchPosition and getCurrentPosition function
.controller('DashCtrl', function($scope, $ionicPlatform, $cordovaGeolocation) {
var watch;
var watchOptions = {
timeout : 5000,
maximumAge: 3000,
enableHighAccuracy: true // may cause errors if true
};
var pollCurrentLocation = function() {
$cordovaGeolocation.getCurrentPosition(watchOptions)
@3dd13
3dd13 / application.html.ejs
Created April 3, 2014 01:52
Working with i18n in geddy.this example shows how to see chinese translated text in http://localhost:4000/?locale=zh-tw
<!-- app/views/layouts/application.html.ejs -->
<!-- generate a link with to switch locale -->
<ul>
<li><%- linkTo(i18n.getText("nav.links.switch_to_english"), {locale: "en-us"}) %></li>
<li><%- linkTo(i18n.getText("nav.links.switch_to_chinese"), {locale: "zh-tw"}) %></li>
</ul>
@3dd13
3dd13 / read_gmail_messages_by_label.rb
Created February 6, 2014 18:09
snippet to read your gmail emails by label
require 'gmail'
require 'dotenv'
Dotenv.load
label_name = "" # label name here
Gmail.new(ENV["GMAIL_USERNAME"], ENV["GMAIL_PASSWORD"]) do |gmail|
mail_with_label = gmail.label(label_name)
@3dd13
3dd13 / Gulpfile.js
Last active March 12, 2016 20:33 — forked from webdesserts/Gulpfile.js
Adapt the gulp hot reload file and apply to partial.js directory structure. (ignored public folder at the moment)
// NOTE: I previously suggested doing this through Grunt, but had plenty of problems with
// my set up. Grunt did some weird things with scope, and I ended up using nodemon. This
// setup is now using Gulp. It works exactly how I expect it to and is WAY more concise.
var gulp = require('gulp'),
spawn = require('child_process').spawn,
node;
/**
* $ gulp server
* description: launch the server. If there's a server already running, kill it.
@3dd13
3dd13 / guest_user.rb
Last active June 22, 2022 09:16
some helper methods for handling guest user in Rails (with devise) ecommerce website
#
# User Stories:
# To start shopping easily,
# guest user wants to add items to shopping cart without signing up
#
#
# Code Explanation:
# - a guest_user is created when new user arrives to your website, so that he could have his own shopping cart, and adding items to shopping cart.
# - when the guest_user sign up, all items in the shopping cart should be transferred to the new signed up user account
#
@3dd13
3dd13 / ormat_apn_token.rb
Created December 19, 2012 10:15
Convert the apn token collected from iOS to the format apn_on_rails is expecting
# the apn push token you collected from mobile is in this format:
# 00ea74e76a873e8e9c14c2dd2afe3b42abb35148e94042811e2b6985072641f2
#
# but actually, apn_on_rails is expecting this:
# 00ea74e7 6a873e8e 9c14c2dd 2afe3b42 abb35148 e9404281 1e2b6985 072641f2
def format_apn_token(text)
text && text.gsub(/(.{8})(?=.)/, '\1 \2')
end
@3dd13
3dd13 / Gemfile
Created November 27, 2012 08:38
Runing single ruby file on heroku
source 'https://rubygems.org'
@3dd13
3dd13 / ruby_ftp_example.rb
Created November 5, 2011 17:08
Sample code of using Ruby Net::FTP library. Login to FTP server, list out files, check directory existence, upload files
require 'net/ftp'
CONTENT_SERVER_DOMAIN_NAME = "one-of-the-ftp-server.thought-sauce.com.hk"
CONTENT_SERVER_FTP_LOGIN = "saucy-ftp-server-login"
CONTENT_SERVER_FTP_PASSWORD = "saucy-ftp-server-password"
# LOGIN and LIST available files at default home directory
Net::FTP.open(CONTENT_SERVER_DOMAIN_NAME, CONTENT_SERVER_FTP_LOGIN, CONTENT_SERVER_FTP_PASSWORD) do |ftp|
files = ftp.list
@3dd13
3dd13 / updateClearboxTop.js
Created September 20, 2011 18:21
Javascript to update the "top" css style after every scroll event, to solve the mobile browser position:fixed; issue. The function is called only if the client browser (by checking user-agent) is one of the mobile browsers.
var deviceIphone = "iphone";
var deviceIpod = "ipod";
var deviceIpad = "ipad";
var deviceAndroid = "android";
//Initialize our user agent string to lower case.
var uagent = navigator.userAgent.toLowerCase();
function detectUserAgent(deviceName)
{
@3dd13
3dd13 / apple_green_address.rb
Created September 18, 2011 10:03
Scraping the address of "Apple Green" from openrice.com
#
# loading the mechanize library for scraping
# install it if you haven't done it:
# sudo gem install mechanize
#
require 'mechanize'
agent = Mechanize.new
page = agent.get("http://www.openrice.com/english/restaurant/sr2.htm?shopid=32108")