1 | <?php
|
---|
2 |
|
---|
3 | ini_set("display_errors", "On");
|
---|
4 |
|
---|
5 | include("plotinclude.php");
|
---|
6 | //print header
|
---|
7 | printf("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n");
|
---|
8 | printf("<html>\n<head>\n");
|
---|
9 | printf("<meta http-equiv='content-type' content='text/html; charset=ISO-8859-1'>\n");
|
---|
10 | printf("<title>show plots</title>\n");
|
---|
11 | printf("<link rel='stylesheet' type='text/css' href='lamouette.css'>\n");
|
---|
12 | printf("</head>\n");
|
---|
13 | printf("<body>\n");
|
---|
14 |
|
---|
15 | //init
|
---|
16 | $ds=0;
|
---|
17 | if (!empty($_GET["ds"]))
|
---|
18 | $ds=$_GET["ds"];
|
---|
19 | $tabnum=1;
|
---|
20 | if (!empty($_GET["tabnum"]))
|
---|
21 | $tabnum=$_GET["tabnum"];
|
---|
22 | $type2="calib";
|
---|
23 | if (!empty($_GET["type2"]))
|
---|
24 | $type2=$_GET["type2"];
|
---|
25 | $plot="";
|
---|
26 | $nextseq=0;
|
---|
27 | $prevseq=0;
|
---|
28 | $seq=0;
|
---|
29 | if (!empty($_GET["prevseq"]) && !empty($_GET["prev"]))
|
---|
30 | $seq=$_GET["prevseq"];
|
---|
31 | if (!empty($_GET["nextseq"]) && !empty($_GET["next"]))
|
---|
32 | $seq=$_GET["nextseq"];
|
---|
33 | $next=0;
|
---|
34 | $prev=0;
|
---|
35 | $numseq=0;
|
---|
36 |
|
---|
37 | //check if dataset file is existing
|
---|
38 | if (!empty($ds))
|
---|
39 | {
|
---|
40 | $num=sprintf("%08d",$ds);
|
---|
41 | $num2=substr($num,0,5);
|
---|
42 | $datasetfile="../datasets/" . $num2 . "/dataset" . $num . ".txt";
|
---|
43 | if (!file_exists($datasetfile))
|
---|
44 | {
|
---|
45 | printf("Sorry, there's no file for dataset %s available.", $ds);
|
---|
46 | //set dataset and sequence numbers to 0 for next checks
|
---|
47 | $ds=0;
|
---|
48 | $seq=0;
|
---|
49 | }
|
---|
50 | }
|
---|
51 |
|
---|
52 | //in case of a valid dataset
|
---|
53 | if (!empty($ds))
|
---|
54 | {
|
---|
55 | //get sequences from dataset file
|
---|
56 | // alternative: query it from db
|
---|
57 | $dataset=file_get_contents($datasetfile);
|
---|
58 | $onpos=strpos($dataset, "SequencesOn:");
|
---|
59 | $offpos=strpos($dataset, "SequencesOff:");
|
---|
60 | $possource=strpos($dataset, "SourceName:");
|
---|
61 | $sequoff="";
|
---|
62 | if (!empty($offpos))
|
---|
63 | $sequoff=split(" ", trim(substr($dataset, $offpos+13, $possource-($offpos+13))));
|
---|
64 | if (empty($offpos))
|
---|
65 | $offpos=$possource;
|
---|
66 | $sequon=split(" ", trim(substr($dataset, $onpos+12, $offpos-($onpos+12))));
|
---|
67 | $sequences=$sequon;
|
---|
68 | if (!empty($sequoff))
|
---|
69 | $sequences=array_merge($sequences,$sequoff);
|
---|
70 | if ($seq!=0 && !in_array($seq, $sequences))
|
---|
71 | $seq=0;
|
---|
72 |
|
---|
73 | //get next, current and previous sequence
|
---|
74 | foreach($sequences as $key => $sequ)
|
---|
75 | {
|
---|
76 | if ($seq==0)
|
---|
77 | $seq=$sequ;
|
---|
78 | if ($next==1)
|
---|
79 | {
|
---|
80 | $nextseq=$sequ;
|
---|
81 | if ($prevseq!=0)
|
---|
82 | break;
|
---|
83 | $next=0;
|
---|
84 | }
|
---|
85 | if ($sequ==$seq)
|
---|
86 | {
|
---|
87 | $next=1;
|
---|
88 | continue;
|
---|
89 | }
|
---|
90 | $prevseq=$sequ;
|
---|
91 | }
|
---|
92 | $numseq=count($sequences);
|
---|
93 |
|
---|
94 | //in case a dataset consists of less than 3 sequences
|
---|
95 | if ($numseq==2)
|
---|
96 | $nextseq=$prevseq;
|
---|
97 | }
|
---|
98 |
|
---|
99 | //get link for plot
|
---|
100 | $type=gettypename($type2);
|
---|
101 | $plot=getplotname($seq, $tabnum, $type, $type2);
|
---|
102 |
|
---|
103 | //print form for choosing dataset and plots
|
---|
104 | printf("<form action='showplots-ds.php' method='GET'>\n");
|
---|
105 | printf("<table width='100%%' border='0'>\n");
|
---|
106 | printf("<tr><td valign='top'>\n<tr>\n");
|
---|
107 | PrintHomeHelp();
|
---|
108 | printf("<td align='center'>\n");
|
---|
109 | if (!empty($prevseq))
|
---|
110 | printf("%d ", $prevseq);
|
---|
111 | if ($numseq>1)
|
---|
112 | printf("<input type='submit' value='<< Prev Plot' name='prev'>\n");
|
---|
113 | printf("<input type='text' name='ds' size='5' maxlength='5' value='%s'>\n", $ds);
|
---|
114 | PrintType2PullDown($type2);
|
---|
115 | printf("<input type='text' name='tabnum' size='2' maxlenght='2' value='%s'>\n", $tabnum);
|
---|
116 | printf("<input type='hidden' name='prevseq' size='2' maxlenght='2' value='%s'>\n", $prevseq);
|
---|
117 | printf("<input type='hidden' name='nextseq' size='2' maxlenght='2' value='%s'>\n", $nextseq);
|
---|
118 | if ($numseq>1)
|
---|
119 | printf("<input type='submit' value='Next Plot >>' name='next'>\n");
|
---|
120 | else
|
---|
121 | printf("<input type='submit' value='Plot' name='next'>\n");
|
---|
122 | if (!empty($nextseq))
|
---|
123 | printf(" %d ", $nextseq);
|
---|
124 | if ($numseq>0)
|
---|
125 | {
|
---|
126 | printf(" [ %d sequence", $numseq);
|
---|
127 | if ($numseq>1)
|
---|
128 | printf("s");
|
---|
129 | print(" ] \n");
|
---|
130 | }
|
---|
131 | printf("</td><td align='right'>\n");
|
---|
132 | printf("<input class='Width' type='button' value='Reset' onClick='self.location.href=\"showplots-ds.php\"'>\n");
|
---|
133 | printf("</td>\n</tr>\n<tr>\n<td align='center' colspan='3'>\n");
|
---|
134 | if (!empty($seq))
|
---|
135 | {
|
---|
136 | if (in_array($seq, $sequon))
|
---|
137 | printf("<font color='green'>\n");
|
---|
138 | else
|
---|
139 | printf("<font color='red'>\n");
|
---|
140 | printf("%s <img src='%s'>", $plot, $plot);
|
---|
141 | }
|
---|
142 | else
|
---|
143 | printf("You have to insert a dataset number into the first field.");
|
---|
144 | printf("</td>\n</tr>\n</table>\n");
|
---|
145 | printf("</form>\n");
|
---|
146 | printf("</body>\n");
|
---|
147 | printf("</html>\n");
|
---|
148 |
|
---|
149 | ini_set("display_errors", "Off");
|
---|
150 |
|
---|
151 | ?>
|
---|