source: trunk/htdocs/index.php

Last change on this file was 293, checked in by DavidSmith, 16 years ago

basic edits to get things running again.

File size: 26.0 KB
Line 
1<?php
2// index.php
3// Matthew Whiting Nov 2007
4// From the original by Albert Teoh
5//
6// The opening page for the ATNF Pulsar Data Archive
7// system. Used to search for observation archive
8// files.
9
10// BEGIN Javascript for expansion blocks
11// Thanks to:
12// http://assn9.blogspot.com/
13// Douglas Bowman
14// URL:      www.stopdesign.com
15// Used in: http://www.bloggerforum.com/modules/newbb/viewtopic.php?topic_id=8725&forum=6
16// Date:     26 Feb 2004
17
18
19
20session_start();
21
22
23
24require_once 'constants.php';
25require_once 'security.php';
26require_once 'PulsarArchiveDB.php';
27require_once 'date.php';
28require_once 'logger.php';
29
30include 'header.html';
31
32
33
34function OutputHeader()
35{
36  echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html>';
37  echo '<head>';
38  echo '<link rel="stylesheet" type="text/css" href="styles/opal.css" />';
39  echo '<link rel="stylesheet" type="text/css" href="styles/style.css" />';
40  echo '<link rel="stylesheet" type="text/css" href="styles/query.css" />';
41  echo '<link rel="stylesheet" type="text/css" href="styles/results.css" />';
42  echo '<link rel="stylesheet" type="text/css" href="styles/atnf.css" />';
43  echo '<meta http-equiv="Content-Type" content="text/html; charset=iso-8759-1" />';
44  echo '<meta name="DC.Creator" lang="en" content="personalName=Teoh,Albert" />';
45  echo '<meta name="ATNF.Maintainer" content="contactName=Webmaster,the" />';
46  echo '<meta name="DC.Title.alt" lang="en" content="" />';
47  echo '<meta name="DC.Subject" lang="en" content="pulsar" />';
48  echo '<meta name="DC.Description" lang="en" content="Searches the data archives at the ATNF" />';
49  echo '<meta name="DC.Date.created" scheme="ISO8601" content="2002-12-12" />';
50  echo '<meta name="ATNF.Site" content="Marsfield" />';
51  echo '<meta name="ATNF.AccessPermission" content="Public" />';
52  echo '<meta name="ATNF.MetaVersion" content="1.0" />';
53
54  echo '<script type="text/javascript" src="scripts/atnf-oo-utils.js"></script>';
55  echo '<script type="text/javascript" src="scripts/atnf-string-utils.js"></script>';
56  echo '<script type="text/javascript" src="scripts/atnf-dom-utils.js"></script>';
57  echo '<script type="text/javascript" src="scripts/atnf-validation.js"></script>';
58  echo '<script type="text/javascript" src="scripts/atoa-query.js"></script>';
59  echo '<script type="text/javascript" src="scripts/tooltips.js"></script>';
60  echo '<script type="text/javascript" src="scripts/pulsarvo.js"></script>';
61
62//    <script type="text/javascript" src="scripts/atnf-dom-utils.js"></script>
63//    <script type="text/javascript" src="scripts/atoa-query.js"></script>
64//    <script type="text/javascript" src="scripts/process.js"></script>
65
66  echo '</head>';
67  echo '<title>ATNF Pulsar Data Archive Home</title>';
68}
69
70
71
72function OutputLoginForm()
73{
74  global $_SERVER;
75 
76  echo '<body class="front_page">';
77
78  echo '<div class="bodycontents">';
79
80  echo '<h1>The ATNF Pulsar Data Archive</h1>';
81
82  echo '<p>The ATNF Pulsar Data Archive provides access to pulsar observations';
83  echo 'made with the Parkes radio Telescope. Data older than <b>';
84  echo '<?php echo PROPRIETRY_PERIOD_MONTH ?> months</b> is';
85  echo 'publicly available, and can be accessed by simply providing your email';
86  echo 'address. More recent data is proprietry, and can only be accessed by';
87  echo 'those who were involved in the proposal. We plan to do this via the';
88  echo '<a href="http://opal.atnf.csiro.au">OPAL system</a>, but this is';
89  echo 'currently not enabled. In the interim, those who have previously';
90  echo 'obtained a login for the Data Archive can use that option below';
91  echo '(making sure to check the "Data Archive login" button!). </p>';
92
93  echo '<p>A <a href="pulsar_archive_guide.html">Users Guide</a> to the archive is available.</p> ';
94
95  echo '<form action="' . $_SERVER['PHP_SELF'] . '" method="POST">';
96  echo '<table width="700" style="border: 0px;">';
97
98  echo '<tr>';
99  echo '<td><input type="radio" name="authenticateType" checked value="anon">Non-proprietry access<br> ';
100  echo '<table class="login" width="500" style="border: 0px;">';
101  echo '<tr>';
102  echo '<td class="form_field">Email: </td>';
103  echo '<td><input type="text" name="email"></td>';
104  echo '</tr>';
105  echo '</table>';
106  echo '<br>';
107  echo '</td>';
108  echo '</tr>';
109
110  echo '<tr>';
111
112  echo '<td><input type="radio" name="authenticateType" value="opal">Data Archive login<br>';
113  echo '<table class="login" width="500" style="border: 0px;">';
114  echo '<tr><td class="form_field">Username: </td><td><input type="text" name="opalEmail"></td></tr>';
115  echo '<tr><td class="form_field">Password: </td><td><input type="password" name="opalPassword"></td></tr>';
116  echo '</table>';
117  echo '<br>';
118  echo '</td>';
119  echo '</tr>';
120
121  echo '<tr>';
122  echo '<td><input type="submit" value="Login" name="action"><input type="reset" value="Reset"></td>';
123  echo '</tr>';
124  echo '</table>';
125
126  echo '</form>';
127}
128
129
130
131function OutputQueryFormHeader( $min_date_text, $max_date_text )
132{
133  global $PHP_SELF;
134 
135  echo '<body class="atoa">';
136  echo '<div class="bodycontents">';
137
138  echo '<h1>ATNF Pulsar Data Archive</h1>';
139
140  echo '<p>This archive provides access to pulsar observations taken at the Parkes radio telescope between the dates of ';
141  echo '<b>' . $min_date_text . '</b> and <b>' . $max_date_text . '</b>.</p>';
142
143  echo '<p>See the Users Guide link for more details. </p>';
144
145  echo '<table width="700" style="border: 0px;">';
146  echo '<tr align="center">';
147  echo '<td>';
148  echo '<a class="top_menu" href="' . $PHP_SELF . '?command=logout">Logout</a>';
149  echo '<!--a href="login?_action=logout">Logout</a-->';
150
151  echo '</td>';
152  echo '<td>';
153  echo '<a href="#" onClick="toggleInstructions();return false;">Instructions</a>';
154  echo '</td>';
155  echo '<td size="30">';
156  echo '&nbsp;';
157  echo '</td>';
158  echo '<td>';
159  echo '<a href="pulsar_archive_guide.html">Users Guide</a>';
160  echo '</td>';
161  echo '</tr>';
162
163  echo '</table>';
164
165  echo '<div id="divInstructions" style="display:none" >';
166  echo '<dl class="top">';
167  echo '<h2>Instructions</h2>';
168  echo '<i>To hide, click "Instructions" again. </i>';
169  echo '<dt> Display Parameters </dt>';
170  echo '<dd> Check the fields you want shown in the results table. Suggested columns are checked by default</dd>';
171  echo '<dd> The results can be ordered by one of the parameters in the "Order By" drop-down list</dd>';
172  echo '<dt> Coordinates </dt>';
173  echo '<dd> The sky position can be specified by a Pulsar name or a RA/Dec position. ';
174  echo 'The pulsar name takes precedence. The search radius must be given. </dd>';
175  echo '<dt> Filter Options </dt>';
176  echo '<dd> Results can be limited to observations just from a particular project - use the Project ID box</dd>';
177  echo '<dd> The date range can be specified - the defaults are the range of dates in the archive.</dd>';
178  echo '<dd> Either timing data (particular pulsar) or survey data can be specified. Or both! </dd> ';
179  echo '<dd> The type of instrument can be specified. Default is any type.</dd>';
180  echo '<dd> More than one frequency band can be specified.';
181  echo '<dt> Display Other </dt>';
182  echo '<dd> Calibraton observations taken within a given time period of the queried observations can also be shown and downloaded. Check the box to do so, and specify the time interval. </dd> ';
183  echo '</dl>';
184  echo '</div>';
185}
186
187
188
189OutputHeader();
190
191
192
193
194// The fields to display in the results
195if( isset( $_SESSION['fields'] ) )
196    $selected_fields = $_SESSION['fields'];
197else
198  $selected_fields = Array( "filename", "src_name", "project_id", "raj", "decj",
199                            "data_type", "obsfreq", "bw", "scanlen", "date", "ut", "nsub", "nchan" );
200
201// set some form defaults
202
203isset($_SESSION['pulsar_name']) ? $pulsar_name = $_SESSION['pulsar_name'] : $pulsar_name = '';
204isset($_SESSION['project_id']) ? $project_id = $_SESSION['project_id'] : $project_id = '';
205isset($_SESSION['obs_mode']) ? $obs_mode = $_SESSION['obs_mode'] : $obs_mode = '';
206isset($_SESSION['data_type']) ? $data_type = $_SESSION['data_type'] : $data_type = '';
207isset($_SESSION['orderBy']) ? $orderBy = $_SESSION['orderBy'] : $orderBy = '';
208isset($_SESSION['orderDir']) ?$orderDir = $_SESSION['orderDir'] : $orderDir = 'asc';
209isset($_SESSION['survey']) ? $survey = $_SESSION['survey'] : $survey = '';
210isset($_SESSION['rahour']) ? $rahour = $_SESSION['rahour'] : $rahour = '';
211isset($_SESSION['ramin']) ? $ramin = $_SESSION['ramin'] : $ramin = '';
212isset($_SESSION['rasec']) ? $rasec = $_SESSION['rasec'] : $rasec = '';
213isset($_SESSION['decdeg']) ? $decdeg = $_SESSION['decdeg'] : $decdeg = '';
214isset($_SESSION['decmin']) ? $decmin = $_SESSION['decmin'] : $decmin = '';
215isset($_SESSION['decsec']) ? $decsec = $_SESSION['decsec'] : $decsec = '';
216isset($_SESSION['radius']) ? $radius = $_SESSION['radius'] : $radius = 60;
217isset($_SESSION['bandname']) ? $bandname = $_SESSION['bandname'] : $bandname = Array();
218isset($_SESSION['from_day']) ? $from_day = $_SESSION['from_day'] : $from_day = '';
219isset($_SESSION['from_month']) ?$from_month = $_SESSION['from_month'] : $from_month = '';
220isset($_SESSION['from_year']) ? $from_year = $_SESSION['from_year'] : $from_year = '';
221isset($_SESSION['to_day']) ? $to_day = $_SESSION['to_day'] : $to_day = '';
222isset($_SESSION['to_month']) ? $to_month = $_SESSION['to_month'] : $to_month = '';
223isset($_SESSION['to_year']) ? $to_year = $_SESSION['to_year'] : $to_year = '';
224isset($_SESSION['cals_within_mins']) ? $cals_within_mins = $_SESSION['cals_within_mins'] : $cals_within_mins = 30;
225isset($_SESSION['cals']) ? $cals = $_SESSION['cals'] : $cals = 'cals';
226
227
228
229
230
231try {
232
233
234$now_day = date("j");
235$now_month = date("n");
236$now_year = date("Y");
237
238$all_params_id = "all_params";
239$all_others_id = "all_others";
240
241//$link = db_connect();
242$db = new PulsarArchiveDB();
243$db->connect( DB_SERVER . ':' . DB_PORT, DB_USERNAME, DB_PASS, DB_NAME );
244
245
246//$link = db_connect_admin();
247//loadNewTables();
248//////////////////////////////
249// Initialise error messages
250//
251
252$date_error = "";
253
254///////////////////////////////////
255// Find out the first and last dates
256//$query = "select min(mjd), max(mjd) from ".OBSERVATIONS_TABLE;
257
258$min_mjd = '';
259$max_mjd = '';
260
261$db->GetMinMaxMJD( $min_mjd, $max_mjd );
262
263// Convert from MJD to JD
264$min_jd = $min_mjd + 2400000.5;
265$max_jd = $max_mjd + 2400000.5;
266
267// convert the mjd to a date
268$min_jd = floor($min_jd);
269$max_jd = ceil($max_jd);
270
271$min_unix = jdtounix($min_jd);
272$max_unix = jdtounix($max_jd);
273$min_date_text = date("j F Y", $min_unix);
274$max_date_text = date("j F Y", $max_unix);
275$minDay   = date("j",$min_unix);
276$minMonth = date("n",$min_unix);
277$minYear  = date("Y",$min_unix);
278$maxDay   = date("j",$max_unix);
279$maxMonth = date("n",$max_unix);
280$maxYear  = date("Y",$max_unix);
281
282// proprietry date limit
283$today_mjd = cal_to_jd ( CAL_GREGORIAN, date("n"), date("j"), date("Y") ) - 2400000.5;
284$prop_mjd = $today_mjd - PROPRIETRY_PERIOD_DAY;
285$prop_unix = jdtounix($prop_mjd+2400000.5);
286$prop_date_text = date("j F Y", $prop_unix);
287
288
289
290// Clear any old form inputs in session cache
291init();
292
293//////////////////////////////////////////////
294// Get the field names to fill form checkboxes
295
296$fields = $db->GetObservationFields();
297
298$field_names = Array("filename" => "Filename",
299                     "src_name" => "Source Name",
300                     "project_id" => "Project ID",
301                     "raj" => "RA (J2000, hh:mm:ss)",
302                     "decj" => "Dec (J2000, dd:mm:ss)",
303                     "data_type" => "Data Type",
304                     "obsfreq" => "Frequency",
305                     "bw" => "Bandwidth",
306                     "scanlen" => "Scan Length",
307                     "date" => "UT Date",
308                     "ut" => "UT Time",
309                     "MJD" => "MJD",
310                     "rajd" => "RA (J2000, degs)",
311                     "decjd" => "Dec (J2000, degs)",
312                     "gl" => "Gal. Long. (degs)",
313                     "gb" => "Gal. Lat. (degs)",
314                     "BMAJ" => "Beamsize: BMAJ",
315                     "BMIN" => "Beamsize: BMIN",
316                     "BPA" => "Beam: BPA",
317                     "dm" => "D.M.",
318                     "period" => "Period",
319                     "nchan" => "# channels",
320                     "npol" => "# polarisations",
321                     "nbin" => "# bins",
322                     "nsub" => "# subintegrations",
323                     "tsamp" => "Sample time",
324                     "nbits" => "# bits per sample",
325                     "nbeam" => "# beams",
326                     "cnfg" => "Configuration",
327                     "inst" => "Instrument",
328                     "rcvr" => "Receiver",
329                     "hdrver" => "PSRFITS version",
330                     "survey" => "Survey name",
331                     "telescope" => "Telescope",
332                     "site" => "Site ID",
333                     "obsrvr" => "Observer ID" );
334
335/////////////////////////////////////////////////
336// Load search form parameters if they have been stored.
337//
338
339
340
341///////////////////////////////////////////////
342// Get the data types available in the database
343//
344
345$data_types = $db->GetDataTypes();
346
347///////////////////////////////////////////////
348// If the user clicked on the logout button
349if (isset($HTTP_GET_VARS['command'])) {
350  $command = $HTTP_GET_VARS['command'];
351  if ($command == 'logout') {
352    //unset($_SESSION['auth_code']);
353    //unset($_SESSION['username']);
354    $_SESSION = array();
355  }
356  if ($command == 'Login') {
357    echo 'we are logging in';
358    exit;
359  }
360}
361
362
363// if we have already authenticated
364//   use our stored authentication details
365// otherwise
366//   if we have received a login attempt
367//     process it
368
369$auth_code = false;
370if( isset( $_SESSION['auth_code'] ) && $_SESSION['auth_code'] == OK )
371{
372  $auth_code = $_SESSION['auth_code'];
373  $username = $_SESSION['username'];
374}
375else
376{
377  if( isset( $HTTP_POST_VARS['action'] ) && $HTTP_POST_VARS['action'] == 'Login' )
378  {
379    $username = $HTTP_POST_VARS["opalEmail"];
380    $password = $HTTP_POST_VARS["opalPassword"];
381    $type = $HTTP_POST_VARS['authenticateType'];
382    if($type == "anon"){
383      $username = $HTTP_POST_VARS["email"];
384      $auth_code = OK;
385      logger_login( $username, 'Anonymous', 'success' );
386    }
387    else
388    {
389      $auth_code = authenticate($username, $password);
390      if( $auth_code == OK )
391        logger_login( $username, 'Opal', 'success' );
392      else
393        logger_login( $username, 'Opal', 'failure' );
394      //$auth_code = newAuthenticate();
395    }
396  }
397}
398
399// Initial state where no username or password supplied OR bad login state
400if ($auth_code != OK) {
401
402OutputLoginForm();
403
404} else {
405        $_SESSION['username'] = $username;
406        $_SESSION['auth_code'] = $auth_code;
407        $_SESSION['logintype'] = $HTTP_POST_VARS['authenticateType'];
408
409        isset( $HTTP_GET_VARS['actions'] ) ? $actions = $HTTP_GET_VARS['actions'] : $actions = Array();
410       
411        if ($actions == "new_query") {
412                init();
413        }
414        else if ($actions == "error") {
415          //            $date_error = "You are only authorised to access data > 18 months old";
416        }
417       
418        OutputQueryFormHeader( $min_date_text, $max_date_text );
419       
420?>
421
422
423<!--<table class="noborder">
424<tr><td><a class="top_menu" href="<?php echo $PHP_SELF; ?>?command=logout">Logout</a> | <a class="top_menu" href="change_password.html?prev_page=<?php echo urlencode("index.php"); ?>">Change Password</a></td>
425</tr>
426</table>-->
427
428
429<form action="query.php" method="GET" name="data_archive_form" id="data_archive_form">
430<input type="hidden" name="state" value="results">
431   
432
433   
434   
435<table class="noborder" cellpadding=0>
436
437    <tr><td colspan=3>
438        <br>
439        <center><input type="submit" value="submit" name="submit_button" style="float: center;"> &nbsp;
440        <input type="reset" value="reset" name="reset_button" style="float: center;"></center>
441        <br>
442    </td></tr>
443   
444    <tr>
445       
446<!-- **************************** -->
447    <td valign="top" class="form_field" rowspan="1">
448
449    <fieldset>
450                <legend>DISPLAY PARAMETERS</legend>
451                <input type="checkbox" name="<?php echo $all_params_id; ?>" id="<?php echo $all_params_id; ?>" onClick="checkAll('<?php echo $all_params_id; ?>', 'data_archive_form', 'params[]')" >Select all<br>
452                        <!--font size="-1"><a href="javascript:togglecomments('params', 'toggler1')" id="toggler1">Show all >></a></font--><br>
453                        <!span class="commenthidden" id="params">
454                        <div id="list">
455                                <?php
456                                foreach ($fields as $field) {
457                                                                                if( isset( $field_names[$field['Field']] ) )
458                                                                                {
459                                  echo "<input
460onClick=\"updateSelectAll('".$field['Field']."', '$all_params_id')\" type=\"checkbox\" name=\"params[]\" value=\"".$field['Field']."\" id=\"".$field['Field']."\"";
461                                  if( in_array( $field['Field'], $selected_fields ) )
462                                    echo ' checked="true"';
463                                  echo " >".$field_names[$field['Field']]."<br>\n";
464                                                                                }
465                                }
466                                ?>
467                        </div>
468                        </span>
469        </fieldset>
470                       
471        </td>
472
473<!-- **************************** -->
474
475        <td class="form_field" height="10%" rowspan="1">
476        <!-- Position Options -->
477
478        <table cellspacing=0 cellpadding=0 style="border: 0px;">
479        <tr><td>
480        <fieldset id="flsPosition">
481                <legend>POSITION REQUIREMENTS</legend>
482               
483                <!-- Pulsar Name -->
484                <fieldset>
485                <legend>Pulsar Name</legend>
486                <input type="text" name="pulsar_name" size="20" value="<?php echo $pulsar_name;?>">
487                <br>
488                <p>Note that search-by-name takes precedence over search-by-RA/Dec.</p>
489                </fieldset>
490
491                <br>
492               
493                <fieldset>
494                <legend>Right Ascension (J2000)</legend>
495               
496                <input type="text" id="txtRAHour" name="rahour" size="3" tabindex="1" value="<?php echo $rahour;?>"/>
497                <label for="txtRAHour" class="coordinate"><abbr title="hours"><sup>h</sup></abbr></label>
498                                             
499                    <input type="text" id="txtRAMinute" name="ramin" size="3" tabindex="1" value="<?php echo $ramin;?>"/>
500                <label for="txtRAMinute" class="coordinate"><abbr title="minutes"><sup>m</sup></abbr></label>
501               
502                    <input type="text" id="txtRASecond" name="rasec" size="6" tabindex="1" value="<?php echo $rasec;?>"/>
503                <label for="txtRASecond" class="coordinate"><abbr title="seconds"><sup>s</sup></abbr></label>
504                </fieldset>
505       
506                <fieldset>
507                <legend>Declination (J2000)</legend>
508               
509                    <input type="text" id="txtDecDegree" name="decdeg" size="3" tabindex="1" value="<?php echo $decdeg;?>"/>
510                <label for="txtDecDegree" class="coordinate"><abbr title="degrees">&deg;</abbr></label>
511               
512                    <input type="text" id="txtDecMinute" name="decmin" size="3" tabindex="1" value="<?php echo $decmin;?>"/>
513                <label for="txtDecMinute" class="coordinate"><abbr title="minutes">&prime;</abbr></label>
514               
515                    <input type="text" id="txtDecSecond" name="decsec" size="6" tabindex="1" value="<?php echo $decsec;?>"/>
516                <label for="txtDecSecond" class="coordinate"><abbr title="seconds">&Prime;</abbr></label>
517                </fieldset>
518
519                <br>
520                <br>
521        </fieldset>
522
523        <fieldset id="flsSearchRadius">
524        <legend>SEARCH WINDOW [arcmin]</legend>
525        <input type="text" id="txtSearchWindow" name="radius" size="20" tabindex="1" value="<?php echo $radius;?>"/>
526        </fieldset>
527
528<br>
529        <fieldset id="flsProjectID">
530        <legend>PROJECT ID</legend>
531        <input type="text" id="txtSearchWindow" name="projID" size="20" tabindex="1" value="<?php echo $project_id;?>"/>
532        </fieldset>
533
534        </td></tr>
535</table>
536</td>
537
538<!-- **************************** -->
539
540        <td class="form_field" height="10%">
541        <!-- Filter Options -->
542        <table cellspacing=0 cellpadding=0 style="border: 0px;">
543        <tr><td>
544        <fieldset id="flsObsDate">
545                               
546                <legend>FILTER OPTIONS</legend>
547<br>
548
549                <!-- Date range -->
550                <fieldset>
551                        <legend>Date Range</legend>
552                       
553                          From:                                                                       
554                            <select name="from_day">
555                            <?php
556                            for ($i = 1; $i <= 31; $i++) {
557                              echo "\t\t\t<option";
558                              if ($i == $from_day || $from_day == '' && $i == $minDay) { echo " selected"; }
559                              echo " value=\"$i\">$i</option>\n";
560                            }
561                                ?>
562                            </select>
563                        <select name="from_month">
564                                <?php
565                                $monthlist = cal_info(0);
566                                for ($i = 1; $i <= 12; $i++) {
567                                  echo "\t\t\t<option";
568                                  $month = $monthlist['abbrevmonths'][$i];
569                                  if ($i == $from_month || $from_month == '' && $i == $minMonth) { echo " selected"; }
570                                  echo " value=\"$i\">$month</option>\n";
571                                }
572                                ?>
573                                  </select>
574<!-- <input type="text" size="4" name="from_year" value="<?php echo $min_cal_assoc['year']; ?>"> -->
575                      <select name="from_year">
576                                      <?php
577                                      for ($i = $minYear; $i <= $maxYear; $i++) {
578                                        echo "\t\t\t<option";
579                                        if ($i == $from_year || $from_year == '' && $i == $minYear ) { echo " selected"; }
580                                  echo " value=\"$i\">$i</option>\n";
581                                }
582                                ?>
583                            </select>
584                        <?php echo "<font size=\"-1\" color=\"red\">$date_error</font>" ?>
585                                &nbsp To:
586                        <select name="to_day">
587                                <?php
588                                        for ($i = 1; $i <= 31; $i++) {
589                                          echo "\t\t\t<option";
590                                          if ($i == $to_day || $to_day == '' && $i == $maxDay) { echo " selected"; }
591                                          echo " value=\"$i\">$i</option>\n";
592                                        }
593                                ?>
594                        </select>
595                        <select name="to_month">
596                                <?php
597                            for ($i = 1; $i <= 12; $i++) {
598                              echo "\t\t\t<option";
599                              $month = $monthlist['abbrevmonths'][$i];
600                              if ($i == $to_month || $to_month == '' && $i == $maxMonth) { echo " selected"; }
601                              echo " value=\"$i\">$month</option>\n";
602                            }
603                                ?>
604                        </select>
605                      <select name="to_year">
606                                      <?php
607                                      for ($i = $minYear; $i <= $maxYear; $i++) {
608                                        echo "\t\t\t<option";
609                                        if ($i == $to_year || $to_year == '' && $i == $maxYear ) { echo " selected"; }
610                                  echo " value=\"$i\">$i</option>\n";
611                                }
612                                ?>
613                            </select>
614                </fieldset>
615 
616<br>
617                <!-- Obs Mode -->
618                <fieldset>
619                  <legend>Obs Mode</legend>
620
621                  <select name="obs_mode" onchange="ObsModeChanged()" id="ObsModeList">
622                    <option value="any" <?php if($obs_mode == 'any') echo 'SELECTED';?> > Any </option>
623                    <option value="timing" <?php if($obs_mode == 'timing') echo 'SELECTED';?>> Only timing data </option>
624                    <option value="search" <?php if($obs_mode == 'search') echo 'SELECTED';?>> Only search data </option>
625                  </select>
626                </fieldset>
627
628                <!-- Data Type -->
629                <fieldset>
630                        <legend>Data Type</legend>
631
632                        <select name="data_type">
633                                <option value="" selected> Any </option>
634                                <?php
635                                foreach ($data_types as $next_type) {
636                                        echo '<option value="' . $next_type['data_type'] . '"';
637                                        if( $next_type['data_type'] == $data_type ) echo ' SELECTED ';
638                                        echo '> ' . $next_type['data_type'] . '</option>';
639                                }
640                                ?>
641                        </select>
642                </fieldset>     
643
644                <!-- Frequency band -->
645                <fieldset>
646                        <legend>Band Name</legend>
647                            <select id="selBand" name="bandname[]" multiple="multiple" size="5">
648                            <option value="anyBand"
649                                    <?php if( in_array( 'anyBand', $bandname ) ) echo 'SELECTED';?>
650                                    >Any
651                            </option>
652                            <option value="70cm"   
653                                <?php if( in_array( '70cm', $bandname ) ) echo 'SELECTED';?>
654                                >70cm (~0.44 GHz)
655                            </option>
656                            <option value="50cm"
657                                    <?php if( in_array( '50cm', $bandname ) ) echo 'SELECTED';?>
658                                    >50cm (~0.66 GHz)
659                            </option>
660                            <option value="20cm"
661                                    <?php if( in_array( '20cm', $bandname ) ) echo 'SELECTED';?>
662                                    >20/18cm (1.2-1.8 GHz)
663                            </option>
664                            <option value="13cm"
665                                    <?php if( in_array( '13cm', $bandname ) ) echo 'SELECTED';?>
666                                    >13cm (2.0-2.5 GHz)
667                            </option>
668                            <option value="10cm"
669                                    <?php if( in_array( '10cm', $bandname ) ) echo 'SELECTED';?>
670                                    >10cm (2.6-3.6 GHz)
671                            </option>
672                            <option value="6cm"
673                                    <?php if( in_array( '6cm', $bandname ) ) echo 'SELECTED';?>
674                                    >6cm (4.5-5.1 GHz)
675                            </option>
676                            <option value="5cm"
677                                    <?php if( in_array( '5cm', $bandname ) ) echo 'SELECTED';?>
678                                    >5cm (5.9-6.8 GHz)
679                            </option>
680                            <option value="3cm"
681                                    <?php if( in_array( '3cm', $bandname ) ) echo 'SELECTED';?>
682                                    >3cm (8.1-8.6 GHz)
683                            </option>
684                            <option value="1.3cm"
685                                    <?php if( in_array( '1.3cm', $bandname ) ) echo 'SELECTED';?>
686                                    >1.3cm (21.-24. GHz)
687                            </option>
688          </select>
689     </fieldset>
690
691       </fieldset>
692        </td></tr>
693        <tr><td>
694                <fieldset>
695                    <legend>ORDER RESULTS BY</legend>
696                            <table cellspacing="0px" cellpadding="0px" style="border: 0px;">
697                            <tr><td>
698                      <select name="orderBy" id="OrderByList">
699                            <option value="distance" <?php if($orderBy == 'distance') echo 'SELECTED';?>>Distance
700                            <option value="date" <?php if($orderBy == 'date') echo 'SELECTED';?>>Date
701                            <option value="obsfreq" <?php if($orderBy == 'obsfreq') echo 'SELECTED';?>>Frequency
702                            <option value="filename" <?php if($orderBy == 'filename') echo 'SELECTED';?>>Filename
703                      </select>
704                            </td><td>
705                            &nbsp;<input type="radio" name="orderDir" id="orderDirectionSel" value="asc"
706                                 <?php if( $orderDir == 'asc' ) echo 'checked';?>
707                                 >Ascending
708                            <br>
709                            &nbsp;<input type="radio" name="orderDir" id="orderDirectionSel" value="desc"
710                                 <?php if( $orderDir == 'desc' ) echo 'checked';?>
711                                 >Descending
712                            </td></tr>
713                            </table>
714                    <br>
715                </fieldset>
716        </td></tr>
717        <tr><td>
718                <fieldset>
719                    <legend>DISPLAY OTHER DATA</legend>
720                               
721                    <input type="checkbox" name="cals" value="cals" id="cals"
722                                <?php if( $cals == 'cals' ) echo 'checked'; ?>
723                                />
724                                Display Cals taken within
725                    <input type="text" name="cals_within_mins" maxlength="5" size="3"
726                                <?php if( $cals_within_mins != '' ) echo 'value="' . $cals_within_mins . '"';?>
727                                />
728                                mins of Observations
729                    <br>
730                </fieldset>
731        </td></tr>
732        </table>
733        <br>
734        </td>
735        </tr>   
736</table>
737
738
739</form>
740<div style="min-height: 20px; max-height: 1000px;"> </div>
741<?php
742}
743
744} catch( MysqlDBException $e ) {
745  logger_exception( $_SESSION['username'], $e->getCode(), $e->getMessage(), '' );
746  echo '<p><div class="exception_box">' .
747       '<center>' .
748       '<b>A database error was encountered</b> <br>' .
749       'the details of the error have been logged, please contact the system administrator for futher assistance <br>' .
750       '</center>' .
751       '</div><p>';
752}
753
754?>
755</div>
756
757<div id=\"footer\">
758<?php   include "footer.html"; ?>
759</div>
760
761</body>
762
763</html>
764
765
766<?php //////////// Function definitions ///////////////
767
768
769// Initialise the input form variables. If the "New query" button is clicked
770// no argument is passed to init(), hence the need for a default NULL value
771// because there is no need for updating user access statistics
772function init($link=NULL) {
773
774        unset($_SESSION['cals']); // The result set of cals
775        unset($_SESSION['obs']); // The result set of observations
776        //unset($_SESSION['cart_items']); // The result set of observations
777}
778
779
780
781
782?>
Note: See TracBrowser for help on using the repository browser.