當前位置: 首頁>>代碼示例>>PHP>>正文


PHP eZContentOperationCollection::updateSection方法代碼示例

本文整理匯總了PHP中eZContentOperationCollection::updateSection方法的典型用法代碼示例。如果您正苦於以下問題:PHP eZContentOperationCollection::updateSection方法的具體用法?PHP eZContentOperationCollection::updateSection怎麽用?PHP eZContentOperationCollection::updateSection使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在eZContentOperationCollection的用法示例。


在下文中一共展示了eZContentOperationCollection::updateSection方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: sectionEditActionCheck

function sectionEditActionCheck( $module, $class, $object, $version, $contentObjectAttributes, $editVersion, $editLanguage, $fromLanguage )
{
    if ( $module->isCurrentAction( 'SectionEdit' ) )
    {
        $http = eZHTTPTool::instance();
        if ( $http->hasPostVariable( 'SelectedSectionId' ) )
        {
            $selectedSectionID = (int) $http->postVariable( 'SelectedSectionId' );
            $selectedSection = eZSection::fetch( $selectedSectionID );
            if ( is_object( $selectedSection ) )
            {
                $currentUser = eZUser::currentUser();
                if ( $currentUser->canAssignSectionToObject( $selectedSectionID, $object ) )
                {
                    $db = eZDB::instance();
                    $db->begin();
                    $assignedNodes = $object->attribute( 'assigned_nodes' );
                    if ( count( $assignedNodes ) > 0 )
                    {
                        foreach ( $assignedNodes as $node )
                        {
                            if ( eZOperationHandler::operationIsAvailable( 'content_updatesection' ) )
                            {
                                $operationResult = eZOperationHandler::execute( 'content',
                                                                                'updatesection',
                                                                                array( 'node_id'             => $node->attribute( 'node_id' ),
                                                                                       'selected_section_id' => $selectedSectionID ),
                                                                                null,
                                                                                true );

                            }
                            else
                            {
                                eZContentOperationCollection::updateSection( $node->attribute( 'node_id' ), $selectedSectionID );
                            }
                        }
                    }
                    else
                    {
                        // If there are no assigned nodes we should update db for the current object.
                        $objectID = $object->attribute( 'id' );
                        $db->query( "UPDATE ezcontentobject SET section_id='$selectedSectionID' WHERE id = '$objectID'" );
                        $db->query( "UPDATE ezsearch_object_word_link SET section_id='$selectedSectionID' WHERE  contentobject_id = '$objectID'" );
                    }
                    $object->expireAllViewCache();
                    $db->commit();
                }
                else
                {
                    eZDebug::writeError( "You do not have permissions to assign the section <" . $selectedSection->attribute( 'name' ) .
                                         "> to the object <" . $object->attribute( 'name' ) . ">." );
                }
                $module->redirectToView( 'edit', array( $object->attribute( 'id' ), $editVersion, $editLanguage, $fromLanguage ) );
            }
        }
    }
}
開發者ID:sushilbshinde,項目名稱:ezpublish-study,代碼行數:57,代碼來源:section_edit.php

示例2: applyTo

 public function applyTo(eZContentObject $object)
 {
     $sectionID = $this->attribute("id");
     $currentUser = eZUser::currentUser();
     if (!$currentUser->canAssignSectionToObject($sectionID, $object)) {
         eZDebug::writeError("You do not have permissions to assign the section <" . $selectedSection->attribute("name") . "> to the object <" . $object->attribute("name") . ">.");
         return false;
     }
     $db = eZDB::instance();
     $db->begin();
     $assignedNodes = $object->attribute("assigned_nodes");
     if (!empty($assignedNodes)) {
         if (eZOperationHandler::operationIsAvailable("content_updatesection")) {
             foreach ($assignedNodes as $node) {
                 eZOperationHandler::execute("content", "updatesection", array("node_id" => $node->attribute("node_id"), "selected_section_id" => $sectionID), null, true);
             }
         } else {
             foreach ($assignedNodes as $node) {
                 eZContentOperationCollection::updateSection($node->attribute("node_id"), $sectionID);
             }
         }
     } else {
         // If there are no assigned nodes we should update db for the current object.
         $objectID = $object->attribute("id");
         $db->query("UPDATE ezcontentobject SET section_id='{$sectionID}' WHERE id = '{$objectID}'");
         $db->query("UPDATE ezsearch_object_word_link SET section_id='{$sectionID}' WHERE  contentobject_id = '{$objectID}'");
     }
     eZContentCacheManager::clearContentCacheIfNeeded($object->attribute("id"));
     $object->expireAllViewCache();
     $db->commit();
 }
開發者ID:jordanmanning,項目名稱:ezpublish,代碼行數:31,代碼來源:ezsection.php


注:本文中的eZContentOperationCollection::updateSection方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。