comparison interface/check_sections.php @ 8:da10158c6d0a

add toc_correction status in books table. On TOC correction list page, providing the status checking box for users.
author Zoe Hong <zhong@mpiwg-berlin.mpg.de>
date Mon, 09 Feb 2015 12:28:09 +0100
parents 0e9a7c69f22c
children 584b1623e9ef
comparison
equal deleted inserted replaced
7:0e9a7c69f22c 8:da10158c6d0a
13 } 13 }
14 14
15 $db_selected = mysql_select_db($mysql_database, $link_mysql); 15 $db_selected = mysql_select_db($mysql_database, $link_mysql);
16 if (!$db_selected) { 16 if (!$db_selected) {
17 die ('Can\'t use foo : ' . mysql_error()); 17 die ('Can\'t use foo : ' . mysql_error());
18 }
19
20 if (isset($_POST['func'])){
21 switch ($_POST['func']) {
22 case 'UpdateTOCstatus':
23 UpdateTOCstatus($_POST['id'],$_POST['status']);
24 break;
25
26 default:
27 # code...
28 break;
29 }
30 }
31
32 function UpdateTOCstatus($id, $status) {
33
34 $query = "UPDATE books SET toc_correction='".$status."' WHERE id='".$id."'";
35
36 $result = mysql_query($query);
37 if (!$result){
38 echo mysql_error();
39 echo ("Failed during updating books table.");
40 }
41
18 } 42 }
19 43
20 function checkSections($count){ 44 function checkSections($count){
21 45
22 /* $query="SELECT books.name AS book_name, books.level1, books.level2, books.period, books.id, sections.name, start_page, end_page, COUNT( * ) AS count 46 /* $query="SELECT books.name AS book_name, books.level1, books.level2, books.period, books.id, sections.name, start_page, end_page, COUNT( * ) AS count
68 92
69 93
70 // sorting by the $sort_by parameter 94 // sorting by the $sort_by parameter
71 function checkSections_sort_by($sort_by){ 95 function checkSections_sort_by($sort_by){
72 switch ($sort_by) { 96 switch ($sort_by) {
73 case '_time': 97
74 $query="(SELECT name AS book_name,level1,level2,period,dynasty,start_year,id from books ORDER BY start_year)"; 98
99 case 'time':
100 $query="(SELECT name AS book_name,level1,level2,period,dynasty,start_year,id, toc_correction from books ORDER BY start_year)";
75 $result = mysql_query($query); 101 $result = mysql_query($query);
76 if (!$result){ 102 if (!$result){
77 echo ("Failed during selecting books table."); 103 echo ("Failed during selecting books table.");
78 } 104 }
79 105
80
81 echo mysql_num_rows($result)." result(s)<br><br>"; 106 echo mysql_num_rows($result)." result(s)<br><br>";
82 echo "<table>"; 107
83 echo "<tr>"; 108 echo "<form autocomplete='off'>";
84 echo "<td class='bookName'>book name<td class='level1'>level1<td class='level2'>level2<td class='period'>period<td class='dynasty'>dynasty<td class='start_year'>start_year";
85 while ($row = mysql_fetch_assoc($result)) {
86 $str="<tr>";
87 $str.="<td>".$row['book_name'];
88 $str.="<td>".$row['level1'];
89 $str.="<td>".$row['level2'];
90 $str.="<td>".$row['period'];
91 $str.="<td>".$row['dynasty'];
92 $str.="<td>".$row['start_year'];
93 $str.="<td><a href='check_sections_details.php?book_id=".$row['id']."&count=100"."' target='_blank'>"."click here"."</a>";
94 echo $str;
95 }
96 echo "</table>";
97 break;
98
99 case 'time':
100 $query="(SELECT name AS book_name,level1,level2,period,dynasty,start_year,id from books ORDER BY start_year)";
101 $result = mysql_query($query);
102 if (!$result){
103 echo ("Failed during selecting books table.");
104 }
105
106
107 echo mysql_num_rows($result)." result(s)<br><br>";
108 echo "<table>"; 109 echo "<table>";
109 echo "<tr>"; 110 echo "<tr>";
110 echo "<td class='bookName'>book name<td class='level1'>level1<td class='level2'>level2 <td class='period'>period<td class='dynasty'>dynasty<td class='start_year'>start_year<td class='last_editor'>last_editor<td class='edit_time'>edit_time"; 111 echo "<td class='bookName'>book name<td class='level1'>level1<td class='level2'>level2 <td class='period'>period<td class='dynasty'>dynasty<td class='start_year'>start_year<td class='last_editor'>last_editor<td class='edit_time'>edit_time";
111 while ($row = mysql_fetch_assoc($result)) { 112 while ($row = mysql_fetch_assoc($result)) {
112 $str="<tr>"; 113 $str="<tr>";
114 $str.="<td>".$row['level1']; 115 $str.="<td>".$row['level1'];
115 $str.="<td>".$row['level2']; 116 $str.="<td>".$row['level2'];
116 $str.="<td>".$row['period']; 117 $str.="<td>".$row['period'];
117 $str.="<td>".$row['dynasty']; 118 $str.="<td>".$row['dynasty'];
118 $str.="<td>".$row['start_year']; 119 $str.="<td>".$row['start_year'];
119 120 $id = $row['id'];
121
120 // query last_editor and last_edit_time 122 // query last_editor and last_edit_time
121 $query_editor = "(SELECT editor, date from sections_versions WHERE books_id='".$row['id']."' ORDER BY version DESC)"; 123 $query_editor = "(SELECT editor, date from sections_versions WHERE books_id='".$row['id']."' ORDER BY version DESC)";
122 $row_sections_versions = mysql_fetch_assoc(mysql_query($query_editor)); // the first one 124 $row_sections_versions = mysql_fetch_assoc(mysql_query($query_editor)); // the first one
123 $last_editor = $row_sections_versions['editor']; 125 $last_editor = $row_sections_versions['editor'];
124 $last_edit_time = $row_sections_versions['date']; 126 $last_edit_time = $row_sections_versions['date'];
125 $str.="<td>".$last_editor; 127 $str.="<td>".$last_editor;
126 $str.="<td>".$last_edit_time; 128 $str.="<td>".$last_edit_time;
127 129
128 $str.="<td><a href='check_sections_details.php?book_id=".$row['id']."&count=100"."' target='_blank'>"."click here"."</a>"; 130 $str.="<td><a href='check_sections_details.php?book_id=".$row['id']."&count=100"."' target='_blank'>"."click here"."</a>";
131
132 //$str.="<td> <input type='radio' name='books'".$row['id']." value='no'/> NotFinished";
133 switch ($row['toc_correction']) {
134 case '0':
135 $str.="<td> <input type='radio' name='".$id."' value='0' onClick='toc_status(this)' checked/> Not Finished";
136 $str.="<td> <input type='radio' name='".$id."' value='1' onClick='toc_status(this)'/> Works-in-progress";
137 $str.="<td> <input type='radio' name='".$id."' value='2' onClick='toc_status(this)' /> Finished";
138 break;
139 case '1':
140 $str.="<td> <input type='radio' name='".$id."' value='0' onClick='toc_status(this)'/> Not Finished";
141 $str.="<td> <input type='radio' name='".$id."' value='1' onClick='toc_status(this)' checked/> Works-in-progress";
142 $str.="<td> <input type='radio' name='".$id."' value='2' onClick='toc_status(this)'/> Finished";
143 break;
144 case '2':
145 $str.="<td> <input type='radio' name='".$id."' value='0' onClick='toc_status(this)'/> Not Finished";
146 $str.="<td> <input type='radio' name='".$id."' value='1' onClick='toc_status(this)'/> Works-in-progress";
147 $str.="<td> <input type='radio' name='".$id."' value='2' onClick='toc_status(this)' checked/> Finished";
148 break;
149
150 default:
151 break;
152 }
153
129 echo $str; 154 echo $str;
130 } 155 }
131 echo "</table>"; 156 echo "</table>";
157 echo "</form>";
132 break; 158 break;
133 159
134 default: 160 default:
135 # code... 161 # code...
136 echo "no sorting parameter set"; 162 echo "no sorting parameter set";
166 checkSections_sort_by($_GET['sort_by']); 192 checkSections_sort_by($_GET['sort_by']);
167 } 193 }
168 ?> 194 ?>
169 </div> 195 </div>
170 </body> 196 </body>
197
198
199 <script type="text/javascript">
200
201 function toc_status(t) {
202 var id = t.name;
203 var val = t.value;
204 switch(val) {
205 case '0':
206 $.ajax({
207 url : './check_sections.php',
208 async : false,
209 type : 'POST',
210 data : 'func=UpdateTOCstatus'+'&id='+id+'&status='+val
211 }).done(function(result) {
212 alert('You update the status of book to "Not Finished"!');
213 });
214
215 break;
216 case '1':
217 $.ajax({
218 url : './check_sections.php',
219 async : false,
220 type : 'POST',
221 data : 'func=UpdateTOCstatus'+'&id='+id+'&status='+val
222 }).done(function(result) {
223 alert('You update the status of book to "Works-in-progress"!');
224 });
225
226 break;
227 case '2':
228 $.ajax({
229 url : './check_sections.php',
230 async : false,
231 type : 'POST',
232 data : 'func=UpdateTOCstatus'+'&id='+id+'&status='+val
233 }).done(function(result) {
234 alert('You update the status of book to "Finished"!');
235 });
236
237 break;
238 default:
239 break;
240 }
241
242 }
243
244 </script>
245
246
247
171 </html> 248 </html>
172 249
250
251