picalについて
- このフォーラムに新規トピックを投稿できます
- このフォーラムではゲスト投稿が許可されています
投稿ツリー
- picalについて (katsumi, 2013/1/16 15:21)
- Re: picalについて (なーお, 2013/1/17 10:11)
- Re: Re: picalについて (katsumi, 2013/1/17 10:23)
- Re: Re: picalについて (なーお, 2013/1/17 10:52)
- Re: Re: Re: picalについて (katsumi, 2013/1/17 11:09)
- Re: picalについて (なーお, 2013/1/19 10:26)
- Re: Re: picalについて (katsumi, 2013/1/19 16:14)
- Re: picalについて (katsumi, 2013/3/25 14:05)
- Re: picalについて (なーお, 2013/3/25 17:29)
- Re: Re: picalについて (katsumi, 2013/3/25 17:56)
ごぶさたしてます。いつも助けていただいてありがとうございます。最近picalをいじっています。そこでつまづいているところがありましてアドバイスをいただけると助かるのですが。
picalの予定の詳細ページ、例えば
http://www.e-kaiwa.net/modules/piCal/index.php?smode=Daily&action=View&event_id=0000000784&caldate=2013-1-16
このページのテンプレートにuidがアサイン?されていないので<{$uid}>みたいにuidを呼び出せませんか?index.phpをいじればいいようですが、いまひとつわかりません。(index.phpの187行あたり)よろしくお願いします。
katsumiさん、こんにちは。
取得したいユーザーidは、投稿者のuidですか? それともアクセスユーザーのuidですか?
どんな表示のために取得したいのかを書いていただければ、アクションを起こしやすいのですが・・ 目的がわからないと遠回りしちゃうかもしれないので。
こんにちは。いつもご無理を言ってすいません。
取得したいのは投稿者のuidです。
なぜそれが取得したいのかというと、そのページにmileageモジュールの”ポイントを他のユーザーに送信するためのボタン”を埋め込みたいのですが(smarty)そのためには送り先のユーザーIDが必要だからです。
堂かよろしくお願いします。
katsumiさん
取得したいのは、投稿イベントの投稿者のuidですね。
ソースみているのですが、class/piCal.phpで、function get_schedule_view_html( $for_print = false ) で取得した中には当然uidはあるのですが、 この関数がhtmlを返す仕様になっているため、簡単にはいかないですね。。
関数をハックしちゃうというのもアリですが、どこか思わぬところに影響を与えそうで躊躇します。
ソースいじらずに、smartyプラグインを書くという手もあるので、その辺も含めて考えてみます。 時間をください。
どうもありがとうございます。
いつも素人判断で適当にハックしちゃってますが、それってけっこう危険なことなんですね。セキュリティホールとか大丈夫かな。
katsumiさん、こんにちは。
遅くなりましたが、簡単なsmartyプラグインを書いてみました。
XCL限定です。
テンプレートからsmartyのfunctionプラグインを呼ぶことでuidの変数にアサインし、同じテンプレート上でその変数を使う、という流れです。
function.pical_eventuser.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
|
これを、(html側でもtrust側でもどちらかの)smartyフォルダに放り込んでおき、「pical_event_detail.html」テンプレートに
|
と記載してみてください。 uidの数値が取れると思います。
var=uid の部分は、アサインする変数名ですので、もし$uidという変数が使われているような場面では、これを他の変数に変更、例えばvar=event_uid と換えることで、<{$event_uid}> で引けます。
このあとは、他のプラグインにパイプで渡すなり、ご自由にどうぞ。
(追伸)
ハックをお勧めしないのは、X-updateで上書きされるため管理が煩雑になることと、piCalがあまりに古いモジュールで、ハックすることで潜在的な不都合が表面化する可能性が少しあるかな、というのが理由です。 私自身、コメント統合ハックはしましたが、他はあまり手を入れたくないと思っています。
できました! ありがとうございました。
これで思ってたことができます。
実は、ハックしすぎで新しいバージョンに上げられなくなってます。
せっかく開発が進んでいるのに使えていません。
X-updateやX-elFinder使いたいんですけどねぇ。
またそのうちチャレンジします。
今回もほんとうにありがとうございました。
すいません、一つ質問です。picalのブロックで使われている$event.idなんですが0000001522のようにidの前に0が付いています。これを取って1522にして使いたいのですがどうすればよいでしょうか。ゼロサプレスで消せることはわかってsmartyで<{$event.id|abs}>これで表示はできるのですが実際に使いたいのは
<{if ! 'mileage'|mileageIsTicketMile:$event.id|abs}><{/if}>としたいけど、$event.id|absこの部分がうまく機能しない。何かいい方法はありますか?
<{assign var=event_id_abs value=$event.id|intval}>
としてアサインしておくと、
<{$event_id_abs}>
で引けますから、それをmileage内の記述に渡せばOKでしょう。
できました!smartyって便利ですね。ありがとうございました。