changeset 3:e640eb6cefc3

Making DB stuff more generic, fixing missing mineral
author Dominic Cleal <dominic@computerkb.co.uk>
date Sat, 24 Jan 2009 17:18:17 +0000
parents 731da755d92d
children 4351c0bf33d4
files reproctool.cgi
diffstat 1 files changed, 20 insertions(+), 14 deletions(-) [+]
line wrap: on
line diff
--- a/reproctool.cgi	Sat Jan 24 16:47:05 2009 +0000
+++ b/reproctool.cgi	Sat Jan 24 17:18:17 2009 +0000
@@ -7,7 +7,6 @@
 use DBI;
 
 # Settings
-my $db_path = 'qr100-sqlite3-v1.db';
 my $img_http_path = '/itemimgs';
 
 my $cgi = new CGI;
@@ -29,7 +28,8 @@
 my $mega = $cgi->param('mega') || die('No mega price');
 my $morp = $cgi->param('morp') || die('No morp price');
 
-require 'dbparams.cgi';
+our @dbparams;
+require './dbparams.cgi';
 my $db = DBI->connect(@dbparams)
     or die("Database connection failure: $DBI::errstr");
 
@@ -45,17 +45,17 @@
 SELECT
 	types.typeID,
 	types.typeName,
-	attrs.valueInt [metaLevel],
+	attrs.valueInt, -- metaLevel
 	types.basePrice,
 	graphics.icon,
-	SUM(CASE WHEN m1.requiredTypeID = 34 THEN m1.quantity ELSE 0 END) [Tritanium],
-	SUM(CASE WHEN m1.requiredTypeID = 35 THEN m1.quantity ELSE 0 END) [Pyerite],
-	SUM(CASE WHEN m1.requiredTypeID = 36 THEN m1.quantity ELSE 0 END) [Mexallon],
-	SUM(CASE WHEN m1.requiredTypeID = 37 THEN m1.quantity ELSE 0 END) [Isogen],
-	SUM(CASE WHEN m1.requiredTypeID = 38 THEN m1.quantity ELSE 0 END) [Nocxium],
-	SUM(CASE WHEN m1.requiredTypeID = 39 THEN m1.quantity ELSE 0 END) [Zydrine],
-	SUM(CASE WHEN m1.requiredTypeID = 40 THEN m1.quantity ELSE 0 END) [Megacyte],
-	SUM(CASE WHEN m1.requiredTypeID = 11399 THEN m1.quantity ELSE 0 END) [Morphite]
+	SUM(CASE WHEN m1.requiredTypeID = 34 THEN m1.quantity ELSE 0 END), -- [Tritanium]
+	SUM(CASE WHEN m1.requiredTypeID = 35 THEN m1.quantity ELSE 0 END), -- [Pyerite]
+	SUM(CASE WHEN m1.requiredTypeID = 36 THEN m1.quantity ELSE 0 END), -- [Mexallon]
+	SUM(CASE WHEN m1.requiredTypeID = 37 THEN m1.quantity ELSE 0 END), -- [Isogen]
+	SUM(CASE WHEN m1.requiredTypeID = 38 THEN m1.quantity ELSE 0 END), -- [Nocxium]
+	SUM(CASE WHEN m1.requiredTypeID = 39 THEN m1.quantity ELSE 0 END), -- [Zydrine]
+	SUM(CASE WHEN m1.requiredTypeID = 40 THEN m1.quantity ELSE 0 END), -- [Megacyte]
+	SUM(CASE WHEN m1.requiredTypeID = 11399 THEN m1.quantity ELSE 0 END) -- [Morphite]
 FROM invTypes types
 INNER JOIN dgmTypeAttributes attrs ON types.typeID = attrs.typeID AND attrs.attributeID = 633
 INNER JOIN typeActivityMaterials m1 ON types.typeID = m1.typeID
@@ -73,19 +73,21 @@
 for my $sitem (split(/\s*,\s*/, $str_items))
 {
     my ($tid, $tname, $meta, $basePrice, $icon,
-        $ttrit, $tpyer, $tmexa, $tisog, $tnocx, $tzydr, $tmega);
+        $ttrit, $tpyer, $tmexa, $tisog, $tnocx, $tzydr, $tmega, $tmorp);
     
     $pre_reprocess->execute($sitem) or die("Can't lookup $sitem: $DBI::errstr");
     $pre_reprocess->bind_columns(undef, \$tid, \$tname, \$meta, \$basePrice,
-        \$icon, \$ttrit, \$tpyer, \$tmexa, \$tisog, \$tnocx, \$tzydr, \$tmega);
+                                 \$icon, \$ttrit, \$tpyer, \$tmexa, \$tisog,
+                                 \$tnocx, \$tzydr, \$tmega, \$tmorp);
     
     my $item = {};
     if ($pre_reprocess->fetch())
     {
         my $isk = ($trit * $ttrit) + ($pyer * $tpyer) + ($mexa * $tmexa) +
                   ($isog * $tisog) + ($nocx * $tnocx) + ($zydr * $tzydr) +
-                  ($mega * $tmega);
+                  ($mega * $tmega) + ($morp * $tmorp);
         
+        $meta = 0 unless defined $meta;
         $item = { id => $tid, name => $tname, meta => $meta, icon => $icon,
                   price => $basePrice, reprocess => $isk };
     }
@@ -101,6 +103,10 @@
         {
             border: 2px #FF0000 solid;
         }
+        .item
+        {
+            width: 64px;
+        }
     </style>
 </head>
 <body>