#!/bin/sh VAR_DIR="var" VAR_SUBDIR= CLEAR_CONTENT="1" CLEAR_IMAGE="0" CLEAR_INI="0" CLEAR_TEMPLATE="0" CLEAR_TEMPLATE_BLOCK="0" CLEAR_TEMPLATE_OVERRIDE="0" CLEAR_TRANSLATION="0" CLEAR_EXPIRY="0" CLEAR_URLALIAS="0" CLEAR_SORTKEY="0" CLEAR_CLASSIDENTIFIER="0" CLEAR_RSS="0" CLEAR_CODEPAGE="0" CLEAR_TRANS="0" CLEAR_USER_INFO="0" # Check parameters for arg in $*; do case $arg in --help|-h) echo "Usage: $0 [options]" echo echo "Options: -h" echo " --help This message" echo " --var-subdir=DIR Use this subdirectory under var as root" echo " --clear-image Remove image cache" echo " --clear-content Remove content cache(default)" echo " --clear-ini Remove ini file cache" echo " --clear-codepage Remove codepages cache" echo " --clear-tpl Remove template cache" echo " --clear-tpl-override Remove template override cache" echo " --clear-tpl-block Remove template-block cache" echo " --clear-ts Remove translation cache" echo " --clear-expiry Remove expiry cache" echo " --clear-urlalias Remove url alias cache" echo " --clear-sortkey Remove sort key cache" echo " --clear-classidentifiers Remove class identifier cache" echo " --clear-rss Remove RSS cache" echo " --clear-transformations Remove character transformation cache" echo " --clear-user-info Remove user-info cache" echo " --clear-all Remove all above caches" echo echo "Example:" echo "$0 --clear-image --clear-tpl" exit 1 ;; --var-subdir*) if echo $arg | grep -e "--var-subdir=" >/dev/null; then VAR_SUBDIR=`echo $arg | sed 's/--var-subdir=//'` else echo "No subdir specified, ignoring" fi ;; --clear-content) CLEAR_CONTENT="1" ;; --clear-image) CLEAR_IMAGE="1" ;; --clear-ini) CLEAR_INI="1" ;; --clear-codepage) CLEAR_CODEPAGE="1" ;; --clear-tpl) CLEAR_TEMPLATE="1" ;; --clear-tpl-override) CLEAR_TEMPLATE_OVERRIDE="1" ;; --clear-tpl-block) CLEAR_TEMPLATE_BLOCK="1" ;; --clear-ts) CLEAR_TRANSLATION="1" ;; --clear-expiry) CLEAR_EXPIRY="1" ;; --clear-urlalias) CLEAR_URLALIAS="1" ;; --clear-sortkey) CLEAR_SORTKEY="1" ;; --clear-classidentifiers) CLEAR_CLASSIDENTIFIER="1" ;; --clear-rss) CLEAR_RSS="1" ;; --clear-transformations) CLEAR_TRANS="1" ;; --clear-user-info) CLEAR_USER_INFO="1" ;; --clear-all) CLEAR_CONTENT="1" CLEAR_IMAGE="1" CLEAR_INI="1" CLEAR_CODEPAGE="1" CLEAR_TEMPLATE="1" CLEAR_TEMPLATE_BLOCK="1" CLEAR_TEMPLATE_OVERRIDE="1" CLEAR_TRANSLATION="1" CLEAR_EXPIRY="1" CLEAR_URLALIAS="1" CLEAR_SORTKEY="1" CLEAR_CLASSIDENTIFIER="1" CLEAR_RSS="1" CLEAR_TRANS="1" CLEAR_USER_INFO="1" ;; *) echo "$arg: unkown option specified" $0 -h exit 1 ;; esac; done DIR="$VAR_DIR" if [ ! -z "$VAR_SUBDIR" ]; then DIR="$DIR/$VAR_SUBDIR" fi SITEACCESS_DIR="" SETTINGS_DIR="settings" for dir in $SETTINGS_DIR/siteaccess/*; do if [ -d "$dir" ]; then dirname=`basename $dir` if echo $dirname | grep -e "_user$" >/dev/null; then dirname=`echo $dirname | sed 's/_user//'` elif echo $dirname | grep -e "_admin$" >/dev/null; then dirname=`echo $dirname | sed 's/_admin//'` fi SITEACCESS_DIR="$SITEACCESS_DIR $dirname" fi done VAR_DIRS="$DIR" if [ -z "$VAR_SUBDIR" ]; then for siteaccess in $SITEACCESS_DIR; do VAR_DIRS="$VAR_DIRS $VAR_DIR/$siteaccess" done fi for DIR in $VAR_DIRS; do if [ -d $DIR ]; then CONTENT_CACHEDIR="$DIR/cache/content" IMAGE_CACHEDIR="$DIR/cache/texttoimage" INI_CACHEDIR="$DIR/cache/ini" CODEPAGE_CACHEDIR="$DIR/cache/codepages" TEMPLATE_CACHEDIR="$DIR/cache/template" TEMPLATE_OVERRIDE_CACHEDIR="$DIR/cache/override" TEMPLATE_BLOCK_CACHEDIR="$DIR/cache/template-block" EXPIRY_TEMPLATE_BLOCK_CACHEDIR="$DIR/cache/template-block-expiry" TRANSLATION_CACHEDIR="$DIR/cache/translation" EXPIRY_CACHEFILE="$DIR/cache/expiry.php" URLALIAS_CACHEDIR="$DIR/cache/wildcard" SORTKEY_CACHEFILE="$DIR/cache/sortkey_" CLASSIDENTIFIER_CACHEFILE="$DIR/cache/classidentifiers_" CLASSATTRIBUTEIDENTIFIER_CACHEFILE="$DIR/cache/classattributeidentifiers_" RSS_CACHEDIR="$DIR/cache/rss" TRANS_CACHEDIR="$DIR/cache/trans" USER_INFO_CACHEDIR="$DIR/cache/user-info" if [ "$CLEAR_CONTENT" -eq 1 ]; then if [ -d "$CONTENT_CACHEDIR" ]; then echo "Removing cache files in $CONTENT_CACHEDIR" rm -rf "$CONTENT_CACHEDIR" fi fi if [ "$CLEAR_IMAGE" -eq 1 ]; then if [ -d "$IMAGE_CACHEDIR" ]; then echo "Removing image cache files in $IMAGE_CACHEDIR" rm -rf "$IMAGE_CACHEDIR" fi fi if [ "$CLEAR_INI" -eq 1 ]; then if [ -d "$INI_CACHEDIR" ]; then echo "Removing ini cache files in $INI_CACHEDIR" rm -rf "$INI_CACHEDIR" fi fi if [ "$CLEAR_CODEPAGE" -eq 1 ]; then if [ -d "$CODEPAGE_CACHEDIR" ]; then echo "Removing codepage cache files in $CODEPAGE_CACHEDIR" rm -rf "$CODEPAGE_CACHEDIR" fi fi if [ "$CLEAR_TEMPLATE" -eq 1 ]; then if [ -d "$TEMPLATE_CACHEDIR" ]; then echo "Removing template cache files in $TEMPLATE_CACHEDIR" rm -rf "$TEMPLATE_CACHEDIR" fi fi if [ "$CLEAR_TEMPLATE_OVERRIDE" -eq 1 ]; then if [ -d "$TEMPLATE_OVERRIDE_CACHEDIR" ]; then echo "Removing template override cache files in $TEMPLATE_OVERRIDE_CACHEDIR" rm -rf "$TEMPLATE_OVERRIDE_CACHEDIR" fi fi if [ "$CLEAR_TEMPLATE_BLOCK" -eq 1 ]; then if [ -d "$TEMPLATE_BLOCK_CACHEDIR" ]; then echo "Removing template-block cache files in $TEMPLATE_BLOCK_CACHEDIR" rm -rf "$TEMPLATE_BLOCK_CACHEDIR" rm -rf "$EXPIRY_TEMPLATE_BLOCK_CACHEDIR" fi fi if [ "$CLEAR_TRANSLATION" -eq 1 ]; then if [ -d "$TRANSLATION_CACHEDIR" ]; then echo "Removing translation cache files in $TRANSLATION_CACHEDIR" rm -rf "$TRANSLATION_CACHEDIR" fi fi if [ "$CLEAR_EXPIRY" -eq 1 ]; then if [ -d "$EXPIRY_CACHEFILE" ]; then echo "Removing expiry cache file $EXPIRY_CACHEFILE" rm -rf "$EXPIRY_CACHEFILE" fi fi if [ "$CLEAR_URLALIAS" -eq 1 ]; then if [ -d "$URLALIAS_CACHEDIR" ]; then echo "Removing translation cache files in $URLALIAS_CACHEDIR" rm -rf "$URLALIAS_CACHEDIR" fi fi if [ "$CLEAR_SORTKEY" -eq 1 ]; then echo "Removing sortkey cache files in $SORTKEY_CACHEFILE" rm -f "$SORTKEY_CACHEFILE"*.php fi if [ "$CLEAR_RSS" -eq 1 ]; then if [ -d "$RSS_CACHEDIR" ]; then echo "Removing RSS cache files in $RSS_CACHEDIR" rm -rf "$RSS_CACHEDIR" fi fi if [ "$CLEAR_TRANS" -eq 1 ]; then if [ -d "$TRANS_CACHEDIR" ]; then echo "Removing transformation cache files in $TRANS_CACHEDIR" rm -rf "$TRANS_CACHEDIR" fi fi if [ "$CLEAR_USER_INFO" -eq 1 ]; then if [ -d "$USER_INFO_CACHEDIR" ]; then echo "Removing user-info cache files in $USER_INFO_CACHEDIR" rm -rf "$USER_INFO_CACHEDIR" fi fi if [ "$CLEAR_CLASSIDENTIFIER" -eq 1 ]; then echo "Removing class identifier cache files in $CLASSIDENTIFIER_CACHEFILE" rm -f "$CLASSIDENTIFIER_CACHEFILE"*.php echo "Removing class attribute identifier cache files in $CLASSATTRIBUTEIDENTIFIER_CACHEFILE" rm -f "$CLASSATTRIBUTEIDENTIFIER_CACHEFILE"*.php fi fi done