| 
									
										
										
										
											2015-07-04 00:02:05 +02:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if (!defined('GNUSOCIAL')) { exit(1); } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-07-04 19:48:35 +02:00
										 |  |  | abstract class NoticestreamAction extends ProfileAction | 
					
						
							| 
									
										
										
										
											2015-07-04 00:02:05 +02:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2015-07-10 12:34:06 +02:00
										 |  |  |     protected $notice = null;   // holds the stream result
 | 
					
						
							| 
									
										
										
										
											2015-07-04 19:48:35 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  |     protected function prepare(array $args=array()) { | 
					
						
							|  |  |  |         parent::prepare($args); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-09-27 23:46:30 +02:00
										 |  |  |         // In case we need more info than ProfileAction->doPreparation() gives us
 | 
					
						
							|  |  |  |         $this->doStreamPreparation(); | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-07-04 19:48:35 +02:00
										 |  |  |         // fetch the actual stream stuff
 | 
					
						
							|  |  |  |         $stream = $this->getStream(); | 
					
						
							|  |  |  |         $this->notice = $stream->getNotices(($this->page-1) * NOTICES_PER_PAGE, NOTICES_PER_PAGE + 1); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         if ($this->page > 1 && $this->notice->N == 0) { | 
					
						
							|  |  |  |             // TRANS: Client error when page not found (404).
 | 
					
						
							|  |  |  |             $this->clientError(_('No such page.'), 404); | 
					
						
							|  |  |  |         } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |         return true; | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-09-27 23:46:30 +02:00
										 |  |  |     protected function doStreamPreparation() | 
					
						
							|  |  |  |     { | 
					
						
							|  |  |  |         // pass by default
 | 
					
						
							|  |  |  |     } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2015-07-04 00:02:05 +02:00
										 |  |  |     // this fetches the NoticeStream
 | 
					
						
							| 
									
										
										
										
											2015-07-04 19:48:35 +02:00
										 |  |  |     abstract public function getStream(); | 
					
						
							| 
									
										
										
										
											2015-07-04 00:02:05 +02:00
										 |  |  | } |