1*b1cdbd2cSJim Jagielski/************************************************************** 2*b1cdbd2cSJim Jagielski * 3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one 4*b1cdbd2cSJim Jagielski * or more contributor license agreements. See the NOTICE file 5*b1cdbd2cSJim Jagielski * distributed with this work for additional information 6*b1cdbd2cSJim Jagielski * regarding copyright ownership. The ASF licenses this file 7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the 8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance 9*b1cdbd2cSJim Jagielski * with the License. You may obtain a copy of the License at 10*b1cdbd2cSJim Jagielski * 11*b1cdbd2cSJim Jagielski * http://www.apache.org/licenses/LICENSE-2.0 12*b1cdbd2cSJim Jagielski * 13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing, 14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an 15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16*b1cdbd2cSJim Jagielski * KIND, either express or implied. See the License for the 17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations 18*b1cdbd2cSJim Jagielski * under the License. 19*b1cdbd2cSJim Jagielski * 20*b1cdbd2cSJim Jagielski *************************************************************/ 21*b1cdbd2cSJim Jagielski 22*b1cdbd2cSJim Jagielski<% 23*b1cdbd2cSJim Jagielski 24*b1cdbd2cSJim Jagielskipublic const cnRefreshTime = 5 ' refresh time in seconds 25*b1cdbd2cSJim Jagielski 26*b1cdbd2cSJim Jagielski' filename for file with all pictures and file containing the name of the current picture 27*b1cdbd2cSJim Jagielskipublic const csFilePicture= "picture.txt" 28*b1cdbd2cSJim Jagielskipublic const csFileCurrent= "currpic.txt" 29*b1cdbd2cSJim Jagielski 30*b1cdbd2cSJim Jagielski' constants for file-access 31*b1cdbd2cSJim Jagielskiconst ForReading = 1 32*b1cdbd2cSJim Jagielskiconst ForWriting = 2 33*b1cdbd2cSJim Jagielski 34*b1cdbd2cSJim Jagielski' new-line delimiter 35*b1cdbd2cSJim JagielskiDim FILE_LINE_DELIMITER 36*b1cdbd2cSJim JagielskiFILE_LINE_DELIMITER = vbCRLF 37*b1cdbd2cSJim Jagielski 38*b1cdbd2cSJim Jagielski'/** 39*b1cdbd2cSJim Jagielski' * Get data from file using a given separator. 40*b1cdbd2cSJim Jagielski' */ 41*b1cdbd2cSJim Jagielskifunction File_getDataVirtual( sFilename, sServerPath, sSeperator ) 42*b1cdbd2cSJim Jagielski call Err.Clear() 43*b1cdbd2cSJim Jagielski 44*b1cdbd2cSJim Jagielski Dim aFSObject, sServerFileName 45*b1cdbd2cSJim Jagielski 46*b1cdbd2cSJim Jagielski Set aFSObject = CreateObject("Scripting.FileSystemObject") 47*b1cdbd2cSJim Jagielski sServerFileName = aFSObject.BuildPath( Server.MapPath( sServerPath ), sFileName ) 48*b1cdbd2cSJim Jagielski 49*b1cdbd2cSJim Jagielski File_getDataVirtual = "" 50*b1cdbd2cSJim Jagielski if Err.Number = 0 then 51*b1cdbd2cSJim Jagielski File_getDataVirtual = File_read( sServerFileName ) 52*b1cdbd2cSJim Jagielski If Not IsNull(File_getDataVirtual) Then 53*b1cdbd2cSJim Jagielski File_getDataVirtual = Replace( File_getDataVirtual, FILE_LINE_DELIMITER, sSeperator) 54*b1cdbd2cSJim Jagielski File_getDataVirtual = Split( File_getDataVirtual, sSeperator) 55*b1cdbd2cSJim Jagielski End If 56*b1cdbd2cSJim Jagielski end if 57*b1cdbd2cSJim Jagielskiend function 58*b1cdbd2cSJim Jagielski 59*b1cdbd2cSJim Jagielski'/** 60*b1cdbd2cSJim Jagielski' * Get data from a file 61*b1cdbd2cSJim Jagielski' */ 62*b1cdbd2cSJim Jagielskifunction File_read( sFilename ) 63*b1cdbd2cSJim Jagielski call Err.Clear() 64*b1cdbd2cSJim Jagielski 65*b1cdbd2cSJim Jagielski Dim aFSObject, aStream 66*b1cdbd2cSJim Jagielski 67*b1cdbd2cSJim Jagielski Set aFSObject = CreateObject( "Scripting.FileSystemObject" ) 68*b1cdbd2cSJim Jagielski Set aStream = aFSObject.OpenTextFile( sFilename, ForReading ) 69*b1cdbd2cSJim Jagielski 70*b1cdbd2cSJim Jagielski while not aStream.AtEndOfStream 71*b1cdbd2cSJim Jagielski File_read = File_read + aStream.ReadLine + FILE_LINE_DELIMITER 72*b1cdbd2cSJim Jagielski wend 73*b1cdbd2cSJim Jagielski 74*b1cdbd2cSJim Jagielski aStream.Close 75*b1cdbd2cSJim Jagielskiend function 76*b1cdbd2cSJim Jagielski 77*b1cdbd2cSJim Jagielski'/** 78*b1cdbd2cSJim Jagielski' * Get data from a file given by filename and virtual pathname 79*b1cdbd2cSJim Jagielski' */ 80*b1cdbd2cSJim JagielskiFunction File_readVirtual(sFileName, sServerPath) 81*b1cdbd2cSJim Jagielski call Err.Clear() 82*b1cdbd2cSJim Jagielski 83*b1cdbd2cSJim Jagielski Dim aFSObject, sServerFileName 84*b1cdbd2cSJim Jagielski 85*b1cdbd2cSJim Jagielski Set aFSObject = CreateObject("Scripting.FileSystemObject") 86*b1cdbd2cSJim Jagielski sServerFileName = aFSObject.BuildPath( Server.MapPath( sServerPath ), sFileName ) 87*b1cdbd2cSJim Jagielski 88*b1cdbd2cSJim Jagielski File_readVirtual = "" 89*b1cdbd2cSJim Jagielski if Err.Number = 0 then 90*b1cdbd2cSJim Jagielski File_readVirtual = File_read( sServerFileName ) 91*b1cdbd2cSJim Jagielski end if 92*b1cdbd2cSJim JagielskiEnd Function 93*b1cdbd2cSJim Jagielski 94*b1cdbd2cSJim Jagielski'/** 95*b1cdbd2cSJim Jagielski' * Write data to a file 96*b1cdbd2cSJim Jagielski' */ 97*b1cdbd2cSJim Jagielskifunction File_write( sFileName, sText ) 98*b1cdbd2cSJim Jagielski call Err.Clear() 99*b1cdbd2cSJim Jagielski 100*b1cdbd2cSJim Jagielski Dim aFSObject, aFile 101*b1cdbd2cSJim Jagielski 102*b1cdbd2cSJim Jagielski Set aFSObject = CreateObject( "Scripting.FileSystemObject" ) 103*b1cdbd2cSJim Jagielski if Err.Number = 0 then 104*b1cdbd2cSJim Jagielski Set aFile = aFSObject.CreateTextFile( sFileName, TRUE ) 105*b1cdbd2cSJim Jagielski if Err.Number = 0 then 106*b1cdbd2cSJim Jagielski aFile.Write( sText ) 107*b1cdbd2cSJim Jagielski aFile.Close 108*b1cdbd2cSJim Jagielski end if 109*b1cdbd2cSJim Jagielski end if 110*b1cdbd2cSJim Jagielski 111*b1cdbd2cSJim Jagielski File_write = ( Err.Number = 0 ) 112*b1cdbd2cSJim Jagielskiend function 113*b1cdbd2cSJim Jagielski 114*b1cdbd2cSJim Jagielski'/** 115*b1cdbd2cSJim Jagielski' * Write data to a file given by filename and virtual pathname 116*b1cdbd2cSJim Jagielski' */ 117*b1cdbd2cSJim Jagielskifunction File_writeVirtual( sFileName, sServerPath, sText ) 118*b1cdbd2cSJim Jagielski call Err.Clear() 119*b1cdbd2cSJim Jagielski 120*b1cdbd2cSJim Jagielski Dim aFSObject, aServerFile 121*b1cdbd2cSJim Jagielski 122*b1cdbd2cSJim Jagielski Set aFSObject = CreateObject( "Scripting.FileSystemObject" ) 123*b1cdbd2cSJim Jagielski aServerFile = aFSObject.BuildPath( Server.MapPath( sServerPath ), sFileName ) 124*b1cdbd2cSJim Jagielski 125*b1cdbd2cSJim Jagielski If Err.Number = 0 Then 126*b1cdbd2cSJim Jagielski File_writeVirtual = File_write( aServerFile, sText ) 127*b1cdbd2cSJim Jagielski else 128*b1cdbd2cSJim Jagielski File_writeVirtual = false 129*b1cdbd2cSJim Jagielski End If 130*b1cdbd2cSJim Jagielskiend function 131*b1cdbd2cSJim Jagielski%>