- function purge(){
- wfQuery("DELETE FROM parsercache WHERE pc_expire < NOW() LIMIT 250", DB_WRITE);
- }
-
- function clearLinksTo( $pid ){
- $pid = intval( $pid );
- wfQuery("DELETE parsercache FROM parsercache,links ".
- "WHERE pc_pageid=links.l_from AND l_to={$pid}", DB_WRITE);
- wfQuery("DELETE FROM parsercache WHERE pc_pageid='{$pid}'", DB_WRITE);
- }
-
- # $title is a prefixed db title, for example like Title->getPrefixedDBkey() returns.
- function clearBrokenLinksTo( $title ){
- $title = wfStrencode( $title );
- wfQuery("DELETE parsercache FROM parsercache,brokenlinks ".
- "WHERE pc_pageid=bl_from AND bl_to='{$title}'", DB_WRITE);
- }
-
- # $pid is a page id
- function clearPage( $pid, $namespace ){
- $pid = intval( $pid );
- if( $namespace == NS_MEDIAWIKI ){
- $this->clearLinksTo( $pid );
+ function save( $parserOutput, &$article, &$user ){
+ global $wgMemc;
+ $key = $this->getKey( $article, $user );
+ $parserOutput->setTouched( $article->getTouched() );
+ if( $parserOutput->containsOldMagic() ){
+ $expire = 3600; # 1 hour