'$lang: "qb"
Rem                             $CONTROLE.BAS
REM                              ==========


    qot$ = CHR$(34)
    l$ = COMMAND$
    IF l$ = "" THEN l$ = "?"
    OPEN "a", 7, "dir$.$$$"
    OPEN "i", 6, "photo.htm"

reini:
    IF EOF(6) THEN GOTO finin:  ELSE LINE INPUT #6, ds$
    If Command$ = "" Then ds$ = LCase$(ds$)
    dse$=ds$
    GoSub boucle.0
    dse$=ds$
    GoSub boucle.1
    dse$=ds$
    GoSub boucle.2
    dse$=ds$
    GoSub boucle.3
    dse$=ds$
    GoSub boucle.4
    GOTO reini
ouvrir:
	 If o=1 Then Return
    OPEN "a", 6, "$controle.txt"
    o=1
    Return
trait.2:
    OPEN "i", 7, "dir$.$t$"
    marque.fin$="##################"
    GoSub lect.2    
    ds1$ = ds2$
    ds1s$ = ds2s$
    GoSub lect.2    

trait.2s:
Rem    GoSub ouvrir
Rem    Print #6,ds1$,ds2$
    If ds1$ = marque.fin$ Then Return
    
    If ds1s$ = ds2s$ Then 
   	 GoSub lect.2
    	 GoSub lect.2
    	 GoTo trait.2s
    EndIf
    
  	 If InStr(ds1$,"\")<>0 Then 
  	  	 GoSub lect.2
       GoTo trait.2s
  	 EndIf 
  	 If InStr(ds1$,"/")<>0 Then 
  	  	 GoSub lect.2
       GoTo trait.2s
  	 EndIf 

  	 If ds1$ <> ds1s$ Then
  	 	   GoSub ouvrir
    		Print #6, "--- ";ds1s$	 
  	 		GoSub lect.2
    		GoTo trait.2s
  	 EndIf

    If InStr(ds1$,":Titre")=0 Then
  	         GoSub ouvrir
  	 	 		Print #6, " +  ";ds1$
    EndIf 
  	 
  	 GoSub lect.2
    GoTo trait.2s


lect.2:
    ds1$ = ds2$
    ds1s$ = ds2s$
    IF ds1$ = marque.fin$ Then
    	 ds2$ = marque.fin$
     	 ds2s$ = marque.fin$
       Return
    EndIf
lect.2s:    
    IF EOF(7) THEN 
    	ds2$=marque.fin$
    	ds2s$=marque.fin$
      Return
    ELSE 
    	LINE INPUT #7, ds2$
    EndIf
    If LCase$(Mid$(ds2$,1,5)) = "dir$." Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,10)) = "$controle." Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,6)) = "photo." Then GoTo lect.2s
    If LCase$(Mid$(ds2$,2,6)) = "photo." Then GoTo lect.2s
    If LCase$(ds2$) = "precede.jpg" Then GoTo lect.2s
    If LCase$(ds2$) = "suivant.jpg" Then GoTo lect.2s
    If LCase$(ds2$) = "descript.ion" Then GoTo lect.2s

    If LCase$(Mid$(ds2$,1,17)) = "javascript:bouton" Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,7)) = "mailto:" Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,7)) = "http://" Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,3)) = "..\" Then GoTo lect.2s
    If InStr(LCase$(ds2$), ".bat") <> 0 Then GoTo lect.2s
    If InStr(LCase$(ds2$), ".exe") <> 0 Then GoTo lect.2s
    If LCase$(Mid$(ds2$,1,4)) = "$d$." Then GoTo lect.2s

    If ds1$ = ds2$ Then GoTo lect.2

    t = InStr(ds2$, " *HTM*")
    If t = 0 Then ds2s$=ds2$: Return
    ds2s$= Mid$(ds2$,1,t-1)  
	 Return	

finin:
    Close 6
    CLOSE 7
    Dir$ = "dir *.* /a-d /b /o n>>dir$.$$$"
    If Command$ = "" Then Dir$ = "dir *.* /a-d /b /o /l n>>dir$.$$$"
Rem    Shell Dir$
    tri$="sort dir$.$$$ /o dir$.$t$"
    Shell tri$
    GoSub trait.2
    If o=1 Then CLOSE 6
    CLOSE 7

fin:    
    END

 
Rem background="
Rem <A Href="#
Rem <A Name="
Rem <A Href="
Rem <Img Src="  
 
boucle.0:
    t = INSTR(dse$, "background="+qot$)
    If t = 0 Then Return
    dse$=Mid$(dse$,t+12)
    GoSub extrac
    Print #7, nn$;" *HTM*"
    GoTo boucle.0


boucle.1:
    t = INSTR(LCase$(dse$), "<a href="+qot$+"#")
    If t = 0 Then Return
    dse$=Mid$(dse$,t+10)
    GoSub extrac
    Print #7, nn$;":Titre *HTM*"
    GoTo boucle.1

boucle.2:
    t = INSTR(LCase$(dse$), "a name="+qot$)
    If t = 0 Then Return
    dse$=Mid$(dse$,t+8)
    GoSub extrac
    If nn$ <> "" Then Print #7, nn$;":Titre"
    GoTo boucle.2
    
boucle.3:
    t = INSTR(LCase$(dse$), "<a href="+qot$)
    If t = 0 Then Return
    dse$=Mid$(dse$,t+9)
    GoSub extrac
    If Mid$(nn$,1,1) <> "#" Then Print #7, nn$;" *HTM*"
    GoTo boucle.3

boucle.4:
    t = INSTR(LCase$(dse$), "<img src="+qot$)
    If t = 0 Then Return
    dse$=Mid$(dse$,t+10)
    GoSub extrac
    Print #7, nn$;" *HTM*"
    GoTo boucle.4

extrac:
     t = INSTR(dse$, qot$)
     nn$=Mid$(dse$,1,t-1)
     Return
============================================= C R O S S - R E F E R E N C E =============================================
separateurs # ,;()=<>+\
commandes #defint#$include#call#command$#time$#sound#space$#date$#return#shell#chr$#rem#print#lcase$#ucase$#open#close#if#on#then#goto#gosub#eof#line#input#instr#val#mid$#len#asc#lprint#do#while#wend##play#int#beep#kill#end#else#dim#for#or#and#not#next#to#select#case#str$#elseif#endif#width#cls#
sauf #a-z#
============================================= C R O S S - R E F E R E N C E =============================================
Nom    Ligne Paragraphe
====== ===== ============================================================================================================
 ------------------------------------------------- liste des paragraphes ------------------------------------------------
boucle.0	0016 reini
boucle.0	0136 fin
boucle.0	0142 boucle.0
boucle.1	0018 reini
boucle.1	0145 boucle.0
boucle.1	0151 boucle.1
boucle.2	0020 reini
boucle.2	0153 boucle.1
boucle.2	0159 boucle.2
boucle.3	0022 reini
boucle.3	0161 boucle.2
boucle.3	0167 boucle.3
boucle.4	0024 reini
boucle.4	0169 boucle.3
boucle.4	0175 boucle.4
extrac	0140 boucle.0
extrac	0149 boucle.1
extrac	0157 boucle.2
extrac	0165 boucle.3
extrac	0173 boucle.4
extrac	0177 boucle.4
fin	0126 finin
finin	0013 reini
finin	0114 lect.2s
lect.2	0034 trait.2
lect.2	0037 trait.2
lect.2	0045 trait.2s
lect.2	0046 trait.2s
lect.2	0051 trait.2s
lect.2	0055 trait.2s
lect.2	0071 trait.2s
lect.2	0075 trait.2s
lect.2	0107 lect.2s
lect.2s	0083 lect.2
lect.2s	0091 lect.2s
lect.2s	0092 lect.2s
lect.2s	0093 lect.2s
lect.2s	0094 lect.2s
lect.2s	0095 lect.2s
lect.2s	0096 lect.2s
lect.2s	0097 lect.2s
lect.2s	0099 lect.2s
lect.2s	0100 lect.2s
lect.2s	0101 lect.2s
lect.2s	0102 lect.2s
lect.2s	0103 lect.2s
lect.2s	0104 lect.2s
lect.2s	0105 lect.2s
ouvrir	0026 reini
ouvrir	0060 trait.2s
ouvrir	0067 trait.2s
reini	0012 
reini	0025 reini
trait.2	0031 ouvrir
trait.2	0122 finin
trait.2s	0039 trait.2
trait.2s	0047 trait.2s
trait.2s	0052 trait.2s
trait.2s	0056 trait.2s
trait.2s	0072 trait.2s
 ----------------------------------------- liste des variables alphanumeriques ------------------------------------------
	ds2$	0085 lect.2s
	ds2s$	0086 lect.2s
Dir$	0117 finin
Dir$	0118 finin
ds$	0013 reini
ds$	0014 reini
ds$	0014 reini
ds$	0015 reini
ds$	0017 reini
ds$	0019 reini
ds$	0021 reini
ds$	0023 reini
ds1$	0035 trait.2
ds1$	0042 trait.2s
ds1$	0050 trait.2s
ds1$	0054 trait.2s
ds1$	0059 trait.2s
ds1$	0066 trait.2s
ds1$	0068 trait.2s
ds1$	0076 lect.2
ds1$	0078 lect.2
ds1$	0107 lect.2s
ds1s$	0036 trait.2
ds1s$	0044 trait.2s
ds1s$	0059 trait.2s
ds1s$	0077 lect.2
ds2$	0035 trait.2
ds2$	0076 lect.2
ds2$	0079 lect.2
ds2$	0089 lect.2s
ds2$	0091 lect.2s
ds2$	0092 lect.2s
ds2$	0093 lect.2s
ds2$	0094 lect.2s
ds2$	0095 lect.2s
ds2$	0096 lect.2s
ds2$	0097 lect.2s
ds2$	0099 lect.2s
ds2$	0100 lect.2s
ds2$	0101 lect.2s
ds2$	0102 lect.2s
ds2$	0103 lect.2s
ds2$	0104 lect.2s
ds2$	0105 lect.2s
ds2$	0107 lect.2s
ds2$	0109 lect.2s
ds2$	0110 lect.2s
ds2$	0111 lect.2s
ds2s$	0036 trait.2
ds2s$	0044 trait.2s
ds2s$	0077 lect.2
ds2s$	0080 lect.2
ds2s$	0110 lect.2s
ds2s$	0111 lect.2s
dse$	0015 reini
dse$	0017 reini
dse$	0019 reini
dse$	0021 reini
dse$	0023 reini
dse$	0137 boucle.0
dse$	0139 boucle.0
dse$	0139 boucle.0
dse$	0146 boucle.1
dse$	0148 boucle.1
dse$	0148 boucle.1
dse$	0154 boucle.2
dse$	0156 boucle.2
dse$	0156 boucle.2
dse$	0162 boucle.3
dse$	0164 boucle.3
dse$	0164 boucle.3
dse$	0170 boucle.4
dse$	0172 boucle.4
dse$	0172 boucle.4
dse$	0178 extrac
dse$	0179 extrac
l$	0007 
l$	0008 
l$	0008 
marque.fin$	0033 trait.2
marque.fin$	0042 trait.2s
marque.fin$	0078 lect.2
marque.fin$	0079 lect.2
marque.fin$	0080 lect.2
marque.fin$	0085 lect.2s
marque.fin$	0086 lect.2s
nn$	0141 boucle.0
nn$	0150 boucle.1
nn$	0158 boucle.2
nn$	0158 boucle.2
nn$	0166 boucle.3
nn$	0166 boucle.3
nn$	0174 boucle.4
nn$	0179 extrac
qot$	0006 
qot$	0137 boucle.0
qot$	0146 boucle.1
qot$	0154 boucle.2
qot$	0162 boucle.3
qot$	0170 boucle.4
qot$	0178 extrac
tri$	0120 finin
tri$	0121 finin
 -------------------------------------------- liste des variables numeriques --------------------------------------------
		0027 ouvrir
		0045 trait.2s
		0046 trait.2s
		0047 trait.2s
		0050 trait.2s
		0051 trait.2s
		0051 trait.2s
		0053 trait.2s
		0054 trait.2s
		0055 trait.2s
		0055 trait.2s
		0057 trait.2s
		0059 trait.2s
		0060 trait.2s
		0060 trait.2s
		0062 trait.2s
		0064 trait.2s
		0067 trait.2s
		0068 trait.2s
		0068 trait.2s
		0070 trait.2s
		0071 trait.2s
		0079 lect.2
		0080 lect.2
		0112 lect.2s
		GoSub	0062 trait.2s
		GoTo	0063 trait.2s
		Print	0061 trait.2s
		Print	0068 trait.2s
	LINE	0089 lect.2s
ds1s$		0061 trait.2s
lect.2	0062 trait.2s
o	0027 ouvrir
o	0029 ouvrir
o	0123 finin
Return		0112 lect.2s
t-1	0111 lect.2s
t-1	0179 extrac
t	0109 lect.2s
t	0110 lect.2s
t	0137 boucle.0
t	0138 boucle.0
t	0139 boucle.0
t	0146 boucle.1
t	0147 boucle.1
t	0148 boucle.1
t	0154 boucle.2
t	0155 boucle.2
t	0156 boucle.2
t	0162 boucle.3
t	0163 boucle.3
t	0164 boucle.3
t	0170 boucle.4
t	0171 boucle.4
t	0172 boucle.4
t	0178 extrac
trait.2s	0063 trait.2s
 ---------------------------------------- liste des constantes alphanumeriques ------------------------------------------
"--- "	0061 trait.2s
" *HTM*"	0109 lect.2s
" *HTM*"	0141 boucle.0
" *HTM*"	0166 boucle.3
" *HTM*"	0174 boucle.4
" +  "	0068 trait.2s
""	0008 
""	0014 reini
""	0118 finin
""	0158 boucle.2
"#"	0146 boucle.1
"#"	0166 boucle.3
"##################"	0033 trait.2
"$controle."	0092 lect.2s
"$controle.txt"	0028 ouvrir
"$d$."	0105 lect.2s
"..\"	0102 lect.2s
".bat"	0103 lect.2s
".exe"	0104 lect.2s
"/"	0054 trait.2s
"?"	0008 
"\"	0050 trait.2s
"<a href="	0146 boucle.1
"<a href="	0162 boucle.3
"<img src="	0170 boucle.4
":Titre *HTM*"	0150 boucle.1
":Titre"	0066 trait.2s
":Titre"	0158 boucle.2
"a name="	0154 boucle.2
"a"	0009 
"a"	0028 ouvrir
"background="	0137 boucle.0
"descript.ion"	0097 lect.2s
"dir *.* /a-d /b /o /l n>>dir$.$$$"	0118 finin
"dir *.* /a-d /b /o n>>dir$.$$$"	0117 finin
"dir$."	0091 lect.2s
"dir$.$$$"	0009 
"dir$.$t$"	0032 trait.2
"http://"	0101 lect.2s
"i"	0010 
"i"	0032 trait.2
"javascript:bouton"	0099 lect.2s
"mailto:"	0100 lect.2s
"photo."	0093 lect.2s
"photo."	0094 lect.2s
"photo.htm"	0010 
"precede.jpg"	0095 lect.2s
"sort dir$.$$$ /o dir$.$t$"	0120 finin
"suivant.jpg"	0096 lect.2s
 ------------------------------------------- liste des constantes numeriques --------------------------------------------
0	0050 trait.2s
0	0054 trait.2s
0	0066 trait.2s
0	0103 lect.2s
0	0104 lect.2s
0	0110 lect.2s
0	0138 boucle.0
0	0147 boucle.1
0	0155 boucle.2
0	0163 boucle.3
0	0171 boucle.4
1	0027 ouvrir
1	0029 ouvrir
1	0091 lect.2s
1	0092 lect.2s
1	0093 lect.2s
1	0099 lect.2s
1	0100 lect.2s
1	0101 lect.2s
1	0102 lect.2s
1	0105 lect.2s
1	0111 lect.2s
1	0123 finin
1	0166 boucle.3
1	0166 boucle.3
1	0179 extrac
10	0092 lect.2s
10	0148 boucle.1
10	0172 boucle.4
12	0139 boucle.0
17	0099 lect.2s
2	0094 lect.2s
3	0102 lect.2s
34	0006 
4	0105 lect.2s
5	0091 lect.2s
6	0010 
6	0013 reini
6	0013 reini
6	0028 ouvrir
6	0061 trait.2s
6	0068 trait.2s
6	0093 lect.2s
6	0094 lect.2s
6	0115 finin
6	0123 finin
7	0009 
7	0032 trait.2
7	0084 lect.2s
7	0089 lect.2s
7	0100 lect.2s
7	0101 lect.2s
7	0116 finin
7	0124 finin
7	0141 boucle.0
7	0150 boucle.1
7	0158 boucle.2
7	0166 boucle.3
7	0174 boucle.4
8	0156 boucle.2
9	0164 boucle.3
'$lang: "qb"	0001 
 ------------------------------------------------ liste des commentaires ------------------------------------------------
REM                              ==========	0003 
Rem                             $CONTROLE.BAS	0002 
Rem    GoSub ouvrir	0040 trait.2s
Rem    Print #6,ds1$,ds2$	0041 trait.2s
Rem    Shell Dir$	0119 finin
Rem <A Href="	0133 fin
Rem <A Href="#	0131 fin
Rem <A Name="	0132 fin
Rem <Img Src="  	0134 fin
Rem background="	0130 fin
 
 
 
================================================ ORPHELINS & NON UNIQUES ================================================
 ------------------------------------------------- liste des paragraphes ------------------------------------------------
fin (orphelin)
 ----------------------------------------- liste des variables alphanumeriques ------------------------------------------
 -------------------------------------------- liste des variables numeriques --------------------------------------------
ds1s$ (orphelin)
lect.2 (orphelin)
Return (orphelin)
trait.2s (orphelin)
 ---------------------------------------- liste des constantes alphanumeriques ------------------------------------------
" *HTM*" (non unique, 4fois)
"" (non unique, 4fois)
"#" (non unique, 2fois)
"<a href=" (non unique, 2fois)
":Titre" (non unique, 2fois)
"a" (non unique, 2fois)
"i" (non unique, 2fois)
"photo." (non unique, 2fois)
 ------------------------------------------- liste des constantes numeriques --------------------------------------------
0 (non unique, 11fois)
1 (non unique, 15fois)
10 (non unique, 3fois)
6 (non unique, 10fois)
7 (non unique, 13fois)
 ------------------------------------------------ liste des commentaires ------------------------------------------------
============================================= C R O S S - R E F E R E N C E =============================================
