2011-12-05 8 views
1

Joomla!でコンポーネントを作成しています! 1.7と私はフレームワークのチェックアウト/チェックイン機能を利用したいと思います。現在カスタムコンポーネントのチェックイン/チェックアウトのベストプラクティス

  • ユーザーがそのレコードの編集作業を要求すると、コンポーネントレコードを「チェックアウト」としてマークするにはどうすればよいですか?
  • ユーザーが編集内容を保存しようとしたときに、レコードを「チェックイン済み」としてマークするにはどうすればよいですか?
  • 編集時にコンポーネントのレコードのチェックイン/チェックアウト状態をテストするにはどうすればよいですか?

ありがとう!

答えて

3

Basiclyあなたがしたいときにいつでも呼び出すことができ、あなたのモデルでは二つの方法、必要があります:あなたは、列がデフォルト値0でchecked_outと呼ばれる持っている必要があり、すべての最初のチェックなどの項目をマークするに

function checkin() 
{ 
    if ($this->_id) 
    { 
     $item= & $this->getTable(); 
     if(! $item->checkin($this->_id)) { 
      $this->setError($this->_db->getErrorMsg()); 
      return false; 
     } 
    } 
    return false; 
} 

function checkout($uid = null) 
{ 
    if ($this->_id) 
    { 
     // Make sure we have a user id to checkout the article with 
     if (is_null($uid)) { 
      $user =& JFactory::getUser(); 
      $uid = $user->get('id'); 
     } 
     // Lets get to it and checkout the thing... 
     $item= & $this->getTable(); 
     if(!$item->checkout($uid, $this->_id)) { 
      $this->setError($this->_db->getErrorMsg()); 
      return false; 
     } 

     return true; 
    } 
    return false; 
} 

を、また、項目がチェックアウトされたときに時間を保存するにはchecked_out_timeが必要です。 お手伝いをしてください。

+0

ありがとう、di3sel。それがまさに私が探しているものです。 – asciimo

関連する問題