Version Description
- Fixed a JavaScript error caused by a new French translation.
- Checked code for compatibility with WordPress 5.4.1.
Download this release
Release Info
Developer | scheeeli |
Plugin | Anti-Malware Security and Brute-Force Firewall |
Version | 4.19.69 |
Comparing to | |
See all releases |
Code changes from version 4.19.68 to 4.19.69
- images/index.php +6 -6
- index.php +5 -5
- readme.txt +11 -4
images/index.php
CHANGED
@@ -420,7 +420,7 @@ function loadIframe(title) {
|
|
420 |
curDiv.scrollIntoView(true);
|
421 |
}
|
422 |
function cancelserver(divid) {
|
423 |
-
document.getElementById(divid).innerHTML = "<div class=\'error\'>'.
|
424 |
}
|
425 |
function checkupdateserver(server, divid) {
|
426 |
var updatescript = document.createElement("script");
|
@@ -614,11 +614,11 @@ if (isset($_GET["SESSION"]) && is_numeric($_GET["SESSION"]) && preg_match('|(.*?
|
|
614 |
if (is_file(GOTMLS_plugin_path."safe-load/session.php"))
|
615 |
require_once(GOTMLS_plugin_path."safe-load/session.php");
|
616 |
if (isset($_SESSION["GOTMLS_SESSION_TEST"]))
|
617 |
-
die("/* GOTMLS SESSION PASS */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\nshowhide('GOTMLS_patch_searching', true);\nif (autoUpdateDownloadGIF = document.getElementById('autoUpdateDownload'))\n\tdonationAmount = autoUpdateDownloadGIF.src.replace(/^.+\?/,'');\nif ((autoUpdateDownloadGIF.src == donationAmount) || donationAmount=='0') {\n\tif (patch_searching_div = document.getElementById('GOTMLS_patch_searching')) {\n\t\tif (autoUpdateDownloadGIF.src == donationAmount)\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".__("You must register and donate to use this feature!",'gotmls')."</span>';\n\t\telse\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".__("This feature is available to those who have donated!",'gotmls')."</span>';\n\t}\n} else {\n\tshowhide('GOTMLS_patch_searching');\n\tshowhide('GOTMLS_patch_button', true);\n}\n");
|
618 |
else {
|
619 |
$_SESSION["GOTMLS_SESSION_TEST"] = $_GET["SESSION"] + 1;
|
620 |
if ($_GET["SESSION"] > 0)
|
621 |
-
die("/* GOTMLS SESSION FAIL */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\ndocument.getElementById('GOTMLS_patch_searching').innerHTML = '<div class=\"error\">".__("Your Server could not start a Session!",'gotmls')."</div>';");
|
622 |
else
|
623 |
die("/* GOTMLS SESSION TEST */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\nstopCheckingSession = checkupdateserver('".$match[0].$_SESSION["GOTMLS_SESSION_TEST"]."', 'GOTMLS_patch_searching');");
|
624 |
}
|
@@ -1008,7 +1008,7 @@ function GOTMLS_scanfile($file) {
|
|
1008 |
$className = "errors";
|
1009 |
}
|
1010 |
if (count($GLOBALS["GOTMLS"]["tmp"]["threats_found"])) {
|
1011 |
-
$threat_link = $lt.'a target="GOTMLS_iFrame" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."687").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$clean_file.preg_replace('/\&(GOTMLS_scan|mt|GOTMLS_mt|action)=/', '&last_\1=', isset($_SERVER["QUERY_STRING"])&&strlen($_SERVER["QUERY_STRING"])?"&".$_SERVER["QUERY_STRING"]:"")).'" id="list_'.$clean_file.'" onclick="loadIframe(\''.str_replace("\"", """, $lt.'div style="float: left; white-space: nowrap;"'.$gt.__("Examine File",'gotmls').' ... '.$lt.'/div'.$gt.$lt.'div style="overflow: hidden; position: relative; height: 20px;"'.$gt.$lt.'div style="position: absolute; right: 0px; text-align: right; width: 9000px;"'.$gt.GOTMLS_htmlspecialchars(GOTMLS_strip4java($file), ENT_NOQUOTES)).$lt.'/div'.$gt.$lt.'/div'.$gt.'\');" class="GOTMLS_plugin"'.$gt;
|
1012 |
if ($className == "errors") {
|
1013 |
$GLOBALS["GOTMLS"]["tmp"]["debug_fix"]="errors";
|
1014 |
$threat_link = GOTMLS_error_link($GLOBALS["GOTMLS"]["tmp"]["file_contents"], $file);
|
@@ -1562,9 +1562,9 @@ function GOTMLS_error_link($errorTXT, $file = "", $class = "errors") {
|
|
1562 |
$js_file = GOTMLS_strip4java(GOTMLS_htmlspecialchars($file, ENT_NOQUOTES));
|
1563 |
if (count($ids) == 2 && is_numeric($ids[0])) {
|
1564 |
$encoded_file = $file;
|
1565 |
-
$onclick = 'loadIframe(\''.str_replace("\"", """, '<div style="float: left; white-space: nowrap;">'.__("Examine Quarantined Content",'gotmls').' ... </div><div style="overflow: hidden; position: relative; height: 20px;"><div style="position: absolute; right: 0px; text-align: right; width: 9000px;">'.$js_file).'</div></div>\');" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."1263").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$file);
|
1566 |
} elseif ($file)
|
1567 |
-
$onclick = 'loadIframe(\''.str_replace("\"", """, '<div style="float: left; white-space: nowrap;">'.__("Examine Current Content",'gotmls').' ... </div><div style="overflow: hidden; position: relative; height: 20px;"><div style="position: absolute; right: 0px; text-align: right; width: 9000px;">'.$js_file).'</div></div>\');" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."1265").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$encoded_file.preg_replace('/\&(GOTMLS_scan|mt|GOTMLS_mt|action)=/', '&last_\1=', isset($_SERVER["QUERY_STRING"])&&strlen($_SERVER["QUERY_STRING"])?"&".$_SERVER["QUERY_STRING"]:""));
|
1568 |
else
|
1569 |
$onclick = 'return false;';
|
1570 |
return "<a id=\"list_$encoded_file\" title=\"$errorTXT\" target=\"GOTMLS_iFrame\" onclick=\"$onclick\" class=\"GOTMLS_plugin $class\">";
|
420 |
curDiv.scrollIntoView(true);
|
421 |
}
|
422 |
function cancelserver(divid) {
|
423 |
+
document.getElementById(divid).innerHTML = "<div class=\'error\'>'.GOTMLS_strip4java(__("No response from server!",'gotmls')).'</div>";
|
424 |
}
|
425 |
function checkupdateserver(server, divid) {
|
426 |
var updatescript = document.createElement("script");
|
614 |
if (is_file(GOTMLS_plugin_path."safe-load/session.php"))
|
615 |
require_once(GOTMLS_plugin_path."safe-load/session.php");
|
616 |
if (isset($_SESSION["GOTMLS_SESSION_TEST"]))
|
617 |
+
die("/* GOTMLS SESSION PASS */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\nshowhide('GOTMLS_patch_searching', true);\nif (autoUpdateDownloadGIF = document.getElementById('autoUpdateDownload'))\n\tdonationAmount = autoUpdateDownloadGIF.src.replace(/^.+\?/,'');\nif ((autoUpdateDownloadGIF.src == donationAmount) || donationAmount=='0') {\n\tif (patch_searching_div = document.getElementById('GOTMLS_patch_searching')) {\n\t\tif (autoUpdateDownloadGIF.src == donationAmount)\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".GOTMLS_strip4java(__("You must register and donate to use this feature!",'gotmls'))."</span>';\n\t\telse\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".GOTMLS_strip4java(__("This feature is available to those who have donated!",'gotmls'))."</span>';\n\t}\n} else {\n\tshowhide('GOTMLS_patch_searching');\n\tshowhide('GOTMLS_patch_button', true);\n}\n");
|
618 |
else {
|
619 |
$_SESSION["GOTMLS_SESSION_TEST"] = $_GET["SESSION"] + 1;
|
620 |
if ($_GET["SESSION"] > 0)
|
621 |
+
die("/* GOTMLS SESSION FAIL */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\ndocument.getElementById('GOTMLS_patch_searching').innerHTML = '<div class=\"error\">".GOTMLS_strip4java(__("Your Server could not start a Session!",'gotmls'))."</div>';");
|
622 |
else
|
623 |
die("/* GOTMLS SESSION TEST */\nif('undefined' != typeof stopCheckingSession && stopCheckingSession)\n\tclearTimeout(stopCheckingSession);\nstopCheckingSession = checkupdateserver('".$match[0].$_SESSION["GOTMLS_SESSION_TEST"]."', 'GOTMLS_patch_searching');");
|
624 |
}
|
1008 |
$className = "errors";
|
1009 |
}
|
1010 |
if (count($GLOBALS["GOTMLS"]["tmp"]["threats_found"])) {
|
1011 |
+
$threat_link = $lt.'a target="GOTMLS_iFrame" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."687").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$clean_file.preg_replace('/\&(GOTMLS_scan|mt|GOTMLS_mt|action)=/', '&last_\1=', isset($_SERVER["QUERY_STRING"])&&strlen($_SERVER["QUERY_STRING"])?"&".$_SERVER["QUERY_STRING"]:"")).'" id="list_'.$clean_file.'" onclick="loadIframe(\''.str_replace("\"", """, $lt.'div style="float: left; white-space: nowrap;"'.$gt.GOTMLS_strip4java(__("Examine File",'gotmls')).' ... '.$lt.'/div'.$gt.$lt.'div style="overflow: hidden; position: relative; height: 20px;"'.$gt.$lt.'div style="position: absolute; right: 0px; text-align: right; width: 9000px;"'.$gt.GOTMLS_htmlspecialchars(GOTMLS_strip4java($file), ENT_NOQUOTES)).$lt.'/div'.$gt.$lt.'/div'.$gt.'\');" class="GOTMLS_plugin"'.$gt;
|
1012 |
if ($className == "errors") {
|
1013 |
$GLOBALS["GOTMLS"]["tmp"]["debug_fix"]="errors";
|
1014 |
$threat_link = GOTMLS_error_link($GLOBALS["GOTMLS"]["tmp"]["file_contents"], $file);
|
1562 |
$js_file = GOTMLS_strip4java(GOTMLS_htmlspecialchars($file, ENT_NOQUOTES));
|
1563 |
if (count($ids) == 2 && is_numeric($ids[0])) {
|
1564 |
$encoded_file = $file;
|
1565 |
+
$onclick = 'loadIframe(\''.str_replace("\"", """, '<div style="float: left; white-space: nowrap;">'.GOTMLS_strip4java(__("Examine Quarantined Content",'gotmls')).' ... </div><div style="overflow: hidden; position: relative; height: 20px;"><div style="position: absolute; right: 0px; text-align: right; width: 9000px;">'.$js_file).'</div></div>\');" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."1263").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$file);
|
1566 |
} elseif ($file)
|
1567 |
+
$onclick = 'loadIframe(\''.str_replace("\"", """, '<div style="float: left; white-space: nowrap;">'.GOTMLS_strip4java(__("Examine Current Content",'gotmls')).' ... </div><div style="overflow: hidden; position: relative; height: 20px;"><div style="position: absolute; right: 0px; text-align: right; width: 9000px;">'.$js_file).'</div></div>\');" href="'.admin_url('admin-ajax.php?action=GOTMLS_scan&'.GOTMLS_set_nonce(__FUNCTION__."1265").'&mt='.$GLOBALS["GOTMLS"]["tmp"]["mt"].'&GOTMLS_scan='.$encoded_file.preg_replace('/\&(GOTMLS_scan|mt|GOTMLS_mt|action)=/', '&last_\1=', isset($_SERVER["QUERY_STRING"])&&strlen($_SERVER["QUERY_STRING"])?"&".$_SERVER["QUERY_STRING"]:""));
|
1568 |
else
|
1569 |
$onclick = 'return false;';
|
1570 |
return "<a id=\"list_$encoded_file\" title=\"$errorTXT\" target=\"GOTMLS_iFrame\" onclick=\"$onclick\" class=\"GOTMLS_plugin $class\">";
|
index.php
CHANGED
@@ -8,7 +8,7 @@ Author URI: http://wordpress.ieonly.com/category/my-plugins/anti-malware/
|
|
8 |
Contributors: scheeeli, gotmls
|
9 |
Donate link: https://gotmls.net/donate/
|
10 |
Description: This Anti-Virus/Anti-Malware plugin searches for Malware and other Virus like threats and vulnerabilities on your server and helps you remove them. It's always growing and changing to adapt to new threats so let me know if it's not working for you.
|
11 |
-
Version: 4.19.
|
12 |
*/
|
13 |
if (isset($_SERVER["DOCUMENT_ROOT"]) && ($SCRIPT_FILE = str_replace($_SERVER["DOCUMENT_ROOT"], "", (isset($_SERVER["SCRIPT_FILENAME"])?$_SERVER["SCRIPT_FILENAME"]:(isset($_SERVER["SCRIPT_NAME"])?$_SERVER["SCRIPT_NAME"]:"")))) && strlen($SCRIPT_FILE) > strlen("/".basename(__FILE__)) && substr(__FILE__, -1 * strlen($SCRIPT_FILE)) == substr($SCRIPT_FILE, -1 * strlen(__FILE__)) || !(function_exists("add_action") && function_exists("load_plugin_textdomain")))
|
14 |
include(dirname(__FILE__)."/safe-load/index.php");
|
@@ -195,7 +195,7 @@ function GOTMLS_display_header($optional_box = "") {
|
|
195 |
alert(error);
|
196 |
return false;
|
197 |
} else {
|
198 |
-
document.getElementById("Definition_Updates").innerHTML = \'<img src="'.GOTMLS_images_path.'wait.gif">'.__("Submitting Registration ...",'gotmls').'\';
|
199 |
showhide("Definition_Updates", true);
|
200 |
setTimeout(\'stopCheckingDefinitions = checkupdateserver("'.$Update_Definitions[0].'", "Definition_Updates", "'.$Update_Definitions[1].'")\', 3000);
|
201 |
showhide("registerKeyForm");
|
@@ -409,7 +409,7 @@ function GOTMLS_Firewall_Options() {
|
|
409 |
$errdiv = "<!-- ".$GLOBALS["GOTMLS"]["tmp"]["apache"][0]." -->";
|
410 |
else
|
411 |
$errdiv = "<div class='error'>Unable to read Apache Version, this patch may not work!</div>";
|
412 |
-
$patch_action = $lt.'form method="POST" name="GOTMLS_Form_XMLRPC_patch"'.$gt.$lt.'input type="hidden" name="'.str_replace('=', '" value="', GOTMLS_set_nonce(__FUNCTION__."1159")).'"'.$gt.$lt.'script'.$gt."\nfunction setFirewall(opt, val) {\n\tif (autoUpdateDownloadGIF = document.getElementById('fw_opt'))\n\t\tautoUpdateDownloadGIF.value = opt;\n\tif (autoUpdateDownloadGIF = document.getElementById('fw_val'))\n\t\tautoUpdateDownloadGIF.value = val;\n}\nfunction testComplete() {\nif (autoUpdateDownloadGIF = document.getElementById('autoUpdateDownload'))\n\tdonationAmount = autoUpdateDownloadGIF.src.replace(/^.+\?/,'');\nif ((autoUpdateDownloadGIF.src == donationAmount) || donationAmount=='0') {\n\tif (patch_searching_div = document.getElementById('GOTMLS_XMLRPC_patch_searching')) {\n\t\tif (autoUpdateDownloadGIF.src == donationAmount)\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".__("You must register and donate to use this feature!",'gotmls')."</span>';\n\t\telse\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".__("This feature is available to those who have donated!",'gotmls')."</span>';\n\t}\n} else {\n\tshowhide('GOTMLS_XMLRPC_patch_searching');\n\tshowhide('GOTMLS_XMLRPC_patch_button', true);\n}\n}\nwindow.onload=testComplete;\n$lt/script$gt$lt".'div style="padding: 0 30px;"'.$gt.$lt.'input type="hidden" name="GOTMLS_XMLRPC_patching" value="';
|
413 |
$patch_found = false;
|
414 |
$head = str_replace(array('|<Files[^>]+', '(.+?)', '\\s*(', '\\s*)*|is'), array("<Files ", "$deny\n", "\n", "\n"), $find);
|
415 |
$htaccess = "";
|
@@ -888,7 +888,7 @@ function update_status(title, time) {
|
|
888 |
if (percent == 100) {
|
889 |
showhide("pause_button", true);
|
890 |
showhide("pause_button");
|
891 |
-
title = "'.$lt.'b'.$gt.__("Scan Complete!",'gotmls').$lt.'/b'.$gt.'";
|
892 |
} else
|
893 |
scan_state = "99F";
|
894 |
changeFavicon(percent);
|
@@ -1177,7 +1177,7 @@ add_filter("plugin_action_links", "GOTMLS_set_plugin_action_links", 1, 2);
|
|
1177 |
|
1178 |
function GOTMLS_set_plugin_row_meta($links_array, $plugin_file) {
|
1179 |
if ($plugin_file == substr(str_replace("\\", "/", __FILE__), (-1 * strlen($plugin_file))) && strlen($plugin_file) > 10)
|
1180 |
-
$links_array = array_merge($links_array, array('<a target="_blank" href="'.GOTMLS_plugin_home.'faqs/">FAQ</a>','<a target="_blank" href="'.GOTMLS_plugin_home.'support/">Support</a>','<a target="_blank" href="https://
|
1181 |
return $links_array;
|
1182 |
}
|
1183 |
add_filter("plugin_row_meta", "GOTMLS_set_plugin_row_meta", 1, 2);
|
8 |
Contributors: scheeeli, gotmls
|
9 |
Donate link: https://gotmls.net/donate/
|
10 |
Description: This Anti-Virus/Anti-Malware plugin searches for Malware and other Virus like threats and vulnerabilities on your server and helps you remove them. It's always growing and changing to adapt to new threats so let me know if it's not working for you.
|
11 |
+
Version: 4.19.69
|
12 |
*/
|
13 |
if (isset($_SERVER["DOCUMENT_ROOT"]) && ($SCRIPT_FILE = str_replace($_SERVER["DOCUMENT_ROOT"], "", (isset($_SERVER["SCRIPT_FILENAME"])?$_SERVER["SCRIPT_FILENAME"]:(isset($_SERVER["SCRIPT_NAME"])?$_SERVER["SCRIPT_NAME"]:"")))) && strlen($SCRIPT_FILE) > strlen("/".basename(__FILE__)) && substr(__FILE__, -1 * strlen($SCRIPT_FILE)) == substr($SCRIPT_FILE, -1 * strlen(__FILE__)) || !(function_exists("add_action") && function_exists("load_plugin_textdomain")))
|
14 |
include(dirname(__FILE__)."/safe-load/index.php");
|
195 |
alert(error);
|
196 |
return false;
|
197 |
} else {
|
198 |
+
document.getElementById("Definition_Updates").innerHTML = \'<img src="'.GOTMLS_images_path.'wait.gif">'.GOTMLS_strip4java(__("Submitting Registration ...",'gotmls')).'\';
|
199 |
showhide("Definition_Updates", true);
|
200 |
setTimeout(\'stopCheckingDefinitions = checkupdateserver("'.$Update_Definitions[0].'", "Definition_Updates", "'.$Update_Definitions[1].'")\', 3000);
|
201 |
showhide("registerKeyForm");
|
409 |
$errdiv = "<!-- ".$GLOBALS["GOTMLS"]["tmp"]["apache"][0]." -->";
|
410 |
else
|
411 |
$errdiv = "<div class='error'>Unable to read Apache Version, this patch may not work!</div>";
|
412 |
+
$patch_action = $lt.'form method="POST" name="GOTMLS_Form_XMLRPC_patch"'.$gt.$lt.'input type="hidden" name="'.str_replace('=', '" value="', GOTMLS_set_nonce(__FUNCTION__."1159")).'"'.$gt.$lt.'script'.$gt."\nfunction setFirewall(opt, val) {\n\tif (autoUpdateDownloadGIF = document.getElementById('fw_opt'))\n\t\tautoUpdateDownloadGIF.value = opt;\n\tif (autoUpdateDownloadGIF = document.getElementById('fw_val'))\n\t\tautoUpdateDownloadGIF.value = val;\n}\nfunction testComplete() {\nif (autoUpdateDownloadGIF = document.getElementById('autoUpdateDownload'))\n\tdonationAmount = autoUpdateDownloadGIF.src.replace(/^.+\?/,'');\nif ((autoUpdateDownloadGIF.src == donationAmount) || donationAmount=='0') {\n\tif (patch_searching_div = document.getElementById('GOTMLS_XMLRPC_patch_searching')) {\n\t\tif (autoUpdateDownloadGIF.src == donationAmount)\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".GOTMLS_strip4java(__("You must register and donate to use this feature!",'gotmls'))."</span>';\n\t\telse\n\t\t\tpatch_searching_div.innerHTML = '<span style=\"color: #F00;\">".GOTMLS_strip4java(__("This feature is available to those who have donated!",'gotmls'))."</span>';\n\t}\n} else {\n\tshowhide('GOTMLS_XMLRPC_patch_searching');\n\tshowhide('GOTMLS_XMLRPC_patch_button', true);\n}\n}\nwindow.onload=testComplete;\n$lt/script$gt$lt".'div style="padding: 0 30px;"'.$gt.$lt.'input type="hidden" name="GOTMLS_XMLRPC_patching" value="';
|
413 |
$patch_found = false;
|
414 |
$head = str_replace(array('|<Files[^>]+', '(.+?)', '\\s*(', '\\s*)*|is'), array("<Files ", "$deny\n", "\n", "\n"), $find);
|
415 |
$htaccess = "";
|
888 |
if (percent == 100) {
|
889 |
showhide("pause_button", true);
|
890 |
showhide("pause_button");
|
891 |
+
title = "'.$lt.'b'.$gt.GOTMLS_strip4java(__("Scan Complete!",'gotmls')).$lt.'/b'.$gt.'";
|
892 |
} else
|
893 |
scan_state = "99F";
|
894 |
changeFavicon(percent);
|
1177 |
|
1178 |
function GOTMLS_set_plugin_row_meta($links_array, $plugin_file) {
|
1179 |
if ($plugin_file == substr(str_replace("\\", "/", __FILE__), (-1 * strlen($plugin_file))) && strlen($plugin_file) > 10)
|
1180 |
+
$links_array = array_merge($links_array, array('<a target="_blank" href="'.GOTMLS_plugin_home.'faqs/">FAQ</a>','<a target="_blank" href="'.GOTMLS_plugin_home.'support/">Support</a>','<a target="_blank" href="https://gotmls.net/donate/?key='.GOTMLS_installation_key.'"><span style="font-size: 20px; height: 20px; width: 20px;" class="dashicons dashicons-heart"></span>Donate</a>'));
|
1181 |
return $links_array;
|
1182 |
}
|
1183 |
add_filter("plugin_row_meta", "GOTMLS_set_plugin_row_meta", 1, 2);
|
readme.txt
CHANGED
@@ -3,12 +3,12 @@ Plugin URI: http://gotmls.net/
|
|
3 |
Author: Eli Scheetz
|
4 |
Author URI: http://wordpress.ieonly.com/category/my-plugins/anti-malware/
|
5 |
Contributors: scheeeli, gotmls
|
6 |
-
Donate link: https://
|
7 |
Tags: security, firewall, anti-malware, scanner, automatic, repair, remove, malware, virus, threat, hacked, malicious, infection, timthumb, exploit, block, brute-force, wp-login, patch, antimalware, revslider, Revolution Slider
|
8 |
-
Version: 4.19.
|
9 |
-
Stable tag: 4.19.
|
10 |
Requires at least: 3.3
|
11 |
-
Tested up to: 5.4
|
12 |
|
13 |
This Anti-Malware scanner searches for Malware, Viruses, and other security threats and vulnerabilities on your server and it helps you fix them.
|
14 |
|
@@ -92,6 +92,10 @@ sucuri.net caches their scan results and will not refresh the scan until you cli
|
|
92 |
|
93 |
== Changelog ==
|
94 |
|
|
|
|
|
|
|
|
|
95 |
= 4.19.68 =
|
96 |
* Updated some external links.
|
97 |
* Tweaked code for better compatibility with PHP 7.4 and WordPress 5.4.
|
@@ -396,6 +400,9 @@ sucuri.net caches their scan results and will not refresh the scan until you cli
|
|
396 |
|
397 |
== Upgrade Notice ==
|
398 |
|
|
|
|
|
|
|
399 |
= 4.19.68 =
|
400 |
Updated some external links and tweaked code for better compatibility with PHP 7.4 and WordPress 5.4.
|
401 |
|
3 |
Author: Eli Scheetz
|
4 |
Author URI: http://wordpress.ieonly.com/category/my-plugins/anti-malware/
|
5 |
Contributors: scheeeli, gotmls
|
6 |
+
Donate link: https://gotmls.net/donate/
|
7 |
Tags: security, firewall, anti-malware, scanner, automatic, repair, remove, malware, virus, threat, hacked, malicious, infection, timthumb, exploit, block, brute-force, wp-login, patch, antimalware, revslider, Revolution Slider
|
8 |
+
Version: 4.19.69
|
9 |
+
Stable tag: 4.19.69
|
10 |
Requires at least: 3.3
|
11 |
+
Tested up to: 5.4.1
|
12 |
|
13 |
This Anti-Malware scanner searches for Malware, Viruses, and other security threats and vulnerabilities on your server and it helps you fix them.
|
14 |
|
92 |
|
93 |
== Changelog ==
|
94 |
|
95 |
+
= 4.19.69 =
|
96 |
+
* Fixed a JavaScript error caused by a new French translation.
|
97 |
+
* Checked code for compatibility with WordPress 5.4.1.
|
98 |
+
|
99 |
= 4.19.68 =
|
100 |
* Updated some external links.
|
101 |
* Tweaked code for better compatibility with PHP 7.4 and WordPress 5.4.
|
400 |
|
401 |
== Upgrade Notice ==
|
402 |
|
403 |
+
= 4.19.69 =
|
404 |
+
Fixed a JavaScript error caused by a new French translation and checked code for compatibility with WordPress 5.4.1.
|
405 |
+
|
406 |
= 4.19.68 =
|
407 |
Updated some external links and tweaked code for better compatibility with PHP 7.4 and WordPress 5.4.
|
408 |
|