*:*********************************************************************************************************
*:     Procedure file: PRAZDNY_ADRESAR.PRG
*:
*:             parametrem je jmeno adresare (kompletni cesta)
*:             pokud adresar existuje, jsou vsechny soubory v nem smazany (nikoli podadresare), jinak je vytvoren
*: 2012-12-04: pokud je pouzit libovolny druhy parametr, jsou smazany i podadresare
*:
*:*********************************************************************************************************
LPARAMETERS cesta_mk, i_podadresdare
cesta_mk = cesta_mk + IIF(RIGHT(m.cesta_mk, 1)="\", "", "\")

IF DIRECTORY(m.cesta_mk)

    crea table (m.pri_path + "soubory") (adresar c(222), atrib c(1), delka n(11))
    do jedenadresar with m.cesta_mk

    IF .not. EMPTY(i_podadresdare)
        do while .t.
          locate for "D" $ atrib .and. delka = 0
          if found()
             repl delka with -1111111
             do jedenadresar with allt(adresar) + "\"
          else
             exit
          endif
        enddo
    ENDIF 

    INDEX on LEN(ALLTRIM(adresar)) TAG delka DESCENDING
    SCAN
       TRY 
          IF atrib = "D"
              RMDIR ALLTRIM(adresar)
          ELSE
              ERASE ALLTRIM(adresar)
          ENDIF 
       CATCH
           ? ALLTRIM(adresar) + " nejde smazat"
       ENDTRY 
    ENDSCAN 
    USE 

ELSE 
    MKDIR(m.cesta_mk)
ENDIF
vysledek = " ... OK"


* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
proc jedenadresar
param adresar
pocet = adir(qqq, m.adresar + "*.*", "D")
for ii = 1 to m.pocet
  if left(qqq(ii, 1), 1) # "."
     insert into soubory (adresar, atrib, delka) ;
        value (lowe(m.adresar)+lowe(qqq(ii, 1)), iif("D" $ qqq(ii, 5), "D", ""), qqq(ii, 2))
  endif
endfor
