#!/usr/bin/env bash
set -euo pipefail

WP_BIN="${WP_BIN:-/usr/local/bin/wp}"
OIDC_OPTION="${OIDC_OPTION:-ufpe_google_oidc_settings}"

usage() {
  cat <<'EOF'
Usage:
  ru-prod-oidc-rollback --self-check
  ru-prod-oidc-rollback <wp_path> <plugin_slug>
EOF
}

if [[ "${1:-}" == "--self-check" ]]; then
  exit 0
fi

if [[ "$#" -ne 2 ]]; then
  usage >&2
  exit 64
fi

WP_PATH="$1"
PLUGIN_SLUG="$2"

sudo -u apache -H "$WP_BIN" --path="$WP_PATH" eval "
\$settings = get_option('$OIDC_OPTION', []);
if (! is_array(\$settings)) {
  \$settings = [];
}
\$settings['restrict_password_login'] = '0';
update_option('$OIDC_OPTION', \$settings, false);
"

sudo -u apache -H "$WP_BIN" --path="$WP_PATH" plugin deactivate "$PLUGIN_SLUG" || true
sudo -u apache -H "$WP_BIN" --path="$WP_PATH" cache flush
sudo -u apache -H "$WP_BIN" --path="$WP_PATH" plugin status "$PLUGIN_SLUG" || true
