diff --git a/classes/pref/prefs.php b/classes/pref/prefs.php
index 6c33170bd..d36e31f0b 100644
--- a/classes/pref/prefs.php
+++ b/classes/pref/prefs.php
@@ -65,26 +65,26 @@ class Pref_Prefs extends Handler_Protected {
$con_pw = $_POST["confirm_password"];
if ($old_pw == "") {
- print "ERROR: ".__("Old password cannot be blank.");
+ print "ERROR: ".format_error("Old password cannot be blank.");
return;
}
if ($new_pw == "") {
- print "ERROR: ".__("New password cannot be blank.");
+ print "ERROR: ".format_error("New password cannot be blank.");
return;
}
if ($new_pw != $con_pw) {
- print "ERROR: ".__("Entered passwords do not match.");
+ print "ERROR: ".format_error("Entered passwords do not match.");
return;
}
$authenticator = PluginHost::getInstance()->get_plugin($_SESSION["auth_module"]);
if (method_exists($authenticator, "change_password")) {
- print $authenticator->change_password($_SESSION["uid"], $old_pw, $new_pw);
+ print format_notice($authenticator->change_password($_SESSION["uid"], $old_pw, $new_pw));
} else {
- print "ERROR: ".__("Function not supported by authentication module.");
+ print "ERROR: ".format_error("Function not supported by authentication module.");
}
}
@@ -244,6 +244,8 @@ class Pref_Prefs extends Handler_Protected {
print "
" . __("Password") . "
";
+ print "";
+
$result = $this->dbh->query("SELECT id FROM ttrss_users
WHERE id = ".$_SESSION["uid"]." AND pwd_hash
= 'SHA1:5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8'");
@@ -264,12 +266,20 @@ class Pref_Prefs extends Handler_Protected {
onComplete: function(transport) {
notify('');
if (transport.responseText.indexOf('ERROR: ') == 0) {
- notify_error(transport.responseText.replace('ERROR: ', ''));
+
+ $('pwd_change_infobox').innerHTML =
+ transport.responseText.replace('ERROR: ', '');
+
} else {
- notify_info(transport.responseText);
+ $('pwd_change_infobox').innerHTML =
+ transport.responseText.replace('ERROR: ', '');
+
var warn = $('default_pass_warning');
if (warn) Element.hide(warn);
}
+
+ new Effect.Appear('pwd_change_infobox');
+
}});
this.reset();
}
diff --git a/include/functions2.php b/include/functions2.php
index e212609db..1936d146d 100644
--- a/include/functions2.php
+++ b/include/functions2.php
@@ -1483,9 +1483,9 @@
$tag = preg_replace('/[\'\"\+\>\<]/', "", $tag);
-// $tag = str_replace('"', "", $tag);
-// $tag = str_replace("+", " ", $tag);
- $tag = str_replace("technorati tag: ", "", $tag);
+ if (DB_TYPE == "mysql") {
+ $tag = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $tag);
+ }
return $tag;
}
diff --git a/include/rssfuncs.php b/include/rssfuncs.php
index 8797ee523..6eb4e6d98 100644
--- a/include/rssfuncs.php
+++ b/include/rssfuncs.php
@@ -761,7 +761,11 @@
// Workaround: 4-byte unicode requires utf8mb4 in MySQL. See https://tt-rss.org/forum/viewtopic.php?f=1&t=3377&p=20077#p20077
if (DB_TYPE == "mysql") {
foreach ($article as $k => $v) {
- $article[$k] = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $v);
+
+ // i guess we'll have to take the risk of 4byte unicode labels & tags here
+ if (!is_array($article[$k])) {
+ $article[$k] = preg_replace('/[\x{10000}-\x{10FFFF}]/u', "\xEF\xBF\xBD", $v);
+ }
}
}