Skip to content

Instantly share code, notes, and snippets.

@jeznag
jeznag / function
Last active June 14, 2020 13:37
Code for Twilio incoming webhook zoho crm
crmAPIRequestMap = crmAPIRequest.toMap();
body = crmAPIRequestMap.get("body");
try
{
body_parts = body.toList("&");
message_body = "";
from_number = "";
message_sid = "";
to_number = "";
for each body_part in body_parts
@jeznag
jeznag / gist:2e9651442e58aff4b2cb3ba54ece89b2
Created November 4, 2019 11:00
hide distracting sites
// ==UserScript==
// @name Hide emails
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the world!
// @author You
// @match https://mail.google.com/mail/u/0/
// @match *://abc.net.au
// @match *://facebook.com
// @match *://www.facebook.com
@jeznag
jeznag / test.js
Created May 6, 2019 23:17
sun-energy-green-energy
const request = require("request-promise");
const clientID =
"REDACTED";
const clientSecret =
"REDACTED";
async function createSTC() {
const timestamp = new Date().toISOString();
const signatureString = `GD:${clientID}${timestamp}${clientSecret}`;
const crypto = require("crypto");
@jeznag
jeznag / app.html
Created January 19, 2019 05:36
Example Zoho CRM widget to allow TSV data downloads
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style>
[data-download] {
color: blue;
}
[data-download][href="#"] {
@jeznag
jeznag / submitform.tsx
Last active August 14, 2018 07:00
full submit button component
import React, { Component } from 'react';
import { Consumer as I18nConsumer } from '@App/I18nContext';
import { i18n } from 'i18next';
import { connect } from 'react-redux';
import AttemptSubmitActionCreator from '@App/RequestData/redux/action-creators/attemptSubmit';
import { IStoreState } from '@Redux/storeGenerator';
@jeznag
jeznag / test-for-mutation
Last active August 14, 2018 06:46
final-test-for-mutation
it('should trigger mutation when submit button clicked', async () => {
// NB submit button relies on the redux store having valid data
// which is why I set it here
set('reduxState', {
selectedMeters: [123],
selectedMeasurements: ['elec_power_real'],
exportParameters: {
dateRange: {
start: new Date(Date.UTC(2017, 0, 1)),
finish: new Date(Date.UTC(2018, 0, 1))
@jeznag
jeznag / submitformfixture-with-query-result
Created August 14, 2018 06:39
submitformfixture-with-query-result
class SubmitFormFixture extends Component {
public displayName = 'SubmitForm';
public render() {
return (
<Query query={getAvailableOptions}>{({ loading, error, data }) => (
<Fragment>
<span data-result={JSON.stringify({
loading,
error,
@jeznag
jeznag / submitformfixture
Created August 14, 2018 06:37
submitformfixture
class SubmitFormFixture extends Component {
public displayName = 'SubmitForm';
public render() {
return (
<Query query={getAvailableOptions}>{() => <SubmitFormComponent />}</Query>
);
}
}
@jeznag
jeznag / cache-update
Created August 14, 2018 06:34
cache updating code
const updateCache = (cache: any) => {
const { availableOptions } = cache.readQuery({ query: getAvailableOptions });
cache.writeQuery({
query: getAvailableOptions,
data: {
availableOptions: {
...availableOptions,
submitted: true
}
@jeznag
jeznag / fixture-part-1
Created August 14, 2018 06:27
fixture-part-1
export default {
reduxState: {
exportParameters: {
dateRange: {
start: new Date('2018-04-02'),
finish: new Date('2019-04-02')
}
}
},