#!/bin/bash

# sh-a-gal (shell picture gallery maker)
# 
# wersja nie do rozpowszechniania
# najnowsza wersja bedzie dostepna na stronie http://odya.net/proj/shagal/
#
# TODO:
# - dodac wszedzie sprawdzanie bledow
# - dodac obsluge podkatalogow
# - dopracowac wykorzystanie wielowatkowosci
# - dorobic tryb interaktywny (pytanie o rozdzielczosci, tworzenie miniatur itp.)
# - dorobic polska/angielska wersje plus polskie znaki na wygenerowanych stronach www
#

fname="index.html"
opisfile="opis.txt"
res="800x600"        # WIDTHxHEIGHT
resthumb="200x150"   # WIDTHxHEIGHT
cssurl="http://odya.net/ico/album.css" # full URL, absolute or relative, i.e. http://some/place.css, /some/place.css or some/place.css
info_o_archiwum=0    # dodaje informacje i link o archiwum ze wszystkimi plikami
tworz_archiwum=0     # tworzy archiwum ze wszystkimi zdjeciami
tworz_miniatury=1    # tworzy miniatury (w katalogu /thumbs)
tworz_pomniejszone=1 # tworzy pomniejszone zdjecia (w katalogu /medium)
quality=85	     # jakosc pomniejszonych zdjec (w procentach)
verbose=0	     # gadatliwosc
kumaj_filmy=0        # obsluga filmow (pokazuja sie na liscie)
kumaj_opis=1         # obsluga plikow z opisami galerii
cam_logo="cam.png"   # nazwa pliku z miniatura pokazywana na filmach

#clear
# -------------------------- lepiej nie zmieniaj nic pod ta linia -----------

C_GREEN="\033[1;32;40m"
C_CLEAR="\033[1;0m"
C_RED="\033[1;31;40m"
C_MAG="\033[1;36;40m"
C_PINK="\033[1;35;40m"
C_GREY="\033[1;30;40m"
C_HWHITE="\033[1;37;40m"


[ "$1" == "-i" ] \
 && { echo -e "${C_HWHITE}INFO:Tryb interaktywny...${C_CLEAR}"
    for a in tworz_pomniejszone quality verbose kumaj_filmy kumaj_opis cam_logo opisfile fname res resthumb info_o_archiwum tworz_archiwum tworz_miniatury ; do
    echo -en "Zmienna ${C_HWHITE}$a${C_CLEAR}, domyslna wartosc: ${C_HWHITE}${!a}${C_CLEAR}:\t"
    read a
    done
    }

[ "$1" == "-r" ] \
 && { echo -e "${C_HWHITE}INFO: Reczne obracanie zdjec${C_CLEAR}"
    [ $# -ne 3 ] && ( echo -e "${C_RED}ERR: Niepoprawna ilosc parametrow\nSkladania:\n\t$0 -r L/R file.jpg${C_CLEAR}"; exit; )
#    echo -en "Zmienna ${C_HWHITE}$a${C_CLEAR}, domyslna wartosc: ${C_HWHITE}${!a}${C_CLE
    case $2 in
	[lL]) deg=270;;
	[rR]) deg=90;;
	*) echo -e "${C_RED}ERR: Niepoprawny kierunek obracania - R/L${C_CLEAR}"; exit ;;
	esac
    nazwa="$3"
    orig="`echo $nazwa|sed 's/.jpg/_orig.jpg/'`"
    while [ -f "$orig" ];
    do
      echo -e "${C_MAG}Plik $orig istnieje, dodaje \"_orig\" do nazwy.${C_CLEAR}" 
      orig="`echo $orig|sed 's/.jpg/_orig.jpg/'`"
    done
    mv "$nazwa" "$orig"
    echo -e "Obracam zdjecie ${C_HWHITE}$nazwa${C_CLEAR}"
    convert -rotate $deg "`echo $nazwa|sed 's/.jpg/_orig.jpg/'`" "$nazwa"
    exit
    }

netver=`wget -T 1 -t 1 -O- -q http://odya.net/proj/shagal/VERSION`
prodname="shagal"
prodver="0.3.3"
prod="$prodname $prodver"
produrl="http://odya.net/proj/shagal/"

echo -e "${C_HWHITE}INFO:\t${prod}${C_CLEAR}"
[[ -z $netver ]] && \
echo -e "INFO:\tSprawdzanie dostepnosci nowszej wersji skryptu nie powiodlo sie.\n\tPrawdopodobnie nie ma dostepu do internetu." || ( \
 [[ `echo $netver|awk -F: '{print $1}'|tr -d \.` -gt `echo $prodver|tr -d \.` ]] && \
 echo -e "INFO:\tDostepna jest nowsza wersja skryptu. Mozesz ja pobrac automatycznie (przelacznik -u) lub recznie,\n\tze strony $produrl" || echo -e "INFO:\t${C_HWHITE}Posiadasz najnowsza wersje skryptu.${C_CLEAR}"; )


[ "$1" == "-u" ] \
 && { echo -e "${C_HWHITE}INFO: Pobieranie najnowszej wersji skryptu"
    urlfilename="`echo $netver|awk -F: '{print $2}'`"
    wget "$produrl/$urlfilename" -o tttmp
    [ -f "$urlfilename" ] && echo "Prawdopodobnie masz juz najnowsza wersje skryptu" || cp tttmp "$urlfilename"
    rm tttmp
    chmod +x "$urlfilename"
    exit
    }


time1=`date +%s`
cpus1=`grep processor /proc/cpuinfo 2> /dev/null | wc -l ` ; cpus2=`sysctl kern.threads.virtual_cpu 2> /dev/null |awk {'print $2'}`
[[ -n $cpus1 ]] && cpus=$cpus1 				  ; [[ -n $cpus2 ]] && cpus=$cpus2
#naglowek=`echo -e "<html><body><head>\n<style type=\"text/css\">\nIMG { font-style: normal; text-decoration: none; color: #000000; font-weight: bold; margin: 3px;}\n</style>\n</head>"`
nagloweklista=`echo -e "<html><head>\n<link rel=stylesheet href=\"$cssurl\">\n</head><body id=\"poczatek\">"`
naglowekpikczer=`echo -e "<html><head>\n<link rel=stylesheet href=\"$cssurl\">\n</head><body id=\"poczatek\">"`

echo $cssurl | grep -q ^/ || echo $cssurl | grep -q "tp://" || naglowekpikczer=`echo -e "<html><head>\n<link rel=stylesheet href=\"../$cssurl\">\n</head><body id=\"poczatek\">"`

data=`date +"%Y/%m/%d %T"`
resx=`echo $res|awk -Fx '{print $1}'` 		; resy=`echo $res|awk -Fx '{print $2}'`
resthumbx=`echo $resthumb|awk -Fx '{print $1}'` ; resthumby=`echo $resthumb|awk -Fx '{print $2}'`


which jhead 1> /dev/null \
  || { echo -e "${C_RED}ERR:\tNie znaleziono programu JHEAD wykorzystywanego do pozyskiwania danych EXIF.${C_CLEAR} Mozna go pobrac ze strony http://www.sentex.net/~mwandel/jhead/"; exit 1; }
[ -d thumbs ] || mkdir thumbs ; [ -d medium ] || mkdir medium

which convert 1> /dev/null \
  || { echo -e "${C_RED}ERR:\tNie znaleziono programu CONVERT. Konczenie pracy...${C_CLEAR}"; exit 1; }

[ $kumaj_filmy -ne 0 ] && { which composite 2> /dev/null \
  || { echo -e "${C_RED}ERR:\tNie znaleziono programu COMPOSITE. Konczenie pracy...${C_CLEAR}"; exit 1; } }
[ $kumaj_filmy -ne 0 ] && { [ -f mediaplayer/mediaplayer.swf ] || { echo -e "${C_RED}ERR:\tNie znaleziono pliku mediaplayer.swf w katalogu ./mediaplayer/\n\tUmiesc odpowiedni plik w biezacym katalogu\n\tUmiesc odpowiedni plik lub wylacz obsluge filmow. Konczenie pracy...${C_CLEAR}"; exit 1; } }
[ $kumaj_filmy -ne 0 ] && { [ -f mediaplayer/swfobject.js ] || { echo -e "${C_RED}ERR:\tNie znaleziono pliku swfobject.js w katalogu ./mediaplayer/\n\tUmiesc odpowiedni plik lub wylacz obsluge filmow. Konczenie pracy...${C_CLEAR}"; exit 1; } }
  
[ -d thumbs ] || mkdir thumbs ; [ -d medium ] || mkdir medium

cnt=0
for ren in `find . -maxdepth 1 -type f -iname "*.jpg" -o -iname "*.jpeg"|sed 's/ /___spAce___/g'`;
 do
  toren=`echo $ren|sed 's/___spAce___/ /g'`
  echo "$toren" | grep -q ".jpg$" || \
      {
      newname="`echo $toren|sed 's/[jJ][pP].*[gG]$/jpg/'`"
      [ -f "$newname" ] && newname="`echo $newname|sed 's/.jpg/_.jpg/'`"
      mv "$toren" "`echo $newname|sed 's/___spAce___/ /g'`"
      } 

 done

[ $kumaj_filmy -ne 0 ] && { \
   for ren in `find . -maxdepth 1 -type f -iname "*.avi"|sed 's/ /___spAce___/g'`;
    do
  toren=`echo $ren|sed 's/___spAce___/ /g'`
     echo "$toren" | grep -q ".avi$" || \
      {
      newname="`echo $toren|sed 's/[aA][vV][iI]$/avi/'`"
      [ -f $newname ] && newname="`echo $newname|sed 's/.avi/_.avi/'`"
      mv "$toren" "$newname"
      } 
    done 
   }

echo -ne "INFO:\tWykryto procesorow: $cpus"; [ $cpus -gt 1 ] || echo " (przetwarzanie bez pracy w tle)" && echo " (przetwarzanie z praca w tle)"
[ $info_o_archiwum -ne 0 ] && echo -e "OPCJE:\tZ informacja (linkiem) o archiwum" || echo -e "OPCJE:\tBez informacji (linku) o archiwum" 
[ $tworz_archiwum  -ne 0 ] && echo -e "OPCJE:\tTworzenie archiwum" || echo -e "OPCJE:\tArchiwum nie zostanie utworzone" 
[ $tworz_miniatury -ne 0 ] && echo -e "OPCJE:\tTworzenie miniatur" || echo -e "OPCJE:\tMiniatury nie zostana utworzone" 
[ $tworz_pomniejszone -ne 0 ] && echo -e "OPCJE:\tTworzenie pomniejszonych zdjec" || echo -e "OPCJE:\tZdjecia pomniejszone nie zostana utworzone" 

echo $nagloweklista > $fname

# ------------------------------------------------------
pwd=`pwd`; nazwatar="`basename $pwd`.tar";
echo "-----------------------------------------------------------------------"

cnt=0;
for a in `find . -maxdepth 1 -name "*.jpg" -o -name "*.avi" -type f|grep -v "_orig.jpg"|sort|sed 's/ /___spAce___/g'` ; do \
    pliki[$cnt]="`echo $a|sed 's/___spAce___/ /g'`"; cnt=$(($cnt+1)); done

echo "<a href=\"..\"><img src=\"/icons/back.png\" border=0></a>" >> $fname
echo -e "<font size=\"+2\">| Liczba zdjec w tym albumie: ${#pliki[@]}, laczna objetosc `du -hc *.jpg *.avi 2> /dev/null | tail -n 1 | awk '{print $1}'`B</font>" >> $fname

[[ $info_o_archiwum -eq 1 ]] && { echo -e "<a href="$nazwatar">pobierz wszystkie jako archiwum</a>" >> $fname ; }
echo -e "<hr size=1 noshade>"  >> $fname
[ $kumaj_opis -ne 0 ] && [ -s $opisfile ] && { echo "<p>">>$fname; cat $opisfile >> $fname; echo "</p>">>$fname; }
echo "<div class=\"kontener\">" >> $fname

cnt=0;

while [ $cnt -lt ${#pliki[@]} ] ; do
 nazwa="`echo ${pliki[$cnt]}|cut -c 3-`"

 echo -e "${C_MAG}$(($cnt+1))/${#pliki[@]}${C_CLEAR}\t$(($cnt*100/${#pliki[@]}))% \tplik: ${C_GREEN}$nazwa${C_CLEAR}"
 
# dla zdjec:
echo "$nazwa"|grep -q jpg$ && {




# obracanie
orient=`jhead -v "$nazwa" 2> /dev/null | grep -i orientation | head -n 1|tr -d \ |cut -d\= -f2 `
[ $orient -eq 6 ] &> /dev/null \
 && 	{ echo -e "\t\trotate +90 (090)";
	  mv "$nazwa" "`echo $nazwa|sed 's/.jpg/_orig.jpg/'`"
	  convert -rotate 90 "`echo $nazwa|sed 's/.jpg/_orig.jpg/'`" "$nazwa"
	}
[ $orient -eq 8 ] &> /dev/null \
 && 	{ echo -e "\t\trotate -90 (270)";
	  mv "$nazwa" "`echo $nazwa|sed 's/.jpg/_orig.jpg/'`"
	  convert -rotate 270 "`echo $nazwa|sed 's/.jpg/_orig.jpg/'`" "$nazwa"
	}




[[ $tworz_miniatury -eq 1 ]] && { [ $verbose -eq 1 ] && echo -ne "\tTworze miniature - thumbnail (res $resthumb)... ";
				  [[ $cpus -gt 1 ]] && ( [ $verbose -eq 1 ] && echo "(w tle)"; convert "$nazwa" -resize $resthumb -size $resthumb xc:black +swap -gravity center -composite -quality 80% "thumbs/$nazwa" & ) \
				  	            || ( convert "$nazwa" -resize $resthumb -size $resthumb xc:black +swap -gravity center -composite -quality 80% "thumbs/$nazwa" && [ $verbose -eq 1 ] && [ $verbose -eq 1 ] && echo -e "${C_PINK}DONE${C_CLEAR}" ; )
	                        }
[[ $tworz_pomniejszone -eq 1 ]] && {  [ $verbose -eq 1 ] && [ $verbose -eq 1 ] && echo -ne "\tTworze pomniejszony obraz (res $res)... "; convert "$nazwa" -resize $res -quality ${quality} "medium/$nazwa" && [ $verbose -eq 1 ] && echo -e "${C_PINK}DONE${C_CLEAR}" || [ $verbose -eq 1 ] ; }
 producentaparatu=`jhead "$nazwa" | grep "Camera make" | awk -F\: '{print $2}' | cut -c 2-  | tr [:upper:] [:lower:]| sed 's/eastman kodak company//; s/hewlett-packard company //'`
 modelaparatu=`jhead "$nazwa" | grep "Camera model" | awk -F\: '{print $2}' | cut -c 2- | sed 's/DIGITAL CAMERA//'| sed 's/DIGITAL CAM//' | tr [:upper:] [:lower:]`
 wykonano=`jhead "$nazwa" | grep "Date/Time" | cut -c 16-`
 resmed=`jhead "medium/$nazwa" | grep "Resolution" | cut -c 16- | tr -d \ `
 resmedx=`echo $resmed|awk -Fx '{print $1}'`
 resmedy=`echo $resmed|awk -Fx '{print $2}'`
 nazwapliku=`echo $nazwa | tr + \  | sed 's/.jpg//' | cut -c -40`
 picfilename="medium/`echo $nazwa|sed 's/.jpg/.html/'`"

# echo -e "<div style=\"display: block; float: left; font-family: arial; font-size: 9px; text-align: center;\">" >> $fname
# echo -e "\t<a href=\"medium/$nazwa\"><img src=\"thumbs/$nazwa\" width=$resthumbx height=$resthumby border=1></a><br>\n\t$nazwapliku&nbsp;&nbsp;<br>" >> $fname
 echo -e "\t<div class=\"fota\" id=\"fota_$cnt\"><a href=\"$picfilename\"><img src=\"thumbs/$nazwa\" width=$resthumbx height=$resthumby border=1></a><br>\n\t$nazwapliku&nbsp;" >> $fname
 echo -e "\t<div><span class=\"opisthumbnrzdjecia\">$(($cnt+1))</span><span class=\"opisthumb\">$producentaparatu&nbsp;$modelaparatu</span></div></div>" >> $fname
 # <span class=\"fullres\"><a href=$nazwa target=_NEW>fullres</a></span>
 
 echo -e "\n\r\n\r" >> "$picfilename"

# echo -e "</div>" >> $fname

 echo "$naglowekpikczer<center>" > "$picfilename"
 
 cntP=$(($cnt-1))
 cntN=$(($cnt+1))
 [[ $cntP -lt 0 ]]            && { poprz="<span class=\"buttonL poprzedniBW\">poprzedni</span>"; } || { poprzedniplik=`echo ${pliki[$cntP]}|sed 's/.jpg/.html/' |sed 's/.avi/.html/'`; poprz="<a href=\"$poprzedniplik\" class=\"buttonL poprzedni\">poprzedni</a>"; }
 [[ $cntN -ge ${#pliki[@]} ]] && { nast="<span class=\"buttonP nastepnyBW\">nastepny</span>"; }   || { nastepnyplik=`echo ${pliki[$cntN]}|sed 's/.jpg/.html/' |sed 's/.avi/.html/'`; nast="<a href=\"$nastepnyplik\" class=\"buttonP nastepny\">nastepny</a>"; }
# echo "<a href=\"$poprzedniplik\" class=\"button powrot\">poprzedni</a> | <a href=\"..\">powrot</a> | <a href=\"../$nazwa\">full res</a> | <a href=\"$nastepnyplik\">nastepny</a><br>$(($cnt+1))/${#pliki[@]} :: $producentaparatu&nbsp;$modelaparatu :: $wykonano :: $nazwa<br><img src=\"$nazwa\" width=$resmedx height=$resmedy>" >> "$picfilename"
 echo "<div class=\"guziki\">$poprz | <a href=\"../$fname#fota_$cnt\" class=\"buttonL powrot\">powrot</a> | <a href=\"../$nazwa\" class=\"buttonL full\">full res</a> | $nast</div>" >> "$picfilename"
 echo "<div class=\"opis\">$(($cnt+1))/${#pliki[@]} :: $producentaparatu&nbsp;$modelaparatu :: $wykonano :: $nazwa<br><img src=\"$nazwa\" width=$resmedx height=$resmedy class=\"fotamedium\"></div>" >> "$picfilename"
 echo -e "\n\n<table cellspacing=0 cellpadding=0>" >> "$picfilename"
 jhead "${nazwa}" | sed 's/^/<tr><td><font size=-2>/'| sed 's/: /<\/<\/font><td><td><font size=-2>\&nbsp;/' | sed 's/$/<\/font><\/td><\/tr>/' >> "$picfilename"
 echo "</table></center></body></html>" >> "$picfilename"
}
# koniec dla zdjec

# dla wideo:
echo $nazwa|grep -q avi$ && {
 nazwapliku=`echo $nazwa | tr + \  | sed 's/.avi//' | cut -c -42`
 picfilename="medium/`echo $nazwa|sed 's/.avi/.html/'`"
 flvfilename="medium/`echo $nazwa|sed 's/.avi/.flv/'`"
 flvlowfilename="medium/`echo $nazwa|sed 's/.avi/_low.flv/'`"

 mplayer -really-quiet $nazwa  -ss 1 -frames 1 -vo jpeg
 vidresx=`mplayer -identify -nosound -endpos 0:0:0 -really-quiet $nazwa 2> /dev/null|grep ^ID_VIDEO_WIDTH|cut -d \= -f2`
 vidresy=`mplayer -identify -nosound -endpos 0:0:0 -really-quiet $nazwa  2> /dev/null|grep ^ID_VIDEO_HEIGHT|cut -d \= -f2`
 vidlength=`mplayer -identify  -nosound -endpos 0:0:0 -really-quiet $nazwa  2> /dev/null|grep ^ID_LENGTH|cut -d \= -f2|cut -d \. -f1`
 
 convert 00000001.jpg -resize $resthumb -size $resthumb xc:black +swap -gravity center -composite -quality 80% "thumbs/$nazwa.jpg.jpg"
 composite  -gravity southeast $cam_logo "thumbs/$nazwa.jpg.jpg" "thumbs/$nazwa.jpg"
 rm -f 00000001.jpg "thumbs/$nazwa.jpg.jpg"
 mencoder $nazwa -o $flvfilename -of lavf -oac mp3lame -ovc lavc -srate 22050 -lameopts br=32 -lavcopts vcodec=flv:vbitrate=500:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -srate 22050
 mencoder $nazwa -o $flvlowfilename -of lavf -oac mp3lame -ovc lavc -srate 22050 -vf scale=320:240 -lameopts br=32 -lavcopts acodec=twolame:abitrate=48:vcodec=flv:vbitrate=40:mbd=2:mv0:trell:v4mv:cbp:last_pred=3 -srate 22050




 echo -e "\t<div class=\"fota\" id=\"fota_$cnt\"><a href=\"$picfilename\"><img src=\"thumbs/$nazwa.jpg\" width=$resthumbx height=$resthumby border=1></a><br>\
n\t$nazwapliku&nbsp;" >> $fname
 echo -e "\t<div><span class=\"opisthumbnrzdjecia\">$(($cnt+1))</span><span class=\"opisthumb\">KLIP WIDEO</span></div></div>" >> $fname

 echo "$naglowekpikczer<center>" > "$picfilename"
 echo "<script type=\"text/javascript\" src=\"/proj/shagal/mediaplayer/swfobject.js\"></script>" >> "$picfilename"
# echo -n "<div class=\"guziki\"><a href=\"../$fname#fota_$cnt\" class=\"buttonL powrot\">powrot</a><br><br>" >> "$picfilename"
 cntP=$(($cnt-1))
 cntN=$(($cnt+1))
 [[ $cntP -lt 0 ]]            && { poprz="<span class=\"buttonL poprzedniBW\">poprzedni</span>"; } || { poprzedniplik=`echo ${pliki[$cntP]}|sed 's/.jpg/.html/' |sed 's/.avi/.html/'`; poprz="<a href=\"$poprzedniplik\" class=\"buttonL poprzedni\">poprzedni</a>"; }
 [[ $cntN -ge ${#pliki[@]} ]] && { nast="<span class=\"buttonP nastepnyBW\">nastepny</span>"; }   || { nastepnyplik=`echo ${pliki[$cntN]}|sed 's/.jpg/.html/' |sed 's/.avi/.html/'`; nast="<a href=\"$nastepnyplik\" class=\"buttonP nastepny\">nastepny</a>"; }
 echo -n "<div class=\"guziki\">$poprz | <a href=\"../$fname#fota_$cnt\" class=\"buttonL powrot\">powrot</a> | <a href=\"../$nazwa\" class=\"buttonL full\">full res</a> | $nast</div><br><br>" >> "$picfilename"


 echo "Czas trwania: $vidlength s, rozdzielczosc pliku zrodlowego: $vidresx" >> "$picfilename"
 echo "x$vidresy<br><br>" >> $picfilename

 echo "Klip w niskiej rozdzielczosci<br><p id=\"player_lores\"><a href=\"http://www.macromedia.com/go/getflashplayer\">Get the Flash Player</a> to see this pl
ayer.</p>
<script type=\"text/javascript\">
        var s2 = new SWFObject(\"../mediaplayer/mediaplayer.swf\",\"mpl\",\"320\",\"260\",\"9\");
        s2.addParam(\"allowfullscreen\",\"true\");
        s2.addParam(\"quality\",\"high\");
        s2.addParam(\"wmode\",\"opaque\");
        s2.addParam(\"flashvars\",\"&file=../$flvlowfilename&image=../thumbs/$nazwa.jpg\");
        s2.write(\"player_lores\");
</script></p>" >> "$picfilename"

echo "Klip w wysokiej rozdzielczosci<br><p id=\"player_hires\"><a href=\"http://www.macromedia.com/go/getflashplayer\">Get the Flash Player</a> to see this pl
ayer.</p>
<script type=\"text/javascript\">
        var s2 = new SWFObject(\"../mediaplayer/mediaplayer.swf\",\"mpl\",\"640\",\"500\",\"9\");
        s2.addParam(\"allowfullscreen\",\"true\");
        s2.addParam(\"quality\",\"high\");
        s2.addParam(\"wmode\",\"opaque\");
        s2.addParam(\"flashvars\",\"&file=../$flvfilename&image=../thumbs/$nazwa.jpg\");
        s2.write(\"player_hires\");
</script></p>" >> "$picfilename"


 echo -e "\n\r" >> "$picfilename"
 wielkoscoryginalu=`du -h $nazwa|awk '{print $1}'`
 echo -n "<a href=\"../$nazwa\">Pobierz klip w formacie AVI  (prawy guzik, zapisz jako...)</a><br>Informacje o pliku: czas trwania: $vidlength s, rozdzielczos
c: $vidresx">> "$picfilename"
 echo "x$vidresy, objetosc: $wielkoscoryginalu<br></center></body></html>" >> "$picfilename"

}
# koniec dla wideo

 cnt=$(($cnt+1));

 done


# zamkniecie kontenera
echo "</div>" >> $fname

time2=`date +%s`
time=$(($time2 - $time1))
echo -e "<div style=\"clear: both; font-family: verdana; font-size: 9px;\"><br><hr size=1 noshade><a href=\"#poczatek\">Powrot na poczatek strony</a><br><font size=1>Generated <b>$data</b> in <b>$time seconds</b> by <a href=\"$produrl\"><b>$prod</b></a></font></div>" >> $fname
echo "</body></html>" >> $fname


[[ $tworz_archiwum -eq 1 ]] && { tar -rf "$nazwatar" ${pliki[@]} ; }

# ------------------------------------------
