Skip to content

Instantly share code, notes, and snippets.

View sanusart's full-sized avatar

Sasha Khamkov sanusart

View GitHub Profile
@sanusart
sanusart / file.html
Last active August 29, 2015 14:17
Redirect to mobile #mobile #javascript
<script type="text/javascript">
if ( window.sessionStorage.getItem('mob') !== 'no' ) {
if ((navigator.userAgent.match(/iPhone|Android|iPod|Opera Mobi|Opera Mini|BlackBerry|Nokia|SymbianOS|Windows CE|BenQ/i))) {
window.sessionStorage.setItem('mob','no');
var url = window.location.href;
var paramPos = url.indexOf("?");
location.replace("http://domain.com/m-site/" + ( paramPos != -1 ? "?" + url.substr(paramPos + 1) : "" ));
}
}
</script>
@sanusart
sanusart / git.sh
Created March 15, 2015 21:40
Search git tree history for specific string appearance #git #grep
git grep stringToLookForInHistory $(git rev-list --all)
@sanusart
sanusart / 1-node-webkit-cheatsheet.sh
Last active August 29, 2015 14:18 — forked from LeCoupa/1-node-webkit-cheatsheet.sh
node webkit cheatsheet #nw #node-webkit #nwjs
# Node-WebKit CheatSheet
# Download: https://github.com/rogerwang/node-webkit#downloads
# Old Versions: https://github.com/rogerwang/node-webkit/wiki/Downloads-of-old-versions
# Wiki: https://github.com/rogerwang/node-webkit/wiki
# How: https://github.com/rogerwang/node-webkit/wiki/How-node.js-is-integrated-with-chromium
# 1. Run your application.
# https://github.com/rogerwang/node-webkit/wiki/How-to-run-apps
@sanusart
sanusart / preserving-history.md
Last active January 27, 2018 16:58 — forked from dannyroberts/preserving-history.md
rename whole directories while preserving the git history #git

Did you know...

...that git lets you move and rename whole directories while preserving the git history of those files?

If you run

git read-tree --prefix=$NEW_PATH -u master:$OLD_PATH
rm -rf $OLD_PATH
# ...you probably want to change some imports...
git commit -m $MESSAGE
@sanusart
sanusart / cmd.sh
Created April 15, 2015 14:51
Test mail server with telnet #mail #telnet
telnet mail.server.com 25
EHLO mail.server.com
AUTH LOGIN
<base64-encoded-username>
<base64-encoded-password>
MAIL FROM: <user@server.com>
RCPT TO: <user@server.com>
DATA
From: <user@server.com>
To: <user@server.com>
@sanusart
sanusart / index.html
Created April 15, 2015 14:55
Simple html5 template #html #template
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
<title>HTML5</title>
<meta name="description" content="">
<meta name="author" content="Sasha Khamkov">
<!-- CSS -->
@sanusart
sanusart / app.css
Created April 15, 2015 14:56
Background with base64 image #css #background
.main {
position: relative;
z-index: 1;
}
.main:before {
content: "";
position: absolute;
z-index: -1;
top: 0;
@sanusart
sanusart / script.js
Last active August 29, 2015 14:19
input[type="text"] toggle default value or empty #jquery #form #input
// Toggle default value on `input[type="text"]` and `textarea`
var el = $('input[type=text], textarea');
el.focus(function(e) {
if (e.target.value == 'name')
e.target.value = '';
});
el.blur(function(e) {
if (e.target.value == '')
e.target.value = 'name';
});
@sanusart
sanusart / main.js
Created April 15, 2015 16:31
Active link on ul > li > a #jquery #javascript
// Match href element with path and add class "active-link"
var this_url = document.location.pathname,
list_sidebar_link = $('.some-selector ul li a');
$(list_sidebar_link).each(function (i, item) {
var the_a = list_sidebar_link[i];
if (this_url === $(the_a).attr('href')) {
$(the_a).addClass('active-link');
}
});
@sanusart
sanusart / sprintf.js
Last active August 29, 2015 14:19
String format JavaScript #javascript #sprintf
// Usage: sprintf('https://sitename.com/{0}/{1}',['param0','param1'])
function sprintf(str, params) {
var out;
for (var i = 0, l = params.length; i < l; i++) {
out = str.replace(/{(\d+)}/g, function(match, i) {
return typeof params[i] != 'undefined' ? params[i] : match;
});
}
return out;