公開終了日時が現在日時に!

 Joomla! 1.5.8 で現象を確認。

 コンテンツの新規登録や公開終了日時が設定されていないコンテンツの更新で、フォームの公開終了日時に現在日時が設定されてしまう。

 これをこのまま更新すると、すぐに公開終了となって表示されなくなってしまう。

 Joomla! 1.5.9 で修正されているという噂もあるが、JP がまだなので、とりあえず応急処置。

 フォーム出力をするスクリプトファイル components/com_content/views/article/tmpl/form.php を直接修正する。

$publish_up =& JFactory::getDate($this->article->publish_up);
$publish_up->setOffset($config->getValue('config.offset'));
$publish_up = $publish_up->toFormat();
$publish_down = '';
if ($this->article->publish_down && preg_match('/^\d/', $this->article->publish_down)) {
	$publish_down =& JFactory::getDate($this->article->publish_down);
	$publish_down->setOffset($config->getValue('config.offset'));
	$publish_down = $publish_down->toFormat();
}

 どうやら公開終了日時のコンテンツをフォーム表示するときに、$this->article->publish_down に日付ではない文字列が埋め込まれている模様。