mirror of
https://github.com/ThisIsBenny/iOS-Widgets.git
synced 2025-06-07 05:57:41 +00:00
make it easier to connfigure the optins
Signed-off-by: Benny Samir Hierl <bennysamir@posteo.de>
This commit is contained in:
parent
22357c4650
commit
3ea17a9fb8
1 changed files with 56 additions and 18 deletions
|
@ -7,12 +7,12 @@ Version 2.0.0
|
||||||
|
|
||||||
Changelog:
|
Changelog:
|
||||||
v2.0.0:
|
v2.0.0:
|
||||||
- Disable "Dark Mode Support"
|
- Disable Dark Modus Support
|
||||||
- Medium Widget Support
|
- Medium & large Widget Support
|
||||||
- Switch between used and remaining volume
|
- switch between used and remaining volume
|
||||||
- Use MSISDN for Cache-Name
|
- use MSISDN for Cache-Name
|
||||||
- Show amount for prepaid cards
|
- show amount for prepaid cards
|
||||||
- Show remaining days as progress-bar
|
- show remaining days as progress-bar
|
||||||
v1.2.4:
|
v1.2.4:
|
||||||
- use color.dynamic
|
- use color.dynamic
|
||||||
v1.2.3:
|
v1.2.3:
|
||||||
|
@ -47,6 +47,10 @@ Credits:
|
||||||
- Chaeimg@Github (https://github.com/chaeimg/battCircle)
|
- Chaeimg@Github (https://github.com/chaeimg/battCircle)
|
||||||
**************/
|
**************/
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
////////////////////////// User-Config /////////////////////////
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
// How many minutes should the cache be valid
|
// How many minutes should the cache be valid
|
||||||
const cacheMinutes = 60
|
const cacheMinutes = 60
|
||||||
|
|
||||||
|
@ -63,11 +67,21 @@ const showRemainingDaysAsProgressbar = true
|
||||||
const containerList = ['Daten', 'D_EU_DATA', 'C_DIY_Data_National']
|
const containerList = ['Daten', 'D_EU_DATA', 'C_DIY_Data_National']
|
||||||
const codeList = ['-1', '-5' ,'45500', '40100']
|
const codeList = ['-1', '-5' ,'45500', '40100']
|
||||||
|
|
||||||
// Dev Settings
|
|
||||||
const debug = false
|
|
||||||
config.widgetFamily = config.widgetFamily || 'small'
|
|
||||||
////////////////////////////////////////////////////////////////////////////////
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
////////////////////////// Dev Settings ////////////////////////
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
const debug = false
|
||||||
|
config.widgetFamily = config.widgetFamily || 'medium'
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
////////////////////////// System-Config ///////////////////////
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
// Input
|
||||||
let widgetInputRAW = args.widgetParameter;
|
let widgetInputRAW = args.widgetParameter;
|
||||||
|
|
||||||
let widgetInput = null;
|
let widgetInput = null;
|
||||||
let user, pass, number
|
let user, pass, number
|
||||||
if (widgetInputRAW !== null) {
|
if (widgetInputRAW !== null) {
|
||||||
|
@ -81,6 +95,19 @@ if (widgetInputRAW !== null) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Text sizes
|
||||||
|
const fontSizeData = 11
|
||||||
|
const lineNumberData = 1
|
||||||
|
const minimumScaleFactor = 1.0 // Value between 1.0 and 0.1
|
||||||
|
|
||||||
|
// Number of data by Size
|
||||||
|
const numberOfDisplayedDataBySize = {
|
||||||
|
small: 1,
|
||||||
|
medium: 2,
|
||||||
|
large: 4
|
||||||
|
}
|
||||||
|
|
||||||
|
// Progressbar
|
||||||
const h = 5
|
const h = 5
|
||||||
let width
|
let width
|
||||||
if (config.widgetFamily === 'small') {
|
if (config.widgetFamily === 'small') {
|
||||||
|
@ -89,6 +116,7 @@ if (config.widgetFamily === 'small') {
|
||||||
width = 400
|
width = 400
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Colors
|
||||||
let backColor = new Color('D32D1F')
|
let backColor = new Color('D32D1F')
|
||||||
let backColor2 = new Color('93291E')
|
let backColor2 = new Color('93291E')
|
||||||
let textColor = new Color('EDEDED')
|
let textColor = new Color('EDEDED')
|
||||||
|
@ -102,6 +130,7 @@ if (darkModeSupport) {
|
||||||
fillColor = Color.dynamic(fillColor, new Color('EDEDED'))
|
fillColor = Color.dynamic(fillColor, new Color('EDEDED'))
|
||||||
strokeColor = Color.dynamic(strokeColor, new Color('121212'))
|
strokeColor = Color.dynamic(strokeColor, new Color('121212'))
|
||||||
}
|
}
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
function creatProgress(total, havegone) {
|
function creatProgress(total, havegone) {
|
||||||
const context = new DrawContext()
|
const context = new DrawContext()
|
||||||
|
@ -223,7 +252,7 @@ async function getSessionCookiesViaNetworkLogin() {
|
||||||
console.log("Login failed! Please check if Wifi is disabled.")
|
console.log("Login failed! Please check if Wifi is disabled.")
|
||||||
throw new Error(`Login failed with HTTP-Status-Code ${req.response.statusCode}`)
|
throw new Error(`Login failed with HTTP-Status-Code ${req.response.statusCode}`)
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
async function getSessionCookiesViaMeinVodafoneLogin(u, p) {
|
async function getSessionCookiesViaMeinVodafoneLogin(u, p) {
|
||||||
let req;
|
let req;
|
||||||
|
@ -246,7 +275,7 @@ async function getSessionCookiesViaMeinVodafoneLogin(u, p) {
|
||||||
console.log("Login failed!")
|
console.log("Login failed!")
|
||||||
throw new Error(`Login failed with HTTP-Status-Code ${req.response.statusCode}`)
|
throw new Error(`Login failed with HTTP-Status-Code ${req.response.statusCode}`)
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
async function getUsage(user, pass, number) {
|
async function getUsage(user, pass, number) {
|
||||||
let cookies, msisdn
|
let cookies, msisdn
|
||||||
|
@ -344,7 +373,7 @@ async function getUsage(user, pass, number) {
|
||||||
console.log("Loading usage data failed")
|
console.log("Loading usage data failed")
|
||||||
throw e
|
throw e
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
var today = new Date()
|
var today = new Date()
|
||||||
|
|
||||||
|
@ -433,8 +462,15 @@ if (data !== undefined) {
|
||||||
const stack = widget.addStack()
|
const stack = widget.addStack()
|
||||||
stack.layoutHorizontally()
|
stack.layoutHorizontally()
|
||||||
|
|
||||||
data.usage.slice(0, (config.widgetFamily === 'small' ? 1 : 2)).forEach((v) => {
|
let i = 0
|
||||||
const column = stack.addStack()
|
let row
|
||||||
|
data.usage.slice(0, numberOfDisplayedDataBySize[config.widgetFamily]).forEach((v) => {
|
||||||
|
if (++i % 2 == 1) {
|
||||||
|
row = widget.addStack()
|
||||||
|
row.layoutHorizontally()
|
||||||
|
widget.addSpacer(5)
|
||||||
|
}
|
||||||
|
column = row.addStack()
|
||||||
column.layoutVertically()
|
column.layoutVertically()
|
||||||
column.centerAlignContent()
|
column.centerAlignContent()
|
||||||
|
|
||||||
|
@ -461,8 +497,9 @@ if (data !== undefined) {
|
||||||
textStack.layoutHorizontally()
|
textStack.layoutHorizontally()
|
||||||
textStack.addSpacer()
|
textStack.addSpacer()
|
||||||
let diagramText = textStack.addText(totalValues)
|
let diagramText = textStack.addText(totalValues)
|
||||||
diagramText.font = Font.mediumSystemFont(11)
|
diagramText.font = Font.mediumSystemFont(fontSizeData)
|
||||||
diagramText.lineLimit = 1
|
diagramText.minimumScaleFactor = minimumScaleFactor
|
||||||
|
diagramText.lineLimit = lineNumberData
|
||||||
diagramText.centerAlignText()
|
diagramText.centerAlignText()
|
||||||
diagramText.textColor = textColor
|
diagramText.textColor = textColor
|
||||||
textStack.addSpacer()
|
textStack.addSpacer()
|
||||||
|
@ -471,7 +508,8 @@ if (data !== undefined) {
|
||||||
nameStack.layoutHorizontally()
|
nameStack.layoutHorizontally()
|
||||||
nameStack.addSpacer()
|
nameStack.addSpacer()
|
||||||
let diagramName = nameStack.addText(v.name.replace('Inland & EU', '').trim())
|
let diagramName = nameStack.addText(v.name.replace('Inland & EU', '').trim())
|
||||||
diagramName.font = Font.systemFont(10)
|
diagramName.font = Font.systemFont(fontSizeData - 1)
|
||||||
|
diagramName.minimumScaleFactor = minimumScaleFactor
|
||||||
diagramName.lineLimit = 1
|
diagramName.lineLimit = 1
|
||||||
diagramName.centerAlignText()
|
diagramName.centerAlignText()
|
||||||
diagramName.textColor = textColor
|
diagramName.textColor = textColor
|
||||||
|
|
Loading…
Add table
Reference in a new issue