プラグインの変更箇所/sortabletable.inc.php

2021-03-28 (日) 08:49:50

カテゴリ:カスタマイズ プラグイン 改造

変更箇所のまとめ

  • 旧版との互換性確保
    • ソートしたくない列をスキップできるようにする
    • オプションに"1"を指定するとfilterオプションが有効になるようにする
  • autonumを指定しないとヘッダー部分とそれ以外が分離するバグを修正

変更の詳細

旧版との互換性確保

そのまま旧版とすげ替えたかったので、まずは任意の列でソート指定をスキップしてもエラーが出ないようにする。

		foreach ($sort_keys as $sort_key) {
-           if (! (isset($sort_kinds[$sort_key])) ) {
+           if (! empty($sort_key) && ! (isset($sort_kinds[$sort_key])) ) {
				// 引数のソート種別が一致しない場合
				$params['_error'] = '引数の指定にエラーがあります: ' . $sort_key;
				return $params;
		    }
		}

次に、オプションで"1"を指定すると"filter"を指定したのと同じになるようにする。

			if (isset($params[$val[0]])) {
				// 指定された引数がオプション名と一致する場合
				switch ($val[0]) {
+				case '1':
				case 'filter':
-					$params[$val[0]] = TRUE;
+					$params['filter'] = TRUE;
					break;

autonum未指定時のバグ修正

autonumを指定しない状態だと表が崩壊するバグがあるため修正する。

					$cell_color = 'BGCOLOR(' . $params['head'] . '):';
				} else {
					// ヘッダ行カラー指定がない
-					if ($params['autonum'] != -1) {
+					if ($params['autonum'] != -999999) {
						// 自動採番No追加
						$cell = '|~'  . $params['numname'];

簡単なミスだが最初は意外と気づけなくて何がおかしいのかとウンウン唸ってた。
ちなみにこのバグが確認されているのは現時点で最新バージョンの0.7.2。

プラグイン配布元

PukiWiki用ソートテーブル(表)プラグインを導入する! | SEの良心

(旧版: PukiWikiで表をソートしたい | OXY NOTES)

コメント

質問や指摘などあればどうぞ。


コメントはありません。 コメント/プラグインの変更箇所/sortabletable.inc.php