Skip to content

Instantly share code, notes, and snippets.

View umidjons's full-sized avatar
🏠
Working from home

Umid umidjons

🏠
Working from home
View GitHub Profile
@umidjons
umidjons / Dockerfile
Last active August 8, 2017 13:24
Dockerfile-s to test node.js and npm packages discovery and automation
FROM ubuntu:16.04
ENV APT_OPTS="-o Acquire::http::Timeout=3 -o Acquire::Retries=100"
RUN apt-get update $APT_OPTS \
&& apt-get install $APT_OPTS -y curl openssh-server python \
&& echo "root:root@123" | chpasswd \
&& sed -ri -e 's|(^PermitRootLogin )(.*)|\1yes|g' /etc/ssh/sshd_config \
&& mkdir -p /var/run/sshd \
&& curl -sL https://deb.nodesource.com/setup_6.x | bash - \
@umidjons
umidjons / Dockerfile
Last active July 27, 2017 07:23
Docker container to test moodle existance with ansible
FROM ubuntu:14.04
SHELL ["/bin/bash", "-c"]
# Installing openssh-server, apache, php and moodle
RUN set -x \
&& apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install -q -y --fix-missing apache2 php5 wget openssh-server \
&& cd /tmp \
&& wget --continue --tries=100 --waitretry=1 --timeout=10 -O moodle-latest-32.tgz https://download.moodle.org/stable32/moodle-latest-32.tgz \
@umidjons
umidjons / aes-256-cbc-nodejs-crypto.md
Last active March 13, 2022 07:12
AES-256-CBC example in Node.js using crypto module

AES-256-CBC example in Node.js using crypto module

'use strict';
const crypto = require('crypto');

// get password's md5 hash
let password = 'test';
let password_hash = crypto.createHash('md5').update(password, 'utf-8').digest('hex').toUpperCase();
console.log('key=', password_hash); // 098F6BCD4621D373CADE4E832627B4F6
@umidjons
umidjons / create-sha1-hash.md
Created January 18, 2017 11:50
Create sha1 hash

Create SHA1 hash

'use strict';

const crypto = require('crypto');
let hash = crypto.createHash('sha1').update('some data to hash').digest('hex');

console.log('hash:', hash);
@umidjons
umidjons / installing-node-oracledb-package-on-ubuntu.md
Created December 27, 2016 08:28
Installing node-oracledb package on Ubuntu
@umidjons
umidjons / unit-testing-model-using-dbunit-extension.md
Created December 11, 2016 08:01
Unit testing model using DBUnit PHPUnit extension

Unit testing model using DBUnit PHPUnit extension

I assume, that you already have phpunit installed and added into PATH. Create guestbook database in mysql. Create guestbook table in that database.

Create model to test

File src\Guestbook.php

<?php
@umidjons
umidjons / web-page-parse-domdocument-php.md
Last active October 25, 2016 17:45
Web page parser using DOMDocument class

Web page parser using DOMDocument class

Source from the book PHP 7 Programming Cookbook by Doug Bierer with some improvements.

File Application/Web/Parser.php:

<?php
namespace Application\Web;

use \DOMDocument, \DOMNodeList, \DOMElement, \DOMAttr;
@umidjons
umidjons / class-autoloading-php.md
Last active March 14, 2017 23:00
Class autoloading in PHP

Class Autoloading

File Application/Autoload/Loader.php:

<?php
namespace Application\Autoload;

class Loader
{
    const UNABLE_TO_LOAD = 'Unable to load';
@umidjons
umidjons / floating-label-placeholder-on-input-focus.md
Created October 21, 2016 11:03
Floating label (placeholder) on input focus

Floating label (placeholder) on input focus

Working fiddle

Sample code:

<style>
.wrapper { position: relative; }
@umidjons
umidjons / catch-duplicate-error-key-index-mongodb.md
Created October 18, 2016 12:57
Catch duplicate error (E11000) key index in MongoDB

Catch duplicate error (E11000) key index in MongoDB

import * as RPC from 'json-rpc-core';
import {utils, validate} from './utils';

@RPC.module()
export default class Users {
	@RPC.params({
		email: {type: String, coerce: utils.trim, validate: validate.isEmail},