Geeklog日本語版

							2011年11月22日
							Geeklog Japanese

1. 概要

Geeklog Japaneseでは、Geeklog日本語標準版およびGeeklog日本語拡張版を提供
しています。

標準版はGeeklogを元に、オリジナルのGeeklogに対して以下の変更を加えたものです。

	* ロケール等を設定する日本語化プラグインの追加
	* 携帯サポートの追加
	* CSSのみでレイアウトするテーマメーカー「professional_css」の追加
	* 有用なプラグイン、カスタム関数やブロックの同梱
	* オリジナルのGeeklogに先行したバグ修正

拡張版は、上記標準版に対してさらに多くのアドオンを追加して提供しています。

Geeklog日本語版の詳細な情報については http://www.geeklog.jp/ をご覧ください。


2. Geeklog 1.8.1-jpの内容

オリジナルのGeeklogに対して、以下のソースファイルを追加、修正しています。

  (1)本体の修正

    o インストール前チェック(Precheck)の追加

	public_html/admin/install/precheck.php
	public_html/admin/install/precheck.js
	public_html/admin/install/precheck.css
		インストール前のサーバーの日本語環境をチェックするプログラムで
		す。インストール画面の「日本語環境のインストール前チェック」を
		クリックして実行します。
		php.ini .htaccess siteconfig.php設定方法の指南を行います。
		データベースの設定画面で、ただしい情報を入力すればデータベース名
		が自動的にリストボックスで表示されます。
		※ JavaScriptが無効の場合はテキスト入力になります。

    o インストーラの修正

	public_html/admin/install/index.php
	public_html/admin/install/LocalizeGeeklog.php
		インストール時にサイトを日本語化するためのプログラム。
		コンフィギュレーションやテーブル構造、ブロックのタイトルなどを
		日本語化します。

	public_html/admin/install/disable-plugins.php
		インストール時に、プログラムで指定しているプラグイン以外は無効
		とします。
		インストールすると不具合が発生するプラグインのインストールを防
		ぐことができます。


    o その他本体の修正

	system/lib-sessions.php
		クッキーを使えない携帯でも、ログイン処理が行えるよう、
		ハックしています。

	system/classes/unpacker.class.php	
		圧縮ファイルによる自動インストール機能の本体側の不具合を修正しま
		した。

	public_html/lib-common.php
		携帯表示用にCOM_refresh()からsystem/custom/custom_cellular.phpの
		CUSTOM_refresh()を呼ぶよう、修正しました。

	public_html/imageresizer.php
		携帯サポートのための関数を追加しました。
		画像をリサイズして表示する機能を提供します。

	public_html/mobileblocks.php
		携帯サポートのための関数を追加しました。
		ブロックのみを表示する機能を提供します。

	public_html/admin/story.php
		記事編集時に、時刻指定で年月日の順番になるよう、言語専用テンプ
		レートファイルを呼ぶハックを追加しています。
		日本語用言語専用テンプレートファイルとして以下をすべてのテーマ
		で追加して提供しています。
		public_html/layout/ 以下の各テーマの以下のファイル:
			admin/story/storyeditor_advanced.japanese_utf-8.thtml
			admin/story/storyeditor.japanese_utf-8.thtml


    o コアプラグインの修正

	calendarプラグイン
		オリジナル版では郵便番号が5文字となっていたのを8文字に変更し
		ています。


  (2) プラグインの追加

    すべてのプラグインはCSRF対策を加えています。
    Geeklog 1.8.1から、すべてのプラグインはGeeklog 1.6からのプラグイン管理の
    機能である、圧縮ファイルによる自動インストールに対応しました。

    o 標準版と拡張版に同梱

	日本語化プラグイン(Japanize) バージョン 1.0.6RC5
		Geeklogを日本語サイトとして活用するための数々の設定や、
		機能追加を行っています。
		日本語版開発の多くは、ハックではなく、このプラグインに
		任せています。かならずインストールして、実行してください。
		実行しない場合、メール送信などで不具合が発生します。

	カレンダjpプラグイン(Calendarjp) バージョン 1.1.5
		Calendarプラグインを日本語サイト向けにローカライズして
		機能アップさせました。


    o 拡張版のみに同梱

	自動タグプラグイン(Autotags) バージョン 1.1.0
		日本語言語ファイルとタグ管理画面のテンプレートを変更しました。

	CAPTCHAプラグイン(Captcha) バージョン 4.0.2
		画像を使用した認証を提供します。

	カスタムメニュープラグイン(Custommenu) バージョン 0.6.1
		グローバルメニューを管理画面で設定します。
		階層メニューやパンくずリストは、ナビゲーションプラグイン
		(navman)をお勧めします。

	DataProxyプラグイン(Dataproxy) バージョン 1.2.1
		Geeklogのコンテンツ(記事、静的ページ、掲示板等)を取得
		する共通のAPIを提供します。

	Dbmanプラグイン(Dbman) バージョン 0.6.1
		データベースのバックアップやリストアを実行します。
		定期バックアップ等も。(mysqldumpコマンドを使用しません。)

	ファイル管理プラグイン(Filemgmt) バージョン 1.6.0.jp3
		ファイルのダウンロード機能を提供します。

	掲示板プラグイン(Forum) バージョン 2.8.0
		掲示板機能を提供します。

	Mycaljpプラグイン(Mycaljp) バージョン 2.1.4
		サイトカレンダーを表示する提供するPHPブロック関数
		phpblock_mycaljp2() を提供します。

	話題譲渡プラグイン(Nmoxtopicown) バージョン1.0.11
		トピックとその中の記事の所有者を変更する機能を提供します。

	サイトマッププラグイン(Sitemap) バージョン 1.2.2
		Geeklogサイトのサイトマップ表示とGoogle Sitemaps用XMLを作成し
		ます。

	テーマエディタプラグイン(Themedit) バージョン 1.2.0
		テンプレートとカスケーディング・スタイルシートの編集や画像の管
		理機能を提供します。


  (3) カスタム関数とPHPブロック関数の追加

    system/lib-custom.phpを修正し、以下のソースを呼んでいます。

    o 標準版と拡張版に同梱

	system/custom/custom_cellular.php
		携帯端末からのアクセスをサポートするためのカスタム関数本体です。
		携帯からのアクセスの場合、テーマmobileに切り替えるなど。
		cookieを使わないでログインさせるため、携帯のサポートは
		本体のセッション関連のハックや、画像のリサイザーとブロック
		単独表示のためのPHPの追加もあわせて行っています。
		XHTMLはサポートしません。
		※XHTMLをサポートしたい場合は、mobile_xhtmlをお勧めします。


    o 拡張版のみに同梱

	system/custom/custom_forcethemechange.php
		サイトのデフォルトテーマが変化した場合のコールバック関数
		サイトのテーマを変更したらサイトのテーマを利用している
		ユーザのテーマも自動的に新テーマに変更します。

	system/custom/custom_getstaticpage.php
		静的ページコンテンツの内容を返すカスタム関数
		CUSTOM_getStaticpage()
		静的ページPHPやアプリケーション等で活用します。

	system/custom/phpblock_lastarticles.php
		新着記事のタイトルリンクを表示するPHPブロック関数
		phpblock_lastarticles() phpblock_lastarticles2()
		ブロックや静的ページPHPで活用します。
		※複数フィード新着表示は RSSアグリゲータ(rssAggregator) を
		  活用してください。

	system/custom/phpblock_showrights.php
		現在ログインしているユーザの権限を表示するPHPブロック関数
		phpblock_showrights()
		ブロックや静的ページPHPで活用します。

	system/custom/phpblock_sitemapmenu.php
		すべての話題と記事のリンクによるメニューを表示するPHPブロック
		関数phpblock_sitemapmenu()
		ブロックや静的ページPHPで活用します。
		※現在ではあまり活用されていません。

	system/custom/phpblock_stats.php
		ページアクセス回数を表示するPHPブロック関数
		phpblock_stats()
		ブロックや静的ページPHPで活用します。
		※現在ではあまり活用されていません。

	system/custom/phpblock_themetester.php
		テーマを変更するテーマチェンジャーのPHPブロック関数
		phpblock_themetester()
		当初テーマテスターとして開発されましたが、その後、
		機能としてはテーマチェンジャーに変わっており、
		変更したテーマがデータベースに保存されるようになりました。

	system/custom/custom_templatesetvars.php
		テンプレート変数を追加します。
		'topic_id', 'sp_id', 'home_id', 'login_status', 'prof_url_jp'
		'custom_class', 'custom_os', 'custom_browser', 'custom_version',
		'custom_alias', 'custom_mobile'

	system/custom/useragent.class.php
		ユーザーエージェントのテンプレート変数を生成します。


  (4) テーマ

    o 標準版と拡張版に同梱

	public_html/layout/mobile
		携帯専用のテーマ
		※このテーマはPC用には選べません。

	public_html/layout/professional_css
		「professional」のデザインを元にした、日本語サイトのための標準
		テーマであり、custom.cssによってのみカスタマイズできるテーマメー
		カー。
		table要素によるレイアウトを排除し、HTML 4.01 Transitional+CSS
		2で一から全てを書き直しました。
		「professional_css」をベースにテーマを開発すると、アップグレー
		ドは、主にcustom.css上書きするだけで可能になります。
		詳しくはREADMEをご覧ください。


    o 拡張版のみに同梱

	public_html/layout/WAIproCSS
		「professional_css」を基本に, アクセシィビリティに配慮したテーマ。


  (5) その他

	CHANGES.jp
		現行リリース(Geeklog 1.8)に関する修正内容です。

	CHANGES-1.7.jp
		Geeklog 1.7に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	CHANGES-1.6.jp
		Geeklog 1.6に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	CHANGES-1.5.jp
		Geeklog 1.5に関する修正内容です。(保守用のブランチ
		作成の前までです。)

	emailgeeklogstories.en
		オリジナルのemailgeeklogstoriesです。

	emailgeeklogstories
		emailgeeklogstoriesを日本語化したものです。

	NEWS
		配布パッケージのNEWSです。

	readme.ja
		オリジナルのreadmeを日本語化したものです。

	README.jp
		本ファイルで、オリジナル版に対する日本語版の開発概要を紹介
		しています。

	release_jp.php
		リリースのためのバージョン管理ファイルです。


3. Geeklog日本語版の修正履歴

   すべてのGeeklog日本語版のIssueは以下から参照できます。

   http://code.google.com/p/geeklog-jp/issues/


以上です。
