Skip to content

Instantly share code, notes, and snippets.

Avatar

Jan Tezner hansek

  • Prague, Czech Republic
View GitHub Profile
@hansek
hansek / models.py
Created Mar 24, 2017
Allow to define abstract class and don't hardcode upload_to path for each FileField
View models.py
from django.db import models
class BaseFileField(models.FileField):
"""
Allow to define abstract class and don't hardcode upload_to path for each FileField
class BaseFile(models.Model):
name = models.CharField(
@hansek
hansek / models.py
Created Mar 16, 2017
Django File mixin to automatically folderize uploaded file by app label and ID
View models.py
from django.db import models
class FileAppIdFolderMixin(models.Model):
def upload_to(self, filename):
return '{app}/{id}/{filename}'.format(
app=self._meta.app_label,
id=self.id,
filename=filename
View colorful.theme.bash
# Bash-it theme inspired by theme "Sexy" and "Bobby" themes
# https://gist.github.com/hansek
if [[ $COLORTERM = gnome-* && $TERM = xterm ]] && infocmp gnome-256color >/dev/null 2>&1; then
export TERM=gnome-256color
elif [[ $TERM != dumb ]] && infocmp xterm-256color >/dev/null 2>&1; then
export TERM=xterm-256color
fi
if [ -t 1 ]; then
View solarized.theme.bash
# Bash-it theme based on Solarized colors
# https://gist.github.com/hansek
if [[ $COLORTERM = gnome-* && $TERM = xterm ]] && infocmp gnome-256color >/dev/null 2>&1; then
export TERM=gnome-256color
elif [[ $TERM != dumb ]] && infocmp xterm-256color >/dev/null 2>&1; then
export TERM=xterm-256color
fi
# Solarized
View hansek.theme.bash
# Hansek Bash Prompt, inspired by theme "Sexy" and "Bobby"
# thanks to them
if [[ $COLORTERM = gnome-* && $TERM = xterm ]] && infocmp gnome-256color >/dev/null 2>&1; then
export TERM=gnome-256color
elif [[ $TERM != dumb ]] && infocmp xterm-256color >/dev/null 2>&1; then
export TERM=xterm-256color
fi
if tput setaf 1 &> /dev/null; then
@hansek
hansek / gist:8594656
Created Jan 24, 2014
Presta - cross selling - products
View gist:8594656
SELECT od.product_id,
pl.name,
pl.link_rewrite,
p.reference,
i.id_image,
product_shop.show_price,
cl.link_rewrite category,
p.ean13,
COUNT(*) AS product_count
FROM ps_order_detail od
@hansek
hansek / gist:8594678
Created Jan 24, 2014
Presta - cross selling - orders
View gist:8594678
SELECT o.id_order
FROM ps_orders o
LEFT JOIN ps_order_detail od ON (od.id_order = o.id_order)
WHERE o.valid = 1
AND od.product_id = 991
@hansek
hansek / coext.js
Created Feb 28, 2013
Custom ExtJS 3.4 components definitions for MODX Revolution.
View coext.js
var COEX = function(config) {
config = config || {};
COEX.superclass.constructor.call(this, config);
};
Ext.extend(COEX, Ext.Component, {
page: {},
window: {},
grid: {},
@hansek
hansek / workshops.structure.sql
Created Feb 8, 2013
Structure of MySQL tables for Workshops CMP
View workshops.structure.sql
CREATE TABLE IF NOT EXISTS `cx_workshop` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(250) NOT NULL,
`date` int(20) NOT NULL DEFAULT '0',
`time_start` time DEFAULT NULL,
`time_end` time DEFAULT NULL,
`capacity` int(11) NOT NULL,
`description` text NOT NULL,
`status` int(11) NOT NULL,
`annex` varchar(250) NOT NULL,
@hansek
hansek / CMPtest.snippet.php
Created Feb 8, 2013
Test snippet for xPDO model of Workshops CMP
View CMPtest.snippet.php
<?php
// inicializace balíčku
$path = MODX_CORE_PATH .'components/workshops/';
$result = $modx->addPackage('workshops', $path .'model/', 'cx_');
if (! $result) {
return 'Failed to add package';
}
else {
$output = '<p>Package added</p>';
You can’t perform that action at this time.