Skip to content

Instantly share code, notes, and snippets.

View larchanka's full-sized avatar
👋
Hi there

Mikhail Larchanka larchanka

👋
Hi there
View GitHub Profile
@larchanka
larchanka / stringToColor.js
Last active February 23, 2021 10:22
Function converts string to HEX-color
const stringToColor = (str) => {
let hash = 0;
let color = '#';
let defaultColor = '#333333';
let i;
let value;
let strLength;
if(!str) {
return defaultColor;
@larchanka
larchanka / randomIntFromInterval.js
Last active August 23, 2020 10:38
Random Interval
function randomIntFromInterval(min, max) { // min and max included
return Math.floor(Math.random() * (max - min + 1) + min);
}
@larchanka
larchanka / uniqid.js
Last active October 27, 2019 08:51
JavaScript function that copies functionality of PHP's 'uniqid'.
(function () {
this.uniqid = function (pr, en) {
var pr = pr || '', en = en || false, result;
this.seed = function (s, w) {
s = parseInt(s, 10).toString(16);
return w < s.length ? s.slice(s.length - w) : (w > s.length) ? new Array(1 + (w - s.length)).join('0') + s : s;
};
result = pr + this.seed(parseInt(new Date().getTime() / 1000, 10), 8) + this.seed(Math.floor(Math.random() * 0x75bcd15) + 1, 5);
@larchanka
larchanka / getFromLocalStorage.js
Created June 18, 2019 14:29
Function gets data from localstorage
export default (itemName, defaultValue, postFn = (str) => str) => {
const item = localStorage.getItem(itemName);
if (item) {
return postFn(item);
}
return defaultValue;
};
@larchanka
larchanka / dirToArray.php
Last active May 6, 2019 11:24
Function to scan directory and return array of files
<?php
function dirToArray($dir) {
$ignoredPath = array(
".",
"..",
".htaccess"
);
$result = array();
@larchanka
larchanka / hashcode.js
Last active January 12, 2018 14:50
JavaScript: Java String.hashCode() implementation. Source: http://goo.gl/Hyt1ku
String.prototype.hashCode = function() {
var hash = 0;
try {
if (this.length == 0) return hash;
for (i = 0; i < this.length; i++) {
char = this.charCodeAt(i);
hash = ((hash << 5) - hash) + char;
@larchanka
larchanka / creditCardTypeDetector.js
Last active September 15, 2017 08:26
Detect type of the payment card
export default (cardNumber) => {
// MasterCard
if (/^5[1-5]/.test(cardNumber)) {
return 'mastercard';
}
// Visa
if (/^4/.test(cardNumber)) {
return 'visa';
}
@larchanka
larchanka / contentHashGenerator.js
Created June 13, 2017 13:03
contentHashGenerator generates a short number hash from the string
const contentHashGenerator = (str = '') => {
let hash = 0;
let i;
let chr;
if (str.length === 0) return hash;
for (i = 0; i < str.length; i++) {
chr = str.charCodeAt(i);
// eslint-disable-next-line
hash = ((hash << 5) - hash) + chr;
// eslint-disable-next-line
// Detect if AirPlay is available
// Mac OS Safari 9+ only
if (window.WebKitPlaybackTargetAvailabilityEvent) {
video.addEventListener('webkitplaybacktargetavailabilitychanged', function(event) {
switch (event.availability) {
case "available":
airPlay.style.display = 'block';
break;
default:
@larchanka
larchanka / test.js
Created October 14, 2016 07:27
Test
[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]][([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+([][[]]+[])[+!+[]]+(![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[+!+[]]+([][[]]+[])[+[]]+([][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]])[+!+[]+[+[]]]+(!![]+[])[+!+[]]]((![]+[])[+!+[]]+(![]+[])[!+[]+!+[]]+(!![]+[])[!+[]+!+[]+!+[]]+(!![]+[])[+!+[]]+(!![]+[])[+[]]+(![]+[][(![]+[])[+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]+(!![]+[])[+[]]+(!![]+[])[!+[]+!+