2017-03-10 28 views
0

こんにちは、私は 'Wydzial 1'のようなタイトルを設定すると、イベントカラーの変更に問題があります。 タイトルを確認するには次の使用方法を教えてください。何をすべきか知っている。 私は次のようなことをしなければなりません:タイトル「Wydzial 1」でイベントを作成し、色:赤でイベントを取得します。次に、タイトル「Wydzial 2」を青色で作成します。そんな感じ。 今、そのすべての時間と他のイベントを追加しているが、私はどのようにイベントのための異なる色を知っていない。マッドハッターカレンダーカラーイベントLaravel 5.4

コントローラ:あなたはあまりにもオプション(docs)として色を渡すことができるように

/** 
* Show the application dashboard. 
* 
* @return \Illuminate\Http\Response 
*/ 
public function index() 
{ 
    $event = HomeModel::all(); 


    if($event->count()>0) 
    { 
     foreach ($event as $eve) 
     { 
       $all_day = $eve->day; 
       $events[] = \Calendar::event(
       $eve->title, 
       $eve->all_day, 
       $eve->start, 
       $eve->end, 
       $eve->id 

      ); 
     } 
    } 
    else 
    { 
     $events = []; 

    } 

    $titles = HomeModel::where('title')->get(); 

    if($titles == "Wydzial 1") { 
     $color = '#378006'; 
    } elseif ($titles == "Wydzial 2") { 
     $color = '#ff0000'; 
    } elseif ($titles == "Wydzial 3") { 
     $color = '#73e600'; 
    } else { 
     $color = '#0066ff'; 
    } 

    $calendar = \Calendar::addEvents($events) 
     ->setOptions([ 
      'FirstDay' => 1, 
      'contentheight' => 650, 
      'editable' => false, 
      'allDay' => false, 
      'aspectRatio' => 2, 
      'slotLabelFormat' => 'HH:mm:ss', 
      'timeFormat' => 'HH:mm', 
      'color' => $color,   
      ])->setCallbacks([]); 

    return view('home', compact('calendar')); 

} 

答えて

0

はそう?擬似コード:

$dbEvents = HomeModel::all(); 

foreach($dbEvents as $dbEvent) { 
    if($dbEvent->title == "Wydzial 1") { 
     $color = '#378006'; 
    } elseif ($dbEvent->title == "Wydzial 2") { 
     $color = '#ff0000'; 
    } elseif ($dbEvent->title == "Wydzial 3") { 
     $color = '#73e600'; 
    } else { 
     $color = '#0066ff'; 
    } 

    $events[] = \Calendar::event()->setOptions([ 
     'title' => $dbEvent->title, 
     'color' => $color, 
    ]); 
} 

$calendar = \Calendar::addEvents($events)->setOptions([ 
     'FirstDay' => 1, 
     'contentheight' => 650, 
     'editable' => false, 
     'allDay' => false, 
     'aspectRatio' => 2, 
     'slotLabelFormat' => 'HH:mm:ss', 
     'timeFormat' => 'HH:mm' 
])->setCallbacks([]); 
+0

私はuのように作られている場合は、そのdoesntが示すイベントを書き込む;/ – Mariusz

+0

私はあなたの編集の変更を反映するために例を更新しました... – Wietse