Skip to content

Instantly share code, notes, and snippets.

View mmarcon's full-sized avatar
👋

Massimiliano Marcon mmarcon

👋
View GitHub Profile
@mmarcon
mmarcon / gist:1323584
Last active December 7, 2022 17:15
iOS extend SQLite by adding functions
/*
Target: iOS, iOS5
Let's say you have a SQLite DB to index a number of files, resources, or items in general.
You want to perform a full-text search on this item. Example:
TABLE: Item
----------------------------------------------------------------------
ID | Name | Description
@mmarcon
mmarcon / sUpload.js
Created December 21, 2011 07:16
Draft of a simple jQuery plugin to upload files asynchronously via AJAX
(function($) {
var settings = {
hoverClass: 'sUpload-hover',
dropAreaClass: 'sUpload-drop',
dropMessage: 'Drop file here!',
dropAreaHeight: 200, uploadURL: null,
fileReaderCallback: null,
fileUploadCallback: null,
errorCallback: null
},
@mmarcon
mmarcon / fetch.php
Created April 30, 2012 11:57
Download and unarchive a whole Github repository
<?php
function unzip($file) {
$zip = zip_open($file);
if (is_resource($zip)) {
$tree = "";
while (($zip_entry = zip_read($zip)) !== false) {
echo "Unpacking " . zip_entry_name($zip_entry) . "\n";
if (strpos(zip_entry_name($zip_entry), DIRECTORY_SEPARATOR) !== false) {
$last = strrpos(zip_entry_name($zip_entry), DIRECTORY_SEPARATOR);
$dir = substr(zip_entry_name($zip_entry), 0, $last);
find . -name "*.php" | while read line; do expand -t 4 $line > $line.new; mv $line.new $line; done
@mmarcon
mmarcon / DateUtil.java
Last active December 23, 2015 14:58
milliseconds to pretty date in Java
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class DateUtil {
public static String getDate(long milliSeconds) {
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy hh:mm:ss.SSS");
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(milliSeconds);
return formatter.format(calendar.getTime());
@mmarcon
mmarcon / MFArrayList.java
Created September 22, 2013 10:18
An extension of the ArrayList class that allows mapping and filtering similarly to Array.prototype.map and Array.prototype.filter in JavaScript.
package es.cloudey.webanalyzer.util;
import java.util.ArrayList;
import java.util.Collection;
public class MFArrayList<E> extends ArrayList<E> {
private static final long serialVersionUID = 7281673743494991943L;
public MFArrayList(){
@mmarcon
mmarcon / CollectionUtils.java
Created September 22, 2013 14:31
Maps are not Parcelable and this is an issue in Android when they need to be passed to activities and services via Intents. The corresponding Map-like object in Android is the Bundle. Bundle is a more generic container, it doesn't enforce types via generics and isn't supported natively by JSON deserializers such as Gson. This utility class expos…
package es.cloudey.pagespeed.util;
import java.util.HashMap;
import java.util.Map;
import android.os.Bundle;
import android.os.Parcelable;
public class CollectionUtils {
public static Bundle toBundle(Map<String, ? extends Parcelable> input) {
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = false
vb.memory = "512"
end
end
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.provider "virtualbox" do |vb|
# Display the VirtualBox GUI when booting the machine
vb.gui = false
vb.memory = "512"
end
# Use Ansible for provisioning and load playbook.yml
config.vm.provision :ansible do |ansible|
---
- hosts: all
sudo: yes
tasks:
- name: install nginx
apt: name=nginx state=present update_cache=yes
notify:
- start nginx
handlers:
- name: start nginx