RT# 82949 - changes section name from fees to pricing, better opiton
[freeside.git] / bin / pod2x
index 329e491..64ccf88 100755 (executable)
--- a/bin/pod2x
+++ b/bin/pod2x
@@ -1,37 +1,19 @@
 #!/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:5: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
@@ -58,25 +40,49 @@ foreach my $file (
   -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";
@@ -102,20 +108,21 @@ foreach my $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/\[\[([^#p][^\]]*)\]\]/"[[$html\/". w_e($1). "|$1]]"/ge;
-    print WIKI $_;
+    $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 );
 
 }