1*cdf0e10cSrcweir<?xml version="1.0" encoding="UTF-8"?>
2*cdf0e10cSrcweir<!DOCTYPE script:module PUBLIC "-//OpenOffice.org//DTD OfficeDocument 1.0//EN" "module.dtd">
3*cdf0e10cSrcweir<script:module xmlns:script="http://openoffice.org/2000/script" script:name="HtmlAutoPilotBasic" script:language="StarBasic">&apos; Variables must be declared
4*cdf0e10cSrcweirOption Explicit
5*cdf0e10cSrcweir
6*cdf0e10cSrcweirPublic CurDocIndex as Integer
7*cdf0e10cSrcweirPublic CurWebPageIndex as Integer
8*cdf0e10cSrcweir
9*cdf0e10cSrcweir
10*cdf0e10cSrcweirPublic bWithBackGraphic as Boolean
11*cdf0e10cSrcweirPublic oStyle as Object
12*cdf0e10cSrcweir&apos; Maximum number of content templates, style templates and bullets
13*cdf0e10cSrcweirConst MaxLayouts = 50
14*cdf0e10cSrcweirConst MaxStyles = 100
15*cdf0e10cSrcweirConst MaxBullets = 10
16*cdf0e10cSrcweir
17*cdf0e10cSrcweir&apos;Public NumberOfLayouts%, NumberOfStyles%
18*cdf0e10cSrcweir
19*cdf0e10cSrcweir&apos; Filled with title, previous, next, home, top, bullet, background, file name
20*cdf0e10cSrcweirPublic Style(MaxStyles, 8) as String
21*cdf0e10cSrcweir
22*cdf0e10cSrcweirPublic Layout$(MaxLayouts, 2)
23*cdf0e10cSrcweir
24*cdf0e10cSrcweirPublic TextureDir$, BulletDir$, GraphicsDir$, GalleryDir$, PhotosDir$
25*cdf0e10cSrcweirPublic SOBitmapPath as String
26*cdf0e10cSrcweirPublic CurrentBullet$, CurrentPrev$, CurrentNext$, CurrentHome$, CurrentTop$
27*cdf0e10cSrcweirPublic FileStr as String
28*cdf0e10cSrcweir
29*cdf0e10cSrcweirPublic WebWiz_gWizardName$, WebWiz_gErrContentNotFound$, WebWiz_gErrStyleNotFound$
30*cdf0e10cSrcweirPublic WebWiz_gErrMainTemplateError$, WebWiz_gErrWhileReloading$
31*cdf0e10cSrcweirPublic WebWiz_gErrWhileLoadStyles$, WebWiz_gErrMsg$, WebWiz_gErrMainDocumentError$
32*cdf0e10cSrcweir
33*cdf0e10cSrcweirPublic ProgressBar as Object
34*cdf0e10cSrcweirPublic ProgressValue As Long
35*cdf0e10cSrcweirPublic oBaseDocument as Object
36*cdf0e10cSrcweirPublic oViewCursor as Object
37*cdf0e10cSrcweirPublic oViewSettings as Object
38*cdf0e10cSrcweirPublic NoArgs() as New com.sun.star.beans.PropertyValue
39*cdf0e10cSrcweir
40*cdf0e10cSrcweirPublic oCursor as Object
41*cdf0e10cSrcweirPublic oBookmarks as Object
42*cdf0e10cSrcweirPublic oBookMark as Object
43*cdf0e10cSrcweir
44*cdf0e10cSrcweirPublic oUcb as Object
45*cdf0e10cSrcweirPublic MainDialog as Object
46*cdf0e10cSrcweirPublic DialogModel as Object
47*cdf0e10cSrcweir
48*cdf0e10cSrcweir
49*cdf0e10cSrcweirSub Main
50*cdf0e10cSrcweirDim RetValue
51*cdf0e10cSrcweirOn Local Error Goto GlobalErrorHandler
52*cdf0e10cSrcweir	BasicLibraries.LoadLibrary(&quot;Tools&quot;)
53*cdf0e10cSrcweir	oUcb = createUnoService(&quot;com.sun.star.ucb.SimpleFileAccess&quot;)
54*cdf0e10cSrcweir	oBaseDocument = StarDesktop.LoadComponentFromURL(&quot;private:factory/swriter/web&quot;, &quot;_default&quot;, 0, NoArgs())
55*cdf0e10cSrcweir	oViewSettings = oBaseDocument.CurrentController.ViewSettings
56*cdf0e10cSrcweir	oViewCursor = oBaseDocument.GetCurrentController.ViewCursor
57*cdf0e10cSrcweir	CurWebPageIndex = -1
58*cdf0e10cSrcweir	ProgressBar = oBaseDocument.GetCurrentController.GetFrame.CreateStatusIndicator
59*cdf0e10cSrcweir	ProgressBar.Start(&quot;&quot;, 100)
60*cdf0e10cSrcweir	SetProgressValue(2)
61*cdf0e10cSrcweir	oBaseDocument.LockControllers
62*cdf0e10cSrcweir	oViewSettings.ShowTableBoundaries = False
63*cdf0e10cSrcweir	If Not GetWebWizardPaths() Then
64*cdf0e10cSrcweir		Exit Sub
65*cdf0e10cSrcweir	End If
66*cdf0e10cSrcweir	LoadLanguage
67*cdf0e10cSrcweir	SetProgressValue(10)
68*cdf0e10cSrcweir	Layout() = getListBoxArrays(oUcb, &quot;/cnt&quot;)
69*cdf0e10cSrcweir	GetCurIndex(DialogModel, Layout(),2)
70*cdf0e10cSrcweir	SetProgressValue(30)
71*cdf0e10cSrcweir	oCursor = oBasedocument.Text.CreateTextCursor
72*cdf0e10cSrcweir	oCursor.InsertDocumentfromURL(FileStr, NoArgs())
73*cdf0e10cSrcweir	SetProgressValue(50)
74*cdf0e10cSrcweir	Style() = getListBoxArrays(oUcb, &quot;/stl&quot;)
75*cdf0e10cSrcweir	SetProgressValue(70)
76*cdf0e10cSrcweir	LoadWebPageStyles(oBaseDocument)
77*cdf0e10cSrcweir	SetProgressValue(90)
78*cdf0e10cSrcweir	oBaseDocument.UnlockControllers
79*cdf0e10cSrcweir	OpenWebDialog()
80*cdf0e10cSrcweir	SetProgressValue(98)
81*cdf0e10cSrcweir	SetProgressValue(0)
82*cdf0e10cSrcweir	MainDialog.Model.ImagePreview.BackGroundColor = RGB(0, 60,126)
83*cdf0e10cSrcweir	RetValue = MainDialog.Execute
84*cdf0e10cSrcweir	Select Case RetValue
85*cdf0e10cSrcweir		Case 0
86*cdf0e10cSrcweir			MainDialog.Dispose()
87*cdf0e10cSrcweir			DisposeDocument(oBaseDocument)
88*cdf0e10cSrcweir		Case 1
89*cdf0e10cSrcweir			EndDialog()
90*cdf0e10cSrcweir			MainDialog.Dispose()
91*cdf0e10cSrcweir	End Select
92*cdf0e10cSrcweirGLOBALERRORHANDLER:
93*cdf0e10cSrcweir	If Err &lt;&gt; 0 Then
94*cdf0e10cSrcweir		MsgBox (WebWiz_gErrMsg$, 16, WebWiz_gWizardName$)
95*cdf0e10cSrcweir		DisposeDocument(oBaseDocument)
96*cdf0e10cSrcweir		RESUME EXITWIZARD
97*cdf0e10cSrcweirEXITWIZARD:
98*cdf0e10cSrcweir	End If
99*cdf0e10cSrcweirEnd Sub
100*cdf0e10cSrcweir
101*cdf0e10cSrcweir
102*cdf0e10cSrcweirFunction SetProgressValue(iValue as Integer)
103*cdf0e10cSrcweir	If iValue = 0 Then
104*cdf0e10cSrcweir		ProgressBar.End
105*cdf0e10cSrcweir	End If
106*cdf0e10cSrcweir	ProgressValue = iValue
107*cdf0e10cSrcweir	ProgressBar.Value = iValue
108*cdf0e10cSrcweirEnd Function
109*cdf0e10cSrcweir
110*cdf0e10cSrcweir
111*cdf0e10cSrcweirSub ReloadCurrentDocument()
112*cdf0e10cSrcweirDim OldDocIndex as Integer
113*cdf0e10cSrcweirOn Local Error Goto ErrorOcurred
114*cdf0e10cSrcweir	OldDocIndex = CurDocIndex
115*cdf0e10cSrcweir	CurDocIndex = GetCurIndex(DialogModel.lbTemplate, Layout(), 2)
116*cdf0e10cSrcweir	If OldDocIndex &lt;&gt; CurDocIndex Then
117*cdf0e10cSrcweir		oBaseDocument.LockControllers
118*cdf0e10cSrcweir		ToggleDialogControls(False)
119*cdf0e10cSrcweir		oCursor = oBaseDocument.Text.CreateTextCursor()
120*cdf0e10cSrcweir		oCursor.GotoStart(False)
121*cdf0e10cSrcweir		oCursor.GotoEnd(True)
122*cdf0e10cSrcweir		oCursor.SetAllPropertiesToDefault()
123*cdf0e10cSrcweir		oCursor.InsertDocumentfromURL(FileStr, NoArgs())
124*cdf0e10cSrcweir		SetBulletAndGraphics
125*cdf0e10cSrcweir		CheckControls(oBaseDocument.DrawPage)
126*cdf0e10cSrcweir	ErrorOcurred:
127*cdf0e10cSrcweir		If Err &lt;&gt; 0 Then
128*cdf0e10cSrcweir			MsgBox(WebWiz_gErrWhileReloading$, 16, WebWiz_gWizardName$)
129*cdf0e10cSrcweir		End If
130*cdf0e10cSrcweir		oBaseDocument.UnlockControllers
131*cdf0e10cSrcweir		oViewCursor.GotoStart(False)
132*cdf0e10cSrcweir		ToggleDialogControls(True, &quot;lbTemplate&quot;)
133*cdf0e10cSrcweir	End If
134*cdf0e10cSrcweirEnd Sub
135*cdf0e10cSrcweir
136*cdf0e10cSrcweir
137*cdf0e10cSrcweir
138*cdf0e10cSrcweir
139*cdf0e10cSrcweirSub LoadWebPageStyles(aEvent as Object, Optional bStartUp as Boolean)
140*cdf0e10cSrcweirDim OldWebPageIndex as Integer
141*cdf0e10cSrcweir	OldWebPageIndex = CurWebPageIndex
142*cdf0e10cSrcweir	If IsNull(DialogModel) Then
143*cdf0e10cSrcweir		CurWebPageIndex = GetCurIndex(DialogModel, Style(), 8)
144*cdf0e10cSrcweir	Else
145*cdf0e10cSrcweir		CurWebPageIndex = GetCurIndex(DialogModel.lbStyles, Style(), 8)
146*cdf0e10cSrcweir	End If
147*cdf0e10cSrcweir	If OldWebPageIndex &lt;&gt; CurWebPageIndex Then
148*cdf0e10cSrcweir		ToggleDialogControls(False)
149*cdf0e10cSrcweir		oBaseDocument.LockControllers
150*cdf0e10cSrcweir		bWithBackGraphic = LoadNewStyles(oBaseDocument, DialogModel, CurWebPageIndex, FileStr, Style(), TextureDir)
151*cdf0e10cSrcweir		CurrentBullet$ = BulletDir + Style(CurWebPageIndex, 6)
152*cdf0e10cSrcweir		CurrentPrev$ = GraphicsDir + Style(CurWebPageIndex, 2)
153*cdf0e10cSrcweir		CurrentNext$ = GraphicsDir + Style(CurWebPageIndex, 3)
154*cdf0e10cSrcweir		CurrentHome$ = GraphicsDir + Style(CurWebPageIndex, 4)
155*cdf0e10cSrcweir		CurrentTop$ = GraphicsDir + Style(CurWebPageIndex, 5)
156*cdf0e10cSrcweir		With oBaseDocument.DocumentProperties.UserDefinedProperties
157*cdf0e10cSrcweir            .AutoPilotName1 = ExtractGraphicNames(CurWebPageIndex,2)
158*cdf0e10cSrcweir            .AutoPilotName2 = ExtractGraphicNames(CurWebPageIndex, 4)
159*cdf0e10cSrcweir            .AutoPilotBullet = Style(CurWebPageIndex, 6)
160*cdf0e10cSrcweir            .AutoPilotBackground =  Style(CurWebPageIndex, 7)
161*cdf0e10cSrcweir		End With
162*cdf0e10cSrcweir		SetBulletAndGraphics()
163*cdf0e10cSrcweir		CheckControls(oBaseDocument.DrawPage)
164*cdf0e10cSrcweir		oViewCursor.GotoStart(False)
165*cdf0e10cSrcweir		oBaseDocument.UnlockControllers
166*cdf0e10cSrcweir		ToggleDialogControls(True, &quot;lbStyles&quot;)
167*cdf0e10cSrcweir	End If
168*cdf0e10cSrcweirEnd Sub
169*cdf0e10cSrcweir
170*cdf0e10cSrcweir
171*cdf0e10cSrcweirFunction ExtractGraphicNames(CurIndex as Integer, i as Integer) as String
172*cdf0e10cSrcweirDim FieldValue as String
173*cdf0e10cSrcweir	FieldValue = GetFileNameWithoutExtension(Style(CurIndex, i))
174*cdf0e10cSrcweir	FieldValue = FieldValue &amp; &quot; &quot; &amp;	GetFileNameWithoutExtension(Style(CurIndex, i+1))
175*cdf0e10cSrcweir	ExtractGraphicNames = FieldValue
176*cdf0e10cSrcweirEnd Function
177*cdf0e10cSrcweir
178*cdf0e10cSrcweir
179*cdf0e10cSrcweirSub SetBulletAndGraphics
180*cdf0e10cSrcweir	SetGraphic(&quot;Prev&quot;, CurrentPrev)
181*cdf0e10cSrcweir	SetGraphic(&quot;Next&quot;, CurrentNext)
182*cdf0e10cSrcweir	SetGraphic(&quot;Home&quot;, CurrentHome)
183*cdf0e10cSrcweir	SetGraphic(&quot;Top&quot;, CurrentTop)
184*cdf0e10cSrcweir	SetBulletGraphics(CurrentBullet)
185*cdf0e10cSrcweir	SetGraphicsToOriginalSize()
186*cdf0e10cSrcweirEnd Sub
187*cdf0e10cSrcweir
188*cdf0e10cSrcweir
189*cdf0e10cSrcweirSub SetGraphicsToOriginalSize()
190*cdf0e10cSrcweirDim oGraphics as Object
191*cdf0e10cSrcweirDim oGraphic as Object
192*cdf0e10cSrcweirDim i as Integer
193*cdf0e10cSrcweirDim aActSize as New com.sun.star.awt.Size
194*cdf0e10cSrcweir	oGraphics = oBaseDocument.GraphicObjects
195*cdf0e10cSrcweir	For i = 0 To oGraphics.Count-1
196*cdf0e10cSrcweir		oGraphic = oGraphics.GetByIndex(i)
197*cdf0e10cSrcweir		aActSize = oGraphic.ActualSize
198*cdf0e10cSrcweir		If aActSize.Height &gt; 0 And aActSize.Width &gt; 0 Then
199*cdf0e10cSrcweir			oGraphic.SetSize(aActSize)
200*cdf0e10cSrcweir		End If
201*cdf0e10cSrcweir	Next i
202*cdf0e10cSrcweirEnd Sub
203*cdf0e10cSrcweir
204*cdf0e10cSrcweir
205*cdf0e10cSrcweirSub EndDialog()
206*cdf0e10cSrcweir	If DialogModel.chkSaveasTemplate.State = 1 Then
207*cdf0e10cSrcweir		&apos; Generating template? Set events later!
208*cdf0e10cSrcweir		AttachBasicMacroToEvent(oBaseDocument,&quot;OnNew&quot;, &quot;WebWizard.HtmlAutoPilotBasic.SetEvent()&quot;)
209*cdf0e10cSrcweir		&apos; Call the Store template dialog
210*cdf0e10cSrcweir		DispatchSlot(5538)
211*cdf0e10cSrcweir		AttachBasicMacroToEvent(oBaseDocument,&quot;OnNew&quot;, &quot;&quot;)
212*cdf0e10cSrcweir	End If
213*cdf0e10cSrcweir	SetEvent()
214*cdf0e10cSrcweirEnd Sub
215*cdf0e10cSrcweir
216*cdf0e10cSrcweir
217*cdf0e10cSrcweirSub SetEvent()
218*cdf0e10cSrcweirDim oDocument as Object
219*cdf0e10cSrcweir&apos; This sub links the events OnSaveDone and OnSaveAsDone to the procedure
220*cdf0e10cSrcweir&apos; CopyGraphics. It is invoked when a document is created, either directly
221*cdf0e10cSrcweir&apos; from the AutoPilot or from a template. It is not possible to set these
222*cdf0e10cSrcweir&apos; links for the template created by the AutoPilot because then it is not
223*cdf0e10cSrcweir&apos; possible to modify the template.
224*cdf0e10cSrcweir	BasicLibraries.LoadLibrary(&quot;Tools&quot;)
225*cdf0e10cSrcweir	oDocument = ThisComponent
226*cdf0e10cSrcweir	AttachBasicMacroToEvent(oDocument,&quot;OnSaveDone&quot;, &quot;WebWizard.HtmlAutoPilotBasic.CopyGraphics()&quot;)
227*cdf0e10cSrcweir	AttachBasicMacroToEvent(oDocument,&quot;OnSaveAsDone&quot;, &quot;WebWizard.HtmlAutoPilotBasic.CopyGraphics()&quot;)
228*cdf0e10cSrcweirEnd Sub
229*cdf0e10cSrcweir
230*cdf0e10cSrcweir
231*cdf0e10cSrcweir
232*cdf0e10cSrcweirSub CopyGraphics
233*cdf0e10cSrcweir&apos; This sub copies all the graphics used in the document to the same directory the
234*cdf0e10cSrcweir&apos; document has been copied into and changes the graphics links in the document.
235*cdf0e10cSrcweirDim oGraphicObjects as Object
236*cdf0e10cSrcweirDim oGraphic as Object
237*cdf0e10cSrcweirDim i as Integer
238*cdf0e10cSrcweirDim udProps as Object
239*cdf0e10cSrcweirDim SavePath as String
240*cdf0e10cSrcweir    BasicLibraries.LoadLibrary(&quot;Tools&quot;)
241*cdf0e10cSrcweir	oUcb = createUnoService(&quot;com.sun.star.ucb.SimpleFileAccess&quot;)
242*cdf0e10cSrcweir	GetWebWizardPaths()
243*cdf0e10cSrcweir	oBaseDocument = ThisComponent
244*cdf0e10cSrcweir&apos;	oBaseDocument.LockControllers()
245*cdf0e10cSrcweir
246*cdf0e10cSrcweir	&apos; Note: The sub DirectoryNameoutofPath should be change, so that the last character is a slash
247*cdf0e10cSrcweir	SavePath = DirectoryNameoutofPath(oBaseDocument.Url, &quot;/&quot;) &amp; &quot;/&quot;
248*cdf0e10cSrcweir
249*cdf0e10cSrcweir	oGraphicObjects = oBaseDocument.GraphicObjects
250*cdf0e10cSrcweir	For i = 0 to oGraphicObjects.Count-1
251*cdf0e10cSrcweir		oGraphic = oGraphicObjects.GetbyIndex(i)
252*cdf0e10cSrcweir		oGraphic.GraphicUrl = CopyFile(oGraphic.GraphicURL, SavePath)
253*cdf0e10cSrcweir	Next i
254*cdf0e10cSrcweir
255*cdf0e10cSrcweir	ChangeBackGraphicUrl(SavePath)
256*cdf0e10cSrcweir
257*cdf0e10cSrcweir	BulletUrlsToSavePath(SavePath)
258*cdf0e10cSrcweir
259*cdf0e10cSrcweir    udProps = oBaseDocument.DocumentProperties.UserDefinedProperties
260*cdf0e10cSrcweir    udProps.addProperty(&quot;AutoPilotName1&quot;, 0, &quot;&quot;)
261*cdf0e10cSrcweir    udProps.addProperty(&quot;AutoPilotName2&quot;, 0, &quot;&quot;)
262*cdf0e10cSrcweir    udProps.addProperty(&quot;AutoPilotBullet&quot;, 0, &quot;&quot;)
263*cdf0e10cSrcweir    udProps.addProperty(&quot;AutoPilotBackground&quot;, 0, &quot;&quot;)
264*cdf0e10cSrcweir
265*cdf0e10cSrcweir	AttachBasicMacroToEvent(oBaseDocument,&quot;OnSaveDone&quot;, &quot;&quot;)
266*cdf0e10cSrcweir	AttachBasicMacroToEvent(oBaseDocument,&quot;OnSaveAsDone&quot;, &quot;&quot;)
267*cdf0e10cSrcweir	AttachBasicMacroToEvent(oBaseDocument,&quot;OnNew&quot;, &quot;&quot;)
268*cdf0e10cSrcweir	oBaseDocument.Store
269*cdf0e10cSrcweir&apos;	oBaseDocument.UnlockControllers()
270*cdf0e10cSrcweirEnd Sub
271*cdf0e10cSrcweir
272*cdf0e10cSrcweir
273*cdf0e10cSrcweirFunction CopyFile(ByVal SourceUrl as String, TargetDir as String)
274*cdf0e10cSrcweirDim sFileName as String
275*cdf0e10cSrcweirDim sNewFileUrl as String
276*cdf0e10cSrcweir	If oUcb.Exists(TargetDir) Then
277*cdf0e10cSrcweir		If Len(TargetDir) &gt; 2 Then
278*cdf0e10cSrcweir			sFileName = FileNameoutofPath(SourceUrl)
279*cdf0e10cSrcweir			sNewFileUrl = TargetDir &amp; sFileName
280*cdf0e10cSrcweir			oUcb.Copy(SourceUrl, sNewFileUrl)
281*cdf0e10cSrcweir			CopyFile() = sNewFileUrl
282*cdf0e10cSrcweir		End If
283*cdf0e10cSrcweir	End If
284*cdf0e10cSrcweirEnd Function
285*cdf0e10cSrcweir
286*cdf0e10cSrcweir
287*cdf0e10cSrcweirFunction getListBoxArrays(oUcb as Object, sFileFilter as String)
288*cdf0e10cSrcweirDim oDocProps as Object
289*cdf0e10cSrcweirDim oListboxControl as Object
290*cdf0e10cSrcweirDim Description as String
291*cdf0e10cSrcweirDim sField as String
292*cdf0e10cSrcweirDim sFieldList() as String
293*cdf0e10cSrcweirDim bItemFound as Boolean
294*cdf0e10cSrcweirDim MaxIndex as Integer
295*cdf0e10cSrcweirDim DirContent() as String
296*cdf0e10cSrcweirDim FileName as String
297*cdf0e10cSrcweirDim TemplatePath as String
298*cdf0e10cSrcweirDim FilterLen as Integer
299*cdf0e10cSrcweirDim i as Integer
300*cdf0e10cSrcweirDim m as Integer
301*cdf0e10cSrcweirDim n as Integer
302*cdf0e10cSrcweirDim s as Integer
303*cdf0e10cSrcweirDim a as Integer
304*cdf0e10cSrcweirDim LocMaxIndex as Integer
305*cdf0e10cSrcweirDim Properties()
306*cdf0e10cSrcweirDim DimCount as Integer
307*cdf0e10cSrcweirDim sExtension as String
308*cdf0e10cSrcweir	oDocProps = CreateUnoService(&quot;com.sun.star.document.DocumentProperties&quot;)
309*cdf0e10cSrcweir	FilterLen = Len(sFileFilter)
310*cdf0e10cSrcweir	bItemFound = False
311*cdf0e10cSrcweir	&apos; It has to be made sure that the TemplatePath &lt;&gt; &quot;&quot;
312*cdf0e10cSrcweir	TemplatePath = GetOfficeSubPath(&quot;Template&quot;, &quot;wizard/web/&quot;)
313*cdf0e10cSrcweir	If TemplatePath = &quot;&quot; Then
314*cdf0e10cSrcweir		Dim NullList()
315*cdf0e10cSrcweir		getListBoxArrays() = NullList()
316*cdf0e10cSrcweir		Exit Function
317*cdf0e10cSrcweir	End If
318*cdf0e10cSrcweir	DirContent() = oUcb.GetFolderContents(TemplatePath,True)
319*cdf0e10cSrcweir	If sFileFilter = &quot;/cnt&quot; Then
320*cdf0e10cSrcweir		DimCount = 2
321*cdf0e10cSrcweir	Else
322*cdf0e10cSrcweir		DimCount = 8
323*cdf0e10cSrcweir	End If
324*cdf0e10cSrcweir	LocMaxIndex = Ubound(DirContent())
325*cdf0e10cSrcweir	Dim List(LocMaxIndex, DimCount) as String
326*cdf0e10cSrcweir	Dim SortList(LocMaxIndex,1)
327*cdf0e10cSrcweir	For i = 0 to LocMaxIndex
328*cdf0e10cSrcweir		SortList(i,0) = DirContent(i)
329*cdf0e10cSrcweir		SortList(i,1) = RetrieveDocTitle(oDocProps, DirContent(i))
330*cdf0e10cSrcweir	Next i
331*cdf0e10cSrcweir	SortList() = BubbleSortList(SortList(),True)
332*cdf0e10cSrcweir	For i = 0 to LocMaxIndex
333*cdf0e10cSrcweir		DirContent(i) = SortList(i,0)
334*cdf0e10cSrcweir	Next i
335*cdf0e10cSrcweir	a = 0
336*cdf0e10cSrcweir	For i = 0 To LocMaxIndex
337*cdf0e10cSrcweir		FileName = DirContent(i)
338*cdf0e10cSrcweir		sExtension = Ucase(GetFileNameExtension(FileName))
339*cdf0e10cSrcweir		If Instr(1,Filename, sFileFilter) And sExtension = &quot;STW&quot; Then
340*cdf0e10cSrcweir			bItemFound = True
341*cdf0e10cSrcweir			Description = RetrieveDocTitle(oDocProps, FileName)
342*cdf0e10cSrcweir			Properties = oDocProps.UserDefinedProperties.PropertyValues
343*cdf0e10cSrcweir			List(a,1) = Description
344*cdf0e10cSrcweir			If sFileFilter = &quot;/cnt&quot; Then
345*cdf0e10cSrcweir				List(a,2) = Filename
346*cdf0e10cSrcweir			Else
347*cdf0e10cSrcweir				m = 2
348*cdf0e10cSrcweir				For n = 0 To 3
349*cdf0e10cSrcweir					sField = Properties(n).Value
350*cdf0e10cSrcweir					sFieldList() = ArrayoutofString(sField, &quot; &quot;, MaxIndex)
351*cdf0e10cSrcweir					For s = 0 To MaxIndex
352*cdf0e10cSrcweir						If m &lt; 6 Then
353*cdf0e10cSrcweir					        List(a,m) = sFieldList(s) &amp; &quot;.gif&quot;
354*cdf0e10cSrcweir						Else
355*cdf0e10cSrcweir					        List(a,m) = sFieldList(s)
356*cdf0e10cSrcweir						End If
357*cdf0e10cSrcweir						m = m + 1
358*cdf0e10cSrcweir					Next s
359*cdf0e10cSrcweir				Next n
360*cdf0e10cSrcweir				List(a,8) = FileName
361*cdf0e10cSrcweir			End If
362*cdf0e10cSrcweir			a = a + 1
363*cdf0e10cSrcweir		End If
364*cdf0e10cSrcweir	Next i
365*cdf0e10cSrcweir	If sFileFilter = &quot;/cnt&quot; Then
366*cdf0e10cSrcweir		ReDim Preserve List(a-1,2) as String
367*cdf0e10cSrcweir	Else
368*cdf0e10cSrcweir		ReDim Preserve List(a-1,8) as String
369*cdf0e10cSrcweir	End If
370*cdf0e10cSrcweir	If Not bItemfound Then
371*cdf0e10cSrcweir		MsgBox(WebWiz_gErrContentNotFound$, 16, WebWiz_gWizardName$)
372*cdf0e10cSrcweir		DisposeDocument(oBaseDocument)
373*cdf0e10cSrcweir		Stop
374*cdf0e10cSrcweir	End If
375*cdf0e10cSrcweir	getListBoxArrays = List()
376*cdf0e10cSrcweirEnd Function
377*cdf0e10cSrcweir
378*cdf0e10cSrcweir
379*cdf0e10cSrcweirSub SetGraphic(sWhich, sGraphicText as String)
380*cdf0e10cSrcweirDim oLocCursor as Object
381*cdf0e10cSrcweirDim oGraphic as Object
382*cdf0e10cSrcweirDim bGetGraphic as Boolean
383*cdf0e10cSrcweir	oBookmarks = oBaseDocument.BookMarks
384*cdf0e10cSrcweir	If oBookmarks.HasbyName(sWhich)Then
385*cdf0e10cSrcweir		oBookMark = oBookmarks.GetbyName(sWhich)
386*cdf0e10cSrcweir		oLocCursor = oBookMark.Anchor.Text.CreateTextCursorByRange(oBookMark.Anchor)
387*cdf0e10cSrcweir		oGraphic = oBaseDocument.CreateInstance(&quot;com.sun.star.text.GraphicObject&quot;)
388*cdf0e10cSrcweir		oLocCursor.GoRight(3,True)
389*cdf0e10cSrcweir		oGraphic.AnchorType = 1
390*cdf0e10cSrcweir		oGraphic.GraphicURL = ConverttoURL(sGraphicText)
391*cdf0e10cSrcweir		oLocCursor.Text.InsertTextContent(oLocCursor, oGraphic, True)
392*cdf0e10cSrcweir		oGraphic.Name = sWhich
393*cdf0e10cSrcweir	ElseIf oBaseDocument.GraphicObjects.HasbyName(sWhich) Then
394*cdf0e10cSrcweir		oGraphic = oBaseDocument.GraphicObjects.GetByName(sWhich)
395*cdf0e10cSrcweir		oGraphic.GraphicUrl = sGraphicText
396*cdf0e10cSrcweir	End If
397*cdf0e10cSrcweirEnd Sub
398*cdf0e10cSrcweir
399*cdf0e10cSrcweir
400*cdf0e10cSrcweirSub CheckControls(oDrawPage as Object)
401*cdf0e10cSrcweirDim aForm as Object
402*cdf0e10cSrcweirDim m,n as integer
403*cdf0e10cSrcweirDim lColor as Long
404*cdf0e10cSrcweirDim oControl as Object
405*cdf0e10cSrcweir	lColor = oBaseDocument.StyleFamilies.GetbyName(&quot;ParagraphStyles&quot;).GetByName(&quot;Standard&quot;).CharColor
406*cdf0e10cSrcweir	&apos;SearchFor all possible Controls
407*cdf0e10cSrcweir	For n = 0 to oDrawPage.Forms.Count - 1
408*cdf0e10cSrcweir		aForm = oDrawPage.Forms(n)
409*cdf0e10cSrcweir		For m = 0 to aForm.Count-1
410*cdf0e10cSrcweir			oControl = aForm.GetbyIndex(m)
411*cdf0e10cSrcweir			oControl.TextColor = lColor
412*cdf0e10cSrcweir		Next
413*cdf0e10cSrcweir	Next
414*cdf0e10cSrcweirEnd Sub
415*cdf0e10cSrcweir
416*cdf0e10cSrcweir
417*cdf0e10cSrcweirSub RepaintHeaderPreview()
418*cdf0e10cSrcweirDim Bitmap As Object
419*cdf0e10cSrcweirDim sBitmapPath as String
420*cdf0e10cSrcweir	sBitmapPath = SOBitmapPath &amp; &quot;webwizard.bmp&quot;
421*cdf0e10cSrcweir	WebWzrd.ImagePreview.ImageURL = sBitmapPath
422*cdf0e10cSrcweirEnd Sub
423*cdf0e10cSrcweir
424*cdf0e10cSrcweir
425*cdf0e10cSrcweirSub ToggleDialogControls(ByVal bDoEnable as Boolean, Optional FocusControlName as String)
426*cdf0e10cSrcweir	If Not IsNull(DialogModel) Then
427*cdf0e10cSrcweir		DialogModel.Enabled = bDoEnable
428*cdf0e10cSrcweir		If bDoEnable Then
429*cdf0e10cSrcweir			&apos; Enable Controls referring to Background graphic only when this Property is set
430*cdf0e10cSrcweir			bDoEnable = bWithBackGraphic
431*cdf0e10cSrcweir			ToggleOptionButtons(DialogModel, bDoEnable)
432*cdf0e10cSrcweir			MainDialog.GetControl(FocusControlName).SetFocus()
433*cdf0e10cSrcweir		End If
434*cdf0e10cSrcweir	End If
435*cdf0e10cSrcweirEnd Sub
436*cdf0e10cSrcweir</script:module>
437