http://www.mediawiki.org/wiki/Special:Code/MediaWiki/93793

Revision: 93793
Author:   jlemley
Date:     2011-08-03 03:22:55 +0000 (Wed, 03 Aug 2011)
Log Message:
-----------
Fixed move and delete bugs.

Modified Paths:
--------------
    trunk/extensions/Favorites/FavoritedItem.php
    trunk/extensions/Favorites/Favorites.php

Modified: trunk/extensions/Favorites/FavoritedItem.php
===================================================================
--- trunk/extensions/Favorites/FavoritedItem.php        2011-08-03 00:19:27 UTC 
(rev 93792)
+++ trunk/extensions/Favorites/FavoritedItem.php        2011-08-03 03:22:55 UTC 
(rev 93793)
@@ -126,6 +126,12 @@
                # Note that multi-row replace is very efficient for MySQL but 
may be inefficient for
                # some other DBMSes, mostly due to poor simulation by us
                $dbw->replace( 'favoritelist', array( array( 'fl_user', 
'fl_namespace', 'fl_title' ) ), $values, __METHOD__ );
+               
+               # Delete the old item - we don't need to have the old page on 
the list of favorites.
+               $dbw->delete('favoritelist', array(
+                       'fl_namespace' => $oldnamespace,
+                       'fl_title' => $oldtitle), 
+                       $fname = 'Database::delete');
                return true;
        }
 }

Modified: trunk/extensions/Favorites/Favorites.php
===================================================================
--- trunk/extensions/Favorites/Favorites.php    2011-08-03 00:19:27 UTC (rev 
93792)
+++ trunk/extensions/Favorites/Favorites.php    2011-08-03 03:22:55 UTC (rev 
93793)
@@ -22,7 +22,7 @@
        'name' => 'Favorites',
        'author' => 'Jeremy Lemley',
        'descriptionmsg' => 'favorites-desc',
-       'version' => '0.0.7',
+       'version' => '0.1.0',
        'url' => "http://www.mediawiki.org/wiki/Extension:Favorites";,
 );
 
@@ -55,8 +55,9 @@
 //add or remove
 $wgHooks['UnknownAction'][] = 'fnAction';
 
-//handle page moves
+//handle page moves and deletes
 $wgHooks['TitleMoveComplete'][] = 'fnHookMoveToFav';
+$wgHooks['ArticleDeleteComplete'][] = 'fnHookDeleteFav';
 
 //add CSS
 $wgHooks['BeforePageDisplay'][] = 'fnAddCss';
@@ -96,6 +97,14 @@
        return true;
 }
 
+function fnHookDeleteFav(&$article, &$user, $reason, $id ){
+       $dbw = wfGetDB( DB_MASTER );
+       $dbw->delete('favoritelist', array(
+               'fl_title' => $article->mTitle->getDBKey()), 
+               $fname = 'Database::delete');
+       return true;
+}
+
 function fnAddCss (&$out) {
        global $wgScriptPath;
        $out->addStyle($wgScriptPath. '/extensions/favorites/favorites.css');


_______________________________________________
MediaWiki-CVS mailing list
MediaWiki-CVS@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-cvs

Reply via email to