Skip to content

Instantly share code, notes, and snippets.

View jcieslar's full-sized avatar

Jakub Cieślar jcieslar

View GitHub Profile
@jcieslar
jcieslar / thumb_service.rb
Last active July 19, 2023 22:47
Create video thumbnails - ruby
movie = FFMPEG::Movie.new(video_url)
duration = (movie.duration / 2).floor
movie.screenshot("#{thumb_url}.jpg", seek_time: duration)
@jcieslar
jcieslar / application_helper.rb
Created October 17, 2014 13:59
alert class - rails helper
def alert_class(key)
case key
when 'notice'
'notice-class foo bar'
when 'error'
'error bar'
end
enb
@jcieslar
jcieslar / event_reminder_spec.rb
Created December 3, 2014 10:57
Testing delayed mailer in rails
expect do
time_travel_to(start_date-7.days) {
EventReminder.new.perform
}
end.to change { Sidekiq::Extensions::DelayedMailer.jobs.size }.by(2)
@jcieslar
jcieslar / geocoder.rb
Created January 16, 2015 11:41
Geocoder free ip info - working provider
# config/initializers/geocoder.rb
Geocoder.configure(
:timeout => 5,
:ip_lookup => :telize
)
@jcieslar
jcieslar / form.slim
Created February 27, 2015 14:03
Simple form input 'as: integer' brake rails numericality validations
/* wrong */
= f.input :twitter_followers, as: :integer
/* correct */
= f.input :twitter_followers
@jcieslar
jcieslar / capybara_spec.rb
Created March 11, 2015 14:48
Capybara click link with target _blank
click_link 'User'
within_window(page.driver.browser.window_handles.last) do
expect(page).to have_content 'USERNAME'
end
@jcieslar
jcieslar / sonic_pi.md
Last active November 14, 2015 22:43
Sonic Pi setup for Ubuntu 14.04

Ubuntu setup for Sonic Pi

Install dependencies

sudo apt-get -y --force-yes install supercollider ruby1.9.3 libqscintilla2-l10n libqscintilla2-dev qt4-dev-tools cmake libffi-dev qt4-qmake libqt4-dev

Clone repo

git clone git@github.com:samaaron/sonic-pi.git

Server extensions

@jcieslar
jcieslar / selectize_spec.rb
Created March 19, 2015 16:33
Capybara and selectize
page.execute_script("$('.selectize-input input').val('ber')")
sleep 0.5
page.execute_script("$('.selectize-input input').keyup()")
sleep 0.5
page.execute_script("$('.full-name').mousedown()")
# https://github.com/brianreavis/selectize.js/blob/master/src/selectize.js
$scope.foo = { a: [1, 2, 3] }
console.log "foo", $scope.foo
# foo Object {a: Array[3]}a: Array[3]0: 22 1: 33 2: 44 length: 3__proto__: Array[0]__proto__: Object
console.log "foo.a", $scope.foo.a
# article_ctrl.js?body=1:23 foo.a [1, 2, 3]
angular.extend($scope.foo, { a: [22, 33, 44] })
################################################
foo = { a: [1, 2, 3] }
console.log "foo", foo
@jcieslar
jcieslar / en.yml
Created June 15, 2015 11:28
translations
en:
dashboard:
earnings:
name: Name
value: Current value