スケジュールプラグインでカレンダーにカテゴリを含めて表示したい

funi > スケジュールプラグインでカレンダーにカテゴリを含めて表示したい @ 2018/8/20 14:54
いつもお世話になっております。
スケジュールプラグインでイベント管理を行いたいと思っているのですが、
カレンダー上でイベントのカテゴリ(会場など)が一目でわかるようにする良い方法はありませんでしょうか。
プラグインの中身を色々と見てみたのですが、イベントのタイトル入力時に会場名などを追記する方法が最有力な状態です。

理想を言えば、classにカテゴリNoを追加し各イベントタイトルのリンクをカテゴリ毎に色分けしたいななどと考えています。
Helperなどを編集するのはハードルが高いため、テンプレートで対応が可能だと嬉しいのですが。

カレンダー表示部分は以下を固定ページに記載する形をとっております。
BcBaser->scheduleCalendar(null, null, array('title' => true)) ?>

お知恵をお借りできれば幸いです。
何卒宜しくお願い致します。

■ BaserCMS Ver:3.0.6.1 〜 4.1.0.1
■ サーバー名:lolipop
■ スマートURLの利用:ON
■ 設置フォルダ:サブフォルダ、サブドメイン等
■ 利用しているDB:SQLite

tommy6073 > Re: スケジュールプラグインでカレンダーにカテゴリを含めて表示したい @ 2018/8/21 11:06
こんにちは、tommy6073です。

ご希望の表示ですが、プラグインの仕様上、テンプレートのみで対応することは難しいかと思います。

Helperでの対応となりますが、ScheduleBaserHelper::makeCalender()にて
$contentにリンクを生成している部分でカテゴリのclassをセットし、
それぞれのクラスにCSSでスタイルを当てることで可能かと思います。

ご希望には添えていませんが、ご参考になればと思います。
funi > Re: スケジュールプラグインでカレンダーにカテゴリを含めて表示したい @ 2018/8/21 15:56
tommy6073さま

ご回答頂きありがとうございました。
アドバイスを頂き、思い切ってHelperを改変してみました。

app\Plugin\Schedule\View\Helper\ScheduleBaserHelper.php

public function makeCalender($year, $month, $schedules = null, $options = array())
#295行目あたりの makeCalender >> 「//タイトル出力がtrueなら、内容を付与する。」>> #389行目あたりを
下記のように書き換え、cssにて色分けを行いました。


//                $link = $this->Html->link(h($schedule['Schedule']['title']), $url);
                  $mycate = $schedule['Schedule']['schedule_category_id'];
                  $link = $this->Html->link(h($schedule['Schedule']['title']), $url, array('class'=> 'evcate_'.$mycate,'id'=> 'evno_'.$schedule['Schedule']['id']));




おかげさまで問題なく動作しているように思います。
ご教授頂きありがとうございました。

■ BaserCMS Ver:3.0.6.1 〜 4.1.0.1
■ サーバー名:lolipop
■ スマートURLの利用:ON
■ 設置フォルダ:サブフォルダ、サブドメイン等
■ 利用しているDB:SQLite

ログイン
ユーザー名:
パスワード:


  新規登録 / パスワード紛失

検索

facebook
フォーラムで悩みが解決した場合など、よかったら「いいね!」をポチっとクリックしてください!質問の回答者や開発者の励みになります

フォーラムガイド


関連リンク

オンライン状況
25 人のユーザが現在オンラインです。 (24 人のユーザが フォーラム を参照しています。)

登録ユーザ: 0
ゲスト: 25