mirror of
https://github.com/ThisIsBenny/iOS-Widgets.git
synced 2025-04-19 23:37:41 +00:00
Delete Where did I park my car.js
This commit is contained in:
parent
d8c97812c1
commit
e135a3cb17
1 changed files with 0 additions and 139 deletions
|
@ -1,139 +0,0 @@
|
||||||
// Variables used by Scriptable.
|
|
||||||
// These must be at the very top of the file. Do not edit.
|
|
||||||
// icon-color: deep-green; icon-glyph: car;
|
|
||||||
// Version 1.0.0
|
|
||||||
|
|
||||||
/*
|
|
||||||
Notice: You need a free API Key from https://developer.mapquest.com for this Widget
|
|
||||||
Please add the API Key to your Widget via widget parameter.
|
|
||||||
*/
|
|
||||||
const zoomLevel = 17
|
|
||||||
let type,iconColor;
|
|
||||||
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
if (Device.isUsingDarkAppearance()) {
|
|
||||||
type = 'dark'
|
|
||||||
iconColorPosition = 'CB4335'
|
|
||||||
iconColorUpdate = 'EDEDED'
|
|
||||||
} else {
|
|
||||||
type = 'light'
|
|
||||||
iconColorPosition = '222222'
|
|
||||||
iconColorUpdate = '222222'
|
|
||||||
}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
let widgetInputRAW = args.widgetParameter;
|
|
||||||
let widgetInput = null;
|
|
||||||
|
|
||||||
if (widgetInputRAW !== null) {
|
|
||||||
widgetInput = widgetInputRAW.toString().split(';')
|
|
||||||
} else {
|
|
||||||
throw new Error('No API Key! Please add a API-Key from "developer.mapquest.com" to the widget parameter')
|
|
||||||
}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
let fm = FileManager.local()
|
|
||||||
let paths = {
|
|
||||||
'location': fm.joinPath(fm.documentsDirectory(), 'widget-car-location'),
|
|
||||||
'small': fm.joinPath(fm.documentsDirectory(), 'widget-car-location-image-small'),
|
|
||||||
'medium': fm.joinPath(fm.documentsDirectory(), 'widget-car-location-image-medium'),
|
|
||||||
'large': fm.joinPath(fm.documentsDirectory(), 'widget-car-location-image-large')
|
|
||||||
}
|
|
||||||
let locactionInformationExists = fm.fileExists(paths['location'])
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
async function updateLocationImage (location, size) {
|
|
||||||
let sizeQuery
|
|
||||||
switch (size) {
|
|
||||||
case 'small':
|
|
||||||
sizeQuery = '200,200@2x';
|
|
||||||
break;
|
|
||||||
case 'medium':
|
|
||||||
sizeQuery = '400,200@2x';
|
|
||||||
break;
|
|
||||||
case 'large':
|
|
||||||
sizeQuery = '400,400@2x';
|
|
||||||
break;
|
|
||||||
default: throw new Error('Not supported Size!')
|
|
||||||
}
|
|
||||||
|
|
||||||
let url = `https://www.mapquestapi.com/staticmap/v5/map?key=${widgetInput.trim()}&locations=${location.latitude},${location.longitude}&zoom=${zoomLevel}&format=png&size=${sizeQuery}&type=${type}&defaultMarker=marker-${iconColorPosition}`
|
|
||||||
|
|
||||||
let req = new Request(url)
|
|
||||||
let img = await req.loadImage()
|
|
||||||
|
|
||||||
fm.writeImage(paths[size], img)
|
|
||||||
}
|
|
||||||
|
|
||||||
async function updateLocation() {
|
|
||||||
let l = await Location.current()
|
|
||||||
|
|
||||||
await updateLocationImage(l, 'small')
|
|
||||||
await updateLocationImage(l, 'medium')
|
|
||||||
await updateLocationImage(l, 'large')
|
|
||||||
|
|
||||||
fm.writeString(paths['location'], `${l.latitude};${l.longitude}`)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
|
||||||
|
|
||||||
// Create Widget
|
|
||||||
let widget = new ListWidget();
|
|
||||||
|
|
||||||
widget.setPadding(10, 10, 10, 10)
|
|
||||||
|
|
||||||
// Taping on small widget isn't working due to iOS 14 limitation
|
|
||||||
if (config.widgetFamily !== 'small') {
|
|
||||||
let stack = widget.addStack()
|
|
||||||
stack.layoutHorizontally()
|
|
||||||
stack.addSpacer()
|
|
||||||
let iconStack = stack.addStack()
|
|
||||||
iconStack.layoutVertically()
|
|
||||||
|
|
||||||
let updateImage = iconStack.addImage(SFSymbol.named('arrow.triangle.2.circlepath').image)
|
|
||||||
updateImage.imageSize = new Size(25,25)
|
|
||||||
updateImage.tintColor = new Color(iconColorUpdate)
|
|
||||||
updateImage.url = URLScheme.forRunningScript() + '&option=updateLocation'
|
|
||||||
|
|
||||||
iconStack.addSpacer(10)
|
|
||||||
|
|
||||||
let navigationImage = iconStack.addImage(SFSymbol.named('arrow.triangle.turn.up.right.diamond').image)
|
|
||||||
navigationImage.imageSize = new Size(25,25)
|
|
||||||
navigationImage.tintColor = new Color(iconColorUpdate)
|
|
||||||
let location = fm.readString(paths['location']).split(';')
|
|
||||||
|
|
||||||
if ((widgetInput[1] || '').trim().toLocaleLowerCase() == 'google') {
|
|
||||||
navigationImage.url = `comgooglemaps://?daddr=${location[0]},${location[1]}&travelMode=walking`
|
|
||||||
} else {
|
|
||||||
navigationImage.url = `http://maps.apple.com/maps?saddr=Current%20Location&daddr=${location[0]},${location[1]}`
|
|
||||||
}
|
|
||||||
widget.addSpacer()
|
|
||||||
}
|
|
||||||
|
|
||||||
if (locactionInformationExists) {
|
|
||||||
widget.backgroundImage = fm.readImage(paths[config.widgetFamily || 'large'])
|
|
||||||
} else {
|
|
||||||
let initText = widget.addText('You have to set the location. Click the icon in the right corner.')
|
|
||||||
initText.font = Font.systemFont(20)
|
|
||||||
initText.minimumScaleFactor = 0.5
|
|
||||||
widget.addSpacer()
|
|
||||||
}
|
|
||||||
|
|
||||||
let appQuery = args.queryParameters
|
|
||||||
if (config.runsInWidget === false && ((appQuery.option && appQuery.option == 'updateLocation') || locactionInformationExists == false)) {
|
|
||||||
let a = new Alert()
|
|
||||||
a.message = 'Do you like to set the current position as the position of your car?'
|
|
||||||
a.addAction('Yes')
|
|
||||||
a.addCancelAction('No')
|
|
||||||
if(await a.present() === 0) {
|
|
||||||
await updateLocation()
|
|
||||||
let b = new Alert()
|
|
||||||
b.message = 'New location was set'
|
|
||||||
b.addAction('Close')
|
|
||||||
await b.present()
|
|
||||||
}
|
|
||||||
}else if(config.runsInWidget === false) {
|
|
||||||
await widget.presentLarge()
|
|
||||||
} else {
|
|
||||||
Script.setWidget(widget)
|
|
||||||
}
|
|
||||||
Script.complete()
|
|
Loading…
Add table
Reference in a new issue