コード例 #1
0
ファイル: content.php プロジェクト: AshlinRejo/joomla-cms
 /**
  * Store data to the appropriate table
  *
  * @param   array            $data        Data to be stored
  * @param   JTableInterface  $table       JTable Object
  * @param   boolean          $primaryKey  Flag that is true for data that are using #__ucm_content as their primary table
  *
  * @return  boolean  true on success
  *
  * @since   3.1
  */
 protected function store($data, JTableInterface $table = null, $primaryKey = null)
 {
     $table = $table ? $table : JTable::getInstance('Corecontent');
     $typeId = $this->getType()->type->type_id;
     $primaryKey = $primaryKey ? $primaryKey : $this->getPrimaryKey($typeId, $data['core_content_item_id']);
     if (!$primaryKey) {
         // Store the core UCM mappings
         $baseData = array();
         $baseData['ucm_type_id'] = $typeId;
         $baseData['ucm_item_id'] = $data['core_content_item_id'];
         $baseData['ucm_language_id'] = JHelperContent::getLanguageId($data['core_language']);
         if (parent::store($baseData)) {
             $primaryKey = $this->getPrimaryKey($typeId, $data['core_content_item_id']);
         }
     }
     return parent::store($data, $table, $primaryKey);
 }
コード例 #2
0
ファイル: corecontent.php プロジェクト: grchis/Site-Auto
 /**
  * Insert or update row in ucm_base table
  *
  * @param   boolean  $updateNulls  True to update fields even if they are null.
  * @param   boolean  $isNew        if true, need to insert. Otherwise update.
  *
  * @return  boolean  True on success.
  *
  * @since   3.1
  */
 protected function storeUcmBase($updateNulls = false, $isNew = false)
 {
     // Store the ucm_base row
     $db = $this->getDbo();
     $query = $db->getQuery(true);
     $languageId = JHelperContent::getLanguageId($this->core_language);
     // Selecting "all languages" doesn't give a language id - we can't store a blank string in non mysql databases, so save 0 (the default value)
     if (!$languageId) {
         $languageId = '0';
     }
     if ($isNew) {
         $query->insert($db->quoteName('#__ucm_base'))->columns(array($db->quoteName('ucm_id'), $db->quoteName('ucm_item_id'), $db->quoteName('ucm_type_id'), $db->quoteName('ucm_language_id')))->values($db->quote($this->core_content_id) . ', ' . $db->quote($this->core_content_item_id) . ', ' . $db->quote($this->core_type_id) . ', ' . $db->quote($languageId));
     } else {
         $query->update($db->quoteName('#__ucm_base'))->set($db->quoteName('ucm_item_id') . ' = ' . $db->quote($this->core_content_item_id))->set($db->quoteName('ucm_type_id') . ' = ' . $db->quote($this->core_type_id))->set($db->quoteName('ucm_language_id') . ' = ' . $db->quote($languageId))->where($db->quoteName('ucm_id') . ' = ' . $db->quote($this->core_content_id));
     }
     $db->setQuery($query);
     return $db->execute();
 }
コード例 #3
0
ファイル: base.php プロジェクト: adjaika/J3Base
 /**
  * Method to map the base ucm fields
  *
  * @param   array     $original  Data array
  * @param   JUcmType  $type      UCM Content Type
  *
  * @return  array  Data array of UCM mappings
  *
  * @since   3.1
  */
 public function mapBase($original, JUcmType $type = null)
 {
     $type = $type ? $type : $this->type;
     $data = array('ucm_type_id' => $type->id, 'ucm_item_id' => $original[$type->primary_key], 'ucm_language_id' => JHelperContent::getLanguageId($original['language']));
     return $data;
 }
コード例 #4
0
 /**
  * Insert or update row in ucm_base table
  *
  * @param   boolean  $updateNulls  True to update fields even if they are null.
  * @param   boolean  $isNew        if true, need to insert. Otherwise update.
  *
  * @return  boolean  True on success.
  *
  * @since   3.1
  */
 protected function storeUcmBase($updateNulls = false, $isNew = false)
 {
     // Store the ucm_base row
     $db = $this->getDbo();
     $query = $db->getQuery(true);
     $languageId = JHelperContent::getLanguageId($this->core_language);
     if ($isNew) {
         $query->insert($db->quoteName('#__content_ucm_base'))->columns(array($db->quoteName('ucm_id'), $db->quoteName('ucm_item_id'), $db->quoteName('ucm_type_id'), $db->quoteName('ucm_language_id')))->values($db->quote($this->core_content_id) . ', ' . $db->quote($this->core_content_item_id) . ', ' . $db->quote($this->core_type_id) . ', ' . $db->quote($languageId));
     } else {
         $query->update($db->quoteName('#__content_ucm_base'))->set($db->quoteName('ucm_item_id') . ' = ' . $db->quote($this->core_content_item_id))->set($db->quoteName('ucm_type_id') . ' = ' . $db->quote($this->core_type_id))->set($db->quoteName('ucm_language_id') . ' = ' . $db->quote($languageId))->where($db->quoteName('ucm_id') . ' = ' . $db->quote($this->core_content_id));
     }
     $db->setQuery($query);
     return $db->execute();
 }