2010-10-27 32 views
0

我建立一個Drupal的第6位,與事件管理功能,特別是:Drupal的事件登記和考勤

  • 銷售活動的參與
  • 記錄事件人次:一旦事件結束後,管理員可以查看上座率表明哪些用戶真正參與

我尋覓了很多,已經出現不同相近崗位,並在發佈前考慮不同的可能性, 包括註冊模塊和ubercart uc_signup模塊,但沒有一個符合我的要求。 付款我使用Ubercart。

我的策略是:

  1. 創建內容類型的「事件」,其中包含有關該事件的所有信息,包括事件,說明該日期等 這是又一個的Ubercart產品。 這很容易通過CCK和的Ubercart(直接創建在的Ubercart產品或創建內容類型與CCK和與的Ubercart同一機器名的產品)
  2. 創建一個「事件參與」內容 - 完成類型,其具有保持對事件節點的引用的字段,保持對訂閱事件的用戶的引用的字段,用於「付款狀態」(付費與否)的字段,用於「出勤狀態」的字段(出席與否) 這可以用CCK輕鬆完成。
  3. 當一個用戶要參加一個活動,她創造型的「事件partecipation」節點:
    • 領域的參考事件應自動填充事件
    • 領域參考,用戶應將自動填入當前用戶
    • 只有當此特定事件和用戶不存在此類型的節點時,纔可能創建該節點。 如果這種類型的節點已經存在此事件和用戶應予刪除
    • 新創建的節點付款字段設置爲「不支付」,並出席字段設置爲「不參加」(默認爲新節點)
    我認爲所有這些要點都可以通過hook_form_alter()完成。可能嗎?
  4. 一旦「參與活動」被創建,用戶就會看到一個支付參與的鏈接。 這樣做是將引用的事件添加到Ubercart cart並將用戶重定向到結帳頁面 我認爲這一點可以通過hook_form_alter()和Ubercart API來完成。可能嗎?
  5. 當用戶履行付款,就會觸發一個動作設置「事件參與節點」引用買產品和購買用戶設置爲「支付」的「支付狀態」字段。 我認爲這可以通過Ubercart條件操作來實現。可能嗎?
  6. 在這一點上,我們必須創造出參與一個事件,在看「活動參股」和「支付領域」等於「支付」 事件「參與節點」,仍然是所有用戶的視圖的可能性因此,事件發生後,管理員可以設置用戶出勤並將其顯示在視圖中(可能是相同的視圖) 這只是簡單地通過視圖來完成。

您認爲什麼是可行的? 我想詳細介紹一些上述步驟,但現在我有興趣討論整體策略。 非常感謝您的關注和任何建議。

回答