Skip to content

Instantly share code, notes, and snippets.

View bettysteger's full-sized avatar
🏠
Working from home

Betty Steger bettysteger

🏠
Working from home
View GitHub Profile
@bettysteger
bettysteger / editorjs-embed.js
Last active February 8, 2024 15:35
Editorjs: Overwrite Embed Block Tool to show an input field where you can paste the URL
// Overwrite Embed Block Tool
import EmbedTool from '@editorjs/embed';
export default class Embed extends EmbedTool {
static get toolbox() {
return {
title: 'YouTube',
icon: '<i class="fab fa-youtube"></i>'
};
}
@bettysteger
bettysteger / init-editorjs.js
Last active April 7, 2024 08:13
Editor.js [Inline Tool] Mentions
import mentionsService from 'mentionsService.js'
import InlineMention from 'inlineMention.js'
/**
* this is just a code snippet on how to use the Mentions Service and Inline Tool
*/
const editor = new EditorJS({
holder: 'editorjs',
inlineToolbar: ['bold', 'italic', 'link', 'inlineMention'],
tools: {
@bettysteger
bettysteger / Editorjs.vue
Last active April 25, 2024 06:00
Vue 3 SFC for Editor.js using v-model with own custom vue component
<template>
<div class="editorjs" ref="htmlelement"></div>
</template>
<script setup>
import EditorJS from '@editorjs/editorjs';
import EmbedTool from '@editorjs/embed';
import ListTool from '@editorjs/list';
import ImageTool from '@editorjs/image';
import VideoTool from './editorjs/video.js';
import { onMounted, onUnmounted, ref, watch } from 'vue';
@bettysteger
bettysteger / fusionauth.rb
Last active August 25, 2022 18:28
FusionAuth Omniauth Strategy
# lib/strategies/fusionauth.rb
require 'omniauth-oauth2'
module OmniAuth
module Strategies
class Fusionauth < OmniAuth::Strategies::OAuth2
# Give your strategy a name.
option :name, "fusionauth"
# This is where you pass the options you would pass when
@bettysteger
bettysteger / sessions_controller.rb
Last active September 27, 2023 20:28
devise-two-factor with devise_token_auth (added line 22-33)
# Need to overwrite controller to make a devise-two-factor work with devise_token_auth
# @see https://github.com/lynndylanhurley/devise_token_auth/blob/master/app/controllers/devise_token_auth/sessions_controller.rb
class SessionsController < DeviseTokenAuth::SessionsController
def create
# Check
field = (resource_params.keys.map(&:to_sym) & resource_class.authentication_keys).first
@resource = nil
if field
@bettysteger
bettysteger / index.js
Last active October 4, 2018 08:34
Add mailchimp subscriber on Firebase user signup (firebase function)
const functions = require('firebase-functions');
const Mailchimp = require('mailchimp-api-v3');
// Listens for new firebase signups
exports.addMailchimpSubscriber = functions.auth.user().onCreate((user) => {
const mailchimp = new Mailchimp('{API-KEY}');
mailchimp.post('/lists/{listID}/members', {
@bettysteger
bettysteger / bitbucket-pipelines.yml
Created July 5, 2018 10:19
Bitbucket Pipeline config to deploy Angular app to Amazon AWS S3 Bucket
image: node:8.7.0
pipelines:
default:
- step:
caches:
- node
script:
- npm install
- npm install yarn grunt -g
@bettysteger
bettysteger / alloyEditor.js
Last active March 21, 2018 09:24
Simple angular wrapper for alloy editor (Angular 1.x component)
'use strict';
/**
* Alloy editor component
*/
angular.module('myApp').component('alloyEditor', {
template: '<div id="alloyeditor"></div>',
require: {
ngModel: 'ngModel'
},
@bettysteger
bettysteger / app.component.ts
Last active October 20, 2016 08:20
ng-xi18n: Extracts texts and creates a XLIFF file in Angular 2, ready for translation
import { Component } from '@angular/core';
@Component({
selector: 'my-app',
template: `
<h1 i18n>Hello world</h1>
<p i18n="example description">This is an {{details}} paragraph</p>
<p>should not be translated</p>
<p i18n>I ❤ LingoHub</p>
`
})
/**
* Show preview of cropped image
*/
uploader.onAfterAddingFile = function(item) {
$scope.cropped = {image: ''};
var reader = new FileReader();
reader.onload = function(event) {
$scope.$apply(function(){
$scope.cropped.image = event.target.result;
});