コード例 #1
0
 /**
  * @see ProjectItemInterface::set_class()
  * @param string $class_name
  * @return bool
  */
 public function set_class($class_name)
 {
     global $user, $transaction;
     if ($this->item_id) {
         $transaction_id = $transaction->begin();
         if (($item_class_id = $this->exist_class($class_name)) == null) {
             $item_class = new ItemClass(null);
             if (($item_class_id = $item_class->create($class_name, $user->get_user_id())) == null) {
                 if ($transaction_id != null) {
                     $transaction->rollback($transaction_id);
                 }
                 return false;
             }
         } else {
             $item_class = new ItemClass($item_class_id);
         }
         $this->item_class_id = $item_class_id;
         if ($item_class->link_item($this->item_id) == true) {
             if ($transaction_id != null) {
                 $transaction->commit($transaction_id);
             }
             return true;
         } else {
             if ($transaction_id != null) {
                 $transaction->rollback($transaction_id);
             }
             return false;
         }
     } else {
         return false;
     }
 }
コード例 #2
0
ファイル: item.class.php プロジェクト: suxinde2009/www
 /**
  * @see ItemInterface::get_class_ids()
  * @return integer
  */
 public final function get_class_ids()
 {
     if ($this->item_id) {
         $item_class_array = ItemClass::list_classes_by_item_id($this->item_id);
         if (is_array($item_class_array) and count($item_class_array) >= 1) {
             return $item_class_array;
         } else {
             return null;
         }
     } else {
         return null;
     }
 }