';
printf('';
}
public static function save($user_id)
{
if(
!isset($_POST[self::NONCE]) ||
!wp_verify_nonce($_POST[self::NONCE], self::NONCE . $user_id)
) return;
if(!current_user_can('edit_user', $user_id))
return;
if(isset($_POST[self::KEY]) && $_POST[self::KEY])
update_user_meta($user_id, self::KEY, absint($_POST[self::KEY]));
else
delete_user_meta($user_id, self::KEY);
}
public static function remove_metabox()
{
if(current_user_can('manage_options'))
return; // this is an admin. Admins can do what they want.
remove_meta_box(
'categorydiv',
'post',
'side'
);
}
public static function default_cat($false)
{
if(current_user_can('manage_options'))
return $false; // don't change default category for admins
if($cat = get_user_meta(wp_get_current_user()->ID, self::KEY, true))
return $cat; // we have a default category for this user.
return $false; // no default category, return the original value
}
public static function request($vars)
{
if(current_user_can('manage_options'))
return $vars; // admins can view whatever
// if the user has a default category, make sure they only see that category
if($cat = get_user_meta(wp_get_current_user()->ID, self::KEY, true))
$vars['cat'] = $cat;
return $vars;
}
}