ブログ - piCalカテゴリのエントリ
piCal の編集画面も簡素化しよう。
繰り返しは便利だと思うが、今回の用途ではわかりやすさが第一なので
単純に削除することにする。
本当は隠しておいて、必要なときだけ出せばいいのだが...
(1) タイムゾーンを削除する
(2) 繰り返しを削除する
ハードコードされた部分を直接編集
get_schedule_edit_html (piCal/class/piCal.php)
(1) 2100行あたりの下記の部分を削除
TZを hidden でセットしておかなければいけないかと思ったが、単純に削除するだけでうまくいった。
2144行目あたりの下記のコードを削除
こちらも削除しただけで大丈夫のようだ。
繰り返しは便利だと思うが、今回の用途ではわかりやすさが第一なので
単純に削除することにする。
本当は隠しておいて、必要なときだけ出せばいいのだが...
(1) タイムゾーンを削除する
(2) 繰り返しを削除する
ハードコードされた部分を直接編集
get_schedule_edit_html (piCal/class/piCal.php)
(1) 2100行あたりの下記の部分を削除
<tr>
<td class='head'>"._PICAL_TH_TIMEZONE."</td>
<td class='even'><select name='event_tz' $select_timezone_disabled>$tz_options</select></td>
</tr>
TZを hidden でセットしておかなければいけないかと思ったが、単純に削除するだけでうまくいった。
2144行目あたりの下記のコードを削除
<tr>
<td class='head'>"._PICAL_TH_RRULE."</td>
<td class='even'>" . $this->rrule_to_form( $rrule , $end_ymd ) . "</td>
</tr>
こちらも削除しただけで大丈夫のようだ。
piCal の日付表示は長表記で 「2007年10月21日(金曜日)」のように表示される。
個人的な趣味と、携帯からのアクセスなどを考慮して「2007/10/21(金)」のように変更したい。
まず調べてみると、_PICAL_FMT_YMDN なる変数が 「pical_constants.php」にあるのがわかったが、言語定数管理画面でいじってみても何も変わらない。
これはランゲージマネジャーを使っていないということなのかな?
よくわからないのでソースを Hack
get_long_ymdn (piCal/class/piCal.php) を変更すると、根こそぎ変わりそうだ。
申し訳ないですが、ハードコードしちゃいましょう。
個人的な趣味と、携帯からのアクセスなどを考慮して「2007/10/21(金)」のように変更したい。
まず調べてみると、_PICAL_FMT_YMDN なる変数が 「pical_constants.php」にあるのがわかったが、言語定数管理画面でいじってみても何も変わらない。
これはランゲージマネジャーを使っていないということなのかな?
よくわからないのでソースを Hack
get_long_ymdn (piCal/class/piCal.php) を変更すると、根こそぎ変わりそうだ。
申し訳ないですが、ハードコードしちゃいましょう。
function get_long_ymdn( $time )
{
return sprintf(
'%1$s/%2$s/%3$s(%4$s)' , // format
date( 'Y' , $time ) , // Y
date( 'n' , $time ) , // M
date( 'j' , $time ) , // D
$this->week_short_names[ date( 'w' , $time ) ] // N
) ;
}
piCalのリスト表示画面を簡素化しよう。
(1)「投稿者」と「繰り返し」を削除する
これはテンプレートでできる。
テンプレート pical_event_list.html を修正。
今回はコメントアウトしてみよう。
結果はdiff 表示で...
無事完了。
(1)「投稿者」と「繰り返し」を削除する
これはテンプレートでできる。
テンプレート pical_event_list.html を修正。
今回はコメントアウトしてみよう。
結果はdiff 表示で...
@@ -93,24 +93,24 @@
</tr>
</table>
<table width='100%' class='outer' cellpadding='4' cellspacing='1'>
<tr valign='middle'>
- <th class='head'><{$lang_submitter}></th>
+<{* <th class='head'><{$lang_submitter}></th> *}>
<th class='head'><{$lang_startdatetime}></th>
<th class='head'><{$lang_enddatetime}></th>
<th class='head'><{$lang_summary}></th>
- <th class='head'><{$lang_rrule}></th>
+<{* <th class='head'><{$lang_rrule}></th> *}>
<th class='head'><{$lang_admission}></th>
<th class='head'><input type='checkbox' name='dummy' onclick="with(document.MainForm)
{for(i=0;i<length;i++){if(elements[i].type=='checkbox'){elements[i].checked=this.checked;}}}" /></th>
</tr>
<!-- Start event loop -->
<{foreach item='event' from=$events}>
<tr>
- <td class='<{$event.oddeven}>'><{$event.submitter_info}></td>
+<{* <td class='<{$event.oddeven}>'><{$event.submitter_info}></td> *}>
<td class='<{$event.oddeven}>'><{$event.start_date_desc}><br /><{$event.start_time_desc}></td>
<td class='<{$event.oddeven}>'><{$event.end_date_desc}><br /><{$event.end_time_desc}></td>
<td class='<{$event.oddeven}>'><a href='<{$mod_url}>/index.php?action=View&event_id=<{$event.id}>'>
<{$event.summary}></a></td>
- <td class='<{$event.oddeven}>'><{$event.rrule}></td>
+<{* <td class='<{$event.oddeven}>'><{$event.rrule}></td> *}>
<td class='<{$event.oddeven}>' align='center'>
無事完了。
詳細情報画面をもう少し簡素化したい
詳細画面のテンプレートは templates/picalN_event_detail.html だが
ここは全体の大枠があるだけで、情報部分はハードコーディングされている。
コードは class/piCal.php の get_schedule_view_html() メソッドの中だ。
今回の目的は項目を減らすという単純なもの
(1) 「開始/終了日時」の(GMT+) 表示を消す(なにしろとてもローカルなサイトなので...)
(2) 「レコード表示」「繰り返し」を消す(公開/非公開は編集モードで確認する...)
(1)はとりあえず
1744行目の $disp_user_tz = ... をコメントアウトして
のようにする
(2) は簡単
1857行目からの
を削除する。
詳細画面のテンプレートは templates/picalN_event_detail.html だが
ここは全体の大枠があるだけで、情報部分はハードコーディングされている。
コードは class/piCal.php の get_schedule_view_html() メソッドの中だ。
今回の目的は項目を減らすという単純なもの
(1) 「開始/終了日時」の(GMT+) 表示を消す(なにしろとてもローカルなサイトなので...)
(2) 「レコード表示」「繰り返し」を消す(公開/非公開は編集モードで確認する...)
(1)はとりあえず
1744行目の $disp_user_tz = ... をコメントアウトして
// $disp_user_tz = $this->get_tz_for_display( $this->user_TZ ) ;
$disp_user_tz = "";
のようにする
(2) は簡単
1857行目からの
<tr>
<td class='head'>"._PICAL_TH_CLASS."</td>
<td class='even'>$class_status</td>
</tr>
<tr>
<td class='head'>"._PICAL_TH_RRULE."</td>
<td class='even'>$rrule</td>
</tr>
を削除する。
piCal はすばらしいカレンダーモジュールだ。
できれば D3対応してxoopsテンプレート化してもらえれば
なお良いのだが...
それまでは、ちまちまとHackして待つこととしよう。
まずは分析開始...
■画面の作りについて
piCal の画面は xoops のテンプレートを使っていない?
(一部 xoops テンプレートになっているが)
モジュールディレクトリにあるテンプレートと、プログラムにハードコードされたものでできているようだ。
できれば D3対応してxoopsテンプレート化してもらえれば
なお良いのだが...
それまでは、ちまちまとHackして待つこととしよう。
まずは分析開始...
■画面の作りについて
piCal の画面は xoops のテンプレートを使っていない?
(一部 xoops テンプレートになっているが)
モジュールディレクトリにあるテンプレートと、プログラムにハードコードされたものでできているようだ。