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


PHP ArtefactTypeComment::delete_comments_onartefacts方法代碼示例

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


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

示例1: delete_by_artefacttype

 /**
  * Does a bulk_delete on a list of artefacts, grouping artefacts of
  * the same type.
  *
  * Currently only tested for folders and their contents.
  */
 public static function delete_by_artefacttype($artefactids)
 {
     if (empty($artefactids)) {
         return;
     }
     db_begin();
     artefact_watchlist_notification($artefactids);
     // Delete comments first
     safe_require('artefact', 'comment');
     ArtefactTypeComment::delete_comments_onartefacts($artefactids);
     $records = get_records_select_assoc('artefact', 'id IN (' . join(',', array_map('intval', $artefactids)) . ')', null, 'artefacttype', 'id,parent,artefacttype,container');
     $containers = array();
     $leaves = array();
     foreach ($records as $r) {
         if ($r->container) {
             $containers[$r->artefacttype][] = (int) $r->id;
         } else {
             $leaves[$r->artefacttype][] = $r->id;
         }
     }
     // Delete non-containers grouped by artefacttype
     foreach ($leaves as $artefacttype => $ids) {
         $classname = generate_artefact_class_name($artefacttype);
         call_static_method($classname, 'bulk_delete', $ids);
     }
     // Delete containers grouped by artefacttype
     foreach ($containers as $artefacttype => $ids) {
         $classname = generate_artefact_class_name($artefacttype);
         if (is_mysql()) {
             set_field_select('artefact', 'parent', null, 'id IN (' . join(',', $ids) . ')', array());
         }
         call_static_method($classname, 'bulk_delete', $ids);
     }
     handle_event('deleteartefacts', $artefactids);
     db_commit();
 }
開發者ID:kienv,項目名稱:mahara,代碼行數:42,代碼來源:lib.php


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