aboutsummaryrefslogtreecommitdiff
path: root/mod/profile/actions/deletedefaultprofileitem.php
diff options
context:
space:
mode:
Diffstat (limited to 'mod/profile/actions/deletedefaultprofileitem.php')
-rw-r--r--mod/profile/actions/deletedefaultprofileitem.php20
1 files changed, 15 insertions, 5 deletions
diff --git a/mod/profile/actions/deletedefaultprofileitem.php b/mod/profile/actions/deletedefaultprofileitem.php
index b5b2eba84..7d431020d 100644
--- a/mod/profile/actions/deletedefaultprofileitem.php
+++ b/mod/profile/actions/deletedefaultprofileitem.php
@@ -1,7 +1,7 @@
<?php
/**
* Elgg profile plugin edit default profile action removal
- *
+ *
* @package ElggProfile
* @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
* @author Curverider Ltd <info@elgg.com>
@@ -12,11 +12,21 @@
global $CONFIG;
admin_gatekeeper();
-
+
$id = (int)get_input('id');
-
-if ( ($id) && (set_plugin_setting("admin_defined_profile_$id", '', 'profile')) &&
- (set_plugin_setting("admin_defined_profile_type_$id", '', 'profile'))) {
+
+$fieldlist = get_plugin_setting('user_defined_fields', 'profile');
+if (!$fieldlist) {
+ $fieldlist = '';
+}
+
+$fieldlist = str_replace("{$id},", "", $fieldlist);
+$fieldlist = str_replace(",{$id}", "", $fieldlist);
+$fieldlist = str_replace("{$id}", "", $fieldlist);
+
+if (($id) && (set_plugin_setting("admin_defined_profile_$id", '', 'profile')) &&
+ (set_plugin_setting("admin_defined_profile_type_$id", '', 'profile')) &&
+ set_plugin_setting('user_defined_fields',$fieldlist,'profile')) {
system_message(elgg_echo('profile:editdefault:delete:success'));
} else {
register_error(elgg_echo('profile:editdefault:delete:fail'));