? 521246-extended.patch ? 521246.patch ? profile.patch ? test.patch Index: mysite.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/mysite/mysite.module,v retrieving revision 1.98 diff -u -p -r1.98 mysite.module --- mysite.module 1 Oct 2008 14:01:37 -0000 1.98 +++ mysite.module 16 Jul 2009 21:58:10 -0000 @@ -1859,15 +1859,15 @@ function mysite_edit_form_submit($form_i } if ($form_values['op'] == $form_values['submit']) { if ($uid > 0) { - drupal_goto('mysite/'. $form_values['uid'] .'/view/'. $page); + return 'mysite/'. $form_values['uid'] .'/view/'. $page; } else { - drupal_goto('admin/settings/mysite'); + return 'admin/settings/mysite'; } } else { $goto = 'mysite/'. $form_values['uid'] .'/edit/'. $page .'/'. $form_values['next']; - drupal_goto($goto); + return $goto; } } @@ -2283,7 +2283,7 @@ function mysite_confirm_delete_form_subm db_query("UPDATE {mysite} SET confirm = %d WHERE uid = %d", $form_values['ignore'], $form_values['uid']); } // Run the delete sequence. - mysite_delete_item($form_values['uid'], $form_values['mid']); + return mysite_delete_item($form_values['uid'], $form_values['mid']); } /** @@ -2310,7 +2310,7 @@ function mysite_delete_form($uid) { } else { drupal_set_message(t('This user does not have a personal page.')); - drupal_goto('mysite'); + return 'mysite'; } } @@ -2330,7 +2330,7 @@ function mysite_delete_form_submit($form db_query("DELETE FROM {url_alias} WHERE src = '%s'", "mysite/$uid/view"); } drupal_set_message(t("%user's collection has been deleted.", array('%user' => $owner->name))); - drupal_goto('mysite'); + return 'mysite'; } else { drupal_set_message(t("%user's collection could not be found.", array('%user' => $owner->name))); @@ -2358,7 +2358,7 @@ function mysite_reset_form_submit($form_ db_query("DELETE FROM {mysite_data} WHERE uid = %d", $owner->uid); db_query("DELETE FROM {mysite_page} WHERE uid = %d", $owner->uid); mysite_create_account($owner); - drupal_goto('mysite/'. $owner->uid .'/view'); + return 'mysite/'. $owner->uid .'/view'; } } @@ -2600,7 +2600,8 @@ function mysite_content_remove($uid = NU return drupal_get_form('mysite_confirm_delete_form', $mysite->uid, $mid, $mysite->name, $dest); } // this function includes a drupal_goto, so no return is needed. - mysite_delete_item($uid, $mid, $dest); + $dest = mysite_delete_item($uid, $mid, $dest); + drupal_goto($dest); } /** @@ -2633,9 +2634,9 @@ function mysite_delete_item($uid, $mid, drupal_set_message(t('You are not authorized to delete this item.'), 'error'); } if (empty($dest)) { - drupal_goto('mysite/'. $uid .'/content'); + return 'mysite/'. $uid .'/content'; } - drupal_goto($dest); + return $dest; } /** Index: contrib/refine.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/mysite/contrib/refine.inc,v retrieving revision 1.7 diff -u -p -r1.7 refine.inc --- contrib/refine.inc 6 Apr 2008 23:08:26 -0000 1.7 +++ contrib/refine.inc 16 Jul 2009 21:58:11 -0000 @@ -307,7 +307,7 @@ function mysite_type_refine_title_form_s $sql = "UPDATE {mysite_content} SET title = '%s' WHERE myid = %d AND type = 'refine'"; db_query($sql, $form_values['title'], $form_values['myid']); drupal_set_message(t('Title changed successfully.')); - drupal_goto('admin/settings/mysite/type/refine'); + return 'admin/settings/mysite/type/refine'; } /** Index: mysite_icon/mysite_icon.module =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/mysite/mysite_icon/mysite_icon.module,v retrieving revision 1.3 diff -u -p -r1.3 mysite_icon.module --- mysite_icon/mysite_icon.module 6 Apr 2008 23:08:26 -0000 1.3 +++ mysite_icon/mysite_icon.module 16 Jul 2009 21:58:12 -0000 @@ -336,7 +336,7 @@ function mysite_icon_add_form_submit($fo if (empty($arg)) { form_set_error('icon_id', t('You must select an option.')); } - drupal_goto('admin/settings/mysite/icons/add/'. $arg[0] .'/'. $arg[1]); + return 'admin/settings/mysite/icons/add/'. $arg[0] .'/'. $arg[1]; } /** @@ -440,7 +440,7 @@ function mysite_icon_delete_form_submit( if ($success = file_delete($path)) { db_query("DELETE FROM {mysite_icon} WHERE iid = %d", $icon->iid); drupal_set_message(t('Icon successfully deleted.')); - drupal_goto('admin/settings/mysite/icons/browse'); + return 'admin/settings/mysite/icons/browse'; } else { form_set_error('submit', t('Failed to delete icon. Check the server permissions in your MySite icon directory.')); Index: plugins/types/droplet.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/mysite/plugins/types/droplet.inc,v retrieving revision 1.22 diff -u -p -r1.22 droplet.inc --- plugins/types/droplet.inc 6 Apr 2008 23:08:27 -0000 1.22 +++ plugins/types/droplet.inc 16 Jul 2009 21:58:13 -0000 @@ -346,7 +346,7 @@ function mysite_type_droplet_block_creat $string = $split[0]; $title = $split[1]; $myid = mysite_get_myid($type = 'droplet', $string, $title); - drupal_goto('admin/settings/mysite/type/droplet/'. $myid); + return 'admin/settings/mysite/type/droplet/'. $myid; } /** @@ -372,7 +372,7 @@ function mysite_type_droplet_view_create $string = $split[0]; $title = $split[1]; $myid = mysite_get_myid($type = 'droplet', $string, $title); - drupal_goto('admin/settings/mysite/type/droplet/'. $myid); + return 'admin/settings/mysite/type/droplet/'. $myid; } /** @@ -554,7 +554,7 @@ function mysite_type_droplet_settings_fo elseif ($form_values['delete'] == $form_values['op']) { // DELETE if ($form_values['confirm'] == 0) { - drupal_goto('admin/settings/mysite/type/droplet/delete/'. $form_values['myid']); + return 'admin/settings/mysite/type/droplet/delete/'. $form_values['myid']; } $sql = "DELETE from {mysite_content} WHERE myid = %d"; db_query($sql, $form_values['myid']); Index: plugins/types/profile.inc =================================================================== RCS file: /cvs/drupal-contrib/contributions/modules/mysite/plugins/types/profile.inc,v retrieving revision 1.18 diff -u -p -r1.18 profile.inc --- plugins/types/profile.inc 6 Apr 2008 23:08:27 -0000 1.18 +++ plugins/types/profile.inc 16 Jul 2009 21:58:13 -0000 @@ -111,11 +111,12 @@ function mysite_type_profile_title($type * Implements mysite_type_hook_data(). */ function mysite_type_profile_data($type_id = NULL, $settings = NULL) { + global $user; $profile = mysite_type_profile_get(); if (!empty($profile->uid)) { $mysite = mysite_get($profile->uid); } - if ($mysite->status == 1) { + if ($mysite->status == 1 || $profile->uid == $user->uid) { $allowed = variable_get('mysite_profile_settings', mysite_type_profile_defaults()); if (empty($settings)) { $settings = $allowed;