Skip to content

Instantly share code, notes, and snippets.

@dannvix
dannvix / Sorting-Color-Nodes-by-Hue.html
Last active December 19, 2015 22:49
Simple visualization for sorting color nodes by hue
<!DOCTYPE html>
<html>
<head>
<title>Sorting Color Nodes by Hue</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body {
overflow: hidden;
background: #333333;
}
@dannvix
dannvix / EnableCopy.js
Last active August 29, 2015 14:01
Bookmarklet which enables select, context menu, and so on.
(function() {
function Revive (evnt) {
onEvent = "on" + evnt;
if(window.addEventListener) {
window.addEventListener(onEvent, function (e) {
for (var node = e.originalTarget; node; node = node.parentNode) {
[node] = null;
}
}, true);
window[onEvent] = null;
@dannvix
dannvix / django-middlewares.py
Created July 29, 2014 12:10
_method override & request.params["id"]
class DjangoMethodOverrideMiddleware(object):
METHODS = ['GET', 'HEAD', 'POST', 'PUT', 'DELETE', 'TRACE', 'OPTIONS', 'CONNECT']
def process_request(self, request):
method = request.REQUEST.get("_method", None)
if method is None:
return
else:
method = method.upper()
if method in self.METHODS:
request.method = method
@dannvix
dannvix / django-models-record-status-history-mixin.py
Last active August 29, 2015 14:04
Django models RecordStatusHistoryMixin (pre_save hook)
from django.db import models
from jsonfield import JSONField
from dirtyfields import DirtyFieldsMixin
import time
class RecordStatusHistoryMixin(DirtyFieldsMixin):
def save(self, *args, **kwargs):
if not self.pk:
# first create
current_time = int(time.time())
@dannvix
dannvix / django-JsonResponse.py
Last active March 31, 2022 06:44
Custom Django JsonResponse which supports datetime.datetime serialization
# project/forum/views.py
import json
from datetime import datetime
from django.http import HttpResponse
from django.shortcuts import get_object_or_404
from django.forms.models import model_to_dict
from forum.models import Post
@dannvix
dannvix / yyets-subdl.py
Last active November 6, 2022 09:24
YYeTs (人人影视) 雙語字幕下載器
# Moved to https://github.com/dannvix/yyets-subdl
import webbrowser
webbrowser.open('https://github.com/dannvix/yyets-subdl')
@dannvix
dannvix / list-more-than-2-files.sh
Last active August 29, 2015 14:07
List all directories that contain >= 2 files/directories
#!/bin/sh
# dependencies: find, grep, sort, uniq, awk
echo 'List all files...'
find $1
# output:
# a
# a/b
# a/b/c
# a/b/c/d
@dannvix
dannvix / dmhy-magdl.py
Last active March 19, 2018 14:59
Command-line downloader (via magnet link) for share.dmhy.org
#!/usr/bin/env python
# encoding: utf-8
# dmhy-magdl.py -- command-downloader for share.dmhy.org
import sys
import urllib
import urllib2
from datetime import datetime, timedelta
import webbrowser
import xml.etree.ElementTree as ElementTree
@dannvix
dannvix / cpp11-type-traits.cpp
Last active August 29, 2015 14:09
Playing with C++11 type traits and templates
#include <iostream>
#include <iterator>
#include <vector>
#include <set>
// overload for all STL containers
template <
typename T,
typename = typename std::enable_if <
std::is_convertible<