- #! /bin/sh 
- # 
- # script to look at each example class and copy sheet in public_html/bases/sheet/$class_lang/$class_sheetadress/$class_number/ 
- # to be execute at before each realize of a wims package. 
- # 
- # authors : F. Guerimand, bpr 
- # mail : fwguerima@free.fr 
- # this script is launch by mkindex. Do not use it directly 
- # 
-   
- ## level, lang, supervisor, email are those of the class 
- ## if information is in the file .sheet$i, take it 
- ## if not, take the information in the file .sheets 
- ## if not, make something by default 
-   
- whome="$1" 
- if [ -z "$whome" ]; then 
-  echo "don't use this script directly. execute mkindex"; 
-  exit 
- fi; 
- target="$whome/public_html/bases/sheet"; 
- mkdir -p $target; 
- cd $whome/log/classes/; 
- clist=`ls -d [0-9]*`; 
- for cls in $clist; do 
-  if [ $cls -lt 9000 ]; then 
-   level=`awk -F'=' '$1=="!set class_level" {print $2; exit}' ./$cls/.def`; 
-   slevel=`awk -F'=' '$1=="!set class_slevel" {print $2; exit}' ./$cls/.def`; 
-   lang=`awk -F'=' '$1=="!set class_lang" {print $2; exit}' ./$cls/.def`; 
-   sup=`awk -F'=' '$1=="!set class_supervisor" {print $2; exit}' ./$cls/.def`; 
-   email=`awk -F'=' '$1=="!set class_email" {print $2; exit}' ./$cls/.def`; 
-   domain=`awk -F'=' '$1=="!set class_domain" {print $2; exit}' ./$cls/.def`; 
-   sheetadress=`awk -F'=' '$1=="!set class_sheetadress" {print $2; exit}' ./$cls/.def`; 
-   if [ -n "$sheetadress" -a -n "$lang" ]; then 
-    cd $cls/sheets/; 
-   # echo "--------------- $cls ; $level ; $lang" 
-    slist=`ls .sheet[0-9]*`; 
-    tmptarget="$target/$lang/$sheetadress/$cls"; 
-    mkdir -p $tmptarget; 
-    for sh in $slist; do 
-     num=${sh##.sheet}; 
-     # test if statut of sheet is non 0 
-     statut=`awk -v no="$num" 'BEGIN{cpt=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){print($0);exit;}}' .sheets`; 
-     if [ "$statut" != ":0" ]; then 
-      entete=`awk '{a=substr($0,1,1); if(a==":")exit; else print($0);}' $sh`; 
-      namesh=${sh##.}; 
-      if [ -z "`grep -r :classes/ $sh`" ]; then 
-       if [ -n "$entete" ]; then 
-         #First case : information is in file .sheet$i : keep it (but not title and desc) 
-         # echo "$sh : direct copy"; 
-         title=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==3){print($0);exit;}} }' .sheets`; 
-         desc=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==4){print($0);exit;}} }' .sheets`; 
-         echo "$title 
- $desc" >$tmptarget/$namesh.def; 
-         awk 'FNR>2{print $0}' $sh >>$tmptarget/$namesh.def; 
-       else 
-         #second case : information not in file .sheet$i : make it with files .sheets and .def. 
-         dt=`perl -e 'for (@ARGV) {@S=stat($_); print scalar(localtime($S[9]))}' $sh` 
-         dt=${dt##* }; 
-         title=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==3){print($0);exit;}} }' .sheets`; 
-         desc=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==4){print($0);exit;}} }' .sheets`; 
-         keyword=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==6){print($0);exit;}} }' .sheets`; 
-         domain1=`awk -v no="$num" 'BEGIN{cpt=0;l=0;} {a=substr($0,1,1); if(a==":")cpt++; if(cpt==no){l++;if(l==5){print($0);exit;}} }' .sheets`; 
-         ## if keyword is empty, take the level (only for H) 
-         if [ ! -n "$keyword" ]; then 
-           if [ -n "$slevel" ]; then 
-            keyword=`echo "$slevel"`; 
-           else 
-            keyword=`echo "level$level"`; 
-           fi ; 
-         fi; 
-         # echo "$sh : make presentation"; leave the empty line after email for description 
-         # of the sheet in the search engine 
-         echo "$title 
- $desc 
- ??,$dt 
- 2 
- $level 
- $domain, $domain1 
- $keyword 
- $sup 
- $email 
-   
- " > $tmptarget/$namesh.def; 
-         cat $sh >> $tmptarget/$namesh.def; 
-       fi; 
-      fi; 
-      # else 
-      #  echo "$sh : EMPTY sheet"; 
-     fi; 
-    done; 
-    cd ../..; 
-  # else 
-  # echo "-----------------------NOTHING ---------- $cls ; $level ; $lang"; 
-   fi; 
-  fi; 
- done; 
-