Copy.php
<?
- Get copy-target and summary-text from form
xwGetProperty( $properties, 'copy/target', $target ); xwGetProperty( $properties, 'copy/summary', $summary ); xwGetProperty( $properties, 'copy/xml', $xml ); xwGetProperty( $properties, 'copy/talk', $talk ); xwGetProperty( $properties, 'copy/action', $action); xwGetProperty( $properties, 'copy/redir', $redir );
if ( $target ) { # Do the copy if target defined if ( $summary ) $summary = ": $summary"; $target = ucfirst( eregi_replace( '[^a-z0-9_]+', '_', $target ) ); $a = new Article( $t = Title::newFromText( $target ) ); if ( $t->getArticleID() ) xwMessage( "Copy failed! \"$target\" already exists!", 'red' ); else $a->insertNewArticle( $article, "Copied from $title$summary", false, false ); } else { # Define the form
$form = "
Move/copy article:
<form action=\"/wiki/index.php\">
<input type=hidden name=title value=\"$title\"> <input type=hidden name=\"xpath:/properties:data\" value=\"$tTitle\"> <input type=hidden name=\"xpath:/properties:copy\">
New title: | <input type=text name=\"xpath:/properties/copy:target\"> |
Reason: | <input type=text name=\"xpath:/properties/copy:summary\"> |
Action: | <input type=radio name=\"xpath:/properties/copy:action\" value=move checked>Move
<input type=radio name=\"xpath:/properties/copy:action\" value=alias>Alias <input type=radio name=\"xpath:/properties/copy:action\" value=copy>Copy |
<input type=checkbox checked=checked value=1 name=\"xpath:/properties/copy:xml\">
Also move/copy properties | |
<input type=checkbox checked=checked value=1 name=\"xpath:/properties/copy:talk\">
Also move discussion | |
<input type=submit value=\" Commit \"> | |
Note, \"alias\" is the default MediaWiki action, but we use \"move\" (Also note, that this isn't working yet! :-) |
</form>";
# Replace article content with form $article = preg_replace('/(?<=).+(?=)/s',$form,$article); }
?>