danbooru theme work
git-svn-id: file:///home/shish/svn/shimmie2/trunk@348 7f39781d-f577-437e-ae19-be835c7a54ca
This commit is contained in:
		
							parent
							
								
									e4e4e5a04c
								
							
						
					
					
						commit
						18cd6fbd99
					
				| @ -26,6 +26,7 @@ class Comment { // {{{ | |||||||
| 		$this->comment_id =  $row['comment_id']; | 		$this->comment_id =  $row['comment_id']; | ||||||
| 		$this->image_id =  $row['image_id']; | 		$this->image_id =  $row['image_id']; | ||||||
| 		$this->poster_ip =  $row['poster_ip']; | 		$this->poster_ip =  $row['poster_ip']; | ||||||
|  | 		$this->posted =  $row['posted']; | ||||||
| 	} | 	} | ||||||
| } // }}}
 | } // }}}
 | ||||||
| 
 | 
 | ||||||
| @ -170,7 +171,8 @@ class CommentList extends Extension { | |||||||
| 				SELECT | 				SELECT | ||||||
| 				users.id as user_id, users.name as user_name, | 				users.id as user_id, users.name as user_name, | ||||||
| 				comments.comment as comment, comments.id as comment_id, | 				comments.comment as comment, comments.id as comment_id, | ||||||
| 				comments.image_id as image_id, comments.owner_ip as poster_ip | 				comments.image_id as image_id, comments.owner_ip as poster_ip, | ||||||
|  | 				comments.posted as posted | ||||||
| 				FROM comments | 				FROM comments | ||||||
| 				LEFT JOIN users ON comments.owner_id=users.id | 				LEFT JOIN users ON comments.owner_id=users.id | ||||||
| 				ORDER BY comments.id DESC | 				ORDER BY comments.id DESC | ||||||
| @ -191,7 +193,8 @@ class CommentList extends Extension { | |||||||
| 				SELECT | 				SELECT | ||||||
| 				users.id as user_id, users.name as user_name, | 				users.id as user_id, users.name as user_name, | ||||||
| 				comments.comment as comment, comments.id as comment_id, | 				comments.comment as comment, comments.id as comment_id, | ||||||
| 				comments.image_id as image_id, comments.owner_ip as poster_ip | 				comments.image_id as image_id, comments.owner_ip as poster_ip, | ||||||
|  | 				comments.posted as posted | ||||||
| 				FROM comments | 				FROM comments | ||||||
| 				LEFT JOIN users ON comments.owner_id=users.id | 				LEFT JOIN users ON comments.owner_id=users.id | ||||||
| 				WHERE comments.image_id=? | 				WHERE comments.image_id=? | ||||||
|  | |||||||
							
								
								
									
										109
									
								
								themes/danbooru/comment.theme.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										109
									
								
								themes/danbooru/comment.theme.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,109 @@ | |||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | class CommentListTheme extends Themelet { | ||||||
|  | 	public function display_page_start($page, $page_number, $total_pages) { | ||||||
|  | 		$prev = $page_number - 1; | ||||||
|  | 		$next = $page_number + 1; | ||||||
|  | 
 | ||||||
|  | 		$h_prev = ($page_number <= 1) ? "Prev" : | ||||||
|  | 			"<a href='".make_link("comment/list/$prev")."'>Prev</a>"; | ||||||
|  | 		$h_index = "<a href='".make_link("index")."'>Index</a>"; | ||||||
|  | 		$h_next = ($page_number >= $total_pages) ? "Next" : | ||||||
|  | 			"<a href='".make_link("comment/list/$next")."'>Next</a>"; | ||||||
|  | 
 | ||||||
|  | 		$nav = "$h_prev | $h_index | $h_next"; | ||||||
|  | 		 | ||||||
|  | 		$page->set_title("Comments"); | ||||||
|  | 		$page->set_heading("Comments"); | ||||||
|  | 		$page->add_block(new Block("Navigation", $nav, "left")); | ||||||
|  | 		$page->add_block(new Paginator("comment/list", null, $page_number, $total_pages), 90); | ||||||
|  | 		$page->disable_left(); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public function display_recent_comments($page, $comments) { | ||||||
|  | 		// no recent comments in this theme
 | ||||||
|  | 		//$html = $this->comments_to_html($comments, true);
 | ||||||
|  | 		//$html .= "<p><a class='more' href='".make_link("comment/list")."'>Full List</a>";
 | ||||||
|  | 		//$page->add_block(new Block("Comments", $html, "left"));
 | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public function display_comments($page, $comments, $postbox, $image_id) { | ||||||
|  | 		$count = count($comments); | ||||||
|  | 		if($postbox) { | ||||||
|  | 			$page->add_block(new Block("$count Comments", | ||||||
|  | 					$this->comments_to_html($comments). | ||||||
|  | 					$this->build_postbox($image_id), "main", 30)); | ||||||
|  | 		} | ||||||
|  | 		else { | ||||||
|  | 			$page->add_block(new Block("$count Comments", | ||||||
|  | 					$this->comments_to_html($comments), "main", 30)); | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	private function comments_to_html($comments, $trim=false) { | ||||||
|  | 		$html = ""; | ||||||
|  | 		foreach($comments as $comment) { | ||||||
|  | 			$html .= $this->comment_to_html($comment, $trim); | ||||||
|  | 		} | ||||||
|  | 		return $html; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	private function comment_to_html($comment, $trim=false) { | ||||||
|  | 		global $user; | ||||||
|  | 
 | ||||||
|  | 		$tfe = new TextFormattingEvent($comment->comment); | ||||||
|  | 		send_event($tfe); | ||||||
|  | 
 | ||||||
|  | 		$i_uid = int_escape($comment->owner_id); | ||||||
|  | 		$h_name = html_escape($comment->owner_name); | ||||||
|  | 		$h_poster_ip = html_escape($comment->poster_ip); | ||||||
|  | 		$h_comment = ($trim ? substr($tfe->stripped, 0, 50)."..." : $tfe->formatted); | ||||||
|  | 		$i_comment_id = int_escape($comment->comment_id); | ||||||
|  | 		$i_image_id = int_escape($comment->image_id); | ||||||
|  | 		$h_posted = html_escape($comment->posted); | ||||||
|  | 
 | ||||||
|  | 		$h_userlink = "<a class='username' href='".make_link("user/$h_name")."'>$h_name</a>"; | ||||||
|  | 		$h_dellink = $user->is_admin() ?  | ||||||
|  | 			" ($h_poster_ip, <a ". | ||||||
|  | 			"onclick=\"return confirm('Delete comment by $h_name:\\n".$tfe->stripped."');\" ". | ||||||
|  | 			"href='".make_link("comment/delete/$i_comment_id/$i_image_id")."'>Del</a>)" : ""; | ||||||
|  | 		$h_imagelink = $trim ? "<a href='".make_link("post/view/$i_image_id")."'>>>></a>\n" : ""; | ||||||
|  | 		return "<p class='comment'>$h_userlink $h_dellink<br/><b>Posted on $h_posted</b><br/>$h_comment</p>"; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	// FIXME: privatise this
 | ||||||
|  | 	public function build_postbox($image_id) { | ||||||
|  | 		$i_image_id = int_escape($image_id); | ||||||
|  | 		return " | ||||||
|  | 			<form action='".make_link("comment/add")."' method='POST'> | ||||||
|  | 			<input type='hidden' name='image_id' value='$i_image_id' /> | ||||||
|  | 			<textarea name='comment' rows='5' cols='50'></textarea> | ||||||
|  | 			<br><input type='submit' value='Post' /> | ||||||
|  | 			</form> | ||||||
|  | 			";
 | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	public function add_comment_list($page, $image, $comments, $position, $with_postbox) { | ||||||
|  | 		$count = count($comments); | ||||||
|  | 
 | ||||||
|  | 		$html  = "<div style='text-align: left'>"; | ||||||
|  | 		$html .=   "<div style='float: left; margin-right: 16px;'>" . build_thumb_html($image) . "</div>"; | ||||||
|  | 		$html .=   "<div style='float: right; margin-left: 16px; width: 200px; margin-bottom: 32px;'>"; | ||||||
|  | 		foreach($image->get_tag_array() as $tag) { | ||||||
|  | 			$u_tag = url_escape($tag); | ||||||
|  | 			$html .= "<br><a href='".make_link("post/list/$u_tag/1")."'>".html_escape($tag)."</a>"; | ||||||
|  | 		} | ||||||
|  | 		$html .=   "</div>"; | ||||||
|  | 		$html .=   "<div style='margin-left: 250px;'>"; | ||||||
|  | 		$html .=   "<b>$count Comments</b><br>"; | ||||||
|  | 		$html .=   $this->comments_to_html($comments); | ||||||
|  | 		$html .=   "</div>"; | ||||||
|  | 		$html .= "</div>"; | ||||||
|  | 		$html .= "<div style='clear: both; display: block; height: 64px;'> </div>"; | ||||||
|  | 
 | ||||||
|  | 		$page->add_block(new Block(null, $html, "main", $position)); | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | ?>
 | ||||||
| @ -110,6 +110,15 @@ class Layout { | |||||||
| 		// bzchan: prepare main title link
 | 		// bzchan: prepare main title link
 | ||||||
| 		$title_link = "<h1><a href='".make_link($front_page)."'>$site_name</a></h1>"; | 		$title_link = "<h1><a href='".make_link($front_page)."'>$site_name</a></h1>"; | ||||||
| 
 | 
 | ||||||
|  | 		if($page->left_enabled) { | ||||||
|  | 			$left = "<div id='nav'>$left_block_html</div>"; | ||||||
|  | 			$withleft = "withleft"; | ||||||
|  | 		} | ||||||
|  | 		else { | ||||||
|  | 			$left = ""; | ||||||
|  | 			$withleft = ""; | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
| 		print <<<EOD | 		print <<<EOD | ||||||
| <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> | ||||||
| <html> | <html> | ||||||
| @ -130,8 +139,8 @@ $header_html | |||||||
| 		</div> | 		</div> | ||||||
| 		$subheading | 		$subheading | ||||||
| 		 | 		 | ||||||
| 		<div id="nav">$left_block_html</div> | 		$left | ||||||
| 		<div id="body">$main_block_html</div> | 		<div id="body" class="$withleft">$main_block_html</div> | ||||||
| 
 | 
 | ||||||
| 		<div id="footer"> | 		<div id="footer"> | ||||||
| 			<hr> | 			<hr> | ||||||
|  | |||||||
| @ -1,6 +1,9 @@ | |||||||
| <?php | <?php | ||||||
| 
 | 
 | ||||||
| class Page extends GenericPage { | class Page extends GenericPage { | ||||||
| 	// no changes from default
 | 	var $left_enabled = true; | ||||||
|  | 	public function disable_left() { | ||||||
|  | 		$this->left_enabled = false; | ||||||
|  | 	} | ||||||
| } | } | ||||||
| ?>
 | ?>
 | ||||||
|  | |||||||
| @ -8,14 +8,9 @@ BODY { | |||||||
| 	background-color:#FFFFFF; | 	background-color:#FFFFFF; | ||||||
| 	font: 80% verdana, sans-serif; | 	font: 80% verdana, sans-serif; | ||||||
| 	padding: 1em 3em; | 	padding: 1em 3em; | ||||||
| 	text-align:center; |  | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| /* bzchan: All H* tags tweaked */ | /* bzchan: All H* tags tweaked */ | ||||||
| H1, H3 { |  | ||||||
| 	 |  | ||||||
| 	text-align: center; |  | ||||||
| } |  | ||||||
| H1 { | H1 { | ||||||
| 	font-size: 2em; | 	font-size: 2em; | ||||||
| 	margin-top: 0px; | 	margin-top: 0px; | ||||||
| @ -126,14 +121,16 @@ A:hover {text-decoration: underline;} | |||||||
| *                 the main part of each page                     * | *                 the main part of each page                     * | ||||||
| * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | ||||||
| 
 | 
 | ||||||
| #body { | .withleft { | ||||||
| 	margin-left: 160px; | 	margin-left: 160px; | ||||||
| 	text-align: center; |  | ||||||
| } | } | ||||||
| #body TABLE { | #body TABLE { | ||||||
| 	width: 90%; | 	width: 90%; | ||||||
| 	margin: auto; | 	margin: auto; | ||||||
| } | } | ||||||
|  | .paginator { | ||||||
|  | 	text-align: center; | ||||||
|  | } | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| @ -150,10 +147,6 @@ A:hover {text-decoration: underline;} | |||||||
| 	padding: 8px 4px 8px 4px; | 	padding: 8px 4px 8px 4px; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| #image_comments { |  | ||||||
| 	text-align: left; |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| .setupblock { | .setupblock { | ||||||
| 	border: 1px solid #AAA; | 	border: 1px solid #AAA; | ||||||
| 	padding: 8px; | 	padding: 8px; | ||||||
| @ -172,6 +165,11 @@ A:hover {text-decoration: underline;} | |||||||
| 	background: #FAA; | 	background: #FAA; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  | .comment .username { | ||||||
|  | 	font-size: 1.5em; | ||||||
|  | 	font-weight: bold; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * | ||||||
| *                     bzchan added                               * | *                     bzchan added                               * | ||||||
| * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ | ||||||
|  | |||||||
							
								
								
									
										91
									
								
								themes/danbooru/upload.theme.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								themes/danbooru/upload.theme.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,91 @@ | |||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | class UploadTheme extends Themelet { | ||||||
|  | 	public function display_block($page) { | ||||||
|  | 		// this theme links to /upload
 | ||||||
|  | 		// $page->add_block(new Block("Upload", $this->build_upload_block(), "left", 20));
 | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public function display_page($page) { | ||||||
|  | 		global $config; | ||||||
|  | 		$tl_enabled = ($config->get_string("transload_engine", "none") != "none"); | ||||||
|  | 		 | ||||||
|  | 		$upload_list = ""; | ||||||
|  | 		for($i=0; $i<$config->get_int('upload_count'); $i++) { | ||||||
|  | 			$n = $i + 1; | ||||||
|  | 			$width = $tl_enabled ? "35%" : "80%"; | ||||||
|  | 			$upload_list .= " | ||||||
|  | 				<tr> | ||||||
|  | 					<td>File $n</td> | ||||||
|  | 					<td style='width: $width;'><input accept='image/jpeg,image/png,image/gif' id='data$i' name='data$i' type='file'></td> | ||||||
|  | 			";
 | ||||||
|  | 			if($tl_enabled) { | ||||||
|  | 				$upload_list .= " | ||||||
|  | 					<td>URL $n</td> | ||||||
|  | 					<td><input id='url$i' name='url$i' type='text'></td> | ||||||
|  | 				";
 | ||||||
|  | 			} | ||||||
|  | 			$upload_list .= " | ||||||
|  | 				</tr> | ||||||
|  | 			";
 | ||||||
|  | 		} | ||||||
|  | 		$max_size = $config->get_int('upload_size'); | ||||||
|  | 		$max_kb = to_shorthand_int($max_size); | ||||||
|  | 		$html = " | ||||||
|  | 			<form enctype='multipart/form-data' action='".make_link("upload")."' method='POST'> | ||||||
|  | 				<table id='large_upload_form'> | ||||||
|  | 					$upload_list | ||||||
|  | 					<tr><td>Tags</td><td colspan='3'><input id='tagBox' name='tags' type='text' value='tagme' autocomplete='off'></td></tr> | ||||||
|  | 					<tr><td>Source</td><td colspan='3'><input name='source' type='text'></td></tr> | ||||||
|  | 					<tr><td colspan='4'><input type='submit' value='Post'></td></tr> | ||||||
|  | 				</table> | ||||||
|  | 			</form> | ||||||
|  | 			<div id='upload_completions' style='clear: both;'><small>(Max file size is $max_kb)</small></div> | ||||||
|  | 		";
 | ||||||
|  | 
 | ||||||
|  | 		$page->set_title("Upload"); | ||||||
|  | 		$page->set_heading("Upload"); | ||||||
|  | 		$page->add_block(new NavBlock()); | ||||||
|  | 		$page->add_block(new Block("Upload", $html, "main", 20)); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public function display_upload_status($page, $ok) { | ||||||
|  | 		if($ok) { | ||||||
|  | 			$page->set_mode("redirect"); | ||||||
|  | 			$page->set_redirect(make_link("index")); | ||||||
|  | 		} | ||||||
|  | 		else { | ||||||
|  | 			$page->set_title("Upload Status"); | ||||||
|  | 			$page->set_heading("Upload Status"); | ||||||
|  | 			$page->add_block(new NavBlock()); | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	public function display_upload_error($page, $title, $message) { | ||||||
|  | 		$page->add_block(new Block($title, $message)); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	private function build_upload_block() { | ||||||
|  | 		global $config; | ||||||
|  | 
 | ||||||
|  | 		$upload_list = ""; | ||||||
|  | 		for($i=0; $i<$config->get_int('upload_count'); $i++) { | ||||||
|  | 			if($i == 0) $style = ""; // "style='display:visible'";
 | ||||||
|  | 			else $style = "style='display:none'"; | ||||||
|  | 			$upload_list .= "<input accept='image/jpeg,image/png,image/gif' size='10' ". | ||||||
|  | 				"id='data$i' name='data$i' $style onchange=\"showUp('data".($i+1)."')\" type='file'>\n"; | ||||||
|  | 		} | ||||||
|  | 		$max_size = $config->get_int('upload_size'); | ||||||
|  | 		$max_kb = to_shorthand_int($max_size); | ||||||
|  | 		// <input type='hidden' name='max_file_size' value='$max_size' />
 | ||||||
|  | 		return " | ||||||
|  | 			<form enctype='multipart/form-data' action='".make_link("upload")."' method='POST'> | ||||||
|  | 				$upload_list | ||||||
|  | 				<input id='tagBox' name='tags' type='text' value='tagme' autocomplete='off'> | ||||||
|  | 				<input type='submit' value='Post'> | ||||||
|  | 			</form> | ||||||
|  | 			<div id='upload_completions' style='clear: both;'><small>(Max file size is $max_kb)</small></div> | ||||||
|  | 		";
 | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | ?>
 | ||||||
							
								
								
									
										94
									
								
								themes/danbooru/view.theme.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								themes/danbooru/view.theme.php
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,94 @@ | |||||||
|  | <?php | ||||||
|  | 
 | ||||||
|  | class ViewTheme extends Themelet { | ||||||
|  | 	public function display_image_not_found($page, $image_id) { | ||||||
|  | 		$page->set_title("Image not found"); | ||||||
|  | 		$page->set_heading("Image not found"); | ||||||
|  | 		$page->add_block(new NavBlock()); | ||||||
|  | 		$page->add_block(new Block("Image not found", | ||||||
|  | 			"No image in the database has the ID #$image_id")); | ||||||
|  | 	} | ||||||
|  | 	 | ||||||
|  | 	public function display_page($page, $image) { | ||||||
|  | 		$page->set_title("Image {$image->id}: ".html_escape($image->get_tag_list())); | ||||||
|  | 		$page->set_heading(html_escape($image->get_tag_list())); | ||||||
|  | 		$page->add_block(new Block("Navigation", $this->build_navigation($image->id), "left", 0)); | ||||||
|  | 		$page->add_block(new Block("Image", $this->build_image_view($image), "main", 0)); | ||||||
|  | 		$page->add_block(new Block(null, $this->build_info($image), "main", 10)); | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | 	var $pin = null; | ||||||
|  | 
 | ||||||
|  | 	private function build_pin($image_id) { | ||||||
|  | 		if(!is_null($this->pin)) { | ||||||
|  | 			return $this->pin; | ||||||
|  | 		} | ||||||
|  | 
 | ||||||
|  | 		global $database; | ||||||
|  | 
 | ||||||
|  | 		if(isset($_GET['search'])) { | ||||||
|  | 			$search_terms = explode(' ', $_GET['search']); | ||||||
|  | 			$query = "search=".url_escape($_GET['search']); | ||||||
|  | 		} | ||||||
|  | 		else { | ||||||
|  | 			$search_terms = array(); | ||||||
|  | 			$query = null; | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		$next = $database->get_next_image($image_id, $search_terms); | ||||||
|  | 		$prev = $database->get_prev_image($image_id, $search_terms); | ||||||
|  | 
 | ||||||
|  | 		$h_prev = (!is_null($prev) ? "<a href='".make_link("post/view/{$prev->id}", $query)."'>Prev</a>" : "Prev"); | ||||||
|  | 		$h_index = "<a href='".make_link("index")."'>Index</a>"; | ||||||
|  | 		$h_next = (!is_null($next) ? "<a href='".make_link("post/view/{$next->id}", $query)."'>Next</a>" : "Next"); | ||||||
|  | 
 | ||||||
|  | 		$this->pin = "$h_prev | $h_index | $h_next"; | ||||||
|  | 		return $this->pin; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	private function build_navigation($image_id) { | ||||||
|  | 		$h_pin = $this->build_pin($image_id); | ||||||
|  | 		$h_search = " | ||||||
|  | 			<p><form action='".make_link("index")."' method='GET'> | ||||||
|  | 				<input id='search_input' name='search' type='text' | ||||||
|  | 						value='Search' autocomplete='off'> | ||||||
|  | 				<input type='submit' value='Find' style='display: none;'> | ||||||
|  | 			</form> | ||||||
|  | 			<div id='search_completions'></div>";
 | ||||||
|  | 
 | ||||||
|  | 		return "$h_pin<br>$h_search"; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	private function build_image_view($image) { | ||||||
|  | 		$ilink = $image->get_image_link(); | ||||||
|  | 		return "<img id='main_image' src='$ilink'>"; | ||||||
|  | 	} | ||||||
|  | 
 | ||||||
|  | 	private function build_info($image) { | ||||||
|  | 		global $user; | ||||||
|  | 		$owner = $image->get_owner(); | ||||||
|  | 		$h_owner = html_escape($owner->name); | ||||||
|  | 		$h_ip = html_escape($image->owner_ip); | ||||||
|  | 		$h_source = html_escape($image->source); | ||||||
|  | 		$i_owner_id = int_escape($owner->id); | ||||||
|  | 
 | ||||||
|  | 		$html = ""; | ||||||
|  | 		$html .= "<p>Posted on {$image->posted} by <a href='".make_link("user/$h_owner")."'>$h_owner</a>"; | ||||||
|  | 		if($user->is_admin()) { | ||||||
|  | 			$html .= " ($h_ip)"; | ||||||
|  | 		} | ||||||
|  | 		if(!is_null($image->source)) { | ||||||
|  | 			if(substr($image->source, 0, 7) == "http://") { | ||||||
|  | 				$html .= " (<a href='$h_source'>source</a>)"; | ||||||
|  | 			} | ||||||
|  | 			else { | ||||||
|  | 				$html .= " (<a href='http://$h_source'>source</a>)"; | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 		 | ||||||
|  | 		return $html; | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | ?>
 | ||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user