Fix string comparison

parent ff82d8ec
#!/bin/bash #!/bin/bash
# Copyright 2016-2018 Ruben Jesus Garcia Hernandez # Copyright 2016-2018 Ruben Jesus Garcia Hernandez
# #
# Licensed under the Apache License, Version 2.0 (the "License"); # Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License. # you may not use this file except in compliance with the License.
# You may obtain a copy of the License at # You may obtain a copy of the License at
# #
# http://www.apache.org/licenses/LICENSE-2.0 # http://www.apache.org/licenses/LICENSE-2.0
# #
# Unless required by applicable law or agreed to in writing, software # Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, # distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and # See the License for the specific language governing permissions and
# limitations under the License. # limitations under the License.
source ../../pass source ../../pass
if [[ "$QUERY_STRING" -eq "" ]] if [[ "$QUERY_STRING" = "" ]]
then then
#echo Location: /NOMAD/ #echo Location: /NOMAD/
echo Location:https://www.nomad-coe.eu/the-project/graphics/VR-prototype echo Location:https://www.nomad-coe.eu/the-project/graphics/VR-prototype
echo '' echo ''
else else
#rgh: text/plain works in pc but android chrome saves it as .txt, removing the extension #rgh: text/plain works in pc but android chrome saves it as .txt, removing the extension
# export TOKEN=`cat t.b64` # export TOKEN=`cat t.b64`
export MAT=$QUERY_STRING export MAT=$QUERY_STRING
export RAND=$RANDOM export RAND=$RANDOM
#rgh: before end of september 2017, use /var/tmp, after, use /tmp (apache update) #rgh: before end of september 2017, use /var/tmp, after, use /tmp (apache update)
cd /tmp cd /tmp
/usr/bin/mkdir $RAND /usr/bin/mkdir $RAND
cd $RAND cd $RAND
#pre 2018: http://encyclopedia-api.nomad-coe.eu/v1.0/saml/ #pre 2018: http://encyclopedia-api.nomad-coe.eu/v1.0/saml/
#post 2018: #post 2018:
SAMLURL=https://encyclopedia.nomad-coe.eu/api/v1.0/saml/ SAMLURL=https://encyclopedia.nomad-coe.eu/api/v1.0/saml/
wget --save-cookies cookies.txt \ wget --save-cookies cookies.txt \
--keep-session-cookies \ --keep-session-cookies \
--no-check-certificate $SAMLURL -O login.html >/dev/null 2>&1 --no-check-certificate $SAMLURL -O login.html >/dev/null 2>&1
URL=`grep "form action" login.html |cut -f 2 -d \" |head -n 1` URL=`grep "form action" login.html |cut -f 2 -d \" |head -n 1`
wget --save-cookies cookies2.txt --keep-session-cookies --load-cookies cookies.txt --no-check-certificate \ wget --save-cookies cookies2.txt --keep-session-cookies --load-cookies cookies.txt --no-check-certificate \
"https://idp.nomad-coe.eu$URL&j_username=$USER&j_password=$PASS&_eventId_proceed" -O a.html >/dev/null 2>&1 "https://idp.nomad-coe.eu$URL&j_username=$USER&j_password=$PASS&_eventId_proceed" -O a.html >/dev/null 2>&1
URL=`grep "form action" a.html |cut -f 2 -d \" |head -n 1` URL=`grep "form action" a.html |cut -f 2 -d \" |head -n 1`
wget --save-cookies cookies3.txt --keep-session-cookies --load-cookies cookies2.txt --no-check-certificate \ wget --save-cookies cookies3.txt --keep-session-cookies --load-cookies cookies2.txt --no-check-certificate \
"https://idp.nomad-coe.eu$URL&_shib_idp_consentOptions=_shib_idp_globalConsent&_eventId_proceed" \ "https://idp.nomad-coe.eu$URL&_shib_idp_consentOptions=_shib_idp_globalConsent&_eventId_proceed" \
-O b.html >/dev/null 2>&1 -O b.html >/dev/null 2>&1
#now continue, as we don't support javascript :o) #now continue, as we don't support javascript :o)
URL2=`echo $URL |cut -f 1 -d \?` URL2=`echo $URL |cut -f 1 -d \?`
DEST=`grep action b.html |cut -f 2 -d \"` DEST=`grep action b.html |cut -f 2 -d \"`
RELAY=`grep RelayState b.html |cut -f6 -d \"` RELAY=`grep RelayState b.html |cut -f6 -d \"`
SAML=`grep SAMLResponse b.html |cut -f6 -d \"` SAML=`grep SAMLResponse b.html |cut -f6 -d \"`
#rgh: since 25-09-2017, this line gives "invalid url" (possibly curl update) #rgh: since 25-09-2017, this line gives "invalid url" (possibly curl update)
#RELAY="https%3A%2F%2Fencyclopedia-api.nomad-coe.eu%2Fv1.0%2Fsaml%2F" #RELAY="https%3A%2F%2Fencyclopedia-api.nomad-coe.eu%2Fv1.0%2Fsaml%2F"
#pre-2018 #pre-2018
#RELAY="https://encyclopedia-api.nomad-coe.eu/v1.0/saml/" #RELAY="https://encyclopedia-api.nomad-coe.eu/v1.0/saml/"
RELAY=$SAMLURL RELAY=$SAMLURL
#echo relay is $RELAY #echo relay is $RELAY
MATERIALSURL=https://encyclopedia.nomad-coe.eu/api/v1.0/materials MATERIALSURL=https://encyclopedia.nomad-coe.eu/api/v1.0/materials
curl -L -c cookies3.txt -X GET -F "RelayState=$RELAY" -F "SAMLResponse=$SAML" "$SAMLURL?acs" -o resp.json >/dev/null 2>&1 curl -L -c cookies3.txt -X GET -F "RelayState=$RELAY" -F "SAMLResponse=$SAML" "$SAMLURL?acs" -o resp.json >/dev/null 2>&1
TOKEN=`grep data resp.json |cut -f 4 -d \"` TOKEN=`grep data resp.json |cut -f 4 -d \"`
mkdir $MAT mkdir $MAT
cd $MAT cd $MAT
wget --no-check-certificate --user "$TOKEN" --password "" $MATERIALSURL/$MAT/cells?pagination=off -O material_cells.json >/dev/null 2>&1 wget --no-check-certificate --user "$TOKEN" --password "" $MATERIALSURL/$MAT/cells?pagination=off -O material_cells.json >/dev/null 2>&1
wget --no-check-certificate --user "$TOKEN" --password "" $MATERIALSURL/$MAT/elements?pagination=off -O material_elements.json >/dev/null 2>&1 wget --no-check-certificate --user "$TOKEN" --password "" $MATERIALSURL/$MAT/elements?pagination=off -O material_elements.json >/dev/null 2>&1
echo \# Material $QUERY_STRING >> $MAT.ncfg echo \# Material $QUERY_STRING >> $MAT.ncfg
echo background 0 0 0 >> $MAT.ncfg echo background 0 0 0 >> $MAT.ncfg
echo atomscaling 0.5 >> $MAT.ncfg echo atomscaling 0.5 >> $MAT.ncfg
echo json material >> $MAT.ncfg echo json material >> $MAT.ncfg
echo displaybonds >> $MAT.ncfg echo displaybonds >> $MAT.ncfg
echo displayunitcell >> $MAT.ncfg echo displayunitcell >> $MAT.ncfg
echo showcontrollers >> $MAT.ncfg echo showcontrollers >> $MAT.ncfg
cd .. cd ..
if grep html $MAT/material_cells.json > /dev/null ; then if grep html $MAT/material_cells.json > /dev/null ; then
echo "CGI backend for NOMAD VR: Encyclopedia API issue. Material $MAT" | echo "CGI backend for NOMAD VR: Encyclopedia API issue. Material $MAT" |
mailx -s 'CGI backend for NOMAD VR: Encyclopedia API issue' $EMAIL mailx -s 'CGI backend for NOMAD VR: Encyclopedia API issue' $EMAIL
echo "Content-type: text/html" echo "Content-type: text/html"
echo '' echo ''
echo "<html><head><title>" echo "<html><head><title>"
echo "VR backend currently being updated" echo "VR backend currently being updated"
echo "</title></head><body>" echo "</title></head><body>"
echo "VR backend currently being updated." echo "VR backend currently being updated."
echo "Please <a href=\"https://www.nomad-coe.eu/the-project/graphics/contact-2\">contact us</a> if the problem persists." echo "Please <a href=\"https://www.nomad-coe.eu/the-project/graphics/contact-2\">contact us</a> if the problem persists."
echo "</body></html>" echo "</body></html>"
else else
zip -r $MAT $MAT >/dev/null 2>&1 zip -r $MAT $MAT >/dev/null 2>&1
echo "Content-type: application/octet-stream" echo "Content-type: application/octet-stream"
echo "Content-disposition: attachment; filename=${QUERY_STRING}.zip" echo "Content-disposition: attachment; filename=${QUERY_STRING}.zip"
echo '' echo ''
cat $MAT.zip cat $MAT.zip
fi fi
cd .. cd ..
\rm -r $RAND \rm -r $RAND
fi fi
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment