Skip to content

Instantly share code, notes, and snippets.

View obahareth's full-sized avatar
🧉
In the Zone

Omar Bahareth obahareth

🧉
In the Zone
View GitHub Profile
@obahareth
obahareth / hyperpayPayments.js
Created December 19, 2019 16:39 — forked from saikatharryc/hyperpayPayments.js
Hyperpay integration
const saveCardToHyperPay = data => {
var path = "/v1/registrations";
let cardBrand = Payment.fns.cardType(data.number);
if (cardBrand == "visa" || cardBrand == "master" || cardBrand == "mada") {
var cardData = querystring.stringify({
"authentication.userId": config.HYPERPAY.UserId,
"authentication.password": config.HYPERPAY.Password,
"authentication.entityId": config.HYPERPAY.EntityId,
paymentBrand: cardBrand.toUpperCase(),
"card.number": data.number || "",
@obahareth
obahareth / night.css
Last active November 12, 2019 17:53
Typora Night Theme with Pragmata Pro and Pragmata Pro Mono
@import "night/mermaid.dark.css";
@import "night/codeblock.dark.css";
@import "night/sourcemode.dark.css";
:root {
--bg-color: #363B40;
--side-bar-bg-color: #2E3033;
--text-color: #b8bfc6;
--select-text-bg-color:#4a89dc;
@obahareth
obahareth / markdown-here.css
Created November 12, 2019 17:51
Markdown Here Primary CSS Styling (I only changed it to use the PragmataPro Font)
/*
* NOTE:
* - The use of browser-specific styles (-moz-, -webkit-) should be avoided.
* If used, they may not render correctly for people reading the email in
* a different browser than the one from which the email was sent.
* - The use of state-dependent styles (like a:hover) don't work because they
* don't match at the time the styles are made explicit. (In email, styles
* must be explicitly applied to all elements -- stylesheets get stripped.)
*/
@obahareth
obahareth / nord.css
Created November 12, 2019 17:50
Nord highlight.js CSS theme
/*
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
title Nord highlight.js +
project nord-highlightjs +
version 0.1.0 +
repository https://github.com/arcticicestudio/nord-highlightjs +
author Arctic Ice Studio +
email development@arcticicestudio.com +
copyright Copyright (C) 2017 +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
@obahareth
obahareth / config.yml
Created May 13, 2019 18:38
My Fusuma config
swipe:
2:
left:
command: 'xdotool key alt+Left'
right:
command: 'xdotool key alt+Right'
3:
left:
command: 'xdotool key alt+Left'
right:
@obahareth
obahareth / mac-keyboard-shortcuts-for-windows.ahk
Created May 11, 2019 15:03
I recently begun migrating from macOS to Windows and needed to get the same keyboard shortcuts my muscle memory is used to working on Windows. This is an amalgamation of many AutoHotkey scripts I found online.
;-----------------------------------------
; Make Windows keyboard behave like Mac
;=========================================
; --------------------------------------------------------------
; NOTES
; --------------------------------------------------------------
; ! = ALT
; ^ = CTRL
; + = SHIFT
@obahareth
obahareth / dark.md
Created December 25, 2018 10:55 — forked from a7madgamal/dark.md
Dark mode for Slack on MacOS
  1. Close slack
  2. Open this file /Applications/Slack.app/Contents/Resources/app.asar.unpacked/src/static/ssb-interop.js
  3. Append this to it
document.addEventListener('DOMContentLoaded', function() {
 $.ajax({
   url: 'https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css',
   success: function(css) {
 $("").appendTo('head').html(css);
{
# The first 2 films, after a given cursor value
allFilms(first: 2, after: "YXJyYXljb25uZWN0aW9uOjA=") {
# An edge is an entry in a "list"
edges {
# Get a cursor value for each "edge"
# Used for pagination, in combination with filters like
# before and after.

Keybase proof

I hereby claim:

  • I am obahareth on github.
  • I am obahareth (https://keybase.io/obahareth) on keybase.
  • I have a public key whose fingerprint is CAB8 5952 5444 8B43 F4F2 0615 BFFD 1B8F 549C C61D

To claim this, I am signing this object:

@obahareth
obahareth / old_algolia_delete_by_query.rb
Created August 25, 2017 15:51
Old version of Algolia's Ruby Client delete_by_query method
#
# Delete all objects matching a query
#
# @param query the query string
# @param params the optional query parameters
#
def delete_by_query(query, params = nil)
raise ArgumentError.new('query cannot be nil, use the `clear` method to wipe the entire index') if query.nil? && params.nil?
params ||= {}
params.delete(:hitsPerPage)