User Tools

Site Tools


project:bioosm:start

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
project:bioosm:start [2023/04/24 16:46] – geojson support + fixes sachyproject:bioosm:start [2023/09/21 12:15] (current) – render terminal/html escapes sachy
Line 105: Line 105:
 # Parse Tellico database to BioOSM index.htm # Parse Tellico database to BioOSM index.htm
 # $1 = tellico .tc file # $1 = tellico .tc file
-# Print result to /json/*.json+# $2 = "" terminal stderr (default) 
 +#    = "html" html marked stderr (for web bioosm) 
 +
 +# Print result to /jsonrss/*.json 
 +
 +# find ./ -type f -name '*.jpg' -newermt "2023-09-03" -exec mogrify -verbose -layers Dispose -resize 1600\>x1600\> -quality 90% {} + 
 +# echo "14.7345 48.7145" | gdallocationinfo -wgs84 ./cesko_big.tiff 
 +# gdal_translate -of GTiff -a_srs WGS84 -a_ullr 11.6863 50.9745 19.9876 48.3729 ./source.tif ./result.tif 
 +# https://data.geus.dk/egdi/#baslay=baseMapGEUS&extent=3953440,2399890,4757540,2763830&layers=igme5000 
 + 
 +#bnds=new OpenLayers.Bounds(11.6863000,48.3729000 ,19.9876000,50.9745000); 
 +#var geoimg = new OpenLayers.Layer.Image("geo","https://brmlab.s0c4.net/bioosm/eusr5000_600dpi_cesko.png", bnds,bnds.getSize(),{numZoomLevels: 20,isBaseLayer:false}); 
 +#map.addLayer(geoimg); 
 + 
 + 
 +
 +# <iframe width="500" height="500" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://www.openstreetmap.org/export/embed.html?bbox=14.978000%2C49.990000%2C15.022000%2C50.010000&amp;layer=mapnik&amp;marker=50.000000%2C15.000000"></iframe> 
 +# // vectorLayer.removeFeatures(atol) 
 +# // map.removeLayer(vectorLayer) 
 +#
 # #
 # Creates: # Creates:
Line 141: Line 160:
 rss+=$'<pubDate></pubDate>\n' rss+=$'<pubDate></pubDate>\n'
 rss+=$'<ttl>86400</ttl>\n' rss+=$'<ttl>86400</ttl>\n'
 +
 +errhtml="$2"
  
 # paticka (co, rok, odkaz) # paticka (co, rok, odkaz)
 function obioosm () { function obioosm () {
- r="<div id='obioosm'><p>Welcome to BioOSM! This site is owned and maintained by members of the <a href='https://brmlab.cz' target='_blank'>hackerspace brmlab</a>. See our wiki page for further <a href='https://brmlab.cz/project/bioosm/start' target='_blank'>details</a><br>License: <a href='https://creativecommons.org/licenses/by-nc-nd/4.0/' target='_blank'>CC BY-NC-ND</a>. In case you have any questions, suggestions, please let us know at bioosm<span id='zavinacvmejlu'></span>s0c4.net.</p><p>To cite any material (including images) in your publication, please use following format: <br><i>Plskova K, Sacha M, brmlab. BioOSM"+ r="<div id='obioosm'><p>Welcome to BioOSM! This site is owned and maintained by members of the <a href='https://brmlab.cz' target='_blank'>hackerspace brmlab</a>. See our wiki page for further <a href='https://brmlab.cz/project/bioosm/start' target='_blank'>details</a><br>License: <a href='https://creativecommons.org/licenses/by-nc-nd/4.0/' target='_blank'>CC BY-NC-ND</a>. In case you have any questions, suggestions, please let us know at bioosm<span id='zavinacvmejlu'></span>s0c4.net.</p><p>To cite any material (including images) in your publication, please use following format: <br><i>PlskovaK., SachaM., brmlab. BioOSM"
  if [[ "$1" != "" ]]; then  if [[ "$1" != "" ]]; then
  r+=" - $1"  r+=" - $1"
Line 161: Line 182:
  r+="</i></p></div>"  r+="</i></p></div>"
  echo "$r"  echo "$r"
 +}
 +
 +# HTML fajl per project
 +function genhtml() {
 + o=$(obioosm "$1" "" "" | sed -e 's/\//\\\//g') # make "\/" from "/" so sed below is OK
 + h=$(cat "./__BIOVZOR__.htm" | sed -e "s/__BIOVZOR_TIT__/$1/g" | sed -e "s/__BIOVZOR_CPRT__/$o/g" | sed -e "s/__BIOVZOR_J__/$1/g")
 + echo "$h" > "./jsonrss/$1.htm"
 + echo "*** $1 done ***"
 } }
  
Line 188: Line 217:
  
 function getgeo () { function getgeo () {
- g=$(echo "$1 $2" | gdallocationinfo -wgs84 ./geo/eusr5000_600dpi_cesko_8b_geo.tif | grep -v 255 | grep -oPe '[0-9]+$')+ #g=$(echo "$1 $2" | gdallocationinfo -wgs84 ./geo/eusr5000_600dpi_cesko_8b_geo.tif | grep -v 255 | grep -oPe '[0-9]+$'
 + g=$(echo "$1 $2" | gdallocationinfo -wgs84 ./geo/eusr5000_600dpi_cesko_8b_geo.tif | grep -v 255 | grep -oE '[0-9]+$')
  case "$g" in  case "$g" in
  "1")  "1")
Line 226: Line 256:
 # $3 = icon of the points # $3 = icon of the points
 function spagety () { function spagety () {
 +
 + if [[ "$errhtml" == "" ]]; then
 + >&2 echo "===== $2 ====="
 + else
 + >&2 echo "<h2>$2</h2>"
 + fi
  
  bylo="" # Minula pozice  bylo="" # Minula pozice
Line 245: Line 281:
  fi  fi
  
- entryid=$(echo "$radek"grep -oPe '<entry id="[0-9]+">' | grep -oPe '[0-9]+') + entryid=$(echo "$radek"sed -'s/^.*<entry id="([0-9]+)">.*$/\1/g;t;d') 
- co=$(echo "$radek"grep -oe <title>.*</title> ' | sed -E 's/( )*<(\/)?title>( )*//g')+ co=$(echo "$radek"sed -'s/^.*<title>(.*)<\/title>.*$/\1/g;t;d')
  co=$(safehtml "$co")  co=$(safehtml "$co")
- obr=$(echo "$radek"grep -oe ' <image>.*</image> ' | sed -E 's/( )*<(\/)?image>( )*//g' | grep -oPe '[^/]*$') + obr=$(echo "$radek"sed -'s/^.*<image>(.*)<\/image>.*$/\1/g;t;d' | sed -E 's/^.*\///g'
- kde=$(echo "$radek"grep -oe '<locality>.*</locality>' | grep -oPe '[0-9]+\.[0-9]+[, ]*[0-9]+\.[0-9]+')+ kde=$(echo "$radek"sed -'s/^.*<locality>(.*)<\/locality>.*$/\1/g;t;d')
  kde=$(safehtml "$kde")  kde=$(safehtml "$kde")
- kdex=$(echo "$kde"grep -oPe '[0-9]+\.[0-9]+$') + kdex=$(echo "$kde"sed -'s/^[0-9]+\.[0-9]+[, ]*//g;t;d'# keep second part 
- kdex=$(safehtml "$kdex") + kdey=$(echo "$kde"sed -'s/[, ]*[0-9]+\.[0-9]+$//g;t;d'# keep first part 
- kdey=$(echo "$kde"grep -oPe '^[0-9]+\.[0-9]+') + kdy=$(echo "$radek"sed -'s/^.*<taken-date>(.*)<\/taken-date>.*$/\1/g;t;d' | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]{4})/\3-\2-\1/g' | sed -E 's/-([0-9])-/-0\1-/g' | sed -E 's/-([0-9])$/-0\1/g')
- kdey=$(safehtml "$kdey") +
- kdy=$(echo "$radek"grep -oe <taken-date>.*</taken-date> ' | sed -E 's/( )*<(\/)?taken-date>( )*//g' | sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]{4})/\3-\2-\1/g' | sed -E 's/-([0-9])-/-0\1-/g' | sed -E 's/-([0-9])$/-0\1/g')+
  kdy=$(safehtml "$kdy")  kdy=$(safehtml "$kdy")
- skop_typ=$(echo "$radek"grep -oe <new-field-1>.*</new-field-1> ' | sed -E 's/( )*<(\/)?new-field-1>( )*//g')+ skop_typ=$(echo "$radek"sed -'s/^.*<new-field-1>(.*)<\/new-field-1>.*$/\1/g;t;d')
  skop_typ=$(safehtml "$skop_typ")  skop_typ=$(safehtml "$skop_typ")
- skop=$(echo "$radek"grep -oe <microscope>.*</microscope> ' | sed -E 's/( )*<(\/)?microscope>( )*//g')+ skop=$(echo "$radek"sed -'s/^.*<microscope>(.*)<\/microscope>.*$/\1/g;t;d')
  skop=$(safehtml "$skop")  skop=$(safehtml "$skop")
- imp=$(echo "$radek"grep -oe <new-field-3>.*</new-field-3> ' | sed -E 's/)*<(\/)?new-field-3>( )*//g')+ imp=$(echo "$radek"sed -'s/^.*<new-field-3>(.*)<\/new-field-3>.*$/\1/g;t;d')
  imp=$(safehtml "$imp")  imp=$(safehtml "$imp")
- reg=$(echo "$radek"grep -oe <new-field-4>.*</new-field-4> ' | sed -E 's/)*<(\/)?new-field-4>( )*//g')+ reg=$(echo "$radek"sed -'s/^.*<new-field-4>(.*)<\/new-field-4>.*$/\1/g;t;d')
  reg=$(safehtml "$reg")  reg=$(safehtml "$reg")
- phy=$(echo "$radek"grep -oe <phylum>.*</phylum> ' | sed -E 's/( )*<(\/)?phylum>( )*//g')+ phy=$(echo "$radek"sed -'s/^.*<phylum>(.*)<\/phylum>.*$/\1/g;t;d')
  phy=$(safehtml "$phy")  phy=$(safehtml "$phy")
- cla=$(echo "$radek"grep -oe <class>.*</class> ' | sed -E 's/( )*<(\/)?class>( )*//g')+ cla=$(echo "$radek"sed -'s/^.*<class>(.*)<\/class>.*$/\1/g;t;d')
  cla=$(safehtml "$cla")  cla=$(safehtml "$cla")
- ord=$(echo "$radek"grep -oe <order>.*</order> ' | sed -E 's/( )*<(\/)?order>( )*//g')+ ord=$(echo "$radek"sed -'s/^.*<order>(.*)<\/order>.*$/\1/g;t;d')
  ord=$(safehtml "$ord")  ord=$(safehtml "$ord")
- fam=$(echo "$radek"grep -oe <family>.*</family> ' | sed -E 's/( )*<(\/)?family>( )*//g')+ fam=$(echo "$radek"sed -'s/^.*<family>(.*)<\/family>.*$/\1/g;t;d')
  fam=$(safehtml "$fam")  fam=$(safehtml "$fam")
- gen=$(echo "$radek"grep -oe <genus>.*</genus> ' | sed -E 's/( )*<(\/)?genus( )*>//g')+ gen=$(echo "$radek"sed -'s/^.*<genus>(.*)<\/genus>.*$/\1/g;t;d')
  gen=$(safehtml "$gen")  gen=$(safehtml "$gen")
- spe=$(echo "$radek"grep -oe <species>.*</species> ' | sed -E 's/( )*<(\/)?species>( )*//g')+ spe=$(echo "$radek"sed -'s/^.*<species>(.*)<\/species>.*$/\1/g;t;d')
  spe=$(safehtml "$spe")  spe=$(safehtml "$spe")
- loc=$(echo "$radek"grep -oe <locality---plaintext>.*</locality---plaintext> ' | sed -E 's/)*<(\/)?locality---plaintext>( )*//g')+ loc=$(echo "$radek"sed -'s/^.*<locality---plaintext>(.*)<\/locality---plaintext>.*$/\1/g;t;d')
  loc=$(safehtml "$loc")  loc=$(safehtml "$loc")
- des=$(echo "$radek"grep -oe <description>.*</description> ' | sed -E 's/( )*<(\/)?description>( )*//g')+ des=$(echo "$radek"sed -'s/^.*<description>(.*)<\/description>.*$/\1/g;t;d')
  des=$(safehtml "$des")  des=$(safehtml "$des")
- vid=$(echo "$radek"grep -oe <videolink>.*</videolink> ' | sed -E 's/( )*<(\/)?videolink>( )*//g')+ vid=$(echo "$radek"sed -'s/^.*<videolink>(.*)<\/videolink>.*$/\1/g;t;d')
  vid=$(safehtml "$vid")  vid=$(safehtml "$vid")
- bio=$(echo "$radek"grep -oe <biotope>.*</biotope> ' | sed -E 's/( )*<(\/)?biotope>( )*//g')+ bio=$(echo "$radek"sed -'s/^.*<biotope>(.*)<\/biotope>.*$/\1/g;t;d')
  bio=$(safehtml "$bio")  bio=$(safehtml "$bio")
- eng=$(echo "$radek"grep -oe <enlargement>.*</enlargement> ' | sed -E 's/( )*<(\/)?enlargement>( )*//g')+ eng=$(echo "$radek"sed -'s/^.*<enlargement>(.*)<\/enlargement>.*$/\1/g;t;d')
  eng=$(safehtml "$eng")  eng=$(safehtml "$eng")
- obs=$(echo "$radek"grep -oe <observer>.*</observer> ' | sed -E 's/( )*<(\/)?observer>( )*//g')+ obs=$(echo "$radek"sed -'s/^.*<observer>(.*)<\/observer>.*$/\1/g;t;d')
  obs=$(safehtml "$obs")  obs=$(safehtml "$obs")
- lnk=$(echo "$radek"grep -oe <localitylink>.*</localitylink> ' | sed -E 's/( )*<(\/)?localitylink>( )*//g')+ lnk=$(echo "$radek"sed -'s/^.*<localitylink>(.*)<\/localitylink>.*$/\1/g;t;d')
  lnk=$(safehtml "$lnk")  lnk=$(safehtml "$lnk")
- har=$(echo "$radek"grep -oe <harvesting-method>.*</harvesting-method> ' | sed -E 's/)*<(\/)?harvesting-method>( )*//g'+ har=$(echo "$radek"sed -'s/^.*<harvesting-method>(.*)<\/harvesting-method>.*$/\1/g;t;d') 
- den=$(echo "$radek"grep -oe <population-density>.*</population-density> ' | sed -E 's/( )*<(\/)?population-density>( )*//g'+ den=$(echo "$radek"sed -'s/^.*<population-density>(.*)<\/population-density>.*$/\1/g;t;d') 
- dur=$(echo "$radek"grep -oe <min>.*</min> ' | sed -E 's/( )*<(\/)?min>( )*//g'+ dur=$(echo "$radek"sed -'s/^.*<min>(.*)<\/min>.*$/\1/g;t;d') 
- lor=$(echo "$radek"grep -oe <locality-reference>.*</locality-reference> ' | sed -E 's/( )*<(\/)?locality-reference>( )*//g'+ lor=$(echo "$radek"sed -'s/^.*<locality-reference>(.*)<\/locality-reference>.*$/\1/g;t;d') 
- lrl=$(echo "$radek"grep -oe <locality-reference---link>.*</locality-reference---link> ' | sed -E 's/( )*<(\/)?locality-reference---link>( )*//g'+ lrl=$(echo "$radek"sed -'s/^.*<locality-reference---link>(.*)<\/locality-reference---link>.*$/\1/g;t;d') 
- lov=$(echo "$radek"grep -oe ' <locality---vobrazek>.*</locality---vobrazek> ' | sed -E 's/( )*<(\/)?locality---vobrazek>( )*//g' | grep -oPe '[^/]*$')+ lov=$(echo "$radek"sed -'s/^.*<locality---vobrazek>(.*)<\/locality---vobrazek>.*$/\1/g;t;d' | sed -E 's/^.*\///g')
  lov=$(safehtml "$lov")  lov=$(safehtml "$lov")
- cls=$(echo "$radek"grep -oe <cluster>.*</cluster> ' | grep -oPe '[0-9]*')+ cls=$(echo "$radek"sed -'s/^.*<cluster>([0-9]*)<\/cluster>.*$/\1/g;t;d')
  mpi=$(echo "$radek" | grep -oe ' <mainpic>yep</mainpic> ')  mpi=$(echo "$radek" | grep -oe ' <mainpic>yep</mainpic> ')
- elv=$(echo "$kdex $kdey" | gdallocationinfo -wgs84 ./elev/cesko_big.tiff | grep "Value" | grep -oPe '[0-9]+$')+ elv=$(echo "$kdex $kdey" | gdallocationinfo -wgs84 ./elev/cesko_big.tiff | grep "Value" | grep -oe '[0-9]+$')
  geo=$(getgeo "$kdex" "$kdey")  geo=$(getgeo "$kdex" "$kdey")
- gra=$(echo "$radek"grep -oe <grant>.*</grant> ' | sed -E 's/)*<(\/)?grant>( )*//g'+ gra=$(echo "$radek"sed -'s/^.*<grant>(.*)<\/grant>.*$/\1/g;t;d') 
- tem=$(echo "$radek"grep -oe <temperature>.*</temperature> ' | sed -E 's/( )*<(\/)?temperature>( )*//g'+ tem=$(echo "$radek"sed -'s/^.*<temperature>(.*)<\/temperature>.*$/\1/g;t;d') 
- cnd=$(echo "$radek"grep -oe <conductivity>.*</conductivity> ' | sed -E 's/( )*<(\/)?conductivity>( )*//g'+ cnd=$(echo "$radek"sed -'s/^.*<conductivity>(.*)<\/conductivity>.*$/\1/g;t;d') 
- ph=$(echo "$radek"grep -oe <ph>.*</ph> ' | sed -E 's/( )*<(\/)?ph>( )*//g'+ ph=$(echo "$radek"sed -'s/^.*<ph>(.*)<\/ph>.*$/\1/g;t;d') 
- kar=$(echo "$radek"grep -oe <karyotype>.*</karyotype> ' | sed -E 's/( )*<(\/)?karyotype>( )*//g'+ kar=$(echo "$radek"sed -'s/^.*<karyotype>(.*)<\/karyotype>.*$/\1/g;t;d') 
- lid=$(echo "$radek"grep -oe <localityid>.*</localityid> ' | sed -E 's/)*<(\/)?localityid>( )*//g')+ lid=$(echo "$radek"sed -'s/^.*<localityid>(.*)<\/localityid>.*$/\1/g;t;d')
  
- # >&2 echo "$co - $har - $den - $dur - $lor - $lrl - $lov - $elv"+# if [[ "$errhtml" == "" ]]; then 
 +# >&2 echo "$co - $har - $den - $dur - $lor - $lrl - $lov - $elv" 
 +# else 
 +# >&2 echo "<span class='nok'>$co - $har - $den - $dur - $lor - $lrl - $lov - $elv</span><br>" 
 +# fi 
 +# continue;
  
  detid=$(echo "brmlab$co$obr$kde$kdy" | md5sum | grep -oe '[a-zA-Z0-9]*')  detid=$(echo "brmlab$co$obr$kde$kdy" | md5sum | grep -oe '[a-zA-Z0-9]*')
  
  if [[ "$kdex" = "" ]]; then  if [[ "$kdex" = "" ]]; then
- >&2 echo -e "\033[31m $lid KDEX '$kde' '$co' \033[0m" + if [[ "$errhtml" == "" ]]; then 
- >&2 echo -e "\033[31m $lid RADEK '$radek' \033[0m" + >&2 echo -e "\033[31m $lid KDEX '$kde' '$co' \033[0m" 
- continue;+ >&2 echo -e "\033[31m $lid RADEK '$radek' \033[0m" 
 + else 
 + >&2 echo "<span class='nok'>$lid KDEX '$kde' '$co'</span><br>" 
 + >&2 echo "<span class='nok'><pre>$radek</pre></span>" 
 + fi
  fi  fi
 +
  zkurvenetellico=$(echo "$obr" | grep -oe '\.[a-zA-Z]*$')  zkurvenetellico=$(echo "$obr" | grep -oe '\.[a-zA-Z]*$')
  odkurvenyobr=$(echo "$obr" | sed -e 's/%23/#/g')  odkurvenyobr=$(echo "$obr" | sed -e 's/%23/#/g')
Line 323: Line 367:
  if [[ ! -f "./img/$odkurvenyobr" ]]; then  if [[ ! -f "./img/$odkurvenyobr" ]]; then
  if [[ "$gen" != "negative" ]]; then  if [[ "$gen" != "negative" ]]; then
- >&2 echo -e "\033[31m $lid OBR $odkurvenyobr $co\033[0m"+ if [[ "$errhtml" == "" ]]; then 
 + >&2 echo -e "\033[31m $lid OBR $odkurvenyobr $co\033[0m" 
 + else 
 + >&2 echo "<span class='nok'>$lid OBR $odkurvenyobr $co</span>" 
 + fi
  continue;  continue;
  fi  fi
Line 340: Line 388:
  if [[ "$phy" = "Platyhelminthes" ]]; then  if [[ "$phy" = "Platyhelminthes" ]]; then
  povr=$(cat "./povodi_r.json" | ./povodi.py "$kdey" "$kdex")  povr=$(cat "./povodi_r.json" | ./povodi.py "$kdey" "$kdex")
- povrf=$(echo "$povr" | grep -oPe '^[^ ]*' | tr 'e' 'E')+ #povrf=$(echo "$povr" | grep -oPe '^[^ ]*' | tr 'e' 'E'
 + povrf=$(echo "$povr" | sed -e 's/ .*$//g' | tr 'e' 'E')
  povrn=$(echo "$povr" | sed -e 's/^[^ ]* //g')  povrn=$(echo "$povr" | sed -e 's/^[^ ]* //g')
  povs=$(cat "./povodi_s.json" | ./povodi.py "$kdey" "$kdex")  povs=$(cat "./povodi_s.json" | ./povodi.py "$kdey" "$kdex")
- povsf=$(echo "$povs" | grep -oPe '^[^ ]*' | tr 'e' 'E')+ #povsf=$(echo "$povs" | grep -oPe '^[^ ]*' | tr 'e' 'E'
 + povsf=$(echo "$povs" | sed -e 's/ .*$//g' | tr 'e' 'E')
  povsn=$(echo "$povs" | sed -e 's/^[^ ]* //g')  povsn=$(echo "$povs" | sed -e 's/^[^ ]* //g')
  if (( $(echo "$povsf < $povrf" | bc -l) )) ; then  if (( $(echo "$povsf < $povrf" | bc -l) )) ; then
Line 573: Line 623:
  datelog+="$kdy $kde <a href='./det/$detid.htm' target='_blank'>$co</a><br>\n"  datelog+="$kdy $kde <a href='./det/$detid.htm' target='_blank'>$co</a><br>\n"
  
- >&2 echo -e "\033[32m$lid $co $obs\033[0m"+ if [[ "$errhtml" == "" ]]; then 
 + >&2 echo -e "\033[32m$lid $co $obs\033[0m" 
 + else 
 + >&2 echo "<span class='ok'>$lid $co $obs</span>" 
 + fi
  
  ox="$kdex"  ox="$kdex"
Line 594: Line 648:
  
 # Sorted unique Kingdoms (to be passed as selection criteria) # Sorted unique Kingdoms (to be passed as selection criteria)
-kingdoms=$(unzip -p "$1" tellico.xml | grep -oe '<new-field-4>.*</new-field-4>' | sed -E 's/( )*<(\/)?new-field-4>( )*//g' | sort | uniq) +#kingdoms=$(unzip -p "$1" tellico.xml | grep -oe '<new-field-4>.*</new-field-4>' | sed -E 's/( )*<(\/)?new-field-4>( )*//g' | sort | uniq) 
- +kingdoms=$(unzip -"$1tellico.xml | sed -E 's/^.*<new-field-4>(.*)<\/new-field-4>.*$/\1/g;t;d| sort | uniq)
-echo '<!DOCTYPE html>' +
-echo '<html>' +
-echo '<head>' +
-echo ' <meta http-equiv="Content-Typecontent="text/html; charset=utf-8">' +
-echo ' <title>brmlab - BioOSM</title>' +
-echo ' <link rel="stylesheet" href="./style.css" type="text/css">' +
-echo ' <link rel="favicon" href="./'$ICON_biohazard'">' +
-echo ' <script src="./OpenLayers.js"></script>' +
-echo '</head>' +
-echo '<body>' +
-# Generate select +
-echo "<div id='plainlog'><b><a href='./bioosm.rss'>RSS feed</a><br><a href='./plainlog.htm'>Quick news log</a></b></div>" +
-#echo "<h1 id='title'>BioOSM arma biologica in tuis vicinia</h1>" +
-echo "<h1 id='title'>BioOSM creatures around us</h1>+
- +
-ksel="<select id='reg' onChange='genphy()'>" +
-ksel="$ksel<option value='ALL' selected>ALL</option>" +
-while IFS='' read -r king || [[ -n "$king" ]]; do +
- ksel="$ksel<option value='"$king"'>$king</option>" +
-done <<< $(echo "$kingdoms"+
-ksel="$ksel</select>" +
-echo "Kingdom: $ksel " +
-echo "Phylum: <select id='phy' onChange='gencla()'><option>ALL</option></select>+
-echo "Class: <select id='cla' onChange='genord()'><option>ALL</option></select>+
-echo "Order: <select id='ord' onChange='genfam()'><option>ALL</option></select>+
-echo "Family: <select id='fam' onChange='gengen()'><option>ALL</option></select>+
-echo "Genus: <select id='gen' onChange='genspe()'><option>ALL</option></select>" +
-echo "Species: <select id='spe' onChange='armageddon()'><option>ALL</option></select>" +
- +
-echo "<br><input type='button' value='Platyhelminthes' onClick='plostenkoidy()'>" +
-echo "<label><input type='checkbox' id='studchecker' onChange='studdrv()'>Springs</label>" +
-#echo "<input type='button' value='Bugs' onClick='buggy()'>" +
-echo "<form style='display:inline;margin-left:5em'><input type='text' length=10 id='srch'><input type='submit' value='&#x1F50D;' onClick='limit();return false;'></form>" +
-echo "<br><br><div id='map' class='smallmap'></div>" +
-echo $(obioosm "" "" ""+
-echo "</body>" +
- +
-echo "<script>" +
-echo 'document.getElementById("zavinacvmejlu").innerHTML="@";' +
-echo 'map = new OpenLayers.Map("map");' +
-echo 'map.addLayer(new OpenLayers.Layer.OSM());' +
-echo 'epsg4326 =  new OpenLayers.Projection("EPSG:4326"); //WGS 1984 projection' +
-echo 'projectTo = map.getProjectionObject(); //The map projection (Spherical Mercator)' +
-echo 'var lonLat = new OpenLayers.LonLat(15.478, 49.817).transform(epsg4326, projectTo);' +
-echo 'var zoom=8;' +
-echo 'map.setCenter (lonLat, zoom);' +
- +
-echo 'var vectorLayer = new OpenLayers.Layer.Vector("Overlay",{attribution:"<a href=\"http://brmlab.cz\">Brmlab</a>"});+
- +
-echo '// Define markers as "features" of the vector layer:' +
- +
-echo 'var atol = new OpenLayers.Feature.Vector(' +
-echo ' new OpenLayers.Geometry.Point(14.41876, 50.10554).transform(epsg4326, projectTo),' +
-echo ' {description:"Atomovy atol Brmkini"} ,' +
-echo ' {externalGraphic: "./biohazard.svg", graphicHeight:8, graphicWidth:8, graphicXOffset:-4, graphicYOffset:-4},' +
-echo ');' +
-echo 'vectorLayer.addFeatures(atol);' +
-# Sem prijdou dalsi staticke ficury +
-echo "map.addLayer(vectorLayer);"+
  
 +#echo '<!DOCTYPE html>'
 +#echo '<html>'
 +#echo '<head>'
 +#echo ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">'
 +#echo ' <title>brmlab - BioOSM</title>'
 +#echo ' <link rel="stylesheet" href="./style.css" type="text/css">'
 +#echo ' <link rel="favicon" href="./'$ICON_biohazard'">'
 +#echo ' <script src="./OpenLayers.js"></script>'
 +#echo '</head>'
 +#echo '<body>'
 +## Generate select
 +#echo "<div id='plainlog'><b><a href='./bioosm.rss'>RSS feed</a><br><a href='./plainlog.htm'>Quick news log</a></b></div>"
 +##echo "<h1 id='title'>BioOSM - arma biologica in tuis vicinia</h1>"
 +#echo "<h1 id='title'>BioOSM - creatures around us</h1>"
 +#
 +#ksel="<select id='reg' onChange='genphy()'>"
 +#ksel="$ksel<option value='ALL' selected>ALL</option>"
 +#while IFS='' read -r king || [[ -n "$king" ]]; do
 +# ksel="$ksel<option value='"$king"'>$king</option>"
 +#done <<< $(echo "$kingdoms")
 +#ksel="$ksel</select>"
 +#echo "Kingdom: $ksel "
 +#echo "Phylum: <select id='phy' onChange='gencla()'><option>ALL</option></select> "
 +#echo "Class: <select id='cla' onChange='genord()'><option>ALL</option></select> "
 +#echo "Order: <select id='ord' onChange='genfam()'><option>ALL</option></select> "
 +#echo "Family: <select id='fam' onChange='gengen()'><option>ALL</option></select> "
 +#echo "Genus: <select id='gen' onChange='genspe()'><option>ALL</option></select>"
 +#echo "Species: <select id='spe' onChange='armageddon()'><option>ALL</option></select>"
 +#
 +#echo "<br><input type='button' value='Platyhelminthes' onClick='plostenkoidy()'>"
 +#echo "<label><input type='checkbox' id='studchecker' onChange='studdrv()'>Springs</label>"
 +##echo "<input type='button' value='Bugs' onClick='buggy()'>"
 +#echo "<form style='display:inline;margin-left:5em'><input type='text' length=10 id='srch'><input type='submit' value='&#x1F50D;' onClick='limit();return false;'></form>"
 +#echo "<br><br><div id='map' class='smallmap'></div>"
 +#echo $(obioosm "" "" "")
 +#echo "</body>"
 +#
 +#echo "<script>"
 +#echo 'document.getElementById("zavinacvmejlu").innerHTML="@";'
 +#echo 'map = new OpenLayers.Map("map");'
 +#echo 'map.addLayer(new OpenLayers.Layer.OSM());'
 +#echo 'epsg4326 =  new OpenLayers.Projection("EPSG:4326"); //WGS 1984 projection'
 +#echo 'projectTo = map.getProjectionObject(); //The map projection (Spherical Mercator)'
 +#echo 'var lonLat = new OpenLayers.LonLat(15.478, 49.817).transform(epsg4326, projectTo);'
 +#echo 'var zoom=8;'
 +#echo 'map.setCenter (lonLat, zoom);'
 +#
 +#echo 'var vectorLayer = new OpenLayers.Layer.Vector("Overlay",{attribution:"<a href=\"http://brmlab.cz\">Brmlab</a>"});'
 +#
 +#echo '// Define markers as "features" of the vector layer:'
 +#
 +#echo 'var atol = new OpenLayers.Feature.Vector('
 +#echo ' new OpenLayers.Geometry.Point(14.41876, 50.10554).transform(epsg4326, projectTo),'
 +#echo ' {description:"Atomovy atol Brmkini"} ,'
 +#echo ' {externalGraphic: "./biohazard.svg", graphicHeight:8, graphicWidth:8, graphicXOffset:-4, graphicYOffset:-4},'
 +#echo ');'
 +#echo 'vectorLayer.addFeatures(atol);'
 +## Sem prijdou dalsi staticke ficury
 +#echo "map.addLayer(vectorLayer);"
 +#
  
  
Line 661: Line 716:
 granty=$(unzip -p "$1" tellico.xml | grep "<grant>" | sed -E 's/( )*<(\/)?grant>( )*//g' | sed -E 's/_additional$//g' | sort -u | grep -v "^none$") granty=$(unzip -p "$1" tellico.xml | grep "<grant>" | sed -E 's/( )*<(\/)?grant>( )*//g' | sed -E 's/_additional$//g' | sort -u | grep -v "^none$")
 #praseTC=$(unzip -p "$1" tellico.xml | tr -d '\n' | sed -e $'s/<entry id="/\\\n<entry id="/g' -e $'s/<\/entry>/<\/entry>\\\n/g' | grep -Pe '^<entry id="' | grep "<strcit-do-mapy>yep</strcit-do-mapy>" | sed -E 's/(^.*)(<locality>.*<\/locality>)(.*$)/\2\1\3/' | sort) #praseTC=$(unzip -p "$1" tellico.xml | tr -d '\n' | sed -e $'s/<entry id="/\\\n<entry id="/g' -e $'s/<\/entry>/<\/entry>\\\n/g' | grep -Pe '^<entry id="' | grep "<strcit-do-mapy>yep</strcit-do-mapy>" | sed -E 's/(^.*)(<locality>.*<\/locality>)(.*$)/\2\1\3/' | sort)
-praseTC=$(unzip -p "$1" tellico.xml | tr -d '\n' | sed -e $'s/<entry id="/\\\n<entry id="/g' -e $'s/<\/entry>/<\/entry>\\\n/g' | grep -Pe '^<entry id="' | sed -E 's/(^.*)(<locality>.*<\/locality>)(.*$)/\2\1\3/' | sort)+#praseTC=$(unzip -p "$1" tellico.xml | tr -d '\n' | sed -e $'s/<entry id="/\\\n<entry id="/g' -e $'s/<\/entry>/<\/entry>\\\n/g' | grep -Pe '^<entry id="' | sed -E 's/(^.*)(<locality>.*<\/locality>)(.*$)/\2\1\3/' | sort) 
 +praseTC=$(unzip -p "$1" tellico.xml | tr -d '\n' | sed -e $'s/<entry id="/\\\n<entry id="/g' -e $'s/<\/entry>/<\/entry>\\\n/g' | grep -E '^<entry id="' | sed -E 's/(^.*)(<locality>.*<\/locality>)(.*$)/\2\1\3/' | sort)
  
  
Line 673: Line 729:
 while IFS='' read -r grnt || [[ -n "$grnt" ]]; do while IFS='' read -r grnt || [[ -n "$grnt" ]]; do
  # 'nope' pokud to ma byt jen na grantstrance ale ne ve velkem bioosm  # 'nope' pokud to ma byt jen na grantstrance ale ne ve velkem bioosm
- vepr=$(echo "$praseTC" | grep -Pe "<strcit-do-mapy>(yep)|(negative)|(nope)</strcit-do-mapy>" | grep -Pe "<grant>$grnt(_additional)?</grant>")+ #vepr=$(echo "$praseTC" | grep -Pe "<strcit-do-mapy>(yep)|(negative)|(nope)</strcit-do-mapy>" | grep -Pe "<grant>$grnt(_additional)?</grant>"
 + vepr=$(echo "$praseTC" | grep -E "<strcit-do-mapy>(yep)|(negative)|(nope)</strcit-do-mapy>" | grep -E "<grant>$grnt(_additional)?</grant>")
  spagety "$vepr" "$grnt" "$ICON_biohazard"  spagety "$vepr" "$grnt" "$ICON_biohazard"
 + genhtml "$grnt"
 done <<< $(echo "$granty") done <<< $(echo "$granty")
  
-#echo -e "$json{}]}" +#if [[ "$errhtml" == "html" ]]; then 
-echo '</script>' + >&2 echo "*** DONE ***" 
-echo '<script src="./bioosm.js"></script>' # Must be after JSON +#fi 
-echo "</html>"+ 
 + 
 +##echo -e "$json{}]}" 
 +#echo '</script>' 
 +#echo '<script src="./bioosm.js"></script>' # Must be after JSON 
 +#echo "</html>"
  
 # Create plaintext log # Create plaintext log
Line 720: Line 783:
  // Display ONLY platyhelminthes if reguired  // Display ONLY platyhelminthes if reguired
  pus=document.URL.match(/platyhelminthes=understone/);  pus=document.URL.match(/platyhelminthes=understone/);
 + console.log(pus);
  if(pus)  if(pus)
  plostenkoidy();  plostenkoidy();
Line 727: Line 791:
  }  }
  }  }
- request.open("GET",url,true);+ request.open("GET","./"+ubermaster+".json",true); // defined in html
  request.send();  request.send();
 } }
-wat=document.URL.match(/(index.htm)|(bioosm\/$)/); + 
-if(wat) +getJSONbioosm();
- getJSONbioosm();+
  
 var stud=JSON.parse('{}'); var stud=JSON.parse('{}');
Line 763: Line 826:
 var ICON_studanka="studanka.png" var ICON_studanka="studanka.png"
 var ICON_negative="negative.png" var ICON_negative="negative.png"
- 
-function getJSONcsop21() 
-{ 
- url="./CSOP_122123.json"; 
- var request; 
- if(window.XMLHttpRequest) 
- request=new XMLHttpRequest(); 
- else 
- request=new ActiveXObject("Microsoft.XMLHTTP"); 
- request.onreadystatechange=function() 
- { 
- if(request.readyState==4) 
- { 
- window.blob=JSON.parse(request.responseText); 
- window.arma=blob.arma; 
- armageddon() 
- } 
- } 
- request.open("GET",url,true); 
- request.send(); 
-} 
-function getJSONcsop22() 
-{ 
- url="./CSOP_122210.json"; 
- var request; 
- if(window.XMLHttpRequest) 
- request=new XMLHttpRequest(); 
- else 
- request=new ActiveXObject("Microsoft.XMLHTTP"); 
- request.onreadystatechange=function() 
- { 
- if(request.readyState==4) 
- { 
- window.blob=JSON.parse(request.responseText); 
- window.arma=blob.arma; 
- armageddon() 
- } 
- } 
- request.open("GET",url,true); 
- request.send(); 
-} 
-function getJSONexfissgtig() 
-{ 
- url="./none_exfiss_gtig.json"; 
- var request; 
- if(window.XMLHttpRequest) 
- request=new XMLHttpRequest(); 
- else 
- request=new ActiveXObject("Microsoft.XMLHTTP"); 
- request.onreadystatechange=function() 
- { 
- if(request.readyState==4) 
- { 
- window.blob=JSON.parse(request.responseText); 
- window.arma=blob.arma; 
- armageddon() 
- } 
- } 
- request.open("GET",url,true); 
- request.send(); 
-} 
- 
-function getJSONempb22() 
-{ 
- url="./EPMB2022.json"; // jo preklep kurva 
- var request; 
- if(window.XMLHttpRequest) 
- request=new XMLHttpRequest(); 
- else 
- request=new ActiveXObject("Microsoft.XMLHTTP"); 
- request.onreadystatechange=function() 
- { 
- if(request.readyState==4) 
- { 
- window.blob=JSON.parse(request.responseText); 
- window.arma=blob.arma; 
- armageddon() 
- } 
- } 
- request.open("GET",url,true); 
- request.send(); 
-} 
- 
-function getJSONparas() 
-{ 
- url="./parasitology.json"; // jo preklep kurva 
- var request; 
- if(window.XMLHttpRequest) 
- request=new XMLHttpRequest(); 
- else 
- request=new ActiveXObject("Microsoft.XMLHTTP"); 
- request.onreadystatechange=function() 
- { 
- if(request.readyState==4) 
- { 
- window.blob=JSON.parse(request.responseText); 
- window.arma=blob.arma; 
- armageddon() 
- } 
- } 
- request.open("GET",url,true); 
- request.send(); 
-} 
  
  
Line 1115: Line 1075:
 function armageddon() function armageddon()
 { {
 + console.log("a "+window.arma.length);
  var speval=document.getElementById("spe").value  var speval=document.getElementById("spe").value
  var genval=document.getElementById("gen").value  var genval=document.getElementById("gen").value
project/bioosm/start.txt · Last modified: 2023/09/21 12:15 by sachy