Skip to content

Instantly share code, notes, and snippets.

@smmoosavi
smmoosavi / fields.py
Created March 30, 2017 17:41
Array Form Field
from django.contrib.postgres.forms import SimpleArrayField, ValidationError, prefix_validation_error
class ArrayField(SimpleArrayField):
def prepare_value(self, value):
return [self.base_field.prepare_value(v) for v in value]
def to_python(self, value):
# see django/contrib/postgres/forms/array.py:37
if value:
items = value
@smmoosavi
smmoosavi / jalaaliUtils.js
Created March 15, 2018 16:39
material-ui-pickers-jalaali-utils
import jMoment from 'moment-jalaali'
import { toPersian } from './toPersian'
export default class jalaaliUtils {
static toJMoment (date) {
return jMoment(date ? date.clone() : undefined)
}
static parse (value, format) {
return jMoment(value, format)
@smmoosavi
smmoosavi / install-google-chrome.md
Last active March 14, 2018 03:42
Ubuntu 14.04 installing google chrome

When you got this error

$ sudo dpkg -i google-chrome-stable_current_amd64.deb 
sudo: unable to resolve host bayanca05
[sudo] password for bayan-ca-05: 
Selecting previously unselected package google-chrome-stable.
(Reading database ... 174654 files and directories currently installed.)
Preparing to unpack google-chrome-stable_current_amd64.deb ...
Unpacking google-chrome-stable (43.0.2357.81-1) ...
@smmoosavi
smmoosavi / code.py
Last active December 27, 2017 11:11
graphql example
@classmethod
def mutate_and_get_payload(cls, input, context, info):
user = context.user
old_password = input.get('old_password')
new_password = input.get('new_password')
if user.has_usable_password():
if not user.check_password(old_password):
raise ResponseError(
"Invalid Password",
@smmoosavi
smmoosavi / README.md
Last active November 21, 2017 19:15
list of questions for publishing npm package

what packages we need?

eslint

  • eslint
  • eslint-config-airbnb
  • eslint-plugin-import
  • eslint-plugin-jsx-a11y
  • eslint-plugin-react

.eslintrc

@smmoosavi
smmoosavi / mailcatcher.md
Last active February 7, 2017 11:14
how to install mailcatcher

Install mailcatcher

install rvm

src

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
curl -sSL https://get.rvm.io | bash -s stable --ruby

and close and reopen your terminal.

install mailcatcher

npm run build

commented webpack.optimize.UglifyJsPlugin

build/static/app/css/styles.css

._1gwPWr77dmf4i5iRBt9FXY {
  border-color: #1abc9c !important; }
@smmoosavi
smmoosavi / olfsm.py
Last active January 3, 2016 00:49
One line finite-state machine implementation
# State machine implementation:
olfsm = lambda Q, input, init: reduce(lambda o, i: o + (o[-1] if i not in Q[o[-1]] else Q[o[-1]][i]), input, init)

Some tips for git

Rename branch

git branch -m <oldname> <newname>

source

@smmoosavi
smmoosavi / readme.md
Created September 13, 2015 18:42
Docker commands

Remove all exsited dockers

$ docker rm $(docker ps -q -f status=exited)

source