Skip to content

Instantly share code, notes, and snippets.

View starsite's full-sized avatar
🎉
SwiftFM 2.3 now available

Brian Hamm starsite

🎉
SwiftFM 2.3 now available
View GitHub Profile
import UIKit
import Kingfisher
class EventTableViewCell: UITableViewCell {
@IBOutlet weak var eventPhoto: UIImageView!
@IBOutlet weak var eventDescription: UITextView!
// constraint
var aspectConstraint: NSLayoutConstraint? {
@starsite
starsite / refreshTokenExample.swift
Last active September 25, 2018 12:02
Data API Token Refresh
// refresh token -> (token, expiry, error)
class func refreshToken(for auth: String, completion: @escaping (String, Date, String) -> Void) {
guard let path = UserDefaults.standard.string(forKey: "fm-db-path"),
let baseURL = URL(string: path) else { return }
let url = baseURL.appendingPathComponent("/sessions")
let expiry = Date(timeIntervalSinceNow: 900) // 15 minutes
var request = URLRequest(url: url)
<?
$record = $result->getRecords()[0];
$pk = $record->getField('__pk_volunteerID');
$name = $record->getField('firstName');
// new related record
$log = $fm->newAddCommand('TimeEntries');
$log->setField('__fk_volunteerID', $pk);
$log->setField('hours', $h); // value from $body using intval() and strpos($,'hour')
$_ = $log->execute();
<?
// ...
if ( FileMaker::isError($result) ) {
$response->sms("I couldn't find an artist for this cell number.");
} else {
$record = $result->getRecords()[0];
$url = $record->getField('url');
$response->sms("Roger that. Here's a link to your record:\n\n$url.");
}
// send
<?
function sendArtistURL() {
$request = $fm->newFindCommand('ArtistDetail');
$request->addFindCriterion('phoneCalc', '=='.$from);
$result = $request->execute();
// ... (cont'd)
?>
<?
function fallbackMessage() {
$response->sms("Not sure what to make of that.");
echo $response;
}
?>
<?
switch ($body) {
case 'profile':
sendArtistURL();
default:
fallbackMessage();
}
?>
<?
$from = $_REQUEST['From']; // +12225551234
$body = trim( strtolower( $_REQUEST['Body'] ));
?>
<?php
require('../Twilio/Services/Twilio.php');
require('../_fm/connect.php');
$response = new Services_Twilio_Twiml(); // for later
?>
<script src='http://your.path.to/lastfm.js'></script>
<div id='lastfm'></div>