reformat showstream
darcs-hash:20080520201120-84dde-4b455d4e4854454cc78be8c636a3e0c7f730b93a.gz
This commit is contained in:
		| @@ -21,9 +21,41 @@ if (!defined('LACONICA')) { exit(1); } | ||||
|  | ||||
| require_once(INSTALLDIR.'/actions/showstream.php'); | ||||
|  | ||||
| class AllAction extends ShowstreamAction { | ||||
| class AllAction extends StreamAction { | ||||
|  | ||||
| 	// XXX: push this up to a common function. | ||||
| 	function handle($args) { | ||||
|  | ||||
| 		parent::handle($args); | ||||
|  | ||||
| 		$nickname = common_canonical_nickname($this->arg('nickname')); | ||||
| 		$user = User::staticGet('nickname', $nickname); | ||||
|  | ||||
| 		if (!$user) { | ||||
| 			$this->no_such_user(); | ||||
| 			return; | ||||
| 		} | ||||
|  | ||||
| 		$profile = $user->getProfile(); | ||||
|  | ||||
| 		if (!$profile) { | ||||
| 			common_server_error(_t('User record exists without profile.')); | ||||
| 			return; | ||||
| 		} | ||||
|  | ||||
| 		# Looks like we're good; show the header | ||||
|  | ||||
| 		common_show_header($profile->nickname . _t(" and friends")); | ||||
|  | ||||
| 		$cur = common_current_user(); | ||||
|  | ||||
| 		if ($cur && $profile->id == $cur->id) { | ||||
| 			common_notice_form(); | ||||
| 		} | ||||
|  | ||||
| 		$this->show_notices($profile); | ||||
| 		 | ||||
| 		common_show_footer(); | ||||
| 	} | ||||
|  | ||||
| 	function show_notices($profile) { | ||||
|  | ||||
| @@ -42,7 +74,7 @@ class AllAction extends ShowstreamAction { | ||||
|  | ||||
| 		$notice->find(); | ||||
|  | ||||
| 		common_element_start('div', 'notices'); | ||||
| 		common_element_start('div', 'notices width100'); | ||||
| 		common_element('h2', 'notices', _t('Notices')); | ||||
|  | ||||
| 		while ($notice->fetch()) { | ||||
|   | ||||
| @@ -58,18 +58,10 @@ class NewnoticeAction extends Action { | ||||
| 			return NULL; | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| 	 | ||||
| 	function show_form() { | ||||
| 		common_show_header(_t('New notice')); | ||||
| 		common_element_start('form', array('id' => 'newnotice', 'method' => 'POST', | ||||
| 										   'action' => common_local_url('newnotice'))); | ||||
| 		common_element('span', 'nickname', $profile->nickname); | ||||
| 		common_element('textarea', array('rows' => 3, 'cols' => 60, | ||||
| 										 'name' => 'content', | ||||
| 										 'id' => 'content'), | ||||
| 					   ' '); | ||||
| 		common_submit('submit', _t('Send')); | ||||
| 		common_element_end('form'); | ||||
| 		common_notice_form(); | ||||
| 		common_show_footer(); | ||||
| 	} | ||||
| } | ||||
| @@ -52,12 +52,23 @@ class ShowstreamAction extends StreamAction { | ||||
| 		$cur = common_current_user(); | ||||
|  | ||||
| 		if ($cur && $profile->id == $cur->id) { | ||||
| 			$this->notice_form(); | ||||
| 			common_notice_form(); | ||||
| 		} | ||||
|  | ||||
| 		$this->show_notices($profile); | ||||
|  | ||||
| 		common_element_start('div', 'sidebar width33 floatRight greenBg'); | ||||
| 		$this->show_sidebar($profile); | ||||
| 		 | ||||
| 		common_show_footer(); | ||||
| 	} | ||||
|  | ||||
| 	function no_such_user() { | ||||
| 		common_user_error('No such user'); | ||||
| 	} | ||||
|  | ||||
| 	function show_sidebar($profile) { | ||||
|  | ||||
| 		common_element_start('div', 'sidebar width25 floatRight greenBg'); | ||||
|  | ||||
| 		$this->show_profile($profile); | ||||
|  | ||||
| @@ -76,25 +87,8 @@ class ShowstreamAction extends StreamAction { | ||||
| 		$this->show_subscriptions($profile); | ||||
|  | ||||
| 		common_element_end('div'); | ||||
|  | ||||
| 		common_show_footer(); | ||||
| 	} | ||||
|  | ||||
| 	function no_such_user() { | ||||
| 		common_user_error('No such user'); | ||||
| 	} | ||||
|  | ||||
| 	function notice_form() { | ||||
| 		common_element_start('form', array('id' => 'newnotice', 'method' => 'POST', | ||||
| 										   'action' => common_local_url('newnotice'))); | ||||
| 		common_element('textarea', array('rows' => 3, 'cols' => 60, | ||||
| 										 'name' => 'content', | ||||
| 										 'id' => 'content'), | ||||
| 					   ' '); | ||||
| 		common_submit('submit', _t('Send')); | ||||
| 		common_element_end('form'); | ||||
| 	} | ||||
|  | ||||
| 	 | ||||
| 	function show_profile($profile) { | ||||
| 		common_element_start('div', 'profile'); | ||||
|  | ||||
| @@ -255,12 +249,16 @@ class ShowstreamAction extends StreamAction { | ||||
|  | ||||
| 		$notice->find(); | ||||
|  | ||||
| 		common_element_start('div', 'notices width66 floatLeft'); | ||||
| 		common_element('h2', 'notices', _t('Notices')); | ||||
| 		common_element_start('div', 'notices width75 floatLeft'); | ||||
|  | ||||
| 		common_element_start('ul', 'bigLinks'); | ||||
| 		 | ||||
| 		while ($notice->fetch()) { | ||||
| 			$this->show_notice($notice); | ||||
| 		} | ||||
| 		 | ||||
| 		common_element_end('ul'); | ||||
| 		 | ||||
| 		# XXX: show a link for the next page | ||||
| 		common_element_end('div'); | ||||
| 	} | ||||
| @@ -279,10 +277,22 @@ class ShowstreamAction extends StreamAction { | ||||
| 			# FIXME: URL, image, video, audio | ||||
| 			common_element('span', array('class' => 'content'), | ||||
| 						   $notice->content); | ||||
| 			common_element('span', array('class' => 'date'), | ||||
| 						   common_date_string($notice->created)); | ||||
| 		} | ||||
|  | ||||
| 		common_element_end('div'); | ||||
| 	} | ||||
| 	 | ||||
| 	function show_notice($notice) { | ||||
| 		$profile = $notice->getProfile(); | ||||
| 		# XXX: RDFa | ||||
| 		common_element_start('li', array('class' => 'notice', | ||||
| 										 'id' => 'notice-' . $notice->id)); | ||||
| 		$noticeurl = common_local_url('shownotice', array('notice' => $notice->id)); | ||||
| 		# FIXME: URL, image, video, audio | ||||
| 		common_element_start('a', array('class' => 'notice', | ||||
| 								  'href' => $noticeurl)); | ||||
| 		common_element('span', 'title', common_date_string($notice->created)); | ||||
| 		common_element('span', 'desc', $notice->content); | ||||
| 		common_element_end('li'); | ||||
| 	} | ||||
| } | ||||
|   | ||||
							
								
								
									
										13
									
								
								doc/TODO
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								doc/TODO
									
									
									
									
									
								
							| @@ -36,8 +36,8 @@ | ||||
| + show current values in profile settings | ||||
| + save profile URL in profilesettings | ||||
| + save profile URL on registration | ||||
| - require valid nicknames | ||||
| - reject empty notices | ||||
| + require valid nicknames | ||||
| + reject empty notices | ||||
| - store canonical username for comparison and fetch | ||||
| - use only canonical usernames | ||||
| - use only canonical email addresses | ||||
| @@ -46,17 +46,20 @@ | ||||
| - RSS 1.0 feed of all public notices | ||||
| - RDF dump of entire site | ||||
| - FOAF dump for user | ||||
| - license on showstream | ||||
| - license on shownotice | ||||
| + license on showstream | ||||
| + license on shownotice | ||||
| - TOS checkbox on register | ||||
| - pretty URLs | ||||
| - site logo | ||||
| - instructions | ||||
| - deal with PHP quotes escaping | ||||
| - fix layout of textarea | ||||
| - make notices into "big links" | ||||
| + make notices into "big links" | ||||
| - fix spacing on notices | ||||
| - limit entry in textarea to 140 chars | ||||
| - add a next page link to showstream | ||||
| - add a next page link to public | ||||
| - add a next page link to all | ||||
| - release 0.2 | ||||
| - set Last-Modified | ||||
| - XML sitemap generation | ||||
|   | ||||
| @@ -27,7 +27,6 @@ class StreamAction extends Action { | ||||
| 		parent::handle($args); | ||||
| 	} | ||||
|  | ||||
| 	# XXX: for 'showstream' repeats same avatar over and over | ||||
| 	function show_notice($notice) { | ||||
| 		$profile = $notice->getProfile(); | ||||
| 		# XXX: RDFa | ||||
| @@ -36,7 +35,7 @@ class StreamAction extends Action { | ||||
| 		$avatar = $profile->getAvatar(AVATAR_STREAM_SIZE); | ||||
| 		common_element_start('a', array('href' => $profile->profileurl)); | ||||
| 		common_element('img', array('src' => ($avatar) ? $avatar->url : DEFAULT_STREAM_AVATAR, | ||||
| 									'class' => 'avatar stream floatLeft', | ||||
| 									'class' => 'avatar stream', | ||||
| 									'width' => AVATAR_STREAM_SIZE, | ||||
| 									'height' => AVATAR_STREAM_SIZE, | ||||
| 									'alt' => | ||||
|   | ||||
							
								
								
									
										14
									
								
								lib/util.php
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								lib/util.php
									
									
									
									
									
								
							| @@ -377,6 +377,20 @@ function common_profile_url($nickname) { | ||||
| 	return common_local_url('showstream', array('nickname' => $nickname)); | ||||
| } | ||||
|  | ||||
| function common_notice_form() { | ||||
| 	common_element_start('form', array('id' => 'newnotice', 'method' => 'POST', | ||||
| 									   'action' => common_local_url('newnotice'))); | ||||
| 	common_element_start('p'); | ||||
| 	common_element('label', array('for' => 'content'), _t('What\'s up?')); | ||||
| 	common_element('textarea', array('rows' => 3, 'cols' => 40, | ||||
| 									 'name' => 'content', | ||||
| 									 'id' => 'content',  | ||||
| 									 'class' => 'width75'), | ||||
| 				   ' '); | ||||
| 	common_submit('submit', _t('Send')); | ||||
| 	common_element_end('form'); | ||||
| 	} | ||||
|  | ||||
| // XXX: set up gettext | ||||
|  | ||||
| function _t($str) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user