Create New Item
×
Item Type
File
Folder
Item Name
×
Search file in folder and subfolders...
File Manager
/
plugins
/
better-wp-security
/
core
/
modules
/
password-requirements
Advanced Search
Upload
New Item
Settings
Back
Back Up
Advanced Editor
Save
<?php /** * Class ITSEC_Password_Requirements_Settings */ class ITSEC_Password_Requirements_Settings extends ITSEC_Settings { public function get_id() { return 'password-requirements'; } public function get_defaults() { return array( 'enabled_requirements' => array(), 'requirement_settings' => array(), ); } public function load() { $this->settings = ITSEC_Storage::get( $this->get_id() ); $defaults = $this->get_defaults(); if ( ! is_array( $this->settings ) ) { $this->settings = array(); } $this->settings = array_merge( $defaults, $this->settings ); foreach ( ITSEC_Lib_Password_Requirements::get_registered() as $code => $requirement ) { if ( ! isset( $this->settings['enabled_requirements'][ $code ] ) ) { $this->settings['enabled_requirements'][ $code ] = false; } if ( null === $requirement['defaults'] ) { continue; } if ( isset( $this->settings['requirement_settings'][ $code ] ) ) { $current = $this->settings['requirement_settings'][ $code ]; } else { $current = array(); } $this->settings['requirement_settings'][ $code ] = wp_parse_args( $current, $requirement['defaults'] ); } } protected function handle_settings_changes( $old_settings ) { parent::handle_settings_changes( $old_settings ); if ( $this->settings['enabled_requirements'] !== $old_settings['enabled_requirements'] ) { ITSEC_Response::add_store_dispatch( 'ithemes-security/user-groups', 'fetchGroupsSettings' ); ITSEC_Response::add_store_dispatch( 'ithemes-security/core', 'fetchIndex', [ true ] ); } } } ITSEC_Modules::register_settings( new ITSEC_Password_Requirements_Settings() );