トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS

日本語化(OCS Inventory NG)

Last-modified: 2016-03-23 (水) 12:31:59 (574d)
Top / 日本語化(OCS Inventory NG)

OCS Inventory NGの日本語対応

エージェントソフトウェア(Windows版)に、文字コードで問題があるが、何とはなしに日本語っぽくできた部分だけ記載
ちなみに、Ver.1.01です。

言語ファイルの作成

/インストールディレクトリ/languages/配下に
japanese.png:日本の国旗画像
japanese.txt:日本語テキスト
を作成

ちなみに、英語の言語ファイルをベースに日本語化中

ここで、日本語の言語ファイル作成時のポイント
japanese.txtの1行目

0 Shift_JIS

としてあります。
エージェントが収集したクライアントPCの情報は、Windows標準の文字コードのため、Shift_JISで記録されています。
文字化けせず(一部やはり化けていますが)に出力するためには、Shift_JISにしておくことが無難です。

日本語表示時の不具合

以下の設定値を修正 /preferences.php

	define("UTF8_DEGREE", 1 ); 0から1に

以下のファイルを修正
/machine.php 942行目

	//echo "<td align='center' width='100%'><b><font color='blue'>".strtoupper($text)."</font></b></td>";
	echo "<td align='center' width='100%'><b><font color='blue'>".$text."</font></b></td>";

種別の一文字目を大文字に変換していますが、日本語でこれを行うと一部文字にて文字化けするので、削除


/machine.php

htmlentities -> htmlspecialchars

に全置換


日付形式が、yyyy/mm/ddでないので、修正
この修正と同時に、japanese.txt内の下記修正

267 yyyy/mm/dd
269 %Y/%m/%d

/preferences.php 789行目近辺

function dateFromMysql($v) {
	global $l;
	
	if( $l->g(269) == "%m/%d/%Y" )
		$ret = sprintf("%02d/%02d/%04d", $v[5].$v[6], $v[8].$v[9], $v);
// ここから追加
	elseif( $l->g(269) == "%Y/%m/%d" )
		$ret = sprintf("%04d/%02d/%02d", $v, $v[5].$v[6], $v[8].$v[9]);
// ここまで追加
	else	
		$ret = sprintf("%02d/%02d/%04d", $v[8].$v[9], $v[5].$v[6], $v);
	return $ret;
}

function dateTimeFromMysql($v) {
	global $l;
	
	if( $l->g(269) == "%m/%d/%Y" )
		$ret = sprintf("%02d/%02d/%04d %02d:%02d:%02d", $v[5].$v[6], $v[8].$v[9], $v, $v[11].$v[12],$v[14].$v[15],$v[17].$v[18]);
// ここから追加
	elseif( $l->g(269) == "%Y/%m/%d" )
		$ret = sprintf("%04d/%02d/%02d", $v, $v[5].$v[6], $v[8].$v[9], $v[11].$v[12],$v[14].$v[15],$v[17].$v[18]);
// ここまで追加
	else	
		$ret = sprintf("%02d/%02d/%04d %02d:%02d:%02d", $v[8].$v[9], $v[5].$v[6], $v, $v[11].$v[12],$v[14].$v[15],$v[17].$v[18]);
	return $ret;
}

追記

1.02 RC3を日本語化進めていますが、色々な場所に2バイト文字への対応がなされていないため、そこら中に修正点が出てきています。
例えば、Tagへの入力欄とか・・・
とりあえず、ある程度できたら公開するつもりです。