[Bast-commits] r9891 - in ironman/IronMan-Web/tags: . ironboy ironboy/lib/IronMan/Web/Controller ironboy/root ironboy/root/inc

idn at dev.catalyst.perl.org idn at dev.catalyst.perl.org
Tue Jul 5 10:21:19 GMT 2011


Author: idn
Date: 2011-07-05 10:21:19 +0000 (Tue, 05 Jul 2011)
New Revision: 9891

Added:
   ironman/IronMan-Web/tags/ironboy/
   ironman/IronMan-Web/tags/ironboy/Changes
   ironman/IronMan-Web/tags/ironboy/Makefile.PL
   ironman/IronMan-Web/tags/ironboy/README
   ironman/IronMan-Web/tags/ironboy/development-cycle.pod
   ironman/IronMan-Web/tags/ironboy/ironman_web.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf
   ironman/IronMan-Web/tags/ironboy/lib/
   ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm
   ironman/IronMan-Web/tags/ironboy/root/
   ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt
   ironman/IronMan-Web/tags/ironboy/root/new_feed.tt
   ironman/IronMan-Web/tags/ironboy/script/
   ironman/IronMan-Web/tags/ironboy/t/
   ironman/IronMan-Web/tags/ironboy/todo.pod
Removed:
   ironman/IronMan-Web/tags/ironboy/Changes
   ironman/IronMan-Web/tags/ironboy/Makefile.PL
   ironman/IronMan-Web/tags/ironboy/README
   ironman/IronMan-Web/tags/ironboy/development-cycle.pod
   ironman/IronMan-Web/tags/ironboy/ironman_web.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf
   ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf
   ironman/IronMan-Web/tags/ironboy/lib/
   ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm
   ironman/IronMan-Web/tags/ironboy/root/
   ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt
   ironman/IronMan-Web/tags/ironboy/root/new_feed.tt
   ironman/IronMan-Web/tags/ironboy/script/
   ironman/IronMan-Web/tags/ironboy/t/
   ironman/IronMan-Web/tags/ironboy/todo.pod
Log:
New push

Deleted: ironman/IronMan-Web/tags/ironboy/Changes
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/Changes	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/Changes	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,4 +0,0 @@
-This file documents the revision history for Perl extension IronMan::Web.
-
-0.01  2009-07-01 21:07:26
-        - initial revision, generated by Catalyst

Copied: ironman/IronMan-Web/tags/ironboy/Changes (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/Changes)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/Changes	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/Changes	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,4 @@
+This file documents the revision history for Perl extension IronMan::Web.
+
+0.01  2009-07-01 21:07:26
+        - initial revision, generated by Catalyst

Deleted: ironman/IronMan-Web/tags/ironboy/Makefile.PL
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/Makefile.PL	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/Makefile.PL	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,44 +0,0 @@
-use inc::Module::Install;
-
-name 'IronMan-Web';
-all_from 'lib/IronMan/Web.pm';
-
-requires 'Catalyst::Runtime' => '5.7015';
-requires 'Catalyst::Plugin::ConfigLoader';
-requires 'Catalyst::Plugin::Static::Simple';
-requires 'Catalyst::Plugin::StackTrace';
-requires 'Catalyst::Action::RenderView';
-requires 'YAML'; # This should reflect the config file format you've chosen
-                 # See Catalyst::Plugin::ConfigLoader for supported formats
-
-requires 'Catalyst::Controller::reCAPTCHA';
-requires 'Catalyst::View::TT';
-requires 'Catalyst::Model::DBIC::Schema';
-requires 'Data::UUID';
-requires 'Email::Valid';
-requires 'LWP::Simple';
-requires 'XML::Feed';
-requires 'DateTime';
-requires 'XML::OPML';
-requires 'DateTime::Format::HTTP';
-requires 'YAML::XS';
-requires 'IronMan::Schema';
-requires 'Term::Prompt';
-requires 'Try::Tiny';
-# We need DateTime::Format::SQLite for script/import_csv.pl if using SQLite
-recommends 'DateTime::Format::SQLite';
-
-# We need TryCatch::Error for script/pull_urls.pl
-recommends 'TryCatch::Error';
-
-# We need FCGI::ProcManager to run this as a Fast CGI process.
-recommends 'FCGI::ProcManager';
-
-# Testing deps
-test_requires 'Catalyst::Test';
-
-catalyst;
-
-install_script glob('script/*.pl');
-auto_install;
-WriteAll;

Copied: ironman/IronMan-Web/tags/ironboy/Makefile.PL (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/Makefile.PL)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/Makefile.PL	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/Makefile.PL	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,44 @@
+use inc::Module::Install;
+
+name 'IronMan-Web';
+all_from 'lib/IronMan/Web.pm';
+
+requires 'Catalyst::Runtime' => '5.7015';
+requires 'Catalyst::Plugin::ConfigLoader';
+requires 'Catalyst::Plugin::Static::Simple';
+requires 'Catalyst::Plugin::StackTrace';
+requires 'Catalyst::Action::RenderView';
+requires 'YAML'; # This should reflect the config file format you've chosen
+                 # See Catalyst::Plugin::ConfigLoader for supported formats
+
+requires 'Catalyst::Controller::reCAPTCHA';
+requires 'Catalyst::View::TT';
+requires 'Catalyst::Model::DBIC::Schema';
+requires 'Data::UUID';
+requires 'Email::Valid';
+requires 'LWP::Simple';
+requires 'XML::Feed';
+requires 'DateTime';
+requires 'XML::OPML';
+requires 'DateTime::Format::HTTP';
+requires 'YAML::XS';
+requires 'IronMan::Schema';
+requires 'Term::Prompt';
+requires 'Try::Tiny';
+# We need DateTime::Format::SQLite for script/import_csv.pl if using SQLite
+recommends 'DateTime::Format::SQLite';
+
+# We need TryCatch::Error for script/pull_urls.pl
+recommends 'TryCatch::Error';
+
+# We need FCGI::ProcManager to run this as a Fast CGI process.
+recommends 'FCGI::ProcManager';
+
+# Testing deps
+test_requires 'Catalyst::Test';
+
+catalyst;
+
+install_script glob('script/*.pl');
+auto_install;
+WriteAll;

Deleted: ironman/IronMan-Web/tags/ironboy/README
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/README	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/README	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1 +0,0 @@
-Run script/ironman_web_server.pl to test the application.

Copied: ironman/IronMan-Web/tags/ironboy/README (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/README)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/README	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/README	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1 @@
+Run script/ironman_web_server.pl to test the application.

Deleted: ironman/IronMan-Web/tags/ironboy/development-cycle.pod
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/development-cycle.pod	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/development-cycle.pod	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,112 +0,0 @@
-=head1 IronMan::Web
-
-This module forms part of the Enlightened Perl Organisation IronMan project.
-
-For more details, see the overview document at:
-
-    http://dev.catalyst.perl.org/repos/bast/ironman/overview.pod
- 
-The latest version of this document can be found at:
-
-    http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/development-cycle.pod
-
-The repository is layed out as follows:
-
-    branches    - current development branches
-    tags        - current releases including live and dev sites
-    trunk       - current cutting edge waiting for release tagging
-
-=head1 Trunk and branches.
-
-Trunk contains the latest cutting edge code.  It's recommended that you don't
-work directly in trunk, but create yourself a branch.
-
-=head2 Branches.
-
-Create your own branch for 'very cool new feature' as follows:
-
-    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/ \
-           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/branches/very_cool_new_feature \
-        -m "Creating branch to work on my very cool new feature"
-
-Work on files in your branch, then once you're done you can either poke someone
-on the irc channel or you can merge it back into trunk yourself (see below).
-
-=head2 The '-Debug' option
-
-You may wish to enable the Catalyst debugging module within your branch.
-
-    diff -Naur branches/ironboy/lib/IronMan/Web.pm branches/dev/lib/IronMan/Web.pm
-    --- branches/ironboy/lib/IronMan/Web.pm 2010-07-10 10:37:30.825413356 +0100
-    +++ branches/dev/lib/IronMan/Web.pm     2010-07-10 10:37:31.174421647 +0100
-    @@ -14,7 +14,7 @@
-     # Static::Simple: will serve static files from the application's root 
-     #                 directory
-     
-    -use Catalyst qw/ConfigLoader Static::Simple StackTrace/;
-    +use Catalyst qw/-Debug ConfigLoader Static::Simple StackTrace/;
-     
-     our $VERSION = '0.01';
-
-
-=head1 Merging bug fixes and branches back into trunk.
-
-In order to maintain a nice history and clean revisions for rollback and
-additions, we'll create ourselves a new tagged version and then copy that
-to ironboy for testing.  Once testing is completed, we'll delete the
-ironboy tag and copy ironman to it.
-
-=head2 Merging into trunk
-
-Merging a branch back into trunk:
-
-    svn co http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/
-    cd trunk
-    svn merge --reintegrate http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/branches/very_cool_new_feature
-    svn commit -m "Merging very cool new feature branch back into trunk"
-
-=head2 Comparing branches for cherry picking
-
-
-Need to add docs here...
-
-
-=head1 Release process
-
-=head2 Trunk to release
-
-Increment the version number within lib/IronMan/Web.pm:
-
-    our $VERSION = '0.02';
-
-Commit the change:
-
-    svn commit lib/IronMan/Web.pm -m "Incrementing version"
-
-Copy trunk to the release:
-
-    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/IronMan-Web-0.02 \
-           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
-        -m "Releasing IronMan-Web-0.02 to ironboy"
-
-=head2 Release to ironboy
-
-Delete the currently tagges ironman
-
-    svn del http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
-         -m "Removing ironboy for release of IronMan-Web-0.02"
-    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/IronMan-Web-0.02 \
-           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
-        -m "Releasing IronMan-Web-0.02 to ironboy"
-
-=head2 Ironboy to ironman
-
-Delete the currently tagges ironman
-
-    svn del http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironman \
-         -m "Removing ironman for release of ironboy"
-    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy
-           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironman \
-        -m "Releasing ironboy to ironman"
-
-=cut

Copied: ironman/IronMan-Web/tags/ironboy/development-cycle.pod (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/development-cycle.pod)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/development-cycle.pod	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/development-cycle.pod	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,112 @@
+=head1 IronMan::Web
+
+This module forms part of the Enlightened Perl Organisation IronMan project.
+
+For more details, see the overview document at:
+
+    http://dev.catalyst.perl.org/repos/bast/ironman/overview.pod
+ 
+The latest version of this document can be found at:
+
+    http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/development-cycle.pod
+
+The repository is layed out as follows:
+
+    branches    - current development branches
+    tags        - current releases including live and dev sites
+    trunk       - current cutting edge waiting for release tagging
+
+=head1 Trunk and branches.
+
+Trunk contains the latest cutting edge code.  It's recommended that you don't
+work directly in trunk, but create yourself a branch.
+
+=head2 Branches.
+
+Create your own branch for 'very cool new feature' as follows:
+
+    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/ \
+           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/branches/very_cool_new_feature \
+        -m "Creating branch to work on my very cool new feature"
+
+Work on files in your branch, then once you're done you can either poke someone
+on the irc channel or you can merge it back into trunk yourself (see below).
+
+=head2 The '-Debug' option
+
+You may wish to enable the Catalyst debugging module within your branch.
+
+    diff -Naur branches/ironboy/lib/IronMan/Web.pm branches/dev/lib/IronMan/Web.pm
+    --- branches/ironboy/lib/IronMan/Web.pm 2010-07-10 10:37:30.825413356 +0100
+    +++ branches/dev/lib/IronMan/Web.pm     2010-07-10 10:37:31.174421647 +0100
+    @@ -14,7 +14,7 @@
+     # Static::Simple: will serve static files from the application's root 
+     #                 directory
+     
+    -use Catalyst qw/ConfigLoader Static::Simple StackTrace/;
+    +use Catalyst qw/-Debug ConfigLoader Static::Simple StackTrace/;
+     
+     our $VERSION = '0.01';
+
+
+=head1 Merging bug fixes and branches back into trunk.
+
+In order to maintain a nice history and clean revisions for rollback and
+additions, we'll create ourselves a new tagged version and then copy that
+to ironboy for testing.  Once testing is completed, we'll delete the
+ironboy tag and copy ironman to it.
+
+=head2 Merging into trunk
+
+Merging a branch back into trunk:
+
+    svn co http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/trunk/
+    cd trunk
+    svn merge --reintegrate http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/branches/very_cool_new_feature
+    svn commit -m "Merging very cool new feature branch back into trunk"
+
+=head2 Comparing branches for cherry picking
+
+
+Need to add docs here...
+
+
+=head1 Release process
+
+=head2 Trunk to release
+
+Increment the version number within lib/IronMan/Web.pm:
+
+    our $VERSION = '0.02';
+
+Commit the change:
+
+    svn commit lib/IronMan/Web.pm -m "Incrementing version"
+
+Copy trunk to the release:
+
+    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/IronMan-Web-0.02 \
+           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
+        -m "Releasing IronMan-Web-0.02 to ironboy"
+
+=head2 Release to ironboy
+
+Delete the currently tagges ironman
+
+    svn del http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
+         -m "Removing ironboy for release of IronMan-Web-0.02"
+    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/IronMan-Web-0.02 \
+           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy \
+        -m "Releasing IronMan-Web-0.02 to ironboy"
+
+=head2 Ironboy to ironman
+
+Delete the currently tagges ironman
+
+    svn del http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironman \
+         -m "Removing ironman for release of ironboy"
+    svn cp http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironboy
+           http://dev.catalyst.perl.org/repos/bast/ironman/IronMan-Web/tags/ironman \
+        -m "Releasing ironboy to ironman"
+
+=cut

Deleted: ironman/IronMan-Web/tags/ironboy/ironman_web.conf
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web.conf	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,19 +0,0 @@
-name   IronMan::Web
-frontpage_entries   20
-<branding>
-    page_title   "Planet Perl Iron Man"
-    banner "<h1 class='title'>enlightened perl organisation</h1><p class='dict'><strong>enlightened</strong> |en'litnd|: <em>adjective</em>:<br />having or showing a rational, modern, and well-informed outlook</p>"
-    page_header "Planet Perl Iron Man"
-    page_footer "Planet Perl Iron Man"
-</branding>
-default_view   TT
-<View::Email>
-  stash_key email
-  <default>
-    content_type text/plain
-    charset utf-8
-  </default>
-  <sender>
-    mailer Sendmail
-  </sender>
-</View::Email>

Copied: ironman/IronMan-Web/tags/ironboy/ironman_web.conf (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web.conf)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/ironman_web.conf	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,19 @@
+name   IronMan::Web
+frontpage_entries   20
+<branding>
+    page_title   "Planet Perl Iron Man"
+    banner "<h1 class='title'>enlightened perl organisation</h1><p class='dict'><strong>enlightened</strong> |en'litnd|: <em>adjective</em>:<br />having or showing a rational, modern, and well-informed outlook</p>"
+    page_header "Planet Perl Iron Man"
+    page_footer "Planet Perl Iron Man"
+</branding>
+default_view   TT
+<View::Email>
+  stash_key email
+  <default>
+    content_type text/plain
+    charset utf-8
+  </default>
+  <sender>
+    mailer Sendmail
+  </sender>
+</View::Email>

Deleted: ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_ironboy.conf	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,10 +0,0 @@
-<recaptcha>
-## share ironman "global" key
-  priv_key 6LdtfQwAAAAAAHPUBd4M0YquNYsAqjARPPO1jEXn
-  pub_key  6LdtfQwAAAAAANfQgaj4u9dACa8-mr6J18HCXWhf
-</recaptcha>
-<Model::FeedDB>
-   <connect_info>
-       dsn  dbi:SQLite:/var/www/ironboy.enlightenedperl.org/ironman/subscriptions.db
-   </connect_info>
-</Model::FeedDB>

Copied: ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_ironboy.conf)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_ironboy.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,10 @@
+<recaptcha>
+## share ironman "global" key
+  priv_key 6LdtfQwAAAAAAHPUBd4M0YquNYsAqjARPPO1jEXn
+  pub_key  6LdtfQwAAAAAANfQgaj4u9dACa8-mr6J18HCXWhf
+</recaptcha>
+<Model::FeedDB>
+   <connect_info>
+       dsn  dbi:SQLite:/var/www/ironboy.enlightenedperl.org/ironman/subscriptions.db
+   </connect_info>
+</Model::FeedDB>

Deleted: ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_ironman.conf	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,10 +0,0 @@
-<recaptcha>
-## ironman keys
-  priv_key 6Le7UQwAAAAAAFYPa1kYrjElL4IBEoACORjghDk5
-  pub_key  6Le7UQwAAAAAAMi84pCrncgnp0lYHEVZmB7h7yI6
-</recaptcha>
-<Model::FeedDB>
-  <connect_info>
-     dsn dbi:SQLite:/var/www/ironman.enlightenedperl.org/ironman/subscriptions.db
-  </connect_info>
-</Model::FeedDB>

Copied: ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_ironman.conf)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_ironman.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,10 @@
+<recaptcha>
+## ironman keys
+  priv_key 6Le7UQwAAAAAAFYPa1kYrjElL4IBEoACORjghDk5
+  pub_key  6Le7UQwAAAAAAMi84pCrncgnp0lYHEVZmB7h7yI6
+</recaptcha>
+<Model::FeedDB>
+  <connect_info>
+     dsn dbi:SQLite:/var/www/ironman.enlightenedperl.org/ironman/subscriptions.db
+  </connect_info>
+</Model::FeedDB>

Deleted: ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_localhost.conf	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,10 +0,0 @@
-<recaptcha>
-## localhost keys
-  priv_key 6LcsbAAAAAAAANQQGqwsnkrTd7QTGRBKQQZwBH-L
-  pub_key  6LcsbAAAAAAAAPDSlBaVGXjMo1kJHwUiHzO2TDze
-</recaptcha>
-<Model::FeedDB>
-  <connect_info>
-     dsn dbi:SQLite:/home/castaway/plagger/subscriptions.db
-  </connect_info>
-</Model::FeedDB>

Copied: ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/ironman_web_localhost.conf)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/ironman_web_localhost.conf	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,10 @@
+<recaptcha>
+## localhost keys
+  priv_key 6LcsbAAAAAAAANQQGqwsnkrTd7QTGRBKQQZwBH-L
+  pub_key  6LcsbAAAAAAAAPDSlBaVGXjMo1kJHwUiHzO2TDze
+</recaptcha>
+<Model::FeedDB>
+  <connect_info>
+     dsn dbi:SQLite:/home/castaway/plagger/subscriptions.db
+  </connect_info>
+</Model::FeedDB>

Deleted: ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/lib/IronMan/Web/Controller/Root.pm	2011-07-05 09:54:29 UTC (rev 9884)
+++ ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,275 +0,0 @@
-package IronMan::Web::Controller::Root;
-use strict;
-use warnings;
-use Data::UUID;
-use IronMan::Feeds;
-use Email::Valid;
-use DateTime;
-use XML::OPML;
-use Try::Tiny;
-use base 'Catalyst::Controller::reCAPTCHA';
-
-#
-# Sets the actions in this controller to be registered with no prefix
-# so they function identically to actions created in MyApp.pm
-#
-__PACKAGE__->config->{namespace} = '';
-
-=head1 NAME
-
-IronMan::Web::Controller::Root - Root Controller for IronMan::Web
-
-=head1 DESCRIPTION
-
-[enter your description here]
-
-=head1 METHODS
-
-=cut
-
-=head2 auto
-
-=cut
-
-sub auto : Private {
-  my ( $self, $c ) = @_;
-
-  $c->stash->{'feeds'} =
-    $c->model('FeedDB::Feed')->search( { 'link' => \'IS NOT NULL' } );
-  $c->stash->{'branding'} = $c->config()->{'branding'};
-}
-
-=head2 index
-
-=cut
-
-sub index : Path : Args(0) {
-  my ( $self, $c ) = @_;
-
-  my $posts = $c->model('FeedDB::Post')->search(
-    {},
-    {
-      'order_by' => \'posted_on DESC',
-      'rows'     => $c->config->{'frontpage_entries'} + 1,
-    }
-  );
-
-  $c->stash( 'posts' => $posts );
-
-  my $next_post = ( $posts->all )[-1];
-
-  my $next_post_date = $next_post->posted_on;
-  my $next_post_url  = $c->uri_for_action(
-    'archive/day',          $next_post_date->year,
-    $next_post_date->month, $next_post_date->day
-    )
-    . '#'
-    . $next_post->post_id;
-  $c->stash( 'older_url' => $next_post_url );
-}
-
-=head2 new_feed
-
-=cut
-
-sub new_feed : Local {
-  my ( $self, $c ) = @_;
-
-  my $url        = $c->req->param('url');
-  my $email      = $c->req->param('email');
-  my $email_conf = $c->req->param('email_2');
-  my $title      = $c->req->param('title');
-
-  $c->stash( params => $c->req->params );
-  $c->forward('captcha_get');
-
-  return 1 if ( !%{ $c->req->params } );
-
-  my $errors = [];
-  my $feed =
-    IronMan::Feeds::verify_feed_data( $title, $url, $email, $email_conf,
-    $errors );
-  if ( !$feed || @$errors ) {
-    $c->log->_dump($errors);
-    $c->stash( errors => $errors );
-    return 1;
-  }
-  if ( !$c->forward('captcha_check') ) {
-    $c->log->_dump( $c->stash->{recaptcha_error} );
-    $c->stash( errors => ['reCAPTCHA failed'] );
-    return 1;
-  }
-
-  $c->log->debug("input ok");
-
-  ## verify_feed_data attempts to find the first feed in the given page, if it is not a feed
-  $url = $feed->{feed};
-  $c->stash( feed_url => $url );
-
-  my ( $res, $fdb ) = $c->model('FeedDB::Feed')->add_new_blog(
-    title => $title,
-    url   => $url,
-    email => $email
-  );
-
-  if ( !$res ) {
-    $c->stash( existed => 1 );
-    $c->log->debug( "$url already exists, id: " . $fdb->id );
-    return 1;
-  }
-
-  $c->stash( inserted => $fdb->id );
-}
-
-#Display OPML showing the feeds.
-sub opml : Local Args(0) {
-  my ( $self, $c ) = @_;
-
-  my $opml = new XML::OPML( version => "1.1" );
-
-  $opml->head(
-    title       => 'all.things.per.ly',
-    dateCreated => DateTime->now(),
-  );
-
-  $c->res->content_type('application/xml');
-
-  foreach my $feed ( $c->model('FeedDB::Feed')->all ) {
-    $opml->add_outline(
-      'title'  => $feed->title,
-      'xmlUrl' => $feed->url,
-    );
-  }
-
-  $c->res->body( $opml->as_string );
-}
-
-=head2 update_feed
-
-Update a feed give a user's unique key
-
-=cut
-
-sub update_feed : Local Args(0) {
-  my ( $self, $c ) = @_;
-  if ( $c->req->param ) {
-    if ( $c->req->param('url')
-      && $c->req->param('email')
-      && $c->req->param('id') )
-    {
-
-      my $feed = $c->model('FeedDB::Feed')->find(
-        {
-          id    => $c->req->param('id'),
-          email => $c->req->param('email')
-        }
-      );
-
-      if ( defined $feed ) {
-
-        $feed->update( { url => $c->req->param('url') } )
-          or die "Error: $!";
-        $c->stash( updated => 1 );
-
-      } else {
-
-        $c->stash( error => "No such user" );
-
-      }
-
-    } else {
-      $c->stash( error => "All fields required." );
-    }
-  }
-}
-
-=head2 retrieve_key 
-
-Retrieve a user's unique key by email
-
-=cut
-
-sub retrieve_key : Local Args(0) {
-  my ( $self, $c ) = @_;
-  my $email = $c->req->param('email');
-  if ( $c->req->param ) {
-    if ($email) {
-      my $feed;
-      ## don't notify whether email address was found,
-      ## brute force could theoretically give a list of valid emails
-      ## contained here.
-      try {
-        $feed = $c->model('FeedDB::Feed')->find( { owner => $email } );
-        $c->log->info( 'found key: ' . $feed->id );
-        $c->stash(
-          email => {
-            to      => $email,
-            from    => 'me at dhoss.net',
-            subject => 'Your IronMan Blog Key',
-            body    => qq{
-            Hello } . $feed->owner . qq{,
-            You or someone else has requested your IronMan Blog key.
-            Here it is: } . $feed->id . qq{
-            Regards,
-            The IronMan Blogging Tech Monkies
-          },
-          },
-        );
-
-        $c->forward( $c->view('Email') );
-
-        if ( scalar( @{ $c->error } ) ) {
-
-          $c->stash( error => $c->error );
-
-        }
-
-      }
-      finally {
-        if (@_) {
-          $c->log->error( "Original error: @_" );
-          $c->log->error( 'email ' . $email . ' not found' );
-        }
-        $c->stash(
-          sent => 1,
-          to   => $email
-        );
-
-      };
-
-    } else {
-
-      $c->stash( error => "No email specified" );
-
-    }
-  }
-}
-
-=head2 end
-
-Attempt to render a view, if needed.
-
-=cut 
-
-sub end : ActionClass('RenderView') {
-  my ( $self, $c ) = @_;
-
-  $c->stash( current_view => 'RSS' )
-    if ( ( $c->req->param('feed') && $c->req->param('feed') eq 'rss' )
-    || ( $c->req->param('feed') && $c->req->param('feed') eq 'RSS' )
-    || ( $c->req->param('feed') && $c->req->param('feed') eq 'atom' ) );
-
-}
-
-=head1 AUTHOR
-
-Catalyst developer
-
-=head1 LICENSE
-
-This library is free software, you can redistribute it and/or modify
-it under the same terms as Perl itself.
-
-=cut
-
-1;

Copied: ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm (from rev 9885, ironman/IronMan-Web/tags/IronMan-Web-0.02/lib/IronMan/Web/Controller/Root.pm)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/lib/IronMan/Web/Controller/Root.pm	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,255 @@
+package IronMan::Web::Controller::Root;
+
+use strict;
+use warnings;
+use Data::UUID;
+use IronMan::Feeds;
+use Email::Valid;
+use DateTime;
+use XML::OPML;
+use Try::Tiny;
+use base 'Catalyst::Controller::reCAPTCHA';
+
+#
+# Sets the actions in this controller to be registered with no prefix
+# so they function identically to actions created in MyApp.pm
+#
+__PACKAGE__->config->{namespace} = '';
+
+=head1 NAME
+
+IronMan::Web::Controller::Root - Root Controller for IronMan::Web
+
+=head1 DESCRIPTION
+
+[enter your description here]
+
+=head1 METHODS
+
+=cut
+
+=head2 auto
+
+=cut
+
+sub auto : Private {
+    my ( $self, $c ) = @_;
+
+    $c->stash->{'feeds'} = $c->model('FeedDB::Feed')->search({ 'link' => \'IS NOT NULL'});
+    $c->stash->{'branding'} = $c->config()->{'branding'};
+}
+
+=head2 index
+
+=cut
+
+sub index :Path :Args(0) {
+    my ( $self, $c ) = @_;
+
+    my $posts = $c->model('FeedDB::Post')->search({},{
+        'order_by' => \'posted_on DESC',
+        'rows' => $c->config->{'frontpage_entries'} + 1,
+    });
+
+    $c->stash( 'posts' => $posts );
+
+    my $next_post = ($posts->all)[-1];
+
+    my $next_post_date = $next_post->posted_on;
+    my $next_post_url = $c->uri_for_action('archive/day', $next_post_date->year, $next_post_date->month, $next_post_date->day ). '#' . $next_post->post_id;
+    $c->stash( 'older_url' => $next_post_url );
+}
+
+=head2 new_feed
+
+=cut
+
+sub new_feed : Local {
+    my ($self, $c) = @_;
+
+    my $url = $c->req->param('url');
+    my $email = $c->req->param('email');
+    my $email_conf = $c->req->param('email_2');
+    my $title = $c->req->param('title');
+
+    $c->stash(params => $c->req->params);
+    $c->forward('captcha_get');
+
+    return 1 if(!%{ $c->req->params });
+
+    my $errors = [];
+    my $feed = IronMan::Feeds::verify_feed_data($title, $url, $email, $email_conf, $errors);
+    if(!$feed || @$errors) {
+        $c->log->_dump($errors);
+        $c->stash( errors => $errors);
+        return 1;
+    }
+    if(!$c->forward('captcha_check')) {
+        $c->log->_dump($c->stash->{recaptcha_error});
+        $c->stash( errors => ['reCAPTCHA failed']);
+        return 1;
+    }
+
+    $c->log->debug("input ok");
+
+    ## verify_feed_data attempts to find the first feed in the given page, if it is not a feed
+    $url = $feed->{feed};
+    $c->stash(feed_url => $url);
+
+    my ($res, $fdb) = $c->model('FeedDB::Feed')->add_new_blog(title => $title,
+                                                              url => $url,
+                                                              email => $email);
+
+    if(!$res) {
+        $c->stash(existed => 1);
+        $c->log->debug("$url already exists, id: " . $fdb->id);
+        return 1;
+    }
+
+    $c->stash(inserted => $fdb->id);
+}
+
+#Display OPML showing the feeds.
+sub opml : Local Args(0) {
+    my ( $self, $c ) = @_;
+
+    my $opml = new XML::OPML(version => "1.1");
+
+    $opml->head(
+        title => 'all.things.per.ly',
+        dateCreated => DateTime->now(),
+    ); 
+
+    $c->res->content_type('application/xml');
+
+    foreach my $feed ($c->model('FeedDB::Feed')->all) {
+        $opml->add_outline( 
+            'title'     => $feed->title,
+            'xmlUrl'    => $feed->url,
+        );
+    }
+
+    $c->res->body($opml->as_string);
+}
+
+=head2 update_feed
+
+Update a feed give a user's unique key
+
+=cut
+
+sub update_feed :Local Args(0) {
+    my ( $self, $c ) = @_;
+    if ( $c->req->param ) {
+        if ( $c->req->param('url') &&
+             $c->req->param('email') && 
+             $c->req->param('id') ) {
+
+            my $feed = $c->model('FeedDB::Feed')->find({
+                'id'    => $c->req->param('id'),
+                'email' => $c->req->param('email')});
+
+            if ( defined $feed ) {
+                $feed->update( { url => $c->req->param('url') } ) or die "Error: $!";
+                $c->stash( updated => 1 );
+            } 
+
+            else {
+                $c->stash( error => "No such user" );
+            }
+        }
+
+        else {
+            $c->stash( error => "All fields required." );
+        }
+    }
+}
+
+=head2 retrieve_key 
+
+Retrieve a user's unique key by email
+
+=cut
+
+sub retrieve_key : Local Args(0) {
+    my ( $self, $c ) = @_;
+    my $email = $c->req->param('email');
+
+    if ( $c->req->param ) {
+        if ($email) {
+            my $feed;
+
+            ## don't notify whether email address was found,
+            ## brute force could theoretically give a list of valid emails
+            ## contained here.
+
+            try {
+                $feed = $c->model('FeedDB::Feed')->find( { owner => $email } );
+                $c->log->info( 'found key: ' . $feed->id );
+                $c->stash(
+                    email => {
+                    to      => $email,
+                    from    => 'me at dhoss.net',
+                    subject => 'Your IronMan Blog Key',
+                    body    => qq{ Hello } . $feed->owner . qq{,
+                                    You or someone else has requested your IronMan Blog key.
+                                    Here it is: } . $feed->id . qq{
+                                    Regards,
+                                    The IronMan Blogging Tech Monkies
+                        },
+                    },
+                );
+
+                $c->forward( $c->view('Email') );
+
+                if ( scalar( @{ $c->error } ) ) {
+                    $c->stash( error => $c->error );
+                }
+            } # End of try block
+
+            finally {
+                if (@_) {
+                    $c->log->error( "Original error: @_" );
+                    $c->log->error( 'email ' . $email . ' not found' );
+            }
+
+            $c->stash( sent => 1,
+                       to   => $email
+            );
+            }; # End of finally block
+        } # End of if($email)
+
+        else {
+            $c->stash( error => "No email specified" );
+        }
+    }
+}
+
+=head2 end
+
+Attempt to render a view, if needed.
+
+=cut 
+
+sub end : ActionClass('RenderView') {
+    my ( $self, $c ) = @_;
+
+    $c->stash(current_view => 'RSS') if (
+        ($c->req->param('feed') && $c->req->param('feed') eq 'rss') || 
+        ($c->req->param('feed') && $c->req->param('feed') eq 'RSS') || 
+        ($c->req->param('feed') && $c->req->param('feed') eq 'atom')
+    );
+}
+
+=head1 AUTHOR
+
+Catalyst developer
+
+=head1 LICENSE
+
+This library is free software, you can redistribute it and/or modify
+it under the same terms as Perl itself.
+
+=cut
+
+1;

Deleted: ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/root/inc/ironman_header.tt	2011-07-05 09:54:29 UTC (rev 9884)
+++ ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,14 +0,0 @@
-      <div class='header'>
-       <p>
-        <a href="/new_feed"><img src="http://enlightenedperl.org/images/ironsignup.png" alt="signup banner" /></a><br />
-        <a href="/new_feed">Join the program</a>&nbsp;|&nbsp;
-        <a href="http://www.enlightenedperl.org/ironman.html">Learn about the program</a>&nbsp;|&nbsp;
-        <a href="/update_feed">update your feed URL (current users)</a>&nbsp;|&nbsp;
-        <a href="mailto:ironman at shadowcat.co.uk">Report a problem</a>
-      </p>
-      <p>
-       Only showing posts tagged <span style="color: #2c5aa0; font-weight: bold;">"perl"</span>, <span style="color: #2c5aa0; font-weight: bold;">"cpan"</span> 
-       or <span style="color: #2c5aa0; font-weight: bold;">"ironman"</span> (or containing those words).
-      </p>
-[% INCLUDE 'inc/next_prev.tt' %]
-      </div>

Copied: ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt (from rev 9885, ironman/IronMan-Web/tags/IronMan-Web-0.02/root/inc/ironman_header.tt)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/root/inc/ironman_header.tt	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,14 @@
+      <div class='header'>
+       <p>
+        <a href="/new_feed"><img src="http://enlightenedperl.org/images/ironsignup.png" alt="signup banner" /></a><br />
+        <a href="/new_feed">Join</a>&nbsp;|&nbsp;
+        <a href="http://www.enlightenedperl.org/ironman.html">About</a>&nbsp;|&nbsp;
+        <a href="/update_feed">Update your blog feed</a>&nbsp;|&nbsp;
+        <a href="mailto:ironman at shadowcat.co.uk">Report a problem</a>
+      </p>
+      <p>
+       Only showing posts tagged <span style="color: #2c5aa0; font-weight: bold;">"perl"</span>, <span style="color: #2c5aa0; font-weight: bold;">"cpan"</span> 
+       or <span style="color: #2c5aa0; font-weight: bold;">"ironman"</span> (or containing those words).
+      </p>
+[% INCLUDE 'inc/next_prev.tt' %]
+      </div>

Deleted: ironman/IronMan-Web/tags/ironboy/root/new_feed.tt
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/root/new_feed.tt	2011-07-05 09:54:29 UTC (rev 9884)
+++ ironman/IronMan-Web/tags/ironboy/root/new_feed.tt	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,23 +0,0 @@
-    <div id='main'>
-     [% IF existed %]
-       <p class="error">
-        [% params.url %] is already signed up.
-       </p>
-     [% END %]
-     [% IF inserted %]
-       <p>
-       [% feed_url %] is now signed up to <a href="ironman.enlightenedperl.org">Ironman</a>. Please wait an hour for the first data fetch.
-       </p>
-     [% END %]
-     [% FOREACH error = errors %]
-       <p class="error" style="color:red" >[% error %]</p>
-     [% END %]
-     <hr/>
-     <form method="post" action="[% c.uri_for('/new_feed') %]">
-       <label>Blog feed URL (atom preferred)<input type="text" name="url" value="[% params.url %]"></label><br>
-       <label>Your Name ("Firstname Lastname (nick)" prefered)<input type="text" name="title" value="[% params.title %]"></label><br>
-       <label>Email <input type="text" name="email" value="[% params.email %]"></label><br>
-       <label>Email (confirmation)<input type="text" name="email_2"></label><br>
-       [% recaptcha %]
-       <input type="submit" value="Sign up">
-     </form>

Copied: ironman/IronMan-Web/tags/ironboy/root/new_feed.tt (from rev 9889, ironman/IronMan-Web/tags/IronMan-Web-0.02/root/new_feed.tt)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/root/new_feed.tt	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/root/new_feed.tt	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,22 @@
+     [% IF existed %]
+       <p class="error">
+        [% params.url %] is already signed up.
+       </p>
+     [% END %]
+     [% IF inserted %]
+       <p>
+       [% feed_url %] is now signed up to <a href="ironman.enlightenedperl.org">Ironman</a>. Please wait an hour for the first data fetch.
+       </p>
+     [% END %]
+     [% FOREACH error = errors %]
+       <p class="error" style="color:red" >[% error %]</p>
+     [% END %]
+     <hr/>
+     <form method="post" action="[% c.uri_for('/new_feed') %]">
+       <label>Blog feed URL (atom preferred)<input type="text" name="url" value="[% params.url %]"></label><br>
+       <label>Your Name ("Firstname Lastname (nick)" prefered)<input type="text" name="title" value="[% params.title %]"></label><br>
+       <label>Email <input type="text" name="email" value="[% params.email %]"></label><br>
+       <label>Email (confirmation)<input type="text" name="email_2"></label><br>
+       [% recaptcha %]
+       <input type="submit" value="Sign up">
+     </form>

Deleted: ironman/IronMan-Web/tags/ironboy/todo.pod
===================================================================
--- ironman/IronMan-Web/tags/IronMan-Web-0.02/todo.pod	2011-07-05 10:21:05 UTC (rev 9889)
+++ ironman/IronMan-Web/tags/ironboy/todo.pod	2011-07-05 10:21:19 UTC (rev 9891)
@@ -1,216 +0,0 @@
-=head1 IronMan-Web release issues.
-
-Remaining issues for live deployment on 14th of April 2010.
-
-=head2 Page banner. - DONE - IDN
-
-The banner as follows:
-
-    Are you flesh? Or are you Iron?
-    Take the challenge
-    http://ironman.enlightenedperl.org/signup/new_feed
-
-Missing from the top of the page
-
-=head2 Paging.
-
-The detail between the banner detailed above and the very first feed post:
-
-    Join the program |  Learn about the program |  Report a problem
-
-    Only showing posts tagged "perl", "cpan" or "ironman" (or containing those words).
-    Last updated: 21:25:27 13-Apr-2010 First Previous 1 2 3 4 5 Next Last
-
-The above is missing at the top of the page, though the Older and Newer posts
-links are shown at the bottom of the page.
-
-=head2 Captcha on signup form.
-
-Castaway has added a recaptcha to the signup form on the existing
-site.  This needs back porting to the dev site.
-
-=head2 Branding.
-
-These are minor issues that are inconsistent with the existing UI.
-Whilst we need to fix these up, we also need provision to have the
-all.things.per.ly branding restored in the future.  Please bear
-this in mind when making the changes such that this can be achieved
-simply.
-
-Page title should be    "Planet Perl Iron Man"
-
-The epo banner at the top should read:
-
-    enlightened perl organisation
-    enlightened |en'litnd|: adjective:
-    having or showing a rational, modern, and well-informed outlook
-
-Header in the yellow bar at the top of the page should similarly be:
-
-    Planet Perl Iron Man
-
-Footer should be:
-
-    Perl Iron Man Planet
-
-or:
-
-    Planet Perl Iron Man
-
-The second would be more consistent, though the former is the existing text.
-
-=head2 Images.
-
-For some reason images are being removed from posts.  No idea why this might be
-but it's a degredation to existing functionality if we can't figure it out.
-
-=head2 Article headers.
-
-Tags and such are missing from the article headers.
-
-I'm sure this has been fixed in the data move once, but I don't recall how :(
-
-=head1 IronMan-Web feature requests.
-
-=head2 OPML file link.
-
-The existing site shows a link to download the OPML file.
-
-We need something here to download a similar SQLite file with the email addresses removed.
-
-=head2 Spam handling.
-
-The existing site has many spam handling issues.  There's lots of crap in the
-database.
-
-We need:
-
-=over
-
-=item * Tools to remove the existing crap from the database.
-
-=item * Support included into Perlanet-IronMan to try and limit the amount that then re-appears.
-
-A number of people have suggested that using Spam Assassin might be a starting
-point for scanning existing content and possibly new content.
-
-=item * We need a quick and simple way to remove spam feeds once they're identified.
-
-This should probably be by feed or post URL.
-
-From IRC discussion:
-
-    12:55 < mst> for the live one it's easy
-    12:55 < mst> just cp the sqlite db first
-    12:55 < castaway> on ironman I always do: login, cd plagger, cp subscriptions.db scubscriptions_pewdespam.db; sqlite3 subscriptions.db
-    12:56 < castaway> any mess, re copy and start again ;)
-    12:56 < castaway> backups++
-
-=item * A name should not appear on the index page until at least one post has been made.
-
-=back
-
-Note from robinsmidsrod in #epo-ironman:
-
-    12:20 < robinsmidsrod> idn: I just wanted to suggest to you to use the http_bl support from https://www.projecthoneypot.org to reduce spam entering the ironman database - I've 
-                           successfully used it on my blog - now I barely have spam entering my blog, and I don't have a captcha installed
-    12:21 < robinsmidsrod> I used the mod_httpbl apache implementation from https://www.projecthoneypot.org/httpbl_implementations.php
-    12:21 < idn> robinsmidsrod: Thanks for the suggestion, I'll stick it in the todo list for investigation.
-    12:23 < robinsmidsrod> sorry, my bad, I didn't use the mod_httpbl module - I actually used a b2evolution plugin - but projecthoneypot has a simple DNS-based API, so it shouldn't be to 
-                           hard to make a perl module to handle it
-    12:23 < robinsmidsrod> it works just as any other DNS-based blacklist
-    12:24 < robinsmidsrod> but the cool thing is that you can actually choose the threshold level for when you will block users
-
-Discussion followed:
-
-    12:24 < idn> That's an interesting idea that I hadn't thought of.
-    12:25 < idn> How would you look to implement it, at collection time or at signup time?
-    12:25 < robinsmidsrod> actually, if you run your own DNS server (and http server) I would suggest to support the project - it is an awesome project (I've been a member for a bit over a 
-                           year)
-    12:25 < robinsmidsrod> the new site is dynamic, right?
-    12:25 < idn> Yes
-    12:26 < idn> Hmm, I'd love to support the project, but my employer isn't very community minded or responsible in that respect.
-    12:26 < robinsmidsrod> so just look up REMOTE_IP, do a lookup against projecthoneypot BL (via DNS) and check the response - if it shows something that looks bad, just block or redirect 
-                           the user to a page that explains the problem, or enable captcha
-    12:26 < robinsmidsrod> idn: well, I support it with my private stuff
-    12:27 < robinsmidsrod> anyone can donate a spare MX pointer ;)
-    12:27 < robinsmidsrod> for some hostname you would probably never use
-    12:27 < idn> Ah, I'm with you.
-    12:28 < robinsmidsrod> mine is XXXmailserver.smidsrod.no which points to a honeypot
-    12:29 < idn> So all I need is some domains rather than any actual kit ;)  All of mine are on 123reg which neatly solves that problem.
-    12:30 < robinsmidsrod> me alone have helped catching approx. 20 harvesters and spammers in the last year
-    12:30 < robinsmidsrod> which is nice to know :)
-    12:31 < robinsmidsrod> you can support them by donating an MX entry in your DNS, setting up a "hidden" link on your own websites linking to a honeypot, or you can setup an actual 
-                           honeypot - I've only done the two first
-    12:32 < idn> That seems like a good idea, I'll put it forward to the boss too and see if we can't do something here at work.
-    12:32 < robinsmidsrod> what I do in my blog is that if the remote_ip looks suspicies I redirect the user to my honeypot page, which means that those IPs that are already somewhat fishy 
-                           will be redirected to something that will make them more fishy if they harvest it :)
-    12:33 < idn> I had been contemplating using spam assassin to scan content too
-    12:34 < robinsmidsrod> idn: this is my honeypot page: http://minmailserver.smidsrod.no/
-    12:34 < robinsmidsrod> if you look at the HTML content you'll see that there are some hidden links that harvesters will catch
-    12:35 < idn> There are a couple of problems to address, one is the existing bad feeds (most of which don't appear because they don't use the right keywords) and secondly preventing new 
-                 bad feeds.
-    12:36 < idn> The former is more of a problem due to the way in which the list of signed up users appears on the front page.
-    12:36 < robinsmidsrod> honeypot will only help with the new bad feeds
-    12:36 < idn> Possibly, the site hosting the spam might well be listed
-    12:37  * mst still thinks "only appears in the right bar if they've got at least one post" would be a start
-    12:37 < robinsmidsrod> if you have any IP-adresses linked with existing content you could of course manually run it throuh their BL and see what you find
-    12:37 < robinsmidsrod> mst: I agree with that one
-    12:37 < mst> actual spam posts will get nailed pretty quickly, I think
-    12:37 < idn> mst: Yes, that's what's in the todo I think
-    12:38 < robinsmidsrod> a "report spam" feature is available?
-    12:38 < castaway> robinsmidsrod: no but that'd be handy, care to write one?
-    12:38 < idn> I've thought about that and I've mixed opinions.  It seems like it could be open to abuse and or create work for someone to deal with.
-    12:38 < castaway> idn: we run a website, its gonna create work ;
-    12:38 < castaway> ;)
-    12:39 < idn> Yes.  But I like to try my best to minimise that ;)
-    12:39 < robinsmidsrod> castaway: I don't have any time available, 200% workload with work + full time studies, but I can explain how it could be created to mitigate moderator 
-                           intervention.
-    12:40 < idn> I was contemplating some kind of scoring system that would blacklist a feed once so many reports have been received from different requesting hosts, but it's still a 
-                 little open to abuse.  Coupled with administrative notification and oversight to re-enable if needed.
-    12:40 < robinsmidsrod> castaway: create a form (POST) with a "Report spam" button so that behaving robots won't access it. When enough people have clicked that button the article will 
-                           be blacklisted until a moderator actually clears it from blacklist
-    12:40 < castaway> idn: like, say, bayes? ;)
-    12:41 < robinsmidsrod> idn: exactly the same as I thought
-    12:41 < castaway> robinsmidsrod: makes sense.. (user moderation, yay)
-    12:41 < robinsmidsrod> that way either the author needs to complain to a moderator that his post doesn't show up
-    12:41 < idn> castaway: Erm, not quite, though my understanding of things statistical could be written on the back of a very small pin head....
-    12:41 < robinsmidsrod> because it got blacklisted
-    12:42 < idn> That wouldn't work in that each and every time the feed generated a spam, it would need to be black listed.  Though I like where you're going.
-    12:42 < robinsmidsrod> mst: do you have a suggestion on how to calculate how many reports should cause blacklisting to be triggered?
-    12:42 < idn> Blacklist the individual post with some kind of hysteresis, then blacklist the feed once enough posts have been blacklisted.
-    12:42 < mst> idn: er, what?
-    12:43 < mst> why would you have to regen?
-    12:43 < robinsmidsrod> idn: or enable reporting spam on both posts and feeds
-    12:43 < mst> oh, each time. yes.
-    12:43 < mst> idn: that's simple.
-    12:43 < mst> two blacklists and the feed goes.
-    12:43 < idn> There we go then :)
-    12:44 < robinsmidsrod> I'd suggest to put the feed in a quarantine so that it is easy for a moderator to un-blacklist feeds - and once a feed has been un-blacklisted you would increase 
-                           the blacklist threshold
-    12:45 < robinsmidsrod> sometimes member blogs get hijacked and start generating spam, but I guess that problem is much smaller than spammer blogs in general
-    12:46 < idn> I wouldn't remove the feed, they could just sign it up again.  I'd opt for blacklisting it and never collecting it again
-    12:47 < robinsmidsrod> if the feed has been in the blacklist for , let's say a month or two, it will be automatically purged from the database
-    12:47 < robinsmidsrod> what you said makes more sense yes :)
-    12:47 < robinsmidsrod> and if they try to signup again you redirect them to a projecthoneypot page :)
-    12:49 < robinsmidsrod> just make sure the report spam button is a form/post button, not a link, or else you'll gather report spam-reports en masse when misbehaving robots come in
-    12:51 < idn> Hmm, that's a good place to use the honeypot stuff too.
-    12:52 < robinsmidsrod> catch the spammers/harvesters by their own bad behaviour :)
-
-
-=head2 standards compliance
-
-=head3 Atom feed validation
-
-L<http://feedvalidator.org/check.cgi?url=http://ironman.enlightenedperl.org/atom.xml>
-
-I'm told this involves fixing L<XML::Feed>.
-
-=head2 Gravatar support?
-
-12:12 < poisonbit> gravatar support could be funny
-12:13 < idn> poisonbit: Cool.  I like.  I'll add it to the wishlist.
-
-http://en.gravatar.com/
-
-=cut

Copied: ironman/IronMan-Web/tags/ironboy/todo.pod (from rev 9884, ironman/IronMan-Web/tags/IronMan-Web-0.02/todo.pod)
===================================================================
--- ironman/IronMan-Web/tags/ironboy/todo.pod	                        (rev 0)
+++ ironman/IronMan-Web/tags/ironboy/todo.pod	2011-07-05 10:21:19 UTC (rev 9891)
@@ -0,0 +1,216 @@
+=head1 IronMan-Web release issues.
+
+Remaining issues for live deployment on 14th of April 2010.
+
+=head2 Page banner. - DONE - IDN
+
+The banner as follows:
+
+    Are you flesh? Or are you Iron?
+    Take the challenge
+    http://ironman.enlightenedperl.org/signup/new_feed
+
+Missing from the top of the page
+
+=head2 Paging.
+
+The detail between the banner detailed above and the very first feed post:
+
+    Join the program |  Learn about the program |  Report a problem
+
+    Only showing posts tagged "perl", "cpan" or "ironman" (or containing those words).
+    Last updated: 21:25:27 13-Apr-2010 First Previous 1 2 3 4 5 Next Last
+
+The above is missing at the top of the page, though the Older and Newer posts
+links are shown at the bottom of the page.
+
+=head2 Captcha on signup form.
+
+Castaway has added a recaptcha to the signup form on the existing
+site.  This needs back porting to the dev site.
+
+=head2 Branding.
+
+These are minor issues that are inconsistent with the existing UI.
+Whilst we need to fix these up, we also need provision to have the
+all.things.per.ly branding restored in the future.  Please bear
+this in mind when making the changes such that this can be achieved
+simply.
+
+Page title should be    "Planet Perl Iron Man"
+
+The epo banner at the top should read:
+
+    enlightened perl organisation
+    enlightened |en'litnd|: adjective:
+    having or showing a rational, modern, and well-informed outlook
+
+Header in the yellow bar at the top of the page should similarly be:
+
+    Planet Perl Iron Man
+
+Footer should be:
+
+    Perl Iron Man Planet
+
+or:
+
+    Planet Perl Iron Man
+
+The second would be more consistent, though the former is the existing text.
+
+=head2 Images.
+
+For some reason images are being removed from posts.  No idea why this might be
+but it's a degredation to existing functionality if we can't figure it out.
+
+=head2 Article headers.
+
+Tags and such are missing from the article headers.
+
+I'm sure this has been fixed in the data move once, but I don't recall how :(
+
+=head1 IronMan-Web feature requests.
+
+=head2 OPML file link.
+
+The existing site shows a link to download the OPML file.
+
+We need something here to download a similar SQLite file with the email addresses removed.
+
+=head2 Spam handling.
+
+The existing site has many spam handling issues.  There's lots of crap in the
+database.
+
+We need:
+
+=over
+
+=item * Tools to remove the existing crap from the database.
+
+=item * Support included into Perlanet-IronMan to try and limit the amount that then re-appears.
+
+A number of people have suggested that using Spam Assassin might be a starting
+point for scanning existing content and possibly new content.
+
+=item * We need a quick and simple way to remove spam feeds once they're identified.
+
+This should probably be by feed or post URL.
+
+From IRC discussion:
+
+    12:55 < mst> for the live one it's easy
+    12:55 < mst> just cp the sqlite db first
+    12:55 < castaway> on ironman I always do: login, cd plagger, cp subscriptions.db scubscriptions_pewdespam.db; sqlite3 subscriptions.db
+    12:56 < castaway> any mess, re copy and start again ;)
+    12:56 < castaway> backups++
+
+=item * A name should not appear on the index page until at least one post has been made.
+
+=back
+
+Note from robinsmidsrod in #epo-ironman:
+
+    12:20 < robinsmidsrod> idn: I just wanted to suggest to you to use the http_bl support from https://www.projecthoneypot.org to reduce spam entering the ironman database - I've 
+                           successfully used it on my blog - now I barely have spam entering my blog, and I don't have a captcha installed
+    12:21 < robinsmidsrod> I used the mod_httpbl apache implementation from https://www.projecthoneypot.org/httpbl_implementations.php
+    12:21 < idn> robinsmidsrod: Thanks for the suggestion, I'll stick it in the todo list for investigation.
+    12:23 < robinsmidsrod> sorry, my bad, I didn't use the mod_httpbl module - I actually used a b2evolution plugin - but projecthoneypot has a simple DNS-based API, so it shouldn't be to 
+                           hard to make a perl module to handle it
+    12:23 < robinsmidsrod> it works just as any other DNS-based blacklist
+    12:24 < robinsmidsrod> but the cool thing is that you can actually choose the threshold level for when you will block users
+
+Discussion followed:
+
+    12:24 < idn> That's an interesting idea that I hadn't thought of.
+    12:25 < idn> How would you look to implement it, at collection time or at signup time?
+    12:25 < robinsmidsrod> actually, if you run your own DNS server (and http server) I would suggest to support the project - it is an awesome project (I've been a member for a bit over a 
+                           year)
+    12:25 < robinsmidsrod> the new site is dynamic, right?
+    12:25 < idn> Yes
+    12:26 < idn> Hmm, I'd love to support the project, but my employer isn't very community minded or responsible in that respect.
+    12:26 < robinsmidsrod> so just look up REMOTE_IP, do a lookup against projecthoneypot BL (via DNS) and check the response - if it shows something that looks bad, just block or redirect 
+                           the user to a page that explains the problem, or enable captcha
+    12:26 < robinsmidsrod> idn: well, I support it with my private stuff
+    12:27 < robinsmidsrod> anyone can donate a spare MX pointer ;)
+    12:27 < robinsmidsrod> for some hostname you would probably never use
+    12:27 < idn> Ah, I'm with you.
+    12:28 < robinsmidsrod> mine is XXXmailserver.smidsrod.no which points to a honeypot
+    12:29 < idn> So all I need is some domains rather than any actual kit ;)  All of mine are on 123reg which neatly solves that problem.
+    12:30 < robinsmidsrod> me alone have helped catching approx. 20 harvesters and spammers in the last year
+    12:30 < robinsmidsrod> which is nice to know :)
+    12:31 < robinsmidsrod> you can support them by donating an MX entry in your DNS, setting up a "hidden" link on your own websites linking to a honeypot, or you can setup an actual 
+                           honeypot - I've only done the two first
+    12:32 < idn> That seems like a good idea, I'll put it forward to the boss too and see if we can't do something here at work.
+    12:32 < robinsmidsrod> what I do in my blog is that if the remote_ip looks suspicies I redirect the user to my honeypot page, which means that those IPs that are already somewhat fishy 
+                           will be redirected to something that will make them more fishy if they harvest it :)
+    12:33 < idn> I had been contemplating using spam assassin to scan content too
+    12:34 < robinsmidsrod> idn: this is my honeypot page: http://minmailserver.smidsrod.no/
+    12:34 < robinsmidsrod> if you look at the HTML content you'll see that there are some hidden links that harvesters will catch
+    12:35 < idn> There are a couple of problems to address, one is the existing bad feeds (most of which don't appear because they don't use the right keywords) and secondly preventing new 
+                 bad feeds.
+    12:36 < idn> The former is more of a problem due to the way in which the list of signed up users appears on the front page.
+    12:36 < robinsmidsrod> honeypot will only help with the new bad feeds
+    12:36 < idn> Possibly, the site hosting the spam might well be listed
+    12:37  * mst still thinks "only appears in the right bar if they've got at least one post" would be a start
+    12:37 < robinsmidsrod> if you have any IP-adresses linked with existing content you could of course manually run it throuh their BL and see what you find
+    12:37 < robinsmidsrod> mst: I agree with that one
+    12:37 < mst> actual spam posts will get nailed pretty quickly, I think
+    12:37 < idn> mst: Yes, that's what's in the todo I think
+    12:38 < robinsmidsrod> a "report spam" feature is available?
+    12:38 < castaway> robinsmidsrod: no but that'd be handy, care to write one?
+    12:38 < idn> I've thought about that and I've mixed opinions.  It seems like it could be open to abuse and or create work for someone to deal with.
+    12:38 < castaway> idn: we run a website, its gonna create work ;
+    12:38 < castaway> ;)
+    12:39 < idn> Yes.  But I like to try my best to minimise that ;)
+    12:39 < robinsmidsrod> castaway: I don't have any time available, 200% workload with work + full time studies, but I can explain how it could be created to mitigate moderator 
+                           intervention.
+    12:40 < idn> I was contemplating some kind of scoring system that would blacklist a feed once so many reports have been received from different requesting hosts, but it's still a 
+                 little open to abuse.  Coupled with administrative notification and oversight to re-enable if needed.
+    12:40 < robinsmidsrod> castaway: create a form (POST) with a "Report spam" button so that behaving robots won't access it. When enough people have clicked that button the article will 
+                           be blacklisted until a moderator actually clears it from blacklist
+    12:40 < castaway> idn: like, say, bayes? ;)
+    12:41 < robinsmidsrod> idn: exactly the same as I thought
+    12:41 < castaway> robinsmidsrod: makes sense.. (user moderation, yay)
+    12:41 < robinsmidsrod> that way either the author needs to complain to a moderator that his post doesn't show up
+    12:41 < idn> castaway: Erm, not quite, though my understanding of things statistical could be written on the back of a very small pin head....
+    12:41 < robinsmidsrod> because it got blacklisted
+    12:42 < idn> That wouldn't work in that each and every time the feed generated a spam, it would need to be black listed.  Though I like where you're going.
+    12:42 < robinsmidsrod> mst: do you have a suggestion on how to calculate how many reports should cause blacklisting to be triggered?
+    12:42 < idn> Blacklist the individual post with some kind of hysteresis, then blacklist the feed once enough posts have been blacklisted.
+    12:42 < mst> idn: er, what?
+    12:43 < mst> why would you have to regen?
+    12:43 < robinsmidsrod> idn: or enable reporting spam on both posts and feeds
+    12:43 < mst> oh, each time. yes.
+    12:43 < mst> idn: that's simple.
+    12:43 < mst> two blacklists and the feed goes.
+    12:43 < idn> There we go then :)
+    12:44 < robinsmidsrod> I'd suggest to put the feed in a quarantine so that it is easy for a moderator to un-blacklist feeds - and once a feed has been un-blacklisted you would increase 
+                           the blacklist threshold
+    12:45 < robinsmidsrod> sometimes member blogs get hijacked and start generating spam, but I guess that problem is much smaller than spammer blogs in general
+    12:46 < idn> I wouldn't remove the feed, they could just sign it up again.  I'd opt for blacklisting it and never collecting it again
+    12:47 < robinsmidsrod> if the feed has been in the blacklist for , let's say a month or two, it will be automatically purged from the database
+    12:47 < robinsmidsrod> what you said makes more sense yes :)
+    12:47 < robinsmidsrod> and if they try to signup again you redirect them to a projecthoneypot page :)
+    12:49 < robinsmidsrod> just make sure the report spam button is a form/post button, not a link, or else you'll gather report spam-reports en masse when misbehaving robots come in
+    12:51 < idn> Hmm, that's a good place to use the honeypot stuff too.
+    12:52 < robinsmidsrod> catch the spammers/harvesters by their own bad behaviour :)
+
+
+=head2 standards compliance
+
+=head3 Atom feed validation
+
+L<http://feedvalidator.org/check.cgi?url=http://ironman.enlightenedperl.org/atom.xml>
+
+I'm told this involves fixing L<XML::Feed>.
+
+=head2 Gravatar support?
+
+12:12 < poisonbit> gravatar support could be funny
+12:13 < idn> poisonbit: Cool.  I like.  I'll add it to the wishlist.
+
+http://en.gravatar.com/
+
+=cut




More information about the Bast-commits mailing list