Try hooking on all these:
(But I guess you'd have to do it from a plugin, since doing it from theme functions.php
might be too late).
E.g.:
/*
Plugin Name: test
Description: switchtest
Version: 0.1.0
*/
add_filter( 'template', 'yourthing_switch_theme' );
add_filter( 'option_template', 'yourthing_switch_theme' );
add_filter( 'option_stylesheet', 'yourthing_switch_theme' );
add_filter( 'pre_option_stylesheet', 'yourthing_switch_theme' );
function yourthing_switch_theme( $theme )
{
if ( is_user_logged_in() ) {
return $theme;
}
else {
return 'waiting';
}
}