<?php
#  ________         ____________      _____ ________                       ________      
#  ___  __ )____  _____  /___  /_____ __  /____  __ \______________ ______ ___  __/      
#  __  __  |_  / / /__  / __  / _  _ \_  __/__  /_/ /__  ___/_  __ \_  __ \__  /_        
#  _  /_/ / / /_/ / _  /  _  /  /  __// /_  _  ____/ _  /    / /_/ // /_/ /_  __/        
#  /_____/  \__,_/  /_/   /_/   \___/ \__/  /_/      /_/     \____/ \____/ /_/           
#  ________                             _____ _____              ________                
#  __  ___/_____ ___________  _____________(_)__  /______  __    ___  __ \______________ 
#  _____ \ _  _ \_  ___/_  / / /__  ___/__  / _  __/__  / / /    __  /_/ /__  ___/_  __ \
#  ____/ / /  __// /__  / /_/ / _  /    _  /  / /_  _  /_/ /     _  ____/ _  /    / /_/ /
#  /____/  \___/ \___/  \__,_/  /_/     /_/   \__/  _\__, /      /_/      /_/     \____/ 
#                                                   /____/                               
# 42756C6C657450726F6F66 5365637572697479 50726F 
#
/*	The Copyright, AITpro Software Products License Information must remain
	intact or all BulletProof Security Pro warranties, guarantees, liabilities are void.
	
	Copyright (C) Edward Alexander, AIT-pro.com. All rights reserved.

	AITpro Software Products License Information:
	BY DOWNLOADING, INSTALLING, COPYING, ACCESSING, OR USING BulletProof Security Pro YOU AGREE TO THE TERMS OF THIS AGREEMENT. 
	IF YOU 	ARE ACCEPTING THESE TERMS ON BEHALF OF ANOTHER PERSON OR A COMPANY OR OTHER LEGAL ENTITY, YOU REPRESENT AND WARRANT
	THAT YOU HAVE FULL AUTHORITY TO BIND THAT PERSON, COMPANY, OR LEGAL ENTITY TO THESE TERMS. IF YOU DO NOT AGREE TO THESE TERMS,
	* DO NOT DOWNLOAD, INSTALL, COPY, ACCESS, OR USE BulletProof Security Pro; AND
	* PROMPTLY RETURN BulletProof Security Pro TO THE PARTY FROM WHOM YOU ACQUIRED IT. IF YOU DOWNLOADED BulletProof Security Pro
	FROM THE AITPRO WEBSITE, CONTACT AITPRO FOR A REFUND IF APPLICABLE.
	
	AITpro Software Products License Information continued:
	You agree to keep the AITpro Software Products License for BulletProof Security Pro, unmodified or altered in any way,
	with the original copy of BulletProof Security Pro that you have and any and all copies or partial copies of BulletProof
	Security Pro that You make. 
*/
// Direct calls to this file are Forbidden when core files are not present 
if ( ! current_user_can('manage_options') ) { 
		header('Status: 403 Forbidden');
		header('HTTP/1.1 403 Forbidden');
		exit();
}

	if ( is_multisite() && $blog_id != 1 ) {
		$networkMUText = '';
	} else {
		$networkMUText = '<br><br><strong>'.__('Reset|Clear Login Security Alerts: ', 'bulletproof-security').'</strong><br>'.__('If you choose to have S-Monitor Login Security Alerts displayed to you in your WP Dashboard or BPS Pro pages then to clear the alert you will need to click this button.', 'bulletproof-security');
	}

	if ( is_multisite() && $blog_id != 1 ) {
		$networkMUJTCText = '';
	} else {
		$networkMUJTCText = '<br><br><strong>'.__('JTC Logging: ', 'bulletproof-security').'</strong><br>'.__('Turn On or Turn Off JTC logging. JTC log entries are logged in the BPS Pro Security Log file. The JTC log entries include the Form name for whichever Form the CAPTCHA was not successfully entered, CAPTCHA value that was entered, BOT/HUMAN value, Username/Display Name (Comment Form only) and all the other standard Security Log entry values/fields.', 'bulletproof-security');
	}

	/**	Login Security & Monitoring **/
	$bps_modal_content1 = '<strong>'.__('If your User Account is locked and you are unable to login to your website use the BPS Pro Xternal Tools (XTF) Form (see Forum Help Links at the top of this Read Me help window) to Turn Off Login Security. Login to your website, go to the BPS Login Security page, unlock your User Account and turn Login Security back On.', 'bulletproof-security').'</strong><br><br><strong>'.__('Max Login Attempts: ', 'bulletproof-security').'</strong><br>'.__('Type in the maximum number of failed login attempts allowed before a User Account is automatically Locked out. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('NOTE: ', 'bulletproof-security').'</strong>'.__('The Max Login Attempts setting range is from 1 - 10. Minimum is 1 failed login attempt - Maximum is 10 failed login attempts. Setting this to 1 failed login attempt is NOT recommended. The default is 3 failed login attempts before locking the User Account.', 'bulletproof-security').'<br><br><strong>'.__('Automatic Lockout Time: ', 'bulletproof-security').'</strong><br>'.__('Type in the number of minutes that you would like the User Account to be locked out for when the maximum number of failed login attempts have been made. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('Manual Lockout Time: ', 'bulletproof-security').'</strong><br>'.__('Type in the number of minutes that you would like the User Account to be locked out for when you manually lock a User Account using Lock checkbox options in the Dynamic Login Security form. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('Max DB Rows To Show: ', 'bulletproof-security').'</strong><br>'.__('Type in the maximum number of database rows that you would like to display in the Dynamic Login Security form. Leaving this text box blank means display all database rows. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('Enable Login Security for WooCommerce:', 'bulletproof-security').'</strong><br>'.__('Check this checkbox if you have the WooCommerce plugin installed if you would like to use BPS Login Security on the WooCommerce custom login page. BPS Login Security will still continue to work normally on the standard WordPress Login page when you check this checkbox. This checkbox option setting is not for turning Login Security On or Off if you are using WooCommerce. Use the Login Security Turn On|Turn Off option to turn Login Security On or Off.', 'bulletproof-security').'<br><br><strong>'.__('Turn On|Turn Off: ', 'bulletproof-security').'</strong><br>'.__('Turn On Login Security or Turn Off Login Security or Turn Off Login Security and Use the Password Reset Option ONLY. The Turn Off Login Security|Use Password Reset Option ONLY setting means that all Login Security features are turned Off except for the Password Reset Option, which can be used independently by itself. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('Logging Options: ', 'bulletproof-security').'</strong><br>'.__('You can choose to Log All User Account Logins or Log Only User Account Lockouts. After making any setting changes click the Save Options button to save your new option settings. ', 'bulletproof-security').'<strong>'.__('Important Note: ', 'bulletproof-security').'</strong>'.__('If you switch the Logging Options: Log All Account Logins to Log Only Account Lockouts then be sure to delete any locked user accounts that you want to allow to be able to login or those Users will not be able to login until you delete those locked User Accounts.', 'bulletproof-security').'<br><br><strong>'.__('Error Messages:', 'bulletproof-security').'</strong><br><br><strong>'.__('Standard WP Login Errors: ', 'bulletproof-security').'</strong>'.__('will display the normal WP login errors. Example1: ERROR: The password you entered for the username X is incorrect. BPS Example2: ERROR: This user account has been locked until May 14, 2013 9:31 am due to too many failed login attempts. You can login again after the Lockout Time above has expired.', 'bulletproof-security').'<br><br><strong>'.__('User|Pass Invalid Entry Error: ', 'bulletproof-security').'</strong>'.__('will display a generic Invalid Entry error message instead of displaying normal WP login errors for incorrect username or incorrect password, but if a user account is locked out then the BPS timestamp and Lockout Time error message will be displayed. Example: ERROR: Invalid Entry for either incorrect username or incorrect password. BPS Example2: ERROR: This user account has been locked until May 14, 2013 9:31 am due to too many failed login attempts. You can login again after the Lockout Time above has expired.', 'bulletproof-security').'<br><br><strong>'.__('User|Pass|Lock Invalid Entry Error: ', 'bulletproof-security').'</strong>'.__('will display a generic Invalid Entry error message instead of displaying normal WP login errors for incorrect username, incorrect password and when the user account is locked out - the BPS Lockout Time error message will NOT be displayed. ', 'bulletproof-security').'<br><strong>'.__('CAUTION: ', 'bulletproof-security').'</strong>'.__('If the user account is locked out then no indication will be given that the user account is locked out and only a generic ERROR: Invalid Entry message will be displayed.', 'bulletproof-security').'<br><br><strong>'.__('Attempts Remaining: ', 'bulletproof-security').'</strong><br>'.__('You can choose to display a "Login Attempts Remaining X" message when an incorrect password is entered. X is the number of login attempts left/remaining before the User Account is locked. After making any setting changes click the Save Options button to save your new option settings.', 'bulletproof-security').'<br><br><strong>'.__('Password Reset: ', 'bulletproof-security').'</strong><br>'.__('The Enable Password Reset option will allow the normal WP Lost Password link to be displayed and allow locked out users to reset their passwords. The Disable Password Reset Frontend Only option disables the WP Login reset password feature and displays this error message - Password reset is not allowed for this user. This error message is displayed for valid or invalid user accounts or email addresses. In other words, there is no indication of whether or not a valid username or email address is being entered. This of course disables a lot of cool WordPress login features, but if you want complete Login Stealth Mode then this is the option for you. Disable Password Reset Frontend & Backend disables password reset on the frontend and backend (WP Dashboard) of your website.', 'bulletproof-security').'<br><br><strong>'.__('Sort DB Rows: ', 'bulletproof-security').'</strong><br>'.__('The Ascending Show Oldest Login First option displays logins from the oldest logins to your site to the newest logins to your site. The Descending Show Newest Login First option displays logins from the newest logins to your site to the oldest logins to your site. Example usage: Enter 50 for the Max DB Rows To Show option, which will show a maximum of 50 database rows/logins to your site and set Sort DB Rows option to Descending Show Newest Login First. You will see the last 50 most current/newest logins to your site in descending order.', 'bulletproof-security').$networkMUText.'<br><br><strong>'.__('Search feature: ', 'bulletproof-security').'</strong><br>'.__('The search feature allows you to search all of the Login Security database rows. To search for all Locked User accounts enter Locked, to search for a username enter that username, to search for an IP address enter that IP address, etc.', 'bulletproof-security').'<br><br><strong>'.__('Export|Download Login Security Table Tool:', 'bulletproof-security').'</strong><br>'.__('The Export|Download Login Security Table tool exports (copies) the Login Security Table into the lsm-master.zip file, which you can then download to your computer by clicking the Download Zip Export button displayed in the Login Security Table Export success message. The lsm-master.zip file contains the lsm-master.csv file. The CSV (Comma Separated Values) file format can be opened with Microsoft Excel or other applications that can open/use CSV files. If you want to dump/export the Login Security Table in SQL format then use BPS DB Backup and dump/export the BPS Login Security Database Table: xx_bpspro_login_security', 'bulletproof-security').'<br><br><strong>'.__('The Dynamic Login Security Form: ', 'bulletproof-security').'</strong><br>'.__('You have 3 options: Lock, Unlock or Delete database rows. The Login Security database table is hooked into the WordPress Users database table, but they are 2 completely separate database tables. If you lock a User Account then BPS Pro will enforce that lock on that User Account and the User will not be able to log in. If you unlock a User Account then the User will be able to login. Deleting database rows in the Login Security database table does NOT delete the User Account from the WordPress Users database table. When you delete a User Account it is pretty much the same thing as unlocking a User Account. To delete actual User Accounts you would go to the WordPress Users page and delete that User Account.', 'bulletproof-security').'<br><br><strong>'.__('BPS Pro Video Tutorial links can be found in the Help & FAQ pages.', 'bulletproof-security').'</strong>';
	
	/** JTC Anti-Spam|Anti-Hacker **/
	$bps_modal_content2 = '<strong>'.__('If you forget what the CAPTCHA is and cannot login to your website use the BPS Pro Xternal Tools (XTF) Form (see Forum Help Links at the top of this Read Me help window) to Turn Off JTC. Login to your website, go to the BPS JTC page, correct the CAPTCHA and turn JTC back On.', 'bulletproof-security').'</strong><br><br>'.__('JTC Anti-Spam|Anti-Hacker Setup Steps', 'bulletproof-security').'</strong><br>'.__('1. Enter a user friendly CAPTCHA in the JTC CAPTCHA text box.', 'bulletproof-security').'<br>'.__('2. Copy and paste the CAPTCHA you entered in the JTC CAPTCHA text box into the JTC ToolTip text box.', 'bulletproof-security').'<br>'.__('3. Either keep this default text "Hover or click the text box below" that will be displayed on all your forms or edit this text and add the message you want to add.', 'bulletproof-security').'<br>'.__('4. Select Turn On JTC Logging if you would like to log blocked attempts by spammers and hackers.', 'bulletproof-security').'<br>'.__('5. Choose the forms where you want your CAPTCHA displayed.', 'bulletproof-security').'<br><br><strong>'.__('General Info about JTC Anti-Spam|Anti-Hacker', 'bulletproof-security').'</strong><br>'.__('JTC Anti-Spam|Anti-Hacker provides website security protection as well as website Anti-Spam protection. JTC Anti-Spam|Anti-Hacker is user friendly Anti-Spam/Anti-Hacker Protection. You can customize and personalize your JTC ToolTip message and CAPTCHA to match your website concept.', 'bulletproof-security').'<br><br><strong><font color="blue">'.__('JTC Anti-Spam|Anti-Hacker Security/Spammer Protection:', 'bulletproof-security').'<br>&bull;'.__(' Hacker Protection', 'bulletproof-security').'<br>&bull;'.__(' Spammer Protection', 'bulletproof-security').'<br>&bull;'.__(' DoS/DDoS Attack Protection', 'bulletproof-security').'<br>&bull;'.__(' Brute Force Login Attack Protection', 'bulletproof-security').'<br>&bull;'.__(' SpamBot Trap', 'bulletproof-security').'<br><br>'.__('Hacker, Spammer, DoS/DDoS & Brute Force Login Protection Explained', 'bulletproof-security').'</font></strong><br>'.__('JTC Anti-Spam|Anti-Hacker is specifically designed to stop all Form processing if an invalid CAPTCHA is entered or the SpamBot Trap is triggered.', 'bulletproof-security').'<br><br>'.__('What this means is auto-posting Hacker/HackerBot and Spammer/SpamBot programs/software/applications/user agents cannot overload your Website with Brute Force Login attacks, DoS/DDoS attacks or other Request attacks auto-posted to Forms on your website since HackerBot/SpamBot Requests are stopped before Form processing is allowed to continue to connect to your WordPress Database and process the Form Request - the HackerBot/SpamBot Request resource usage would be insignificant and would not negatively impact your Website resources.', 'bulletproof-security').'<br><br><strong><font color="blue">'.__('NOTES: ', 'bulletproof-security').'</font></strong><br>'.__('99% of all comment spam is automated using SpamBots and is not done by human spammers. JTC Anti-Spam|Anti-Hacker is 100% effective at stopping HackerBot and SpamBot auto-Registrations, auto-Logins & auto-Posting.', 'bulletproof-security').'<br><br><strong>'.__('Trackback/Pingback Spam: ', 'bulletproof-security').'</strong><br>'.__('The WordPress Trackback feature allows someone to post a comment directly to your website from another website without registering or logging into your website or using your comment form, even if you require that all user\'s have to register and login to your website in order to post comments. Since Trackbacks do not use any of the WordPress Forms and are posted directly to your site then JTC cannot prevent Trackback Spam comments that are directly posted to your website. We have created a solution for Trackback Spam (see Forum Help Links at the top of this Read Me help window). NOTE: If you are using JetPack then you may still get Trackback Spam even after using the Bonus Custom Code. This is not 100% confirmed, but it looks like that is the case. You can either choose to ignore the Trackback Spam or you can delete the wp-trackback.php file. The wp-trackback.php file only does one thing: allows Trackback comments to be directly posted to your website.', 'bulletproof-security').'<br><br><strong>'.__('JTC CAPTCHA: ', 'bulletproof-security').'</strong><br>'.__('This is the CAPTCHA that users will enter to Register, Login or post Comments on your website. You can use any numbers or characters and spaces in the CAPTCHA. You can even use HTML code characters except for these HTML code characters:  < > \' " &. You can use a phrase for the CAPTCHA or it can be a single word or you can use your own original combination of words, numbers and HTML characters.', 'bulletproof-security').'<br><br><strong>'.__('NOTE: ', 'bulletproof-security').'</strong>'.__('It is recommended that you make your CAPTCHA user friendly, simple, clear and easy to understand for your users.', 'bulletproof-security').'<br><br><strong>'.__('Example CAPTCHA\'s: ', 'bulletproof-security').'</strong><br>'.__('B4today, Jack and Jill, $$$Money$$$, (-)^(-), ***Your Website Name***, Xfactor, spam free zone, spammers suck, etc.', 'bulletproof-security').'<br><br><strong>'.__('Examples of CAPTCHA\'s that you should not use: ', 'bulletproof-security').'</strong><br>'.__('A mathematical number or a common word in the dictionary. Spambots are designed to try numbers and common words in a dictionary. You could of course use a common word in the dictionary and add a number to it - blue88, which would make this a very random CAPTCHA, but still very user friendly.', 'bulletproof-security').'<br><br><strong>'.__('JTC ToolTip: ', 'bulletproof-security').'</strong><br>'.__('This is the jQuery ToolTip message that is displayed to users when they hover or click on the CAPTCHA text box. This is where you will tell your users what they need to enter for the CAPTCHA. It can be a phrase, complete this sentence, a Hint or simply just Type/Enter: xxxxx or you can get as creative as you want to get with your jQuery ToolTip. Randomness is what makes a CAPTCHA very effective. JTC is designed with CAPTCHA randomness capability as one of its primary features.', 'bulletproof-security').'<br><br><strong>'.__('JTC Title|Text: ', 'bulletproof-security').'</strong><br>'.__('This is the text that is displayed to users above the CAPTCHA text box/Form Field.', 'bulletproof-security').$networkMUJTCText.'<br><br><strong>'.__('Enable JTC for WooCommerce:', 'bulletproof-security').'</strong><br>'.__('Check this checkbox if you have the WooCommerce plugin installed if you would like to use BPS JTC on the WooCommerce custom login page. BPS JTC will still continue to work normally on the standard WordPress Forms: Login, Register, Lost Password, Comment, BuddyPress Register and BuddyPress Sidebar Login Forms when you check this checkbox. This checkbox option setting is not for turning JTC On or Off if you are using WooCommerce. Use the JTC Enable|Disable JTC For These Forms option checkboxes to enable or disable JTC on each of your Forms.', 'bulletproof-security').'<br><br><strong>'.__('Enable|Disable JTC For These Forms: ', 'bulletproof-security').'</strong><br>'.__('Checking a Form checkbox will display a CAPTCHA on that Form to all users. Unchecking a Form checkbox will remove the CAPTCHA on that Form for all users. The Comment Form is a special case and the CAPTCHA can be displayed based on the User Roles that you choose. See the Comment Form help section below.', 'bulletproof-security').'<br><br><strong>'.__('Comment Form: (only applies if Comment Form CAPTCHA is enabled/checked) ', 'bulletproof-security').'<br>'.__('Enable|Disable JTC For These Registered/Logged In User Roles:', 'bulletproof-security').'</strong><br>'.__('Users must be logged into your website for the Comment Form User Roles to work. If you do not require that users are registered and logged in to post comments on your website then these JTC options will not have any effect. These options are ONLY for registered and logged in users and ONLY for your Comment Form if you are using this WordPress Discussion setting: Users must be registered and logged in to comment. If you do not want to require that users are registered and logged in to comment then the JTC Comment Form CAPTCHA will still work as long as you have this WordPress Discussion setting checked: Comment author must fill out name and email.', 'bulletproof-security').'<br><br>'.__('Checking a User Role checkbox will display a CAPTCHA to all users with that User Role on your website\'s Comment Form. Unchecking a User Role checkbox will remove the CAPTCHA from displaying to users with that User Role on your website\'s Comment Form. If your website is using/has Custom User Roles, your Custom User Roles will be displayed in a scrollable box below the standard WP User Roles: Administrator, Editor, Author, Contributor, Subscriber.', 'bulletproof-security').'<br><br><strong>'.__('Login, Register, Lost Password, Multisite, BuddyPress and WooCommerce Forms: CAPTCHA Error message:', 'bulletproof-security').'</strong><br>'.__('The Default JTC Form CAPTCHA error message is: <strong>ERROR</strong>: Incorrect JTC CAPTCHA Entered. You can change or add to the default error message. This error message applies to all Forms except for the Comment Form CAPTCHA error message.', 'bulletproof-security').'<br><br><strong>'.__('Comment Form: CAPTCHA Error message:', 'bulletproof-security').'</strong><br>'.__('The Default JTC Comment Form CAPTCHA error message is: <strong>ERROR</strong>: Incorrect JTC CAPTCHA Entered. Click your Browser\'s back button and re-enter the JTC CAPTCHA. You can change or add to the default error message. This error message only applies to the Comment Form CAPTCHA error message and does not affect or change any of the other Form CAPTCHA error messages.', 'bulletproof-security').'<br><br><strong>'.__('Comment Form: CSS Styling', 'bulletproof-security').'</strong><br>'.__('You can position the JTC Title|Text Form label and the JTC CAPTCHA Form Input text box by editing the CSS in these text boxes. By default the position of the JTC Title|Text label and the JTC CAPTCHA Form Input text box is below your Comment Form submit button. For CSS code styling examples (see Forum Help Links at the top of this Read Me help window).', 'bulletproof-security').'<br><br><strong>'.__('Comment Form Label:', 'bulletproof-security').'</strong><br>'.__('This is the JTC Title|Text label above the Form Input text box.', 'bulletproof-security').'<br><strong>'.__('Comment Form Input Text Box:', 'bulletproof-security').'</strong><br>'.__('This is the JTC CAPTCHA Form Input text box.', 'bulletproof-security').'<br><br><strong>'.__('Additional Brute Force CAPTCHA Option: ', 'bulletproof-security').'</strong><br>'.__('If you do not allow anyone else to log into your website then here is an example of how JTC Anti-Spam|Anti-Hacker could be used as an additional Brute Force Login Protection feature.', 'bulletproof-security').'<br><br>'.__('Example: You create a JTC CAPTCHA: My Example CAPTCHA, you either leave the JTC ToolTip: text box blank or you create a Hint for yourself - JTC ToolTip: My Example Hint. If your JTC ToolTip: text box is blank then the CAPTCHA will not be displayed - only you will know what the CAPTCHA is. If you create a personal Hint for yourself then only you will know what the answer to the Hint is.', 'bulletproof-security').'<br><br><strong>'.__('Encryption|Decryption ModSecurity CRS Bypass', 'bulletproof-security').'</strong><br>'.__('ModSecurity CRS is a security feature installed on some web hosts. ModSecurity CRS sees the legitimate CSS code in the option settings as malicious and will prevent you from saving your option settings. When trying to save your option settings you may see an error message or you may be redirected to your website Home page or nothing happens or other various problems. To evade/bypass ModSecurity CRS click the Encrypt JTC Code button before clicking the Save Options button. Your option settings are encrypted in the POST Form submission and then decrypted in the Form processing code. That means that your option settings are only encrypted temporarily during Form submission to bypass/evade ModSecurity CRS detection. The Decrypt JTC Code feature was added as an additional user friendly convenience feature. It allows you to decrypt your CSS code in real time if you already clicked the Encrypt JTC Code button. You can then continue editing your CSS code and then click the Encrypt JTC Code button again when you are done editing your CSS code. Important!!! Do not forget to click the Encrypt JTC Code button before clicking the Save Options button.', 'bulletproof-security').'<br><br><strong>'.__('BPS Pro Video Tutorial links can be found in the Help & FAQ pages.', 'bulletproof-security').'</strong>';

	/** Idle Session Logout|Auth Cookie Expiration **/
	$bps_modal_content3 = '<strong>'.__('Idle Session Logout (ISL) General Info:', 'bulletproof-security').'</strong><br>'.__('Idle Session Logout (ISL) can be considered a "soft" setting vs ACE being a "hard" setting. ISL uses javascript Event Listeners to monitor Users activity for these ISL events: keyboard key is pressed, mouse button is pressed, mouse is moved, mouse wheel is rolled up or down, finger is placed on the touch surface/screen and finger already placed on the screen is moved across the screen.', 'bulletproof-security').'<br><br>'.__('If you set the Idle Session Logout Time to 60 minutes and the User is idle/inactive for 10 minutes and becomes active again then the Idle Session Logout Time starts all over again/is reset to 60 minutes. If a User is idle/inactive for 60 continuous minutes then that User will be automatically logged out of the site and redirected to the BPS Idle Session Logout Page.', 'bulletproof-security').'<br><br>'.__('When an idle/inactive User is logged out of the site they are redirected to the BPS Idle Session Logout Page URL if their Browser is still open. If the User\'s Browser is still open and the User is on another Browser tab window then the Browser tab window where they are logged into your site will be redirected to the BPS Idle Session Logout Page URL. If the User has closed their Browser without logging out of your site then that User will not be logged out of your site. You can use ACE to log User\'s out of your site whether or not they have closed their Browser. Idle Session Logouts are logged in the BPS Security Log file.', 'bulletproof-security').'<br><br><strong><font color="blue">'.__('After making any option setting changes click the Save Options button to save your new option settings. To reset ISL option settings back to the default ISL option settings, delete any custom values/entries you have entered in any text/textarea boxes and click the Save Options button.', 'bulletproof-security').'</font></strong><br><br><strong>'.__('Turn On|Turn Off:', 'bulletproof-security').'</strong><br>'.__('ISL is Turned Off by default. Select ISL On to turn ISL On. Select ISL Off to turn ISL Off.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Time in Minutes:', 'bulletproof-security').'</strong><br>'.__('Enter the time in minutes for when an idle/inactive User should be logged out of your site. Example: Entering 60 will automatically logout Users who have been idle/inactive for 60 continuous minutes. Only enter numbers and not any other characters. If you accidently enter a blank value for the Idle Session Logout Time then ISL will be disabled automatically.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Page URL:', 'bulletproof-security').'</strong><br>'.__('When an idle/inactive User is logged out of your site they are redirected to the BPS Idle Session Logout Page URL by default. You can choose to redirect logged out users to any URL that you want to redirect them to by entering the URL in this text box. Example: If you enter the URL path to your WP Login page then user\'s will be redirected to your WP Login page instead of the default BPS Idle Session Logout Page.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Page Login URL:', 'bulletproof-security').'</strong><br>'.__('This option displays a clickable Login URL/link to your WP Login page. If your Login page URL is different than the default URL that you see displayed in the Idle Session Logout Page Login URL text box then change the URL to the URL for your site\'s Login page. You can choose not to display a Login URL/link by entering "No" (without quotes) if you do not want a Login URL/link displayed.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Exclude URLs|URIs:', 'bulletproof-security').'</strong><br>'.__('This option allows you to exclude any pages or posts that you do not want ISL to check/monitor. Important: The URI path is everything after the root portion or your domain URL. Example: If the page/post you want to exclude is here: www.example.com/some-post/ then the URI Exclusion that you would use/enter is: /some-post/. If the page/post you want to exclude is here: www.example.com/category/some-post/ then the URI Exclusion that you would use/enter is: /category/some-post/.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Page Custom Message:', 'bulletproof-security').'</strong><br>'.__('You can either use the default BPS ISL message/text by leaving the textarea box blank or you can enter your own custom ISL message/text in this textarea box that you want displayed to logged out users. Your custom message will be displayed on the default BPS ISL Logout page unless you choose to redirect users to a different URL/link using the Idle Session Logout Page URL option setting.', 'bulletproof-security').'<br><br><strong>'.__('Idle Session Logout Page Custom CSS Style:', 'bulletproof-security').'</strong><br>'.__('You can either use the default BPS CSS Style code or enter your own custom CSS Style customizations.', 'bulletproof-security').'<br><br><strong>'.__('Encryption|Decryption ModSecurity CRS Bypass', 'bulletproof-security').'</strong><br>'.__('ModSecurity CRS is a security feature installed on some web hosts. ModSecurity CRS sees the legitimate CSS code in the option settings as malicious and will prevent you from saving your option settings. When trying to save your option settings you may see an error message or you may be redirected to your website Home page or nothing happens or other various problems. To evade/bypass ModSecurity CRS click the Encrypt ISL Code button before clicking the Save Options button. Your option settings are encrypted in the POST Form submission and then decrypted in the Form processing code. That means that your option settings are only encrypted temporarily during Form submission to bypass/evade ModSecurity CRS detection. The Decrypt ISL Code feature was added as an additional user friendly convenience feature. It allows you to decrypt your CSS code in real time if you already clicked the Encrypt ISL Code button. You can then continue editing your CSS code and then click the Encrypt ISL Code button again when you are done editing your CSS code. Important!!! Do not forget to click the Encrypt ISL Code button before clicking the Save Options button.', 'bulletproof-security').'<br><br><strong>'.__('User Account Exceptions:', 'bulletproof-security').'</strong><br>'.__('To create exceptions for User Account names enter User Account names (case-insensitive) separated by a comma and a space: johnDoe, janeDoe. ISL will be turned Off/disabled for any User Account names that you add in this text box. User Account Exceptions override the User Roles option setting. Example: If johnDoe is an Administrator and you have enabled ISL for the Administrator User Role and you have added johnDoe in the User Account Exceptions text box then the johnDoe User Account Exception will override the Administrator User Role option setting and ISL will still be disabled for the johnDoe User Account. It is recommended that you add your User Account name, but if you also want to be automatically logged out when your User Account is idle/inactive then do not add your User Account name.', 'bulletproof-security').'<br><br><strong>'.__('Enable|Disable Idle Session Logouts For These User Roles:', 'bulletproof-security').'</strong><br>'.__('Checking a User Role checkbox will enable ISL for all Users with that User Role (See User Account Exceptions). Unchecking a User Role checkbox will disable ISL for all Users with that User Role. Example: If you only check the Subscriber checkbox then ISL will only be enabled for Users that are Subscribers. If your website is using/has Custom User Roles, your Custom User Roles will be displayed in a scrollable box below the standard WP User Roles: Administrator, Editor, Author, Contributor, Subscriber.', 'bulletproof-security').'<br><br><strong>'.__('Enable|Disable Idle Session Logouts For TinyMCE Editors:', 'bulletproof-security').'</strong><br>'.__('Please read all of the TinyMCE Editor Important Notes below. Checking the Enable|Disable ISL For TinyMCE Editor checkbox will disable ISL for any/all pages that have a TinyMCE Editor on them.', 'bulletproof-security').'<br><br><strong>'.__('TinyMCE Editor Important Notes:', 'bulletproof-security').'</strong><br><br><strong>'.__('ISL and TinyMCE javascript Event Listeners:', 'bulletproof-security').'</strong><br>'.__('ISL uses javascript Event Listeners to monitor User activity for these ISL events: keyboard key is pressed, mouse button is pressed, mouse is moved, mouse wheel is rolled up or down, finger is placed on the touch surface/screen and finger already placed on the screen is moved across the screen. The TinyMCE Editor also uses javascript Event Listeners in the Visual Editor window. ISL can monitor User activity in the Text tab Editor window and the Editor Toolbar buttons or menus for any of the ISL events listed above, but cannot monitor any User activity in the TinyMCE Visual tab Editor window.', 'bulletproof-security').'<br><br><strong>'.__('TinyMCE Editor on WordPress Post, Page and Comments pages:', 'bulletproof-security').'</strong><br>'.__('This example is using an Idle Session Logout Time of 60 minutes. If the User is typing content/text for 60 continuous minutes in the WordPress Post, Page or Comments TinyMCE Visual Editor window and has not clicked or moved their mouse outside of the TinyMCE Visual Editor window for 60 continuous minutes and the Enable|Disable ISL For TinyMCE Editor checkbox option is not checked to disable ISL for TinyMCE Editors, then the User will see the native WP Confirm Navigation alert popup window with buttons to either Leave this Page or Stay on this Page. Clicking the Stay on this Page button resets the ISL timer again to 60 minutes and the User will not lose any of their content/text.', 'bulletproof-security').'<br><br><strong>'.__('TinyMCE Editor Instances used in other plugins and themes:', 'bulletproof-security').'</strong><br>'.__('If another plugin or theme is using instances of the TinyMCE Editor, like BPS Maintenance Mode MMode Editor TinyMCE Editor instance for example, then if all of the same conditions stated above for the WordPress Post, Page and Comments pages TinyMCE Visual Editor are the same then instead of seeing the native WP Confirm Navigation alert popup window, the User will be logged out automatically and the User\'s content/text will not be saved. If you are using TinyMCE Editor Instances in another plugin or theme that Users can use to add/edit content/text and you do not want to risk a User being logged out and losing any of their content/text then check the Enable|Disable ISL For TinyMCE Editor checkbox to disable ISL on any pages that contain a TinyMCE Editor Instance.', 'bulletproof-security').'<br><br><strong>'.__('Auth Cookie Expiration (ACE) General Info:', 'bulletproof-security').'</strong><br>'.__('The WordPress Authentication Cookie Expiration (ACE) time can be considered a "hard" setting vs ISL being a "soft" setting. If you set the Cookie Expiration to 60 minutes then 60 consecutive minutes after a User has logged in, that user will be logged out automatically whether that User is idle/inactive or not. The WordPress Authentication Cookie Expiration (ACE) time is set when a User logs in. The default WordPress Authentication Cookie Expiration time is 2880 Minutes/2 Days and 20160 Minutes/14 Days if a User checks the Remember Me checkbox when they login. The WordPress Authentication Cookie Expiration time is set/reset each time a User logs in. So if a User logs out and then logs back into the site then the Cookie Expiration time for that User is set again to whatever Auth Cookie Expiration Time that you choose or the WordPress default Cookie Expiration time if you do not use or turn On ACE.', 'bulletproof-security').'<br><br><strong>'.__('Turn On|Turn Off:', 'bulletproof-security').'</strong><br>'.__('ACE is Turned Off by default. Select ACE On to turn ACE On. Select ACE Off to turn ACE Off.', 'bulletproof-security').'<br><br><strong>'.__('Auth Cookie Expiration Time in Minutes:', 'bulletproof-security').'</strong><br>'.__('Enter the time in minutes for when a User should be logged out of your site. Example: Entering 720 will automatically logout Users who have been logged in for 720 consecutive minutes/12 hours. Only enter numbers and not any other characters. If you accidently enter a blank value for the for Auth Cookie Expiration Time or Remember Me Auth Cookie Expiration Time then ACE will use the default WordPress Authentication Cookie Expiration time.', 'bulletproof-security').'<br><br><strong>'.__('Remember Me Auth Cookie Expiration Time in Minutes:', 'bulletproof-security').'</strong><br>'.__('Enter the time in minutes for when a User should be logged out of your site when the User has checked the Remember Me checkbox on the WordPress Login page. Example: Entering 720 will automatically logout Users who have been logged in for 720 consecutive minutes/12 hours. Only enter numbers and not any other characters. If you accidently enter a blank value for the for Auth Cookie Expiration Time or Remember Me Auth Cookie Expiration Time then ACE will use the default WordPress Authentication Cookie Expiration time.', 'bulletproof-security').'<br><br><strong>'.__('Enable|Disable Remember Me Checkbox:', 'bulletproof-security').'</strong><br>'.__('Checking the Disable & do not display the Remember Me checkbox option will disable and not display the Remember Me checkbox for everyone including you. If you want to set and control the WordPress Remember Me setting then use the Remember Me Auth Cookie Expiration Time in Minutes option setting instead and choose an amount of time you would like to use for the Cookie expiration time.', 'bulletproof-security').'<br><br><strong>'.__('User Account Exceptions:', 'bulletproof-security').'</strong><br>'.__('To create exceptions for User Account names enter User Account names (case-insensitive) separated by a comma and a space: johnDoe, janeDoe. Auth Cookie Expiration Time settings will not be applied to any User Account names that you add in this text box and these User Accounts will instead use the default WordPress Authentication Cookie Expiration time. User Account Exceptions override the User Roles option setting. Example: If johnDoe is an Administrator and you have enabled ACE for the Administrator User Role and you have added johnDoe in the User Account Exceptions text box then the johnDoe User Account Exception will override the Administrator User Role option setting and the johnDoe User Account will use the default WordPress Authentication Cookie Expiration time. It is recommended that you add your User Account name, but if you also want to be automatically logged out for the Auth Cookie Expiration time that you choose then do not add your User Account name.', 'bulletproof-security').'<br><br><strong>'.__('Enable|Disable Auth Cookie Expiration Time For These User Roles:', 'bulletproof-security').'</strong><br>'.__('Checking a User Role checkbox will apply the Auth Cookie Expiration Time that you choose for all Users with that User Role (See User Account Exceptions). Unchecking a User Role checkbox will apply the default WordPress Authentication Cookie Expiration time for all Users with that User Role. Example: If you only check the Subscriber checkbox then ACE will only apply the Auth Cookie Expiration Time setting that you choose for Users that are Subscribers. If your website is using/has Custom User Roles, your Custom User Roles will be displayed in a scrollable box below the standard WP User Roles: Administrator, Editor, Author, Contributor, Subscriber.', 'bulletproof-security').'<br><br>';

	/** Force Strong Passwords **/
	$bps_modal_content4 = '<strong>'.__('Force Strong Passwords (FSP) General Info:', 'bulletproof-security').'</strong><br>'.__('FSP works on standard single WordPress site types, Network|Multisite site types and BuddyPress. WooCommerce already has strong password requirements by default. The FSP option settings do not affect WooCommerce Forms.', 'bulletproof-security').'<br><br>'.__('The FSP message is displayed by default on the WP Reset Password Form/page and the BuddyPress Registration and frontend Profile page. The FSP message is not displayed by default on the WP Profile page or the BuddyPress backend Profile page. If a User enters a password that does not meet the FSP Password Criteria Requirements on the WP Profile page or the BuddyPress backend Profile page, the FSP Displayed Message/Error Message is displayed to the User.', 'bulletproof-security').'<br><br><strong>'.__('Turn FSP On|Turn FSP Off:', 'bulletproof-security').'</strong><br>'.__('FSP is Turned Off by default. Select FSP On to turn FSP On. Select FSP Off to turn FSP Off.', 'bulletproof-security').'<br><br><strong>'.__('Password Character Length:', 'bulletproof-security').'</strong><br>'.__('This option allows you to set the length of the password the User must enter. The default password character length is 12. Note: The maximum password character length allowed is 32.', 'bulletproof-security').'<br><br><strong>'.__('Password Criteria Requirements:', 'bulletproof-security').'</strong><br>'.__('Check the checkboxes to add requirements. Uncheck the checkboxes to remove requirements. Recommendation: Check all checkboxes.', 'bulletproof-security').'<br><br><strong>'.__('Displayed Message/Error Message:', 'bulletproof-security').'</strong><br>'.__('Enter/type the displayed message that the User will see on the relevant Forms/pages or use the existing default FSP message.', 'bulletproof-security').'<br><br>';

?>