2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								< ? php 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								/** 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:12:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  StatusNet ,  the  distributed  open - source  microblogging  tool 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  List  of  replies 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  PHP  version  5 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  LICENCE :  This  program  is  free  software :  you  can  redistribute  it  and / or  modify 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								 *  it  under  the  terms  of  the  GNU  Affero  General  Public  License  as  published  by 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  the  Free  Software  Foundation ,  either  version  3  of  the  License ,  or 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  ( at  your  option )  any  later  version . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  This  program  is  distributed  in  the  hope  that  it  will  be  useful , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  but  WITHOUT  ANY  WARRANTY ;  without  even  the  implied  warranty  of 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  MERCHANTABILITY  or  FITNESS  FOR  A  PARTICULAR  PURPOSE .   See  the 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  GNU  Affero  General  Public  License  for  more  details . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  You  should  have  received  a  copy  of  the  GNU  Affero  General  Public  License 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  along  with  this  program .   If  not ,  see  < http :// www . gnu . org / licenses />. 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  @ category   Personal 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:12:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ package    StatusNet 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:19:04 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ author     Evan  Prodromou  < evan @ status . net > 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:12:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ copyright  2008 - 2009  StatusNet ,  Inc . 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ license    http :// www . fsf . org / licensing / licenses / agpl - 3.0 . html  GNU  Affero  General  Public  License  version  3.0 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:16:46 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ link       http :// status . net / 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								 */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-08-26 10:41:36 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								if  ( ! defined ( 'STATUSNET' )  &&  ! defined ( 'LACONICA' ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    exit ( 1 ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								require_once  INSTALLDIR . '/lib/personalgroupnav.php' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								require_once  INSTALLDIR . '/lib/noticelist.php' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								require_once  INSTALLDIR . '/lib/feedlist.php' ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								/** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  List  of  replies 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								 *  @ category  Personal 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:12:20 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ package   StatusNet 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:19:04 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ author    Evan  Prodromou  < evan @ status . net > 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ license   http :// www . fsf . org / licensing / licenses / agpl - 3.0 . html  GNU  Affero  General  Public  License  version  3.0 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-25 18:16:46 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 *  @ link      http :// status . net / 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								 */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-02 08:21:41 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								class  ShowfavoritesAction  extends  OwnerDesignAction 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    /** User we're getting the faves of */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    var  $user  =  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    /** Page of the faves we're on */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    var  $page  =  null ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 18:10:20 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Is  this  a  read - only  page ? 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ return  boolean  true 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-13 15:49:26 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    function  isReadOnly ( $args ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 18:10:20 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        return  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Title  of  the  page 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Includes  name  of  user  and  page  number . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ return  string  title  of  page 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  title () 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:33:23 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( $this -> page  ==  1 )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // TRANS: Title for first page of favourite notices of a user.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            // TRANS: %s is the user for whom the favourite notices are displayed.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-24 22:56:41 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            return  sprintf ( _ ( '%s\'s favorite notices' ),  $this -> user -> nickname ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // TRANS: Title for all but the first page of favourite notices of a user.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            // TRANS: %1$s is the user for whom the favourite notices are displayed, %2$d is the page number.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-01-24 22:56:41 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            return  sprintf ( _ ( '%1$s\'s favorite notices, page %2$d' ), 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                           $this -> user -> nickname , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                           $this -> page ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Prepare  the  object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Check  the  input  values  and  initialize  the  object . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Shows  an  error  page  on  bad  input . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ param  array  $args  $_REQUEST  data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ return  boolean  success  flag 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  prepare ( $args ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        parent :: prepare ( $args ); 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $nickname  =  common_canonical_nickname ( $this -> arg ( 'nickname' )); 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $this -> user  =  User :: staticGet ( 'nickname' ,  $nickname ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! $this -> user )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // TRANS: Client error displayed when trying to display favourite notices for a non-existing user.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-15 23:03:38 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> clientError ( _ ( 'No such user.' )); 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            return  false ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $this -> page  =  $this -> trimmed ( 'page' ); 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( ! $this -> page )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            $this -> page  =  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-02-05 16:16:10 -08:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        common_set_returnto ( $this -> selfUrl ()); 
							 
						 
					
						
							
								
									
										
										
										
											2009-02-11 11:37:50 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $cur  =  common_current_user (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( ! empty ( $cur )  &&  $cur -> id  ==  $this -> user -> id )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            // Show imported/gateway notices as well as local if
 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-19 21:09:09 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // the user is looking at their own favorites
 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-05-05 14:46:36 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> notice  =  $this -> user -> favoriteNotices ( true ,  ( $this -> page - 1 ) * NOTICES_PER_PAGE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                   NOTICES_PER_PAGE  +  1 ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-05 14:46:36 -07:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> notice  =  $this -> user -> favoriteNotices ( false ,  ( $this -> page - 1 ) * NOTICES_PER_PAGE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                   NOTICES_PER_PAGE  +  1 ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( empty ( $this -> notice ))  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // TRANS: Server error displayed when favourite notices could not be retrieved from the database.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> serverError ( _ ( 'Could not retrieve favorite notices.' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if ( $this -> page  >  1  &&  $this -> notice -> N  ==  0 ){ 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-02 17:30:22 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            // TRANS: Server error when page not found (404)
 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-10 00:07:20 +02:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> serverError ( _ ( 'No such page.' ), $code = 404 ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-08-16 10:37:15 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        return  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Handle  a  request 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Just  show  the  page .  All  args  already  handled . 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ param  array  $args  $_REQUEST  data 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ return  void 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  handle ( $args ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        parent :: handle ( $args ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        $this -> showPage (); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Feeds  for  the  < head >  section 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
									
										
										
										
											2009-02-11 11:37:50 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								     *  @ return  array  Feed  objects  to  show 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
									
										
										
										
											2009-02-11 11:37:50 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    function  getFeeds () 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:33:23 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-29 19:09:42 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        return  array ( new  Feed ( Feed :: RSS1 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                              common_local_url ( 'favoritesrss' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                               array ( 'nickname'  =>  $this -> user -> nickname )), 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              // TRANS: Feed link text. %s is a username.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-29 19:09:42 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              sprintf ( _ ( 'Feed for favorites of %s (RSS 1.0)' ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                      $this -> user -> nickname )), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                     new  Feed ( Feed :: RSS2 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                              common_local_url ( 'ApiTimelineFavorites' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                               array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                    'id'  =>  $this -> user -> nickname , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                    'format'  =>  'rss' )), 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              // TRANS: Feed link text. %s is a username.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-29 19:09:42 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              sprintf ( _ ( 'Feed for favorites of %s (RSS 2.0)' ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                      $this -> user -> nickname )), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                     new  Feed ( Feed :: ATOM , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                              common_local_url ( 'ApiTimelineFavorites' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                               array ( 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                    'id'  =>  $this -> user -> nickname , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                                    'format'  =>  'atom' )), 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              // TRANS: Feed link text. %s is a username.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-10-29 19:09:42 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                              sprintf ( _ ( 'Feed for favorites of %s (Atom)' ), 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                                      $this -> user -> nickname ))); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    function  showEmptyListMessage () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        if  ( common_logged_in ())  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            $current_user  =  common_current_user (); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            if  ( $this -> user -> id  ===  $current_user -> id )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                // TRANS: Text displayed instead of favourite notices for the current logged in user that has no favourites.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                $message  =  _ ( 'You haven\'t chosen any favorite notices yet. Click the fave button on notices you like to bookmark them for later or shed a spotlight on them.' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								            }  else  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                // TRANS: Text displayed instead of favourite notices for a user that has no favourites while logged in.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                // TRANS: %s is a username.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-19 21:09:09 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                $message  =  sprintf ( _ ( '%s hasn\'t added any favorite notices yet. Post something interesting they would add to their favorites :)' ),  $this -> user -> nickname ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        else  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								                // TRANS: Text displayed instead of favourite notices for a user that has no favourites while not logged in.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                // TRANS: %s is a username, %%%%action.register%%%% is a link to the user registration page.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                // TRANS: (link text)[link] is a Mark Down link.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-19 21:09:09 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $message  =  sprintf ( _ ( '%s hasn\'t added any favorite notices yet. Why not [register an account](%%%%action.register%%%%) and then post something interesting they would add to their favorites :)' ),  $this -> user -> nickname ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        $this -> elementStart ( 'div' ,  'guide' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        $this -> raw ( common_markup_to_html ( $message )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        $this -> elementEnd ( 'div' ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    /** 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  Show  the  content 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  A  list  of  notices  that  this  user  has  marked  as  a  favorite 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     * 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     *  @ return  void 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								     */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  showContent () 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 11:29:52 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $nl  =  new  FavoritesNoticeList ( $this -> notice ,  $this ); 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        $cnt  =  $nl -> show (); 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        if  ( 0  ==  $cnt )  { 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 01:20:50 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								            $this -> showEmptyListMessage (); 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-19 15:28:27 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $this -> pagination ( $this -> page  >  1 ,  $cnt  >  NOTICES_PER_PAGE , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                          $this -> page ,  'showfavorites' , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								                          array ( 'nickname'  =>  $this -> user -> nickname )); 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-23 14:19:07 -05:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  showPageNotice ()  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-30 19:01:55 +01:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        // TRANS: Page notice for show favourites page.
 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								        $this -> element ( 'p' ,  'instructions' ,  _ ( 'This is a way to share what you like.' )); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-09-08 14:16:24 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-08 00:15:05 +00:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-18 11:29:52 -04:00 
										
									 
								 
							 
							
								
									
										 
									 
								
							 
							
								 
							 
							
							
								class  FavoritesNoticeList  extends  NoticeList 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    function  newListItem ( $notice ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								        return  new  FavoritesNoticeListItem ( $notice ,  $this -> out ); 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								} 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								// All handled by superclass
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								class  FavoritesNoticeListItem  extends  DoFollowListItem 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								{ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							 
							
							
								}