Mercurial > hg > LGToc
annotate js/check_sections_details.js @ 17:2e6bf16b0be3
Commit from test site
author | Calvin Yeh <cyeh@mpipw-berlin.mpg.com> |
---|---|
date | Tue, 21 Mar 2017 18:05:52 +0100 |
parents | e4c5f9cf66cb |
children | c0eccf597fcc |
rev | line source |
---|---|
0 | 1 var saving=0; |
2 $(document).ready(function(){ | |
3 initEntry(); | |
4 initName(); | |
5 initPage(); | |
6 initLevel(); | |
7 initDelete(); | |
8 initInsert(); | |
9 initConfigure(); | |
10 initSave(version); | |
17
2e6bf16b0be3
Commit from test site
Calvin Yeh <cyeh@mpipw-berlin.mpg.com>
parents:
15
diff
changeset
|
11 if($("#saveBook .editor").val() == "") { |
15 | 12 $("#loading").show(); |
13 } else { | |
14 $("#loading").hide(); | |
15 } | |
16 | |
0 | 17 }); |
18 window.onbeforeunload = function() { | |
19 if(saving==0){ | |
20 return 'Remember to save your revision.'; | |
21 }else{ | |
22 } | |
23 }; | |
24 function initEntry(){ | |
25 //create an empty entry by cloning the entry we have, so that when a new entry is to be inserted, we can just clone the empty entry | |
26 var clone=$(".entry").first().clone(); | |
27 clone.addClass("clone"); | |
28 if(clone.hasClass("overlapper")){clone.removeClass('overlapper');} | |
29 clone.children(".hiddenInfo").children(".id").html("-1"); | |
30 clone.children(".hiddenInfo").children(".splitFrom").html(""); | |
31 clone.children(".hiddenInfo").children(".sectionAfter").html(""); | |
32 clone.children(".name").html("<input type='text'>"); | |
33 clone.children(".page").children(".startPage").html("<input type='text'>"); | |
34 clone.children(".page").children(".endPage").html("<input type='text'>"); | |
35 clone.children(".editLevel").children("select").val(1); | |
36 clone.insertAfter("#searchResults"); | |
37 clone.hide(); | |
38 $(".entry").hover(function(){ | |
39 $(this).addClass("hovered"); | |
40 },function(){ | |
41 $(this).removeClass("hovered"); | |
42 }); | |
43 $(".hiddenInfo").hide(); | |
44 $(".entry").children().each(function(){ | |
45 $(this).addClass("cell");//for layout | |
46 }); | |
47 | |
48 //$("#bookContainer").droppable(); | |
49 //drag and drop | |
50 $(".entry").draggable(); | |
51 $(".entry").droppable({ | |
52 drop:function(e,ui){ | |
53 $(ui.draggable).insertAfter($(this)); | |
54 $(this).mouseleave(); | |
55 $(ui.draggable).mouseenter(); | |
56 } | |
57 }); | |
58 } | |
59 function dropHandler(e){//for debug | |
60 console.log("QQ"); | |
61 console.log($(event.target).children("hiddenInfo").html()); | |
62 } | |
63 function initName(){ | |
64 $(".entry .name").click(function(){ | |
65 var editMode=false; | |
66 var name=$(this).html(); | |
67 if($(this).children().length!=0){//if the name element has children, i.e. the input text | |
68 editMode=true; | |
69 } | |
70 if(!editMode){ | |
71 $(this).html("<input type='text' value='"+name+"'>"); | |
72 $(this).children("input").focus(); | |
73 } | |
74 }); | |
75 } | |
76 function initInsert(){ | |
77 var insert=$("<div/>").addClass("insert"); | |
78 var insertIcon=$("<div/>").addClass("insertIcon").html("+"); | |
79 var insertBefore=$("<input type='button'>").addClass("insertBefore").val("insert before"); | |
80 var insertAfter=$("<input type='button'>").addClass("insertAfter").val("insert after"); | |
81 var insertOption=$("<div/>").addClass("insertOption").append("insert a new section<br>").append(insertBefore).append(insertAfter); | |
82 insert.append(insertIcon); | |
83 //insert.append(insertBefore); | |
84 //insert.append(insertAfter); | |
85 $(".entry").append(insert); | |
86 insertOption.insertAfter("#searchResults"); | |
87 //$(".insertAfter").hide(); | |
88 //$(".insertBefore").hide(); | |
89 insertOption.hide(); | |
90 $(".insert").hover(function(){ | |
91 $(this).append($(".insertOption")); | |
92 $(".insertOption").show(); | |
93 //$(this).children(".insertAfter").show(); | |
94 //$(this).children(".insertBefore").show(); | |
95 },function(){ | |
96 $(".insertOption").hide(); | |
97 //$(this).children(".insertAfter").hide(); | |
98 //$(this).children(".insertBefore").hide(); | |
99 }); | |
100 $(".insertAfter").click(function(){ | |
101 addEntry($(this).parent().parent().parent(),1); | |
102 $(this).parent().hide(); | |
103 }); | |
104 $(".insertBefore").click(function(){ | |
105 addEntry($(this).parent().parent().parent(),0); | |
106 $(this).parent().hide(); | |
107 }); | |
108 } | |
109 function addEntry(obj,pos){//obj: the obj next to which we would like to add a new entry, pos: before the obj or after the obj | |
110 var clone=$(".clone").clone(true); | |
111 clone.removeClass("clone"); | |
112 clone.show(); | |
1
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
113 |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
114 clone.children(".hiddenInfo").children(".id").html(0); // set section id to 0 |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
115 |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
116 // bug: section_after field is not correct |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
117 |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
118 |
0 | 119 if(pos==0){ |
120 clone.insertBefore(obj); | |
121 //$("<br>").insertAfter(clone); | |
122 }else{ | |
123 clone.insertAfter(obj); | |
124 //$("<br>").insertBefore(clone); | |
125 } | |
1
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
126 |
1f9d2bfe1d13
handle new section created by user, update sections_index table
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
0
diff
changeset
|
127 |
0 | 128 $("#searchResults .sequence").each(function(idx){ |
129 $(this).html(idx+1); | |
130 }); | |
131 } | |
132 function initPage(){// init the column start page & end page, so that they turn into input boxes when clicked | |
133 //page | |
134 $("div.page").click(function(e){ | |
135 var startPage=$(this).children(".startPage").html(); | |
136 var endPage=$(this).children(".endPage").html(); | |
137 var editMode=false; | |
138 if($(this).children(".startPage").children().length!=0){ | |
139 editMode=true; | |
140 } | |
141 if(!editMode){ | |
142 $(this).children(".startPage").html("<input type='text' value='"+startPage+"'>"); | |
143 //$(this).children(".startPage").children("input").focus(); | |
144 $(this).children(".endPage").html("<input type='text' value='"+endPage+"'>"); | |
145 //$(this).children(".endPage").children("input").focus(); | |
146 $(e.target).children("input").focus(); | |
147 }else{ | |
148 //console.log($(this).parent().children(".editLevel").children().first().val()); | |
149 } | |
150 }); | |
151 | |
152 } | |
7
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
153 |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
154 |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
155 // TODO: rewrite initLevel(), change select to ">>" or "<<" button |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
156 function initLevel(){ |
0 | 157 //level |
158 var levelObj=$("<div/>").addClass("editLevel").append("<select/>"); | |
159 $(".entry").append(levelObj); | |
160 $(".editLevel select").append("<option value='1'>level 1</option>"); | |
161 $(".editLevel select").append("<option value='2'>level 2</option>"); | |
162 $(".editLevel select").append("<option value='3'>level 3</option>"); | |
163 for(var i=1; i<=3; i++){ | |
164 $("div.level"+i+" .editLevel select").val(i); | |
165 } | |
166 | |
167 $(".editLevel select").change(function(){//add classes for text indent, to control layout style | |
168 var entryObj=$(this).parent().parent(); | |
169 var className=""; | |
170 if(entryObj.hasClass("level1")){ | |
171 className="level1"; | |
172 } | |
173 if(entryObj.hasClass("level2")){ | |
174 className="level2"; | |
175 } | |
176 if(entryObj.hasClass("level3")){ | |
177 className="level3"; | |
178 } | |
179 entryObj.removeClass(className); | |
180 entryObj.addClass("level"+$(this).val()); | |
181 }); | |
182 } | |
7
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
183 /* |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
184 function initLevel_old(){//init the column level, turn it into select element |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
185 //level |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
186 var levelObj=$("<div/>").addClass("editLevel").append("<select/>"); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
187 $(".entry").append(levelObj); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
188 $(".editLevel select").append("<option value='1'>level 1</option>"); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
189 $(".editLevel select").append("<option value='2'>level 2</option>"); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
190 $(".editLevel select").append("<option value='3'>level 3</option>"); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
191 for(var i=1; i<=3; i++){ |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
192 $("div.level"+i+" .editLevel select").val(i); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
193 } |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
194 |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
195 $(".editLevel select").change(function(){//add classes for text indent, to control layout style |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
196 var entryObj=$(this).parent().parent(); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
197 var className=""; |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
198 if(entryObj.hasClass("level1")){ |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
199 className="level1"; |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
200 } |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
201 if(entryObj.hasClass("level2")){ |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
202 className="level2"; |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
203 } |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
204 if(entryObj.hasClass("level3")){ |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
205 className="level3"; |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
206 } |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
207 entryObj.removeClass(className); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
208 entryObj.addClass("level"+$(this).val()); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
209 }); |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
210 } |
3abf39f0eb46
bug fixed: sessionId from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
5
diff
changeset
|
211 */ |
0 | 212 function initDelete(){ |
213 //delete | |
214 var deleteObj=$("<div/>").addClass("deleteEntry").append("<input type='button' value='delete' class='deleteButton'>"); | |
215 $(".entry").append(deleteObj); | |
216 $(".deleted .deleteEntry input").val("recover"); | |
217 var deleteRangeObj=$("<div/>").attr("id","deleteRange").append("delete entry <br>from "); | |
218 var deleteFromObj=$("<input type='text'>").addClass("deleteFrom"); | |
219 var deleteToObj=$("<input type='text'>").addClass("deleteTo"); | |
220 var deleteButtonObj=$("<input type='button'>").addClass("deleteButton").val("delete"); | |
221 deleteRangeObj.append(deleteFromObj).append(" to ").append(deleteToObj).append(deleteButtonObj); | |
222 deleteRangeObj.insertAfter($("#searchResults")); | |
223 deleteRangeObj.hide(); | |
224 $(".deleteEntry .deleteButton").click(function(){ | |
225 var entryObj=$(this).parent().parent(); | |
226 var buttonVal=$(this).val(); | |
227 if(buttonVal=="delete"){ | |
228 entryObj.addClass("deleted"); | |
229 $(this).val("recover"); | |
230 }else{ | |
231 entryObj.removeClass("deleted"); | |
232 $(this).val("delete"); | |
233 } | |
234 if($("#deleteRange").is(":visible")){ | |
235 deleteRangeObj.insertAfter($("#searchResults")); | |
236 $("#deleteRange").hide(); | |
237 } | |
238 }); | |
239 $(".deleteEntry").hover(function(){ | |
240 var entryObj=$(this).parent(); | |
241 var deleteRangeObj=$("#deleteRange"); | |
242 var buttonVal=$(this).children(".deleteButton").val(); | |
243 if(buttonVal=="delete"){ | |
244 $(this).append(deleteRangeObj); | |
245 deleteRangeObj.show(); | |
246 deleteRangeObj.children(".deleteFrom").val(entryObj.children(".sequence").html()); | |
247 } | |
248 },function(){ | |
249 var buttonVal=$(this).children(".deleteButton").val(); | |
250 var deleteRangeObj=$("#deleteRange"); | |
251 if(buttonVal=="delete"){ | |
252 deleteRangeObj.children("input:text").val(""); | |
253 deleteRangeObj.insertAfter($("#searchResults")); | |
254 deleteRangeObj.hide(); | |
255 } | |
256 | |
257 }); | |
258 $("#deleteRange .deleteButton").click(function(){ | |
259 var from=$("#deleteRange .deleteFrom").val().trim(); | |
260 var to=$("#deleteRange .deleteTo").val().trim(); | |
261 from=Number(from); | |
262 to=Number(to); | |
263 if(isNaN(from) || isNaN(to) || to <from){ | |
264 return; | |
265 } | |
266 var i; | |
267 for(i=from; i<=to; i++){ | |
268 if(i<1){i=1;} | |
269 if(i>$(".entry").size()){console.log($(".entry").size());break;} | |
270 var entryObj=$(".entry:eq("+(i-1)+")"); | |
271 var buttonObj=entryObj.children(".deleteEntry").children(".deleteButton"); | |
272 var buttonVal=buttonObj.val(); | |
273 if(buttonVal=="delete"){ | |
274 buttonObj.click(); | |
275 } | |
276 $("#deleteRange").children("input:text").val(""); | |
277 } | |
278 }); | |
279 }/* | |
280 function isNumeric(str){ | |
281 if(str.search(/\D/)>=0){ | |
282 console.log("not a number"); | |
283 return false; | |
284 }else{ | |
285 return true; | |
286 } | |
287 }*/ | |
288 function initConfigure(){ | |
289 var configureObj=$("<div/>").attr("id","configure"); | |
290 var hideDeletedObj=$("<div/>").addClass("hideDeleted").append("<input type='checkbox'>"); | |
291 hideDeletedObj.append("hide deleted sections"); | |
292 configureObj.append(hideDeletedObj); | |
293 $("#panel").append(configureObj); | |
294 $(".hideDeleted input:checkbox").change(function(){ | |
295 if($(this).is(":checked")){ | |
296 $(".deleted").hide(); | |
297 //$(".deleted").next().hide(); | |
298 }else{ | |
299 $(".deleted").show(); | |
300 //$(".deleted").next().show(); | |
301 } | |
302 }); | |
303 var href=window.location.href; | |
304 var reg=/hideDeletedChecked=[a-zA-Z]+/g; | |
305 var hidden=reg.exec(href); | |
306 if(hidden!=null){ | |
307 hidden=hidden[0].replace("hideDeletedChecked=",""); | |
308 if(hidden=="true"){ | |
309 //if(hidden.search("true")!=-1){ | |
310 $(".hideDeleted input:checkbox").attr("checked","true"); | |
311 $(".deleted").hide(); | |
312 } | |
313 } | |
314 } | |
315 function initSave(version){ | |
316 //save | |
317 var saveObj=$("<div/>").attr("id","saveBook"); | |
318 var labelObj=$("<div/>").addClass("label").html("Name of the editor:"); | |
319 saveObj.append(labelObj); | |
9
28f26315506e
disable name input which should gotten from LGServices
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
7
diff
changeset
|
320 labelObj.append("<input type='text' class='editor' disabled>"); // disabled input for name, bcuz it should come from LGServices |
0 | 321 saveObj.append("<input type='button' value='save' class='save'>"); |
322 $("#panel").append(saveObj); | |
323 $("#saveBook .save").click(function(){ | |
324 if($("#saveBook .editor").val()!=""){ | |
325 saveBook(version); | |
326 }else{ | |
327 alert("Please fill in the name of the editor."); | |
328 } | |
329 }); | |
330 var href=window.location.href; | |
331 var reg=/editor=[^\?^\&]+/g; | |
332 var editor=reg.exec(href); | |
333 if(editor!=null){ | |
334 editor=editor[0].replace("editor=",""); | |
335 editor=editor.replace("%20"," "); | |
336 $("#saveBook .editor").val(editor); | |
5
26ed9d1d6957
New: get user name from LGService by sessionId
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
3
diff
changeset
|
337 } else { |
26ed9d1d6957
New: get user name from LGService by sessionId
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
3
diff
changeset
|
338 setCurrentEditor(); // get from LGService, if user linked this TOC from LGService (the firsttime) |
0 | 339 } |
340 } | |
5
26ed9d1d6957
New: get user name from LGService by sessionId
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
3
diff
changeset
|
341 |
0 | 342 function saveBook(version){ |
343 var sectionArray=collectSectionArray(); | |
344 var bookId=$(".entry").first().children(".hiddenInfo").children(".booksId").html(); | |
345 var editor=$("#saveBook .editor").val(); | |
346 console.log("editor:"+editor); | |
347 | |
348 var version=version; | |
349 $("#loading").show(); | |
10
2c35af0d78f3
bug fixed: sessionId after saving
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
9
diff
changeset
|
350 |
0 | 351 $.post("edit_section_db.php", // use ajax to post to a php then wait for return |
352 {//post data | |
353 command:"write", | |
354 version:version, | |
355 editor:editor, | |
356 bookId:bookId, | |
357 sectionArray:sectionArray | |
358 }, | |
359 function(data){//things to do after edit_section_db is done | |
360 if(data=="Succeeded."){ | |
361 saving=1; | |
362 var hideDeletedChecked=$(".hideDeleted input:checkbox").is(":checked");//get the previous setting for checked | |
363 var href=window.location.href; | |
364 var reg=/count=[0-9^\?]+/g; | |
365 var count=reg.exec(href); | |
366 reg = /[^\?]+/g; | |
367 href = reg.exec(href); | |
17
2e6bf16b0be3
Commit from test site
Calvin Yeh <cyeh@mpipw-berlin.mpg.com>
parents:
15
diff
changeset
|
368 |
11
0a03c75499e6
bug fixed: sessionId after saving
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
10
diff
changeset
|
369 href=href+"?book_id="+bookId+"&"+count+"&hideDeletedChecked="+hideDeletedChecked+"&editor="+editor+"&sessionId="+session_id; |
0 | 370 location.href=href; //refresh the page to load the sections saved in db |
371 | |
372 }else{ | |
373 console.log("db failed. log: ", data); | |
374 alert("Saving failed. You've NOT saved your editing."); | |
375 alert("Please check your editing again. If the issue remains, please contact us."); | |
376 $("#loading").hide(); | |
377 | |
378 } | |
379 }, | |
380 "json" | |
381 ); | |
382 } | |
383 function collectSectionArray(){ | |
384 var sectionArray=new Array(); | |
385 var idx=0; | |
386 $("#searchResults .entry").each(function(){//go through all the entries wrapped in the element searchResults | |
387 var startPage,endPage,name,deleted="FALSE"; | |
388 if($(this).children(".page").children(".startPage").children().length!=0){ //if the value is a input box | |
389 startPage=$(this).children(".page").children(".startPage").children().first().val(); | |
390 endPage=$(this).children(".page").children(".endPage").children().first().val(); | |
391 }else{ // if the value is not an input box (has not been edited) | |
392 startPage=$(this).children(".page").children(".startPage").html(); | |
393 endPage=$(this).children(".page").children(".endPage").html(); | |
394 } | |
395 if($(this).children(".name").children().length!=0){ | |
396 name=$(this).children(".name").children().first().val(); | |
397 }else{ | |
398 name=$(this).children(".name").html(); | |
399 } | |
400 startPage=$.trim(startPage); | |
401 endPage=$.trim(endPage); | |
402 name=$.trim(name); | |
403 if(name=="" || startPage=="" ||endPage==""){ // if any of the fields is blank, dont insert to db (since none of them should be blank) | |
404 console.log("empty row: "+name+" -- "+startPage+" -- "+endPage); | |
405 return; // "continue" in jquery | |
406 } | |
3
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
407 // bug fix: the type of deleted should be 'int' in database, 0 or 1, rather than TRUE |
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
408 if($(this).hasClass("deleted")){ // deleted="TRUE"; |
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
409 deleted = 1; |
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
410 } else { |
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
411 deleted = 0; |
5d0bfd909857
modify updating to sections_index table when deletion/recovery
Zoe Hong <zhong@mpiwg-berlin.mpg.de>
parents:
1
diff
changeset
|
412 } |
0 | 413 var id=$(this).children(".hiddenInfo").children(".id").html(); |
414 var booksId=$(this).children(".hiddenInfo").children(".booksId").html(); | |
415 var sectionAfter=$(this).children(".hiddenInfo").children(".sectionAfter").html() | |
416 var level=$(this).children(".editLevel").children("select").val(); | |
417 var splitFrom=$(this).children(".hiddenInfo").children(".splitFrom").html(); | |
418 if(splitFrom==""){splitFrom="NULL";} | |
419 sectionArray[idx]={name:name,booksId:booksId,sectionAfter:sectionAfter, | |
420 startPage:startPage,endPage:endPage, | |
421 level:level,splitFrom:splitFrom, | |
422 id:id,deleted:deleted}; | |
423 idx++; | |
424 }); | |
425 return sectionArray; | |
426 } |