Skip to content

Instantly share code, notes, and snippets.

View cedeber's full-sized avatar
🦀
Rustacean

Cédric Eberhardt cedeber

🦀
Rustacean
View GitHub Profile
@cedeber
cedeber / navbar.html
Last active April 27, 2016 06:38
SVG Navigation Bar - Browser-like
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
.navbar {
overflow: hidden;
border: solid 1px #dbdbdb;
border-radius: 5px 5px 0 0;
line-height: 0;
@cedeber
cedeber / selenium_async.js
Last active April 27, 2016 06:37
Selenium Async
var should = require( "should" ),
webdriver = require( "selenium-webdriver" ),
test = require( "selenium-webdriver/testing" );
test.describe( "MouseEvent", function () {
var driver, windo;
this.timeout( 5000 );
test.before( function () {
@cedeber
cedeber / 1px.html
Created May 6, 2016 08:42 — forked from jaynzr/1px.html
1px transparent pixel
<img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==">
@cedeber
cedeber / ckeditor.config.rich-text.js
Created May 1, 2017 22:00
CKEditor Configurations
/**
* External plugins added through the server-side FieldFactory are automatically registered.
* Other external plugins (e.g. client-only) may still be registered here (and subsequently added via config.extraPlugins).
*
* e.g. if your plugin resides in src/main/resources/VAADIN/js:
* CKEDITOR.plugins.addExternal("abbr", CKEDITOR.vaadinDirUrl + "js/abbr/");
*/
CKEDITOR.editorConfig = function ( config ) {
// MIRROR info.magnolia.ui.form.field.definition.RichTextFieldDefinition
@cedeber
cedeber / image-hero.js
Created June 27, 2017 13:17
Image as Hero
(function() {
var image = document.getElementById("image-${content.@id}");
var imageTop = (function() {
var element = image, top = element.offsetTop;
while ((element = element.offsetParent) !== null && element !== document.body) { top += element.offsetTop; }
return top;
}());
image.style.height = (window.innerHeight - imageTop) + "px";
}());
@cedeber
cedeber / ffmpeg.sh
Last active January 10, 2019 18:17
FFmpeg useful commands
# remove sound
ffmpeg -i input.mp4 -c copy -an output.mp4
# export first frame
ffmpeg -i input.mp4 -ss 0 -vframes 1 poster.png
# Resize
ffmpeg -i input.mp4 -filter:v scale=-1:720 -c:a copy output.mp4
ffmpeg -i input.mp4 -filter:v scale=-1:720 -c:a copy output.mp4
@cedeber
cedeber / locale.js
Created February 21, 2018 15:34
Set locale from browser
const def = ["en", "fr", "de"];
let locale = navigator.language.indexOf("-") === -1
? navigator.language
: navigator.language.split("-")[0];
locale = def.indexOf(locale) === -1 ? def[0] : locale;
document.documentElement.lang = locale;
@cedeber
cedeber / freemarker_implicit.ftl
Created February 22, 2018 10:08 — forked from jdiepeveen/freemarker_implicit.ftl
Magnolia CMS Freemarker implicit.
[#ftl]
[#-- @implicitly included --]
[#-- @ftlvariable name="content" type="info.magnolia.jcr.util.ContentMap" --]
[#-- @ftlvariable name="ctx" type="info.magnolia.context.MgnlContext" --]
[#-- @ftlvariable name="def" type="info.magnolia.rendering.template.configured.ConfiguredTemplateDefinition" --]
[#-- @ftlvariable name="state" type="info.magnolia.cms.core.AggregationState" --]
[#-- @ftlvariable name="i18n" type="info.magnolia.freemarker.MessagesWrapper" --]
[#-- @ftlvariable name="i18nAuthoring" type="info.magnolia.freemarker.MessagesWrapper" --]
[#-- @ftlvariable name="cms" type="info.magnolia.templating.freemarker.Directives" --]
@cedeber
cedeber / .editorconfig
Created March 16, 2018 08:27
Projects Configurations files
# Cross-editor coding style settings.
# See http://editorconfig.org/ for details.
root = true
[*]
charset = utf-8
indent_style = space
indent_size = 4
end_of_line = lf
@cedeber
cedeber / lol-browser.js
Last active April 24, 2018 09:30
Detects IE/Edge < 17
const IEdgeMatches = /(Edge|Trident)\/(\d.)/i.exec(navigator.userAgent);
export default IEdgeMatches && parseInt(IEdgeMatches[2], 10) < 17;