_request = $request; // Add advice $callOnDeny = [$request, 'redirectSSL', []]; $this->setAdvice(AuthorizationPolicy::AUTHORIZATION_ADVICE_CALL_ON_DENY, $callOnDeny); } // // Implement template methods from AuthorizationPolicy // /** * @see AuthorizationPolicy::applies() */ public function applies() { return (bool)Config::getVar('security', 'force_ssl'); } /** * @see AuthorizationPolicy::effect() */ public function effect() { // Check the request protocol if ($this->_request->getProtocol() == 'https') { return AuthorizationPolicy::AUTHORIZATION_PERMIT; } else { return AuthorizationPolicy::AUTHORIZATION_DENY; } } } if (!PKP_STRICT_MODE) { class_alias('\PKP\security\authorization\HttpsPolicy', '\HttpsPolicy'); }