+ #------------------------------------------------------------------------------
+ # Category links
+ if( $wgUseCategoryMagic ) {
+ $sql = "DELETE FROM $categorylinks WHERE cl_from='{$this->mId}'";
+ $dbw->query( $sql, $fname );
+
+ # Get addition list
+ $add = $wgLinkCache->getCategoryLinks();
+
+ # Do the insertion
+ $sql = '';
+ if ( 0 != count ( $add ) ) {
+ $arr=array();
+ foreach( $add as $cname => $sortkey ) {
+ $nt = Title::makeTitle( NS_CATEGORY, $cname );
+ if( !$nt ) continue;
+ $nt->invalidateCache();
+ array_push($arr,array(
+ 'cl_from'=>$this->mId,
+ 'cl_to'=>$dbw->strencode( $cname ),
+ 'cl_sortkey'=>$dbw->strencode( $sortkey )));
+ }
+ $dbw->insertArray($categorylinks,$arr,$fname,array('IGNORE'));
+ }
+ }
+