<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.dungeoncrawlchili.org/index.php?action=history&amp;feed=atom&amp;title=Current_projects_upload_images_upload-images.pl</id>
	<title>Current projects upload images upload-images.pl - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.dungeoncrawlchili.org/index.php?action=history&amp;feed=atom&amp;title=Current_projects_upload_images_upload-images.pl"/>
	<link rel="alternate" type="text/html" href="https://wiki.dungeoncrawlchili.org/index.php?title=Current_projects_upload_images_upload-images.pl&amp;action=history"/>
	<updated>2026-08-06T14:46:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.dungeoncrawlchili.org/index.php?title=Current_projects_upload_images_upload-images.pl&amp;diff=3219&amp;oldid=prev</id>
		<title>Maintenance script: Importing CrawlWiki content</title>
		<link rel="alternate" type="text/html" href="https://wiki.dungeoncrawlchili.org/index.php?title=Current_projects_upload_images_upload-images.pl&amp;diff=3219&amp;oldid=prev"/>
		<updated>2026-06-16T09:21:44Z</updated>

		<summary type="html">&lt;p&gt;Importing CrawlWiki content&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/usr/bin/perl&lt;br /&gt;
&lt;br /&gt;
my $username = &amp;quot;USERNAME&amp;quot;;&lt;br /&gt;
my $password = &amp;quot;PASSWORD&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
# Set the pause in seconds after each upload&lt;br /&gt;
my $pause = 60;&lt;br /&gt;
&lt;br /&gt;
# List the wiki PHP scripts where you have the username/password pair&lt;br /&gt;
my $api_url = &amp;#039;http://crawl.chaosforge.org/api.php&amp;#039;;&lt;br /&gt;
my $upload_url = &amp;#039;http://crawl.chaosforge.org/Special:Upload&amp;#039;;&lt;br /&gt;
&lt;br /&gt;
#Then run the script on the command line using&lt;br /&gt;
#&lt;br /&gt;
# $ perl image.pl dirname&lt;br /&gt;
#&lt;br /&gt;
# where dirname/ is the name of a directory containing the files to&lt;br /&gt;
# be uploaded&lt;br /&gt;
&lt;br /&gt;
use strict;&lt;br /&gt;
use warnings;&lt;br /&gt;
use MediaWiki::API;&lt;br /&gt;
use File::Spec;&lt;br /&gt;
use IO::Dir;&lt;br /&gt;
&lt;br /&gt;
my $dir = $ARGV[0] or die &amp;quot;Syntax: perl image.pl dirname\n&amp;quot;;&lt;br /&gt;
my $d = IO::Dir-&amp;gt;new($dir);&lt;br /&gt;
die unless defined $d;&lt;br /&gt;
my @files = grep {m/\.png/ &amp;amp;&amp;amp; ! m/-melee/} $d-&amp;gt;read();&lt;br /&gt;
undef $d;&lt;br /&gt;
&lt;br /&gt;
my $mw = MediaWiki::API-&amp;gt;new( {&lt;br /&gt;
    api_url =&amp;gt; $api_url,&lt;br /&gt;
    upload_url =&amp;gt; $upload_url,&lt;br /&gt;
    on_error =&amp;gt; \&amp;amp;on_error&lt;br /&gt;
  } );  &lt;br /&gt;
&lt;br /&gt;
sub on_error {&lt;br /&gt;
  print &amp;quot;Error code: &amp;quot; . $mw-&amp;gt;{error}-&amp;gt;{code} . &amp;quot;\n&amp;quot;;&lt;br /&gt;
  print $mw-&amp;gt;{error}-&amp;gt;{stacktrace}.&amp;quot;\n&amp;quot;;&lt;br /&gt;
  die;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
my $r = $mw-&amp;gt;login( { lgname =&amp;gt; $username, lgpassword =&amp;gt; $password } );&lt;br /&gt;
die unless defined($r);&lt;br /&gt;
&lt;br /&gt;
for (sort(@files)) {&lt;br /&gt;
        sleep $pause;&lt;br /&gt;
        my $f = File::Spec-&amp;gt;join($dir, $_);&lt;br /&gt;
        my $page = $_;&lt;br /&gt;
        print &amp;quot;Uploading $f to the wiki.\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
        my $r = $mw-&amp;gt;edit( {&lt;br /&gt;
                action   =&amp;gt; &amp;#039;upload&amp;#039;,&lt;br /&gt;
                filename =&amp;gt; $page,&lt;br /&gt;
                ignorewarnings =&amp;gt; 1,&lt;br /&gt;
                file     =&amp;gt; [$f]&lt;br /&gt;
        } );&lt;br /&gt;
        die unless defined($r);&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
$mw-&amp;gt;logout();&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Maintenance script</name></author>
	</entry>
</feed>