Skip to content

Instantly share code, notes, and snippets.

View vukanac's full-sized avatar
🎯
Focusing

Vladimir Vukanac vukanac

🎯
Focusing
View GitHub Profile
it('should refuse partial submissions', function(done) {
var browser = this.browser;
browser.fill('first_name', 'John');
browser.pressButton('Send').then(function() {
assert.ok(browser.success);
assert.equal(browser.text('h1'), 'Contact');
assert.equal(browser.text('div.alert'), 'Please fill in all the fields');
}).then(done, done);
});
@vukanac
vukanac / install-node8-mac-osx.md
Last active August 31, 2018 17:28
How to install node8 on mac osx 2017-08-20.

How to install node8 on mac osx

At an absolute minimum, you need to go into the home directories (the ones that start with ~/) and make sure you are okay with deleting the contents of those directories. If you are unsure if this will delete anything important, you should stop now and find another alternative for re-installing Node.js, because this approach is pretty destructive.

@vukanac
vukanac / osx_bootstrap.sh
Created March 26, 2019 08:11 — forked from codeinthehole/osx_bootstrap.sh
Script to install stuff I want on a new OSX machine
#!/usr/bin/env bash
#
# Bootstrap script for setting up a new OSX machine
#
# This should be idempotent so it can be run multiple times.
#
# Some apps don't have a cask and so still need to be installed by hand. These
# include:
#
# - Twitter (app store)
@vukanac
vukanac / mfa-login.py
Created March 28, 2020 12:56
AWS Command Line MFA Login
#!/usr/bin/env python3
import dateutil.parser, dateutil.tz, datetime, json, os, sys, boto3, stat
from subprocess import Popen, PIPE
# Get the profile, first argument on the command line
if (len(sys.argv) < 2):
raise Exception('Profile name not specified on command line')
profile = sys.argv[1]
@vukanac
vukanac / authorize.ex
Created April 16, 2020 12:10 — forked from jeremytregunna/authorize.ex
After refactoring...
defmodule Api.Authorize do
alias Account.Models.User
alias Tracker.OrganizationMembers, as: OM
def board?(board_id, %User{} = user, available_perms, required_perms) do
with(
{:ok, board} <- Tracker.Board.find(board_id),
true <- OM.user_in_organization?(user.id, board.organization_id)
) do
required_perms == common_permissions(required_perms, available_perms)
@vukanac
vukanac / add_new_admin
Last active June 15, 2020 11:21 — forked from tridungpham/new_gist_file.sql
Create new admin user in Magento 1.9
export MAGE_FIRST_NAME="Peter"
export MAGE_LAST_NAME="Pan"
export MAGE_USERNAME="peter.pan"
export MAGE_PASS="topsecret1234"
make query QUERY="INSERT INTO admin_user SELECT NULL user_id, '$MAGE_FIRST_NAME' firstname, '$MAGE_LAST_NAME' lastname, '$MAGE_USERNAME@example.com' email, '$MAGE_USERNAME' username, MD5('$MAGE_PASS') password, NOW() created, NULL modified, NULL logdate, 0 lognum, 0 reload_acl_flag, 1 is_active, NULL extra, NULL rp_token, NOW() rp_token_created_at;"
make query QUERY="INSERT INTO admin_role SELECT NULL role_id, (SELECT role_id FROM admin_role WHERE role_name = 'Administrators') parent_id, 2 tree_level, 0 sort_order, 'U' role_type, (SELECT user_id FROM admin_user WHERE username = '$MAGE_USERNAME') user_id, '$MAGE_USERNAME' role_name;"
@vukanac
vukanac / audi_mmi_mib2_2016_2017_ffmpeg_video_convert.sh
Last active August 11, 2021 20:42
ffmpeg shell command to convert all videos from my dir to acceptable Audi MMI format/size
cd $HOME/my_funny_video
for i in *.mp4;
do name=`echo "$i" | cut -d'.' -f1`
echo "$name"
ffmpeg -hide_banner \
-i "$i" \
-r 25 \
-vf scale=w=720:h=404:force_original_aspect_ratio=decrease:force_divisible_by=2 ease \
-c:v libx264 \
@vukanac
vukanac / xslx_to_csv.js
Created July 26, 2017 08:32
Read Excel file and save every worksheet as CSV file.
var filename = `${__dirname}/../server/data/sample.xlsx`;
// Read from a file give path to Excel/xlsx file.
var workbook = new Excel.Workbook();
workbook.xlsx
.readFile(filename)
.then(function() {
console.log('Loaded!');
// Write to a file.
// use workbook