Index: trunk/ippTools/src/regtool.c
===================================================================
--- trunk/ippTools/src/regtool.c	(revision 15740)
+++ trunk/ippTools/src/regtool.c	(revision 15775)
@@ -589,5 +589,5 @@
         }
         if (exp_id) {
-            if (!psMetadataAddStr(where, PS_LIST_TAIL, "exp_id", 0, "==", exp_id)) {
+            if (!psMetadataAddStr(where, PS_LIST_TAIL, "T1.exp_id", 0, "==", exp_id)) {
                 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");
                 psFree(where);
@@ -597,9 +597,10 @@
         }
 
-        psString whereClaus = psDBGenerateWhereSQL(where, NULL);
+
+        psString whereClause = psDBGenerateWhereConditionSQL(where, NULL);
         psFree(where);
-        if (whereClaus) {
-            psStringAppend(&query, " %s", whereClaus);
-            psFree(whereClaus);
+        if (whereClause) {
+	    psStringAppend(&query, " AND %s", whereClause);
+	    psFree(whereClause);
         }
     }
@@ -1023,4 +1024,10 @@
     }
 
+    psString comment = psMetadataLookupStr(&status, config->args, "-comment");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -comment");
+        return false;
+    }
+
     psF32 airmass = psMetadataLookupF32(&status, config->args, "-airmass");
     if (!status) {
@@ -1095,53 +1102,53 @@
     }
 
-    psF32 M1_x = psMetadataLookupF32(&status, config->args, "-M1_x");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_x");
-        return false;
-    }
-    psF32 M1_y = psMetadataLookupF32(&status, config->args, "-M1_y");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_y");
-        return false;
-    }
-    psF32 M1_z = psMetadataLookupF32(&status, config->args, "-M1_z");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_z");
-        return false;
-    }
-    psF32 M1_tip = psMetadataLookupF32(&status, config->args, "-M1_tip");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_tip");
-        return false;
-    }
-    psF32 M1_tilt = psMetadataLookupF32(&status, config->args, "-M1_tilt");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_tilt");
-        return false;
-    }
-
-    psF32 M2_x = psMetadataLookupF32(&status, config->args, "-M2_x");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_x");
-        return false;
-    }
-    psF32 M2_y = psMetadataLookupF32(&status, config->args, "-M2_y");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_y");
-        return false;
-    }
-    psF32 M2_z = psMetadataLookupF32(&status, config->args, "-M2_z");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_z");
-        return false;
-    }
-    psF32 M2_tip = psMetadataLookupF32(&status, config->args, "-M2_tip");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_tip");
-        return false;
-    }
-    psF32 M2_tilt = psMetadataLookupF32(&status, config->args, "-M2_tilt");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_tilt");
+    psF32 m1_x = psMetadataLookupF32(&status, config->args, "-m1_x");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_x");
+        return false;
+    }
+    psF32 m1_y = psMetadataLookupF32(&status, config->args, "-m1_y");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_y");
+        return false;
+    }
+    psF32 m1_z = psMetadataLookupF32(&status, config->args, "-m1_z");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_z");
+        return false;
+    }
+    psF32 m1_tip = psMetadataLookupF32(&status, config->args, "-m1_tip");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_tip");
+        return false;
+    }
+    psF32 m1_tilt = psMetadataLookupF32(&status, config->args, "-m1_tilt");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_tilt");
+        return false;
+    }
+
+    psF32 m2_x = psMetadataLookupF32(&status, config->args, "-m2_x");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_x");
+        return false;
+    }
+    psF32 m2_y = psMetadataLookupF32(&status, config->args, "-m2_y");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_y");
+        return false;
+    }
+    psF32 m2_z = psMetadataLookupF32(&status, config->args, "-m2_z");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_z");
+        return false;
+    }
+    psF32 m2_tip = psMetadataLookupF32(&status, config->args, "-m2_tip");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_tip");
+        return false;
+    }
+    psF32 m2_tilt = psMetadataLookupF32(&status, config->args, "-m2_tilt");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_tilt");
         return false;
     }
@@ -1165,4 +1172,35 @@
     if (!status) {
         psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -env_wind_dir");
+        return false;
+    }
+
+    psF32 teltemp_m1 = psMetadataLookupF32(&status, config->args, "-teltemp_m1");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m1");
+        return false;
+    }
+    psF32 teltemp_m1cell = psMetadataLookupF32(&status, config->args, "-teltemp_m1cell");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m1cell");
+        return false;
+    }
+    psF32 teltemp_m2 = psMetadataLookupF32(&status, config->args, "-teltemp_m2");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m2");
+        return false;
+    }
+    psF32 teltemp_spider = psMetadataLookupF32(&status, config->args, "-teltemp_spider");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_spider");
+        return false;
+    }
+    psF32 teltemp_truss = psMetadataLookupF32(&status, config->args, "-teltemp_truss");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_truss");
+        return false;
+    }
+    psF32 teltemp_extra = psMetadataLookupF32(&status, config->args, "-teltemp_extra");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_extra");
         return false;
     }
@@ -1240,4 +1278,5 @@
         reduction ? reduction : exp->reduction,
         filter,
+	comment,
         airmass,
         ra,
@@ -1252,18 +1291,24 @@
         ccd_temp,
         posang,
-	M1_x,
-	M1_y,
-	M1_z,
-	M1_tip,
-	M1_tilt,
-	M2_x,
-	M2_y,
-	M2_z,
-	M2_tip,
-	M2_tilt,
+	m1_x,
+	m1_y,
+	m1_z,
+	m1_tip,
+	m1_tilt,
+	m2_x,
+	m2_y,
+	m2_z,
+	m2_tip,
+	m2_tilt,
 	env_temp,
 	env_humid,
 	env_wind,
 	env_dir,
+	teltemp_m1,
+	teltemp_m1cell,
+	teltemp_m2,
+	teltemp_spider,
+	teltemp_truss,
+	teltemp_extra,
 	pon_time,
         user_1,
@@ -1361,4 +1406,10 @@
     }
 
+    psString comment = psMetadataLookupStr(&status, config->args, "-comment");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -comment");
+        return false;
+    }
+
     psF32 airmass = psMetadataLookupF32(&status, config->args, "-airmass");
     if (!status) {
@@ -1433,53 +1484,53 @@
     }
 
-    psF32 M1_x = psMetadataLookupF32(&status, config->args, "-M1_x");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_x");
-        return false;
-    }
-    psF32 M1_y = psMetadataLookupF32(&status, config->args, "-M1_y");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_y");
-        return false;
-    }
-    psF32 M1_z = psMetadataLookupF32(&status, config->args, "-M1_z");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_z");
-        return false;
-    }
-    psF32 M1_tip = psMetadataLookupF32(&status, config->args, "-M1_tip");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_tip");
-        return false;
-    }
-    psF32 M1_tilt = psMetadataLookupF32(&status, config->args, "-M1_tilt");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M1_tilt");
-        return false;
-    }
-
-    psF32 M2_x = psMetadataLookupF32(&status, config->args, "-M2_x");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_x");
-        return false;
-    }
-    psF32 M2_y = psMetadataLookupF32(&status, config->args, "-M2_y");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_y");
-        return false;
-    }
-    psF32 M2_z = psMetadataLookupF32(&status, config->args, "-M2_z");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_z");
-        return false;
-    }
-    psF32 M2_tip = psMetadataLookupF32(&status, config->args, "-M2_tip");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_tip");
-        return false;
-    }
-    psF32 M2_tilt = psMetadataLookupF32(&status, config->args, "-M2_tilt");
-    if (!status) {
-        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -M2_tilt");
+    psF32 m1_x = psMetadataLookupF32(&status, config->args, "-m1_x");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_x");
+        return false;
+    }
+    psF32 m1_y = psMetadataLookupF32(&status, config->args, "-m1_y");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_y");
+        return false;
+    }
+    psF32 m1_z = psMetadataLookupF32(&status, config->args, "-m1_z");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_z");
+        return false;
+    }
+    psF32 m1_tip = psMetadataLookupF32(&status, config->args, "-m1_tip");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_tip");
+        return false;
+    }
+    psF32 m1_tilt = psMetadataLookupF32(&status, config->args, "-m1_tilt");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m1_tilt");
+        return false;
+    }
+
+    psF32 m2_x = psMetadataLookupF32(&status, config->args, "-m2_x");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_x");
+        return false;
+    }
+    psF32 m2_y = psMetadataLookupF32(&status, config->args, "-m2_y");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_y");
+        return false;
+    }
+    psF32 m2_z = psMetadataLookupF32(&status, config->args, "-m2_z");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_z");
+        return false;
+    }
+    psF32 m2_tip = psMetadataLookupF32(&status, config->args, "-m2_tip");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_tip");
+        return false;
+    }
+    psF32 m2_tilt = psMetadataLookupF32(&status, config->args, "-m2_tilt");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -m2_tilt");
         return false;
     }
@@ -1503,4 +1554,35 @@
     if (!status) {
         psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -env_wind_dir");
+        return false;
+    }
+
+    psF32 teltemp_m1 = psMetadataLookupF32(&status, config->args, "-teltemp_m1");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m1");
+        return false;
+    }
+    psF32 teltemp_m1cell = psMetadataLookupF32(&status, config->args, "-teltemp_m1cell");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m1cell");
+        return false;
+    }
+    psF32 teltemp_m2 = psMetadataLookupF32(&status, config->args, "-teltemp_m2");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_m2");
+        return false;
+    }
+    psF32 teltemp_spider = psMetadataLookupF32(&status, config->args, "-teltemp_spider");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_spider");
+        return false;
+    }
+    psF32 teltemp_truss = psMetadataLookupF32(&status, config->args, "-teltemp_truss");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_truss");
+        return false;
+    }
+    psF32 teltemp_extra = psMetadataLookupF32(&status, config->args, "-teltemp_extra");
+    if (!status) {
+        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -teltemp_extra");
         return false;
     }
@@ -1577,4 +1659,5 @@
         filelevel,
         filter,
+	comment,
         airmass,
         ra,
@@ -1589,18 +1672,24 @@
         ccd_temp,
         posang,
-	M1_x,
-	M1_y,
-	M1_z,
-	M1_tip,
-	M1_tilt,
-	M2_x,
-	M2_y,
-	M2_z,
-	M2_tip,
-	M2_tilt,
+	m1_x,
+	m1_y,
+	m1_z,
+	m1_tip,
+	m1_tilt,
+	m2_x,
+	m2_y,
+	m2_z,
+	m2_tip,
+	m2_tilt,
 	env_temp,
 	env_humid,
 	env_wind,
 	env_dir,
+	teltemp_m1,
+	teltemp_m1cell,
+	teltemp_m2,
+	teltemp_spider,
+	teltemp_truss,
+	teltemp_extra,
 	pon_time,
         user_1,
