1

私はAngularJSに基づいてロスターを作成しようとしています。このプロジェクトでは、私はfullcalendar(スケジューラ版)を使用しています。他のイベントにイベントを追加するにはどうすればいいですか?フルカラー

これは私が持っている現在の状態です:目標

enter image description here

オフすべてのですが、私は仕事のレイヤ内の私の従業員をドラッグアンドドロップします。たとえば、 "Haris Bjelic"、私のワークレイヤー内に "01.06 - 04.06のWL"と表示されます。

私は "ハリス・ベジェリック"が01.06から04.06まで働く必要があることを知っています(休憩なし、hehe)。まず、他のイベントの中にイベントを追加する機能を見つけようとしました。この場合、最初に01.06から 'Work Layer'というレイヤーを作成しました。 - 04.06 'ここで私は&をこの層にドロップして、彼らの作業時間を飛行機に乗せることができます。

スケジューラでは、左側にリストされている私のDepartments(Bar、Serviceなど)です。右側には次の日が見えます。私はこの機能を試してみました瞬間

eventOverlap: function(stillEvent, movingEvent) {} 

私はドラッグして、「01.06からWL - 04.06」に「ハリスのbjelicを」ドロップあれば、彼らはtogheter重なった場合、私は両方のイベントへのアクセスをしました。そこで、私は、「draggable」イベントのIDと「WLのID」を01.06 - 04.06から取得してデータベース上の関係に設定しようとしました。

これが完了したら、私は従業員名を作業層の 'タイトル'に追加したいと思います。

'WL 01.06 - 04.06 
    "Haris Bjelic" 
    "Foo Employe" 
    2 emplyoee are working in this Layer' 

enter image description here これは私が取得したい結果である: - 私が「04.06 WL 01.06から」&ドロップ「ハリスBjelic」や他の従業員をドラッグした場合、結果はこのように見てする必要があります!

eventOverlap機能を使用すると、両方のイベントにアクセスできます。現時点で、 "haris bjelic"を他のイベントにドラッグして、オーバーラップ関数がトリガされたとき、私はワークレイヤーのタイトルを変更したいと思います。 eventOverlapインサイド

私はこの試みた:それはテキストのみを変更する代わりに、新しいイベントを作成し

stillEvent.text += "\n" + movingEvent.text; 
element.fullCalendar('updateEvent', stillEvent); 

を!

こちらをご覧ください:

enter image description here

なぜUpdateEventは、古いイベントを更新する代わりに、新しいイベントを作成するのですか?私はstillEventをupdateEvent関数に入れました。

答えて

4

イベントにはtextというプロパティはありません。titleです。私はまた、タイトルが更新されると、カレンダーからmovingEventを削除するには、このコードを使用します。

 eventOverlap: function(stillEvent, movingEvent) { 
      stillEvent.title += "\n" + movingEvent.title; 
      $('#calendar').fullCalendar('updateEvent', stillEvent); 
      $('#calendar').fullCalendar('removeEvents', movingEvent._id); 
      return false; 
     }, 

     eventReceive: function(event) { // called when a proper external event is dropped 
      $('#calendar').fullCalendar('removeEvents', event._id); 
     }, 

このコードはfullCalendarにバンドル外部ドラッグデモで動作します。

+0

こんにちはK48! 申し訳ありませんが、私は一週間が非常にうんざりしていてプログラミングや作業ができませんでした。私はあなたのソリューションをチェックしました。どうもありがとうございました! –

関連する問題