web/wp-content/plugins/google-sitemap-generator/sitemap-ui.php
changeset 194 32102edaa81b
parent 136 bde1974c263b
--- a/web/wp-content/plugins/google-sitemap-generator/sitemap-ui.php	Thu Sep 16 15:45:36 2010 +0000
+++ b/web/wp-content/plugins/google-sitemap-generator/sitemap-ui.php	Mon Nov 19 18:26:13 2012 +0100
@@ -1,7 +1,7 @@
 <?php
 /*
  
- $Id: sitemap-ui.php 175669 2009-11-20 21:55:02Z arnee $
+ $Id: sitemap-ui.php 583237 2012-08-08 21:06:12Z arnee $
 
 */
 
@@ -16,9 +16,9 @@
 	
 	var $mode = 21;
 
-	function GoogleSitemapGeneratorUI($sitemapBuilder) {
+	function GoogleSitemapGeneratorUI(&$sitemapBuilder) {
 		global $wp_version;
-		$this->sg = $sitemapBuilder;
+		$this->sg = &$sitemapBuilder;
 		
 		if(floatval($wp_version) >= 2.7) {
 			$this->mode = 27;
@@ -74,80 +74,14 @@
 		
 		$this->sg->Initate();
 			
-		//All output should go in this var which get printed at the end
 		$message="";
 		
-		if(!$snl) {
-		
-			if(isset($_GET['sm_hidedonate'])) {
-				$this->sg->SetOption('i_hide_donated',true);
-				$this->sg->SaveOptions();
-			}
-			if(isset($_GET['sm_donated'])) {
-				$this->sg->SetOption('i_donated',true);
-				$this->sg->SaveOptions();
-			}
-			if(isset($_GET['sm_hide_note'])) {
-				$this->sg->SetOption('i_hide_note',true);
-				$this->sg->SaveOptions();
-			}
-			if(isset($_GET['sm_hidedonors'])) {
-				$this->sg->SetOption('i_hide_donors',true);
-				$this->sg->SaveOptions();
-			}
-			if(isset($_GET['sm_hide_works'])) {
-				$this->sg->SetOption('i_hide_works',true);
-				$this->sg->SaveOptions();
-			}
-			
-			
-			if(isset($_GET['sm_donated']) || ($this->sg->GetOption('i_donated')===true && $this->sg->GetOption('i_hide_donated')!==true)) {
-				?>
-				<div class="updated">
-					<strong><p><?php _e('Thank you very much for your donation. You help me to continue support and development of this plugin and other free software!','sitemap'); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hidedonate=true"; ?>"><small style="font-weight:normal;"><?php _e('Hide this notice', 'sitemap'); ?></small></a></p></strong>
-				</div>
-				<?php
-			} else if($this->sg->GetOption('i_donated') !== true && $this->sg->GetOption('i_install_date')>0 && $this->sg->GetOption('i_hide_note')!==true && time() > ($this->sg->GetOption('i_install_date') + (60*60*24*30))) {
-				?>
-				<div class="updated">
-					<strong><p><?php echo str_replace("%s",$this->sg->GetRedirectLink("sitemap-donate-note"),__('Thanks for using this plugin! You\'ve installed this plugin over a month ago. If it works and you are satisfied with the results, isn\'t it worth at least a few dollar? <a href="%s">Donations</a> help me to continue support and development of this <i>free</i> software! <a href="%s">Sure, no problem!</a>','sitemap')); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_donated=true"; ?>" style="float:right; display:block; border:none; margin-left:10px;"><small style="font-weight:normal; "><?php _e('Sure, but I already did!', 'sitemap'); ?></small></a> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hide_note=true"; ?>" style="float:right; display:block; border:none;"><small style="font-weight:normal; "><?php _e('No thanks, please don\'t bug me anymore!', 'sitemap'); ?></small></a></p></strong>
-					<div style="clear:right;"></div>
-				</div>
-				<?php
-			} else if($this->sg->GetOption('i_install_date')>0 && $this->sg->GetOption('i_hide_works')!==true && time() > ($this->sg->GetOption('i_install_date') + (60*60*24*15))) {
-				?>
-				<div class="updated">
-					<strong><p><?php echo str_replace("%s",$this->sg->GetRedirectLink("sitemap-works-note"),__('Thanks for using this plugin! You\'ve installed this plugin some time ago. If it works and your are satisfied, why not <a href="%s">rate it</a> and <a href="%s">recommend it</a> to others? :-)','sitemap')); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hide_works=true"; ?>" style="float:right; display:block; border:none;"><small style="font-weight:normal; "><?php _e('Don\'t show this anymore', 'sitemap'); ?></small></a></p></strong>
-					<div style="clear:right;"></div>
-				</div>
-				<?php
-			}
-		}
-		
-		if(function_exists("wp_next_scheduled")) {
-			$next = wp_next_scheduled('sm_build_cron');
-			if($next) {
-				$diff = (time()-$next)*-1;
-				if($diff <= 0) {
-					$diffMsg = __('Your sitemap is being refreshed at the moment. Depending on your blog size this might take some time!','sitemap');
-				} else {
-					$diffMsg = str_replace("%s",$diff,__('Your sitemap will be refreshed in %s seconds. Depending on your blog size this might take some time!','sitemap'));
-				}
-				?>
-				<div class="updated">
-					<strong><p><?php echo $diffMsg ?></p></strong>
-					<div style="clear:right;"></div>
-				</div>
-				<?php
-			}
-		}
-		if(!empty($_REQUEST["sm_rebuild"]) || !empty($_REQUEST["sm_rebuild"])) {
-			//Clear any outstanding build cron jobs
-			if(function_exists('wp_clear_scheduled_hook')) wp_clear_scheduled_hook('sm_build_cron');
-		}
-		
 		if(!empty($_REQUEST["sm_rebuild"])) { //Pressed Button: Rebuild Sitemap
 			check_admin_referer('sitemap');
+			
+			//Clear any outstanding build cron jobs
+			if(function_exists('wp_clear_scheduled_hook')) wp_clear_scheduled_hook('sm_build_cron');
+			
 			if(isset($_GET["sm_do_debug"]) && $_GET["sm_do_debug"]=="true") {
 				
 				//Check again, just for the case that something went wrong before
@@ -186,7 +120,7 @@
 				$popts = array();
 				foreach($opts as $k=>$v) {
 					//Try to filter out passwords etc...
-					if(preg_match("/(pass|login|pw|secret|user|usr)/si",$v)) continue;
+					if(preg_match("/pass|login|pw|secret|user|usr|key|auth|token/si",$k)) continue;
 					$popts[$k] = htmlspecialchars($v);
 				}
 				print_r($popts);
@@ -249,7 +183,7 @@
 				
 				//Options of the category "Basic Settings" are boolean, except the filename and the autoprio provider
 				if(substr($k,0,5)=="sm_b_") {
-					if($k=="sm_b_filename" || $k=="sm_b_fileurl_manual" || $k=="sm_b_filename_manual" || $k=="sm_b_prio_provider" || $k=="sm_b_manual_key" || $k == "sm_b_yahookey" || $k == "sm_b_style" || $k == "sm_b_memory") {
+					if($k=="sm_b_filename" || $k=="sm_b_fileurl_manual" || $k=="sm_b_filename_manual" || $k=="sm_b_prio_provider" || $k=="sm_b_manual_key" || $k == "sm_b_style" || $k == "sm_b_memory") {
 						if($k=="sm_b_filename_manual" && strpos($_POST[$k],"\\")!==false){
 							$_POST[$k]=stripslashes($_POST[$k]);
 						}
@@ -297,6 +231,18 @@
 
 						$this->sg->_options[$k] = $enabledTaxonomies;
 												
+					} else if($k=='sm_in_customtypes') {
+
+						$enabledPostTypes = array();
+						
+						foreach(array_keys((array) $_POST[$k]) AS $postTypeName) {
+							if(empty($postTypeName) || !post_type_exists($postTypeName)) continue;
+
+							$enabledPostTypes[] = $postTypeName;
+						}
+
+						$this->sg->_options[$k] = $enabledPostTypes;
+												
 					} else $this->sg->_options[$k]=(bool) $_POST[$k];
 				//Options of the category "Change frequencies" are string
 				} else if(substr($k,0,6)=="sm_cf_") {
@@ -341,6 +287,74 @@
 			echo $message;
 			?></p></strong></div><?php
 		}
+		
+		
+		if(!$snl) {
+		
+			if(isset($_GET['sm_hidedonate'])) {
+				$this->sg->SetOption('i_hide_donated',true);
+				$this->sg->SaveOptions();
+			}
+			if(isset($_GET['sm_donated'])) {
+				$this->sg->SetOption('i_donated',true);
+				$this->sg->SaveOptions();
+			}
+			if(isset($_GET['sm_hide_note'])) {
+				$this->sg->SetOption('i_hide_note',true);
+				$this->sg->SaveOptions();
+			}
+			if(isset($_GET['sm_hidedonors'])) {
+				$this->sg->SetOption('i_hide_donors',true);
+				$this->sg->SaveOptions();
+			}
+			if(isset($_GET['sm_hide_works'])) {
+				$this->sg->SetOption('i_hide_works',true);
+				$this->sg->SaveOptions();
+			}
+			
+			
+			if(isset($_GET['sm_donated']) || ($this->sg->GetOption('i_donated')===true && $this->sg->GetOption('i_hide_donated')!==true)) {
+				?>
+				<div class="updated">
+					<strong><p><?php _e('Thank you very much for your donation. You help me to continue support and development of this plugin and other free software!','sitemap'); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hidedonate=true"; ?>"><small style="font-weight:normal;"><?php _e('Hide this notice', 'sitemap'); ?></small></a></p></strong>
+				</div>
+				<?php
+			} else if($this->sg->GetOption('i_donated') !== true && $this->sg->GetOption('i_install_date')>0 && $this->sg->GetOption('i_hide_note')!==true && time() > ($this->sg->GetOption('i_install_date') + (60*60*24*30))) {
+				?>
+				<div class="updated">
+					<strong><p><?php echo str_replace("%s",$this->sg->GetRedirectLink("sitemap-donate-note"),__('Thanks for using this plugin! You\'ve installed this plugin over a month ago. If it works and you are satisfied with the results, isn\'t it worth at least a few dollar? <a href="%s">Donations</a> help me to continue support and development of this <i>free</i> software! <a href="%s">Sure, no problem!</a>','sitemap')); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_donated=true"; ?>" style="float:right; display:block; border:none; margin-left:10px;"><small style="font-weight:normal; "><?php _e('Sure, but I already did!', 'sitemap'); ?></small></a> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hide_note=true"; ?>" style="float:right; display:block; border:none;"><small style="font-weight:normal; "><?php _e('No thanks, please don\'t bug me anymore!', 'sitemap'); ?></small></a></p></strong>
+					<div style="clear:right;"></div>
+				</div>
+				<?php
+			} else if($this->sg->GetOption('i_install_date')>0 && $this->sg->GetOption('i_hide_works')!==true && time() > ($this->sg->GetOption('i_install_date') + (60*60*24*15))) {
+				?>
+				<div class="updated">
+					<strong><p><?php echo str_replace("%s",$this->sg->GetRedirectLink("sitemap-works-note"),__('Thanks for using this plugin! You\'ve installed this plugin some time ago. If it works and your are satisfied, why not <a href="%s">rate it</a> and <a href="%s">recommend it</a> to others? :-)','sitemap')); ?> <a href="<?php echo $this->sg->GetBackLink() . "&amp;sm_hide_works=true"; ?>" style="float:right; display:block; border:none;"><small style="font-weight:normal; "><?php _e('Don\'t show this anymore', 'sitemap'); ?></small></a></p></strong>
+					<div style="clear:right;"></div>
+				</div>
+				<?php
+			}
+		}
+		
+		if(function_exists("wp_next_scheduled")) {
+			$next = wp_next_scheduled('sm_build_cron');
+			if($next) {
+				$diff = (time()-$next)*-1;
+				if($diff <= 0) {
+					$diffMsg = __('Your sitemap is being refreshed at the moment. Depending on your blog size this might take some time!<br /><small>Due to limitations of the WordPress scheduler, it might take another 60 seconds until the build process is actually started.</small>','sitemap');
+				} else {
+					$diffMsg = str_replace("%s",$diff,__('Your sitemap will be refreshed in %s seconds. Depending on your blog size this might take some time!','sitemap'));
+				}
+				?>
+				<div class="updated">
+					<strong><p><?php echo $diffMsg ?></p></strong>
+					<div style="clear:right;"></div>
+				</div>
+				<?php
+			}
+		}
+		
+		
 		?>
 				
 		<style type="text/css">
@@ -404,10 +418,6 @@
 			background-image:url(<?php echo $this->sg->GetPluginUrl(); ?>img/icon-google.gif);
 		}
 		
-		a.sm_resYahoo {
-			background-image:url(<?php echo $this->sg->GetPluginUrl(); ?>img/icon-yahoo.gif);
-		}
-		
 		a.sm_resBing {
 			background-image:url(<?php echo $this->sg->GetPluginUrl(); ?>img/icon-bing.gif);
 		}
@@ -433,6 +443,39 @@
 					padding:1px;
 					margin:0;
 				}
+
+				<?php if (version_compare($wp_version, "3.4", "<")): //Fix style for WP 3.4 (dirty way for now..) ?>
+
+				.inner-sidebar #side-sortables, .columns-2 .inner-sidebar #side-sortables {
+					min-height: 300px;
+					width: 280px;
+					padding: 0;
+				}
+
+				.has-right-sidebar .inner-sidebar {
+					display: block;
+				}
+
+				.inner-sidebar {
+					float: right;
+					clear: right;
+					display: none;
+					width: 281px;
+					position: relative;
+				}
+
+				.has-right-sidebar #post-body-content {
+					margin-right: 300px;
+				}
+
+				#post-body-content {
+					width: auto !important;
+					float: none !important;
+				}
+
+				<?php endif; ?>
+
+
 			</style>
 				
 			<?php elseif(version_compare($wp_version,"2.5",">=")): ?>
@@ -593,12 +636,9 @@
 							<?php $this->HtmlPrintBoxHeader('sm_smres',__('Sitemap Resources:','sitemap'),true); ?>
 								<a class="sm_button sm_resGoogle"    href="<?php echo $this->sg->GetRedirectLink('sitemap-gwt'); ?>"><?php _e('Webmaster Tools','sitemap'); ?></a>
 								<a class="sm_button sm_resGoogle"    href="<?php echo $this->sg->GetRedirectLink('sitemap-gwb'); ?>"><?php _e('Webmaster Blog','sitemap'); ?></a>
-								
-								<a class="sm_button sm_resYahoo"     href="<?php echo $this->sg->GetRedirectLink('sitemap-yse'); ?>"><?php _e('Site Explorer','sitemap'); ?></a>
-								<a class="sm_button sm_resYahoo"     href="<?php echo $this->sg->GetRedirectLink('sitemap-ywb'); ?>"><?php _e('Search Blog','sitemap'); ?></a>
-								
-								<a class="sm_button sm_resBing"     href="<?php echo $this->sg->GetRedirectLink('sitemap-lwt'); ?>"><?php _e('Webmaster Tools','sitemap'); ?></a>
-								<a class="sm_button sm_resBing"     href="<?php echo $this->sg->GetRedirectLink('sitemap-lswcb'); ?>"><?php _e('Webmaster Center Blog','sitemap'); ?></a>
+
+								<a class="sm_button sm_resBing"      href="<?php echo $this->sg->GetRedirectLink('sitemap-lwt'); ?>"><?php _e('Webmaster Tools','sitemap'); ?></a>
+								<a class="sm_button sm_resBing"      href="<?php echo $this->sg->GetRedirectLink('sitemap-lswcb'); ?>"><?php _e('Webmaster Center Blog','sitemap'); ?></a>
 								<br />
 								<a class="sm_button sm_resGoogle"    href="<?php echo $this->sg->GetRedirectLink('sitemap-prot'); ?>"><?php _e('Sitemaps Protocol','sitemap'); ?></a>
 								<a class="sm_button sm_resGoogle"    href="<?php echo $this->sg->GetRedirectLink('sitemap-ofaq'); ?>"><?php _e('Official Sitemaps FAQ','sitemap'); ?></a>
@@ -634,7 +674,7 @@
 					
 					<!-- Rebuild Area -->
 					<?php
-						$status = GoogleSitemapGeneratorStatus::Load();
+						$status = &GoogleSitemapGeneratorStatus::Load();
 						$head = __('The sitemap wasn\'t generated yet.','sitemap');
 						if($status != null) {
 							$st=$status->GetStartTime();
@@ -681,19 +721,7 @@
 											echo "<li class=\"sm_error\">" . str_replace("%s",wp_nonce_url($this->sg->GetBackLink() . "&sm_ping_service=google&noheader=true",'sitemap'),__('There was a problem while notifying Google. <a href="%s">View result</a>','sitemap')) . "</li>";
 										}
 									}
-									
-									if($status->_usedYahoo) {
-										if($status->_yahooSuccess) {
-											echo "<li>" .__("YAHOO was <b>successfully notified</b> about changes.",'sitemap'). "</li>";
-											$yt = $status->GetYahooTime();
-											if($yt>4) {
-												echo "<li class=\sm_optimize\">" . str_replace("%time%",$yt,__("It took %time% seconds to notify YAHOO, maybe you want to disable this feature to reduce the building time.",'sitemap')) . "</li>";
-											}
-										} else {
-											echo "<li class=\"sm_error\">" . str_replace("%s",wp_nonce_url($this->sg->GetBackLink() . "&sm_ping_service=yahoo&noheader=true",'sitemap'),__('There was a problem while notifying YAHOO. <a href="%s">View result</a>','sitemap')) . "</li>";
-										}
-									}
-									
+
 									if($status->_usedMsn) {
 										if($status->_msnSuccess) {
 											echo "<li>" .__("Bing was <b>successfully notified</b> about changes.",'sitemap'). "</li>";
@@ -706,18 +734,6 @@
 										}
 									}
 									
-									if($status->_usedAsk) {
-										if($status->_askSuccess) {
-											echo "<li>" .__("Ask.com was <b>successfully notified</b> about changes.",'sitemap'). "</li>";
-											$at = $status->GetAskTime();
-											if($at>4) {
-												echo "<li class=\sm_optimize\">" . str_replace("%time%",$at,__("It took %time% seconds to notify Ask.com, maybe you want to disable this feature to reduce the building time.",'sitemap')) . "</li>";
-											}
-										} else {
-											echo "<li class=\"sm_error\">" . str_replace("%s",wp_nonce_url($this->sg->GetBackLink() . "&sm_ping_service=ask&noheader=true",'sitemap'),__('There was a problem while notifying Ask.com. <a href="%s">View result</a>','sitemap')) . "</li>";
-										}
-									}
-									
 									$et = $status->GetTime();
 									$mem = $status->GetMemoryUsage();
 									
@@ -755,6 +771,10 @@
 								echo "<li>" . str_replace("%s",wp_nonce_url($this->sg->GetBackLink() . "&sm_rebuild=true&noheader=true",'sitemap'),__('If you changed something on your server or blog, you should <a href="%s">rebuild the sitemap</a> manually.','sitemap')) . "</li>";
 							}
 							echo "<li>" . str_replace("%d",wp_nonce_url($this->sg->GetBackLink() . "&sm_rebuild=true&sm_do_debug=true",'sitemap'),__('If you encounter any problems with the build process you can use the <a href="%d">debug function</a> to get more information.','sitemap')) . "</li>";
+
+							if(version_compare($wp_version,"2.9",">=") && version_compare(PHP_VERSION,"5.1",">=")) {
+								echo "<li class='sm_hint'>" . str_replace("%s",$this->sg->GetRedirectLink('sitemap-info-beta'), __('There is a new beta version of this plugin available which supports the new multi-site feature of WordPress as well as many other new functions! <a href="%s">More information and download</a>','sitemap')) . "</li>";
+							}
 							?>
 
 						</ul>
@@ -794,7 +814,7 @@
 								</label>
 								<a href="javascript:void(document.getElementById('sm_manual_help').style.display='');">[?]</a>
 								<span id="sm_manual_help" style="display:none;"><br />
-								<?php echo str_replace("%1",trailingslashit(get_bloginfo('siteurl')) . "?sm_command=build&amp;sm_key=" . $this->sg->GetOption("b_manual_key"),__('This will allow you to refresh your sitemap if an external tool wrote into the WordPress database without using the WordPress API. Use the following URL to start the process: <a href="%1">%1</a> Please check the result box above to see if sitemap was successfully built.', 'sitemap')); ?>
+								<?php echo str_replace("%1",trailingslashit(get_bloginfo('url')) . "?sm_command=build&amp;sm_key=" . $this->sg->GetOption("b_manual_key"),__('This will allow you to refresh your sitemap if an external tool wrote into the WordPress database without using the WordPress API. Use the following URL to start the process: <a href="%1">%1</a> Please check the result box above to see if sitemap was successfully built.', 'sitemap')); ?>
 								</span>
 							</li>
 						</ul>
@@ -811,17 +831,6 @@
 								<small><?php echo str_replace("%s",$this->sg->GetRedirectLink('sitemap-lwt'),__('No registration required, but you can join the <a href="%s">Bing Webmaster Tools</a> to check crawling statistics.','sitemap')); ?></small>
 							</li>
 							<li>
-								<input type="checkbox" id="sm_b_pingask" name="sm_b_pingask" <?php echo ($this->sg->GetOption("b_pingask")==true?"checked=\"checked\"":"") ?> />
-								<label for="sm_b_pingask"><?php _e('Notify Ask.com about updates of your Blog', 'sitemap') ?></label><br />
-								<small><?php _e('No registration required.','sitemap'); ?></small>
-							</li>
-							<li>
-								<input type="checkbox" id="sm_b_pingyahoo" name="sm_b_pingyahoo" <?php echo ($this->sg->GetOption("b_pingyahoo")==true?"checked=\"checked\"":"") ?> />
-								<label for="sm_b_pingyahoo"><?php _e('Notify YAHOO about updates of your Blog', 'sitemap') ?></label><br />
-								<label for="sm_b_yahookey"><?php _e('Your Application ID:', 'sitemap') ?> <input type="text" name="sm_b_yahookey" id="sm_b_yahookey" value="<?php echo $this->sg->GetOption("b_yahookey"); ?>" /></label><br />
-								<small><?php echo str_replace(array("%s1","%s2"),array($this->sg->GetRedirectLink('sitemap-ykr'),' (<a href="http://developer.yahoo.net/about/">Web Services by Yahoo!</a>)'),__('Don\'t you have such a key? <a href="%s1">Request one here</a>! %s2','sitemap')); ?></small>
-							</li>
-							<li>
 								<label for="sm_b_robots">
 								<input type="checkbox" id="sm_b_robots" name="sm_b_robots" <?php echo ($this->sg->GetOption("b_robots")==true?"checked=\"checked\"":"") ?> />
 								<?php _e("Add sitemap URL to the virtual robots.txt file.",'sitemap'); ?>
@@ -990,7 +999,7 @@
 					
 					<!-- Includes -->
 					<?php $this->HtmlPrintBoxHeader('sm_includes',__('Sitemap Content', 'sitemap')); ?>
-					
+						<b><?php _e('WordPress standard content', 'sitemap') ?>:</b>
 						<ul>
 							<li>
 								<label for="sm_in_home">
@@ -1028,6 +1037,12 @@
 									<?php _e('Include archives', 'sitemap') ?>
 								</label>
 							</li>
+							<li>
+								<label for="sm_in_auth">
+									<input type="checkbox" id="sm_in_auth" name="sm_in_auth"  <?php echo ($this->sg->GetOption("in_auth")==true?"checked=\"checked\"":"") ?> />
+									<?php _e('Include author pages', 'sitemap') ?>
+								</label>
+							</li>
 							<?php if($this->sg->IsTaxonomySupported()): ?>
 							<li>
 								<label for="sm_in_tags">
@@ -1035,11 +1050,20 @@
 									<?php _e('Include tag pages', 'sitemap') ?>
 								</label>
 							</li>
-							<?php
-								$taxonomies = $this->sg->GetCustomTaxonomies();
+							<?php endif; ?>
+						</ul>
+							
+						<?php 
+						
+						if($this->sg->IsTaxonomySupported()) {
+							$taxonomies = $this->sg->GetCustomTaxonomies();
+							
+							$enabledTaxonomies = $this->sg->GetOption('in_tax');
+							
+							if(count($taxonomies)>0) {
+								?><b><?php _e('Custom taxonomies', 'sitemap') ?>:</b><ul><?php 
 								
-								$enabledTaxonomies = $this->sg->GetOption('in_tax');
-								
+							
 								foreach ($taxonomies as $taxName) {
 										
 									$taxonomy = get_taxonomy($taxName);
@@ -1050,18 +1074,45 @@
 											<input type="checkbox" id="sm_in_tax[<?php echo $taxonomy->name; ?>]" name="sm_in_tax[<?php echo $taxonomy->name; ?>]" <?php echo $selected?"checked=\"checked\"":""; ?> />
 											<?php echo str_replace('%s',$taxonomy->label,__('Include taxonomy pages for %s', 'sitemap')); ?>
 										</label>
-									<li>
+									</li>
 									<?php
 								}
-							?>
-							<?php endif; ?>
-							<li>
-								<label for="sm_in_auth">
-									<input type="checkbox" id="sm_in_auth" name="sm_in_auth"  <?php echo ($this->sg->GetOption("in_auth")==true?"checked=\"checked\"":"") ?> />
-									<?php _e('Include author pages', 'sitemap') ?>
-								</label>
-							</li>
-						</ul>
+								
+								?></ul><?php 
+								
+							}
+						}
+						
+		
+						if($this->sg->IsCustomPostTypesSupported()) {
+							$custom_post_types = $this->sg->GetCustomPostTypes();
+						
+							$enabledPostTypes = $this->sg->GetOption('in_customtypes');
+						
+							if(count($custom_post_types)>0) {
+								?><b><?php _e('Custom post types', 'sitemap') ?>:</b><ul><?php 
+							
+								foreach ($custom_post_types as $post_type) {
+									$post_type_object = get_post_type_object($post_type);
+									
+									if (is_array($enabledPostTypes)) $selected = in_array($post_type_object->name, $enabledPostTypes);
+
+									?>
+									<li>
+										<label for="sm_in_customtypes[<?php echo $post_type_object->name; ?>]">
+											<input type="checkbox" id="sm_in_customtypes[<?php echo $post_type_object->name; ?>]" name="sm_in_customtypes[<?php echo $post_type_object->name; ?>]" <?php echo $selected?"checked=\"checked\"":""; ?> />
+											<?php echo str_replace('%s',$post_type_object->label,__('Include custom post type %s', 'sitemap')); ?>
+										</label>
+									</li>
+									<?php
+								}
+								
+								?></ul><?php 
+							}
+						}
+						
+						?>
+						
 						<b><?php _e('Further options', 'sitemap') ?>:</b>
 						<ul>
 							<li>
@@ -1255,14 +1306,14 @@
 				<input type="hidden" name="business" value="<?php echo "donate" /* N O S P A M */ . "@" . "arnebra" . "chhold.de"; ?>" />
 				<input type="hidden" name="item_name" value="Sitemap Generator for WordPress. Please tell me if if you don't want to be listed on the donator list." />
 				<input type="hidden" name="no_shipping" value="1" />
-				<input type="hidden" name="return" value="<?php echo 'http://' . $_SERVER['HTTP_HOST'] . $this->sg->GetBackLink(); ?>&amp;sm_donated=true" />
+				<input type="hidden" name="return" value="<?php echo $this->sg->GetBackLink(); ?>&amp;sm_donated=true" />
 				<input type="hidden" name="item_number" value="0001" />
 				<input type="hidden" name="currency_code" value="<?php echo $myLc["cc"]; ?>" />
 				<input type="hidden" name="bn" value="PP-BuyNowBF" />
 				<input type="hidden" name="lc" value="<?php echo $myLc["lc"]; ?>" />
 				<input type="hidden" name="rm" value="2" />
 				<input type="hidden" name="on0" value="Your Website" />
-				<input type="hidden" name="os0" value="<?php echo get_bloginfo("home"); ?>"/>
+				<input type="hidden" name="os0" value="<?php echo get_bloginfo("url"); ?>"/>
 			</form>
 		</div>
 		<?php