* @package ElggProfile
*/
-global $CONFIG;
-
$id = get_input('id');
$fieldlist = get_plugin_setting('user_defined_fields', 'profile');
$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')) {
+if (($id) && (clear_plugin_setting("admin_defined_profile_$id", 'profile')) &&
+ (clear_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'));
--- /dev/null
+<?php
+/**
+ * Reset profile fields action
+ *
+ */
+
+$fieldlist = get_plugin_setting('user_defined_fields', 'profile');
+if ($fieldlist) {
+ $fieldlistarray = explode(',', $fieldlist);
+ foreach ($fieldlistarray as $listitem) {
+ clear_plugin_setting("admin_defined_profile_{$listitem}", 'profile');
+ clear_plugin_setting("admin_defined_profile_type_{$listitem}", 'profile');
+ }
+}
+
+set_plugin_setting('user_defined_fields', FALSE, 'profile');
+
+system_message(elgg_echo('profile:defaultprofile:reset'));
+
+forward(REFERER);
\ No newline at end of file
elgg_register_action('admin/plugins/simple_update_states', '', 'admin');
+ elgg_register_action('profile/fields/reset', '', 'admin');
+ elgg_register_action('profile/fields/add', '', 'admin');
+ elgg_register_action('profile/fields/delete', '', 'admin');
+ elgg_register_action('profile/fields/reorder', '', 'admin');
+
// admin area overview and basic site settings
elgg_add_admin_submenu_item('overview', elgg_echo('admin:overview'));
// handled in the admin sidemenu so we don't have to generate this on every page load.
//elgg_add_admin_submenu_item('plugin_settings', elgg_echo('admin:plugin_settings'));
+ // default profile fields admin item
+ elgg_add_admin_submenu_item('profile_fields', elgg_echo('admin:profile:fields'), 'appearance');
+
register_page_handler('admin', 'admin_settings_page_handler');
}
+++ /dev/null
-<?php
-/**
- * Elgg profile plugin edit default profile action
- *
- * @package ElggProfile
- */
-
-$field = get_input('field');
-$text = get_input('value');
-
-set_plugin_setting("admin_defined_profile_{$field}",$text,'profile');
-
-echo $text;
-
-exit;
\ No newline at end of file
+++ /dev/null
-<?php
-/**
- * Elgg profile plugin edit default profile action
- *
- * @package ElggProfile
- */
-
-global $CONFIG;
-
-if ($fieldlist = get_plugin_setting('user_defined_fields', 'profile')) {
- $fieldlistarray = explode(',', $fieldlist);
- foreach($fieldlistarray as $listitem) {
- set_plugin_setting("admin_defined_profile_{$listitem}", '', 'profile');
- set_plugin_setting("admin_defined_profile_type_{$listitem}", '', 'profile');
- }
-}
-
-set_plugin_setting('user_defined_fields', FALSE, 'profile');
-
-system_message(elgg_echo('profile:defaultprofile:reset'));
-
-forward(REFERER);
\ No newline at end of file
// allow ECML in parts of the profile
elgg_register_plugin_hook_handler('get_views', 'ecml', 'profile_ecml_views_hook');
-
- // default profile fields admin item
- elgg_add_admin_submenu_item('defaultprofile', elgg_echo('profile:edit:default'), 'appearance');
}
/**
case 'edit':
require $CONFIG->path . 'pages/profile/edit.php';
return;
- /*
- $layout = 'one_column_with_sidebar';
-
- if (!$user || !$user->canEdit()) {
- register_error(elgg_echo("profile:noaccess"));
- forward();
- }
-
- $content = profile_get_user_edit_content($user, $page);
- $content = elgg_view_layout($layout, array('content' => $content));
- *
- */
break;
default:
+++ /dev/null
-<?php
-/**
- * Elgg profile - Admin area: edit default profile fields
- *
- * @package ElggProfile
- */
-
-$title = elgg_view_title(elgg_echo('profile:edit:default'));
-$form = elgg_view('profile/editdefaultprofile');
-
-// List form elements
-$n = 0;
-$loaded_defaults = array();
-$items = array();
-if ($fieldlist = get_plugin_setting('user_defined_fields', 'profile')) {
- $fieldlistarray = explode(',', $fieldlist);
- foreach($fieldlistarray as $listitem) {
- if ($translation = get_plugin_setting("admin_defined_profile_{$listitem}", 'profile')) {
- $item = new stdClass;
- $item->translation = $translation;
- $item->shortname = $listitem;
- $item->name = "admin_defined_profile_{$listitem}";
- $item->type = get_plugin_setting("admin_defined_profile_type_{$listitem}", 'profile');
- $items[] = $item;
- }
- }
-}
-
-$listing = elgg_view('profile/editdefaultprofileitems',array('items' => $items, 'fieldlist' => $fieldlist));
-
-$resetlisting = elgg_view('input/form',
- array (
- 'body' => elgg_view('input/submit', array('value' => elgg_echo('profile:resetdefault'), 'class' => 'action-button disabled')),
- 'action' => 'action/profile/editdefault/reset'
- )
- );
-
-$body = <<<__HTML
-$title
-$form
-$listing
-<div class="default_profile_reset">
- $resetlisting
-</div>
-__HTML;
-
-echo $body;
+++ /dev/null
-<?php
-/**
- * Elgg profile edit form
- *
- * @package ElggProfile
- *
- * @uses $vars['entity'] The user entity
- * @uses $vars['profile'] Profile items from $CONFIG->profile, defined in profile/start.php for now
- */
-?>
-<form action="<?php echo elgg_get_site_url(); ?>action/profile/edit" method="post" id="edit_profile" class="margin-top">
-<?php echo elgg_view('input/securitytoken') ?>
-
- <p><label>
- <?php echo elgg_echo('user:name:label'); ?></label>
- <?php
- echo elgg_view('input/text',array('internalname' => 'name', 'value' => elgg_get_page_owner()->name));
- ?>
- </p>
-
-<?php
- if (is_array($vars['config']->profile) && sizeof($vars['config']->profile) > 0)
- foreach($vars['config']->profile as $shortname => $valtype) {
- if ($metadata = get_metadata_byname($vars['entity']->guid, $shortname)) {
- if (is_array($metadata)) {
- $value = '';
- foreach($metadata as $md) {
- if (!empty($value)) $value .= ', ';
- $value .= $md->value;
- $access_id = $md->access_id;
- }
- } else {
- $value = $metadata->value;
- $access_id = $metadata->access_id;
- }
- } else {
- $value = '';
- $access_id = ACCESS_DEFAULT;
- }
-
- if ($shortname == 'description') { // change label positioning to allow for additional longtext field controls
-?>
- <p>
- <label>
- <?php echo elgg_echo("profile:{$shortname}") ?></label>
- <?php echo elgg_view("input/{$valtype}",array(
- 'internalname' => $shortname,
- 'value' => $value,
- )); ?>
-
- <?php echo elgg_view('input/access',array('internalname' => 'accesslevel['.$shortname.']', 'value' => $access_id)); ?>
- </p>
-<?php
- } else {
-?>
-
- <p>
- <label>
- <?php echo elgg_echo("profile:{$shortname}") ?><br />
- <?php echo elgg_view("input/{$valtype}",array(
- 'internalname' => $shortname,
- 'value' => $value,
- )); ?>
- </label>
- <?php echo elgg_view('input/access',array('internalname' => 'accesslevel['.$shortname.']', 'value' => $access_id)); ?>
- </p>
-
-<?php
- }
-
- }
-
-?>
-
- <p>
- <input type="hidden" name="username" value="<?php echo elgg_get_page_owner()->username; ?>" />
- <input type="submit" class="submit-button" value="<?php echo elgg_echo("save"); ?>" />
- </p>
-
-</form>
\ No newline at end of file
--- /dev/null
+<?php
+/**
+ * Admin area: edit default profile fields
+ */
+
+$title = elgg_view_title(elgg_echo('admin:profile:fields'));
+
+$add = elgg_view_form('profile/fields/add', array(), array());
+$list = elgg_view('admin/appearance/profile_fields/list');
+$reset = elgg_view_form('profile/fields/reset', array(), array());
+
+$body = <<<__HTML
+$title
+$add
+$list
+<div class="default_profile_reset">
+ $reset
+</div>
+__HTML;
+
+echo $body;
-<script language="javascript" type="text/javascript" src="<?php echo elgg_get_site_url()?>mod/profile/vendor/jquery.jeditable.mini.js"></script>
+<?php
+
+
+// List form elements
+$n = 0;
+$loaded_defaults = array();
+$items = array();
+if ($fieldlist = get_plugin_setting('user_defined_fields', 'profile')) {
+ $fieldlistarray = explode(',', $fieldlist);
+ foreach($fieldlistarray as $listitem) {
+ if ($translation = get_plugin_setting("admin_defined_profile_{$listitem}", 'profile')) {
+ $item = new stdClass;
+ $item->translation = $translation;
+ $item->shortname = $listitem;
+ $item->name = "admin_defined_profile_{$listitem}";
+ $item->type = get_plugin_setting("admin_defined_profile_type_{$listitem}", 'profile');
+ $items[] = $item;
+ }
+ }
+}
+?>
+
+<script language="javascript" type="text/javascript" src="<?php echo elgg_get_site_url()?>vendors/jquery/jquery.jeditable.mini.js"></script>
<script language="javascript" type="text/javascript">
-var reorderURL = '<?php echo elgg_add_action_tokens_to_url(elgg_get_site_url() . 'action/profile/editdefault/reorder', FALSE); ?>';
+var reorderURL = '<?php echo elgg_add_action_tokens_to_url(elgg_get_site_url() . 'action/profile/fields/reorder', FALSE); ?>';
function sortCallback(event, ui) {
var orderArr = $('#sortable_profile_fields').sortable('toArray');
var orderStr = orderArr.join(',');
$cancel = elgg_echo('cancel');
$edit_url = elgg_add_action_tokens_to_url(elgg_get_site_url()."action/profile/editdefault/editfield", FALSE);
- foreach($vars['items'] as $item) {
+ foreach($items as $item) {
echo <<< END
<script language="javascript" type="text/javascript">
echo elgg_view("profile/", array('value' => $item->translation));
//$even_odd = ( 'odd' != $even_odd ) ? 'odd' : 'even';
- $url = elgg_add_action_tokens_to_url(elgg_get_site_url()."action/profile/editdefault/delete?id={$item->shortname}");
+ $url = elgg_add_action_tokens_to_url(elgg_get_site_url()."action/profile/fields/delete?id={$item->shortname}");
echo "<li id=\"{$item->shortname}\"><div class='delete-button'><a href=\"$url\">" . elgg_echo('delete') . "</a></div>";
echo "<img width='16' height='16' class='handle' alt='move' title='Drag here to reorder this item' src='".elgg_get_site_url()."mod/profile/graphics/drag-handle.png'/>";
echo "<b class=\"profile_field_editable\"><span class=\"{$item->shortname}_editable\">$item->translation</span></b>: [".elgg_echo($item->type)."]";
</div>
<div id="tempList"></div>
-<input name="sortableListOrder" type="hidden" id="sortableListOrder" value="<?php echo $vars['fieldlist']; ?>" />
+<input name="sortableListOrder" type="hidden" id="sortableListOrder" value="<?php echo $fieldlist; ?>" />
+
END;
echo "<p class='margin-top'>" . elgg_echo('profile:explainchangefields') . "</p>";
-echo elgg_view('input/form', array('body' => $formbody, 'action' => 'action/profile/editdefault'));
+echo $formbody;
--- /dev/null
+<?php
+/**
+ * Reset profile fields form
+ */
+
+$params = array(
+ 'value' => elgg_echo('profile:resetdefault'),
+ 'class' => 'action-button disabled',
+);
+echo elgg_view('input/submit', $params);