Skip to content

Instantly share code, notes, and snippets.

View rodyhaddad's full-sized avatar

Rodric Haddad rodyhaddad

  • Coddict
  • Lebanon
View GitHub Profile
@rodyhaddad
rodyhaddad / LICENSE
Created May 22, 2020 23:10
This license applies to all public gists published on https://gist.github.com/rodyhaddad
MIT License
Copyright (c) 2020 Rodric Haddad
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
@rodyhaddad
rodyhaddad / formify.js
Last active May 5, 2017 14:50
Library to add CSS classes to form inputs, describing their different states
window.formify = function formify(form, options) {
if (!(form instanceof HTMLFormElement)) {
throw new Error('Tried to Formify a non-form element: ' + form);
}
var opt = {
classPrefix: options.classPrefix || 'fm'
};
var validityKeys = [
function test() {
let a = 4;
if (true) {
const x = 1;
var y = 2;
let a = 3;
a = x + y;
}
function test() {
if (true) {
let x = 1;
}
try{
log(x);
} catch(e){console.log(e)}
if (typeof x !== 'undefined') console.log(x);
describe('nulls in expressions', function() {
var props = ['b', 'c', 'd'];
var contexts = [
{ 'b': null },
{ 'b': { 'c': null } },
{ 'b': { 'c': { 'd': null } } }
];
forEach(props, function (prop, index) {
var expr = props.slice(0, index+1).join('.');
forEach(contexts, function (a, expectIndex) {
@rodyhaddad
rodyhaddad / ngBasicInterval
Created August 9, 2013 00:17
Angular Basic setInterval
app.value("ngBasicInterval", function (fn, delay) {
(function repeat() {
$timeout(fn, delay).then(repeat);
}());
});
@rodyhaddad
rodyhaddad / timeago.filter.js
Created June 30, 2013 21:04
timeago filter for angularjs
.filter("timeago", function () {
//time: the time
//local: compared to what time? default: now
//raw: wheter you want in a format of "5 minutes ago", or "5 minutes"
return function (time, local, raw) {
if (!time) return "never";
if (!local) {
(local = Date.now())
}