command="curl https://www.votivkino.at/programm/tag/"
outArr=.array~new -- array for stdout
ADDRESS SYSTEM command WITH OUTPUT USING (outArr)
source=outArr~makeString -- turn array into string
parse var source '' Datum.1 '' . 'has-location-left">' Kino.1 ' | ' . '' Datum.2 '' . 'has-location-left">' Kino.2 ' | ' . '' Datum.3 '' . 'has-location-left">' Kino.3 ' | ' . '' Datum.4 '' . 'has-location-left">' Kino.4 ' | ' . '' Datum.5 '' . 'has-location-left">' Kino.5 ' | ' . '' Datum.6 '' . 'has-location-left">' Kino.6 ' | ' . '' Datum.7 '' . 'has-location-left">' Kino.7 ' | ' .-
'' Datum.8 '' . 'has-location-left">' Kino.8 ' | ' . '' Datum.9 '' . 'has-location-left">' Kino.9 ' | '
Filmname.0 = 9
Datum.0 = 9
Kino.0 = 2
excelApplication = .OLEObject~new("Excel.Application")
excelApplication~visible = .true
Worksheet = excelApplication~Workbooks~Add~Worksheets[1]
colTitles = "ABCD"
lastLine = 10
xlHAlignLeft = excelApplication~getConstant("xlHAlignLeft") -- get value of "horizontal align right" constant
do line = 1 to lastLine
do col = 1 to colTitles~length
colLetter = colTitles[col]
cell = Worksheet~Range(colLetter||line) -- e.g. ~Range("A1")
if line = 1 THEN DO
cell~font~bold = .true
cell~Interior~ColorIndex = 36
cell~style~horizontalAlignment = xlHAlignLeft
SELECT
WHEN col = 1 THEN Cell~value = "Datum"
WHEN col = 2 THEN Cell~value = "Film"
WHEN col = 3 THEN Cell~value = "Zeit"
WHEN col = 4 THEN Cell~value = "Kino"
OTHERWISE Cell~value = "CELL ERR"
end
end
ELSE DO
i=line-1
SELECT
WHEN col = 1 THEN Cell~value = Date()
WHEN col = 2 THEN Cell~value = Strreplace(Filmname.i,'-',' ')
WHEN col = 3 THEN Cell~value = Datum.i
WHEN col = 4 THEN Cell~value = strreplace(Kino.i,' ',' ')
OTHERWISE Cell~value = "CELL ERR"
end
END
end
end
Worksheet~Columns~AutoFit
Worksheet~Range("A2:D10")~Sort(C)
Do i=1 TO Filmname.0
SAY "Den Film" pp(Strreplace(Filmname.i,'-',' ')) "spielt es um" Datum.i "Uhr im" strreplace(Kino.i,' ',' ')"."
end
/*kp:
SELECT
WHEN ARG(1) = 'Votiv Kino' THEN RETURN "Votivkino"
WHEN ARG(1) = 'Kino De France' THEN RETURN "Kino De France"
OTHERWISE RETURN "Kinofehler"
END*/
pp: RETURN "'"ARG(1)"'"
STRREPLACE:
ORIGINAL = ARG(1)
OLDTXT = ARG(2)
NEWTXT = ARG(3)
NEWSTR = ORIGINAL
DO WHILE POS(OLDTXT,NEWSTR) > 0
NEWSTR = SUBSTR(NEWSTR, 1 , POS(OLDTXT,NEWSTR)-1) ||,
NEWTXT || SUBSTR(NEWSTR, POS(OLDTXT,NEWSTR) + LENGTH(OLDTXT))
END
RETURN NEWSTR