#!/bin/bash

set -e

RET=0

OUT=`mktemp`

for fn in "$@"; do
	echo "Validating $fn..."
	echo

	case $fn in
		*.html)
			type="text/html"
			;;
		*.css)
			type="text/css"
			;;
		*)
			echo "Unknown format!"
			echo
			RET=1
			continue
			;;
	esac

	curl --silent \
		--header "Content-Type: ${type}; charset=utf-8" \
		--data-binary @${fn} \
		https://validator.w3.org/nu/?out=text > $OUT
	cat $OUT
	echo

	# We don't fail the check for warnings as some warnings are
	# not relevant for us, and we don't currently have a way to
	# ignore just those
	if grep -q -s -E "^Error:" $OUT; then
		RET=1
	fi
done

rm $OUT

exit $RET