2017-02-23 103 views
0

我嘗試創建一個自定義驗證函數以添加到$ LoginForm。銀線條自定義安全檢查顯示自定義錯誤消息

1-集團「客戶」中的所有成員必須經過驗證才能登錄。

2-他們將被重定向到$ LoginForm並顯示自定義消息,如果帳戶未驗證。

是否有可能做到這一點,或者我必須編寫一個新的登錄表單嗎?如果可能的話,最簡單的方法是什麼?

+0

你的意思是驗證就像電子郵件發送的鏈接,他們必須點擊? – wmk

+0

是的,我做了一個自定義註冊表單併發送電子郵件驗證......但是通過$ LoginForm – StefGuev

+1

驗證它是否值得查看[SilverStripe member profiles module](https://github.com/silverstripe-australia/) silverstripe-memberprofiles),它在構建中具有此功能。 – 3dgoo

回答

2

好的,我找到了解決方案。我必須擴展DataExtension成員對象:

public function canLogIn($result) { 

     if(!$this->owner->Validation) { 
      $result->error('You must validate your account before you can log in.'); 
     } 
    } 

它的工作。

+0

Extend總是含糊不清,你的意思是用一個(Data)擴展類來「插入」成員對象?不是繼承我猜... – wmk

+0

我已經擴展DataExtension成員對象 – StefGuev