aboutsummaryrefslogtreecommitdiff
path: root/mod
diff options
context:
space:
mode:
authorcash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-11-09 11:34:23 +0000
committercash <cash@36083f99-b078-4883-b0ff-0f9b5a30f544>2010-11-09 11:34:23 +0000
commit2ce3218f57060f33088ac146a3ed662b240ccc39 (patch)
tree2c1ffc2f030095b8c4ce47572287f03076543290 /mod
parentdddc7cf8451b106df608354fa01b6cfe25373b13 (diff)
downloadelgg-2ce3218f57060f33088ac146a3ed662b240ccc39.tar.gz
elgg-2ce3218f57060f33088ac146a3ed662b240ccc39.tar.bz2
Refs #2609 - added fix to trunk
git-svn-id: http://code.elgg.org/elgg/trunk@7278 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod')
-rw-r--r--mod/groups/actions/edit.php16
1 files changed, 14 insertions, 2 deletions
diff --git a/mod/groups/actions/edit.php b/mod/groups/actions/edit.php
index 4ae98815c..216a22702 100644
--- a/mod/groups/actions/edit.php
+++ b/mod/groups/actions/edit.php
@@ -8,12 +8,24 @@
// Load configuration
global $CONFIG;
+/**
+ * wrapper for recursive array walk decoding
+ */
+function profile_array_decoder(&$v) {
+ $v = html_entity_decode($v, ENT_COMPAT, 'UTF-8');
+}
+
// Get group fields
$input = array();
foreach ($CONFIG->group as $shortname => $valuetype) {
- $input[$shortname] = get_input($shortname);
// another work around for Elgg's encoding problems: #561, #1963
- $input[$shortname] = html_entity_decode($input[$shortname], ENT_COMPAT, 'UTF-8');
+ $input[$shortname] = get_input($shortname);
+ if (is_array($input[$shortname])) {
+ array_walk_recursive($input[$shortname], 'profile_array_decoder');
+ } else {
+ $input[$shortname] = html_entity_decode($input[$shortname], ENT_COMPAT, 'UTF-8');
+ }
+
if ($shortname == 'name') {
$input[$shortname] = strip_tags($input[$shortname]);
}