#!/usr/bin/perl -w
use strict;
-use WWW::Mediawiki::Client;
-#sub WWW::Mediawiki::Client::pagename_to_url {
-# my ($self, $name, $action) = @_;
-# WWW::Mediawiki::Client::URLConstructionException->throw(
-# error => 'No action supplied.',
-# ) unless $action;
-# WWW::Mediawiki::Client::URLConstructionException->throw(
-# error => "Page name $name ends with '.wiki'.",
-# ) if $name =~ /.wiki$/;
-# my $char = $self->space_substitute;
-# $name =~ s/ /$char/;
-# my $lang = $self->language_code;
-# my $host = $self->host;
-# $host =~ s/__LANG__/$lang/g;
-# my $wiki_path = $self->wiki_path;
-# $wiki_path =~ s/__LANG__/$lang/g;
-# my $protocol = $self->protocol;
-# return "$protocol://$host/$wiki_path?" . ACTION . "=$action&" . TITLE . "=$name" . '&wpRecreate=1';
-#}
my $mw_username = 'ivan';
chomp( my $mw_password = `cat .mw-password` );
my $site_perl = "./FS";
#my $html = "Freeside:1.7:Documentation:Developer";
-my $html = "Freeside:1.9:Documentation:Developer";
+#my $html = "Freeside:1.9:Documentation:Developer";
+my $html = "Freeside:3:Documentation:Developer";
foreach my $dir (
$html,
- map "$html/$_", qw( bin FS FS/UI FS/part_export FS/part_pkg
+ map "$html/$_", qw( bin FS
+ FS/cdr FS/cust_main FS/cust_pkg FS/detail_format
FS/part_event FS/part_event/Condition FS/part_event/Action
+ FS/part_export FS/part_pkg FS/pay_batch
FS/ClientAPI FS/Cron FS/Misc FS/Report FS/Report/Table
FS/TicketSystem FS/UI
+ FS/SelfService
)
) {
-d $dir or mkdir $dir;
-e "$file.pod" or system("cp $file $file.pod");
}
+#just for filename_to_pagename for now
+use WWW::Mediawiki::Client;
my $mvs = WWW::Mediawiki::Client->new(
- 'host' => 'www.sisd.com',
+ 'host' => 'www.freeside.biz',
+ 'protocol' => 'https',
'wiki_path' => 'mediawiki/index.php',
'username' => $mw_username,
'password' => $mw_password,
#'commit_message' => 'import from POD'
);
+#$mvs->do_login;
-$mvs->do_login;
+use MediaWiki;
-foreach my $file (
- glob("$site_perl/*.pm"),
- glob("$site_perl/*/*.pm"),
- glob("$site_perl/*/*/*.pm"),
- glob("$site_perl/*/*/*/*.pm"),
- glob("$site_perl/bin/*.pod"),
- glob("./fs_selfservice/FS-SelfService/*.pm"),
- glob("./fs_selfservice/FS-SelfService/*/*.pm"),
-) {
+my $c = MediaWiki->new;
+# $is_ok = $c->setup("config.ini");
+$c->setup({
+ 'bot' => { 'user' => $mw_username, 'pass' => $mw_password },
+ 'wiki' => {
+ 'host' => 'www.freeside.biz',
+ 'path' => 'mediawiki',
+ #'has_query' => 1,
+
+ }
+}) or die "Mediawiki->setup failed";
+
+my @files;
+if ( @ARGV ) {
+ @files = @ARGV;
+} else {
+ @files = (
+ glob("$site_perl/*.pm"),
+ glob("$site_perl/*/*.pm"),
+ glob("$site_perl/*/*/*.pm"),
+ glob("$site_perl/*/*/*/*.pm"),
+ glob("$site_perl/bin/*.pod"),
+ glob("./fs_selfservice/FS-SelfService/*.pm"),
+ glob("./fs_selfservice/FS-SelfService/*/*.pm"),
+ );
+
+}
+
+foreach my $file (@files) {
next if $file =~ /(^|\/)blib\//;
next if $file =~ /(^|\/)CVS\//;
#$file =~ /\/([\w\-]+)\.pm$/ or die "oops file $file";
next;
};
- $mvs->do_update("$html/$name.wiki");
+# $mvs->do_update("$html/$name.wiki");
+
+ my $text = '';
open(RAW, "<$html/$name.rawwiki") or die $!;
- open(WIKI,">$html/$name.wiki" ) or die $!;
while (<RAW>) {
- s/\[\[([^#\/][^\]]*)\]\]/"[[$html\/". w_e($1). "|$1]]"/ge;
- print WIKI $_;
+ s/\[\[([^#p][^\]]*)\]\]/"[[$html\/". w_e($1). "|$1]]"/ge;
+ $text .= $_;
}
close RAW;
- close WIKI;
- print " uploading to ". $mvs->filename_to_pagename("$html/$name.wiki"). "\n";
- $mvs->commit_message( 'import from POD' );
- $mvs->do_commit("$html/$name.wiki");
+ my $pagename = $mvs->filename_to_pagename("$html/$name.wiki");
+ #print " uploading to $pagename\n";
+
+ $c->text( $pagename, $text );
}