Skip to content

Instantly share code, notes, and snippets.

View tanyagupta's full-sized avatar

tanyagupta tanyagupta

  • Washington DC
View GitHub Profile
@tanyagupta
tanyagupta / smarter_noob_way_json_data_efficient.js
Last active November 4, 2016 17:19
Accessing heterogenous JSON data (smarter way) - Part 2
//Smarter way to access the data
function noob_smart_way(){
var cars=get_data_set("basic");
var format_string = "%s %s %s %s %s";
for (var i in cars){
Logger.log(format_string, cars[i]["model"] || "",cars[i]["trim"] || "",cars[i]["year"] || "",
cars[i]["wheel"] && cars[i]["wheel"]["wheel_size"] || "",
cars[i]["wheel"] && cars[i]["wheel"]["wheel_metal"] || "")
@tanyagupta
tanyagupta / or_example_json_data.js
Last active November 4, 2016 17:17
Accessing heterogenous JSON data (using or) - Part 3
function test_or(){
var cars=[
{make: "Jeep",model: "Cherokee",trim:"Sport 4dr Front-wheel Drive",year:"2016",
wheel:{wheel_size:"17 x 7.5",wheel_metal:"Aluminum"}},
{make: "Jeep",model: "Wrangler",trim:"Sahara 2dr 4x4",year: "2015"}
]
for (var i in basic){
Logger.log(cars[i]["wheel"] || "") // Logger.log() is Google App Script's console.log
@tanyagupta
tanyagupta / and_example_json_data.js
Last active October 28, 2017 11:23
Accessing heterogenous JSON data (using &&) - Part 4
function test_and(){
var cars=[
{make: "Jeep",model: "Cherokee",trim:"Sport 4dr Front-wheel Drive",year:"2016",wheel:{wheel_size:"17 x 7.5",wheel_metal:"Aluminum"}},
{make: "Jeep",model: "Wrangler",trim:"Sahara 2dr 4x4",year: "2015"}
]
for (var i in cars){
if (cars[i]["wheel"] && cars[i]["wheel"]["wheel_size"]){
@tanyagupta
tanyagupta / tester_eff_ineff_noob.js
Last active November 4, 2016 17:21
Tester function for efficient and inefficient function
function get_data_set(which){
var all_data_set={
basic:[
{make: "Jeep",model: "Cherokee",trim:"Sport 4dr Front-wheel Drive",year:"2016",wheel:{wheel_size:"17 x 7.5",
wheel_metal:"Aluminum"}},
{make: "Jeep",model: "Compass",trim:"Latitude 4dr Front-wheel Drive",year:"2014",
wheel:{wheel_metal:"Steel"}},
{make: "Jeep",model: "Patriot",trim:"Sport 4dr 4x4"},
{make: "Jeep",model: "Wrangler",trim:"Sahara 2dr 4x4",year: "2015"}
]
@tanyagupta
tanyagupta / hello_world_c9_express.js
Last active December 4, 2016 20:53
Node.js web app using Express in Cloud9
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send("<h1>hello world</h1>");
});
app.listen(8080, function () {
console.log('Example app listening on port 8080!');
//call this app from https://<workspace name>-<user name>.c9users.io
@tanyagupta
tanyagupta / hello_world_c9_node.js
Created December 3, 2016 20:40
Simple Hello Word using http in node
var http = require("http");
var server = http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/html"});
response.write("<h1>Hello World</h1>");
response.end();
});
server.listen(8080);
console.log("Server is listening");
@tanyagupta
tanyagupta / hello_world_c9_express_with_comments.js
Last active April 1, 2022 16:00
Node.js web app using Express in Cloud9 - heavily commented
// Standard set up for the express code to work with your code
var express = require('express');
var app = express();
/*
Routes a get request, and in this simple case - to the server's root. It sends a
call back to handle the request. Not much will happen here, the call back is hardcoded
to send a hello world string. But in theory you can do something with the req variable
in the "/" directory, create a dynamic html and send that back
@tanyagupta
tanyagupta / UI.html
Created December 30, 2016 00:54
Using D3 in GAS
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js" charset="utf-8"></script>
</head>
<body>
@tanyagupta
tanyagupta / fetch.js
Last active January 2, 2017 19:27
UrlFetchApp script with Zendesk (multiple pages)
function zd_get (cmd) {
var url = ZD_BASE+cmd;
var results =[];
var service = getService();
if (service.hasAccess()) {
do {
try {
var response = UrlFetchApp.fetch(url, {headers: {'Authorization': 'Bearer ' + service.getAccessToken(),}});
}
@tanyagupta
tanyagupta / drive_fetch.js
Last active January 2, 2017 19:26
UrlFetchApp with Drive (multiple pages)
var all_results ={};
var response = UrlFetchApp.fetch("https://www.googleapis.com/drive/v3/files?q="+mime_type,params);
var result=JSON.parse(response.getContentText()) ;
for (var i in result['files']) {
all_results[result['files'][i]['id']] = result['files'][i]['name'];
}
while (result['nextPageToken']) {
var pageToken = encodeURIComponent(result['nextPageToken']);