comparison src/main/webapp/pages/home.jsp @ 95:b27a99201cbe

New feature: new full text search with MySQL ngram parser (5.7.6 above)
author Calvin Yeh <cyeh@mpipw-berlin.mpg.com>
date Mon, 03 Jul 2017 23:48:53 +0200
parents fc5116de601f
children 2ac9b2e3fb57
comparison
equal deleted inserted replaced
94:d0dcbe8254f5 95:b27a99201cbe
10 <html> 10 <html>
11 11
12 <head> 12 <head>
13 <jsp:include page="../componentes/headContent.jsp" /> 13 <jsp:include page="../componentes/headContent.jsp" />
14 <script> 14 <script>
15 15
16 $(function() { 16 $(function() {
17 17
18 18
19 $( ".addSectionToTopic" ).click(function() { 19 $( ".addSectionToTopic" ).click(function() {
20 var sectionId = $( this ).data('section-id'); 20 var sectionId = $( this ).data('section-id');
21 console.log("addSectionToTopic. sectionId = " + sectionId); 21 console.log("addSectionToTopic. sectionId = " + sectionId);
22 22
23 var url0 = "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/addSectionToTopic.jsp?sectionId=" + sectionId + "&sourceBean=home"; 23 var url0 = "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/addSectionToTopic.jsp?sectionId=" + sectionId + "&sourceBean=home";
24 24
25 $.ajax( url0 ) 25 $.ajax( url0 )
26 .done(function(data) { 26 .done(function(data) {
27 $( "#dialogAddSectionToTopicTable" ).replaceWith(data); 27 $( "#dialogAddSectionToTopicTable" ).replaceWith(data);
28 dialogAddSectionToTopic.dialog( "open" ); 28 dialogAddSectionToTopic.dialog( "open" );
29 }) 29 })
30 .fail(function() { 30 .fail(function() {
31 console.error("Error calling: " + query); 31 console.error("Error calling: " + query);
32 }) 32 })
33 33
34 }); 34 });
35 35
36 36
37 var dialogAddSectionToTopic = $("#dialogAddSectionToTopic").dialog({ 37 var dialogAddSectionToTopic = $("#dialogAddSectionToTopic").dialog({
38 position: { my: "center", at: "top+400", of: window }, // TODO show dialog at cursor position? 38 position: { my: "center", at: "top+400", of: window }, // TODO show dialog at cursor position?
39 autoOpen: false 39 autoOpen: false
40 }); 40 });
41 41
42 42
43 43
44 $("#level1Filter").autocomplete({ 44 $("#level1Filter").autocomplete({
45 source : function(request, response) { 45 source : function(request, response) {
46 $.ajax({ 46 $.ajax({
47 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLevel1Autocomplete.jsp", 47 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLevel1Autocomplete.jsp",
48 type : "POST", 48 type : "POST",
49 dataType : "json", 49 dataType : "json",
50 data : { 50 data : {
51 term : request.term 51 term : request.term
52 }, 52 },
53 success : function(data) { 53 success : function(data) {
54 54
55 response($.map(data, function(item) { 55 response($.map(data, function(item) {
56 return { 56 return {
57 label : item.name, 57 label : item.name,
58 value : item.value, 58 value : item.value,
59 } 59 }
63 alert('error: ' + error); 63 alert('error: ' + error);
64 } 64 }
65 }); 65 });
66 }, 66 },
67 minLength : 0 67 minLength : 0
68 }); 68 });
69 69
70 $("#level2Filter").autocomplete({ 70 $("#level2Filter").autocomplete({
71 source : function(request, response) { 71 source : function(request, response) {
72 $.ajax({ 72 $.ajax({
73 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLevel2Autocomplete.jsp", 73 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLevel2Autocomplete.jsp",
74 type : "POST", 74 type : "POST",
75 dataType : "json", 75 dataType : "json",
76 data : { 76 data : {
77 term : request.term 77 term : request.term
78 }, 78 },
79 success : function(data) { 79 success : function(data) {
80 80
81 response($.map(data, function(item) { 81 response($.map(data, function(item) {
82 return { 82 return {
83 label : item.name, 83 label : item.name,
84 value : item.value, 84 value : item.value,
85 } 85 }
89 alert('error: ' + error); 89 alert('error: ' + error);
90 } 90 }
91 }); 91 });
92 }, 92 },
93 minLength : 0 93 minLength : 0
94 }); 94 });
95 95
96 96
97 $("#bookNameFilter").autocomplete({ 97 $("#bookNameFilter").autocomplete({
98 source : function(request, response) { 98 source : function(request, response) {
99 $.ajax({ 99 $.ajax({
100 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskBookNameAutocomplete.jsp", 100 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskBookNameAutocomplete.jsp",
101 type : "POST", 101 type : "POST",
102 dataType : "json", 102 dataType : "json",
103 data : { 103 data : {
104 term : request.term 104 term : request.term
105 }, 105 },
106 success : function(data) { 106 success : function(data) {
107 107
108 response($.map(data, function(item) { 108 response($.map(data, function(item) {
109 return { 109 return {
110 label : item.name, 110 label : item.name,
111 value : item.value, 111 value : item.value,
112 } 112 }
116 alert('error: ' + error); 116 alert('error: ' + error);
117 } 117 }
118 }); 118 });
119 }, 119 },
120 minLength : 0 120 minLength : 0
121 }); 121 });
122 122
123 123
124 $("#dynastyFilter").autocomplete({ 124 $("#dynastyFilter").autocomplete({
125 source : function(request, response) { 125 source : function(request, response) {
126 $.ajax({ 126 $.ajax({
127 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskDynastyAutocomplete.jsp", 127 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskDynastyAutocomplete.jsp",
128 type : "POST", 128 type : "POST",
129 dataType : "json", 129 dataType : "json",
130 data : { 130 data : {
131 term : request.term 131 term : request.term
132 }, 132 },
133 success : function(data) { 133 success : function(data) {
134 134
135 response($.map(data, function(item) { 135 response($.map(data, function(item) {
136 return { 136 return {
137 label : item.name, 137 label : item.name,
138 value : item.value, 138 value : item.value,
139 } 139 }
143 alert('error: ' + error); 143 alert('error: ' + error);
144 } 144 }
145 }); 145 });
146 }, 146 },
147 minLength : 0 147 minLength : 0
148 }); 148 });
149 149
150 $("#periodFilter").autocomplete({ 150 $("#periodFilter").autocomplete({
151 source : function(request, response) { 151 source : function(request, response) {
152 $.ajax({ 152 $.ajax({
153 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskPeriodAutocomplete.jsp", 153 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskPeriodAutocomplete.jsp",
154 type : "POST", 154 type : "POST",
155 dataType : "json", 155 dataType : "json",
156 data : { 156 data : {
157 term : request.term 157 term : request.term
158 }, 158 },
159 success : function(data) { 159 success : function(data) {
160 160
161 response($.map(data, function(item) { 161 response($.map(data, function(item) {
162 return { 162 return {
163 label : item.name, 163 label : item.name,
164 value : item.value, 164 value : item.value,
165 } 165 }
169 alert('error: ' + error); 169 alert('error: ' + error);
170 } 170 }
171 }); 171 });
172 }, 172 },
173 minLength : 0 173 minLength : 0
174 }); 174 });
175 175
176 $("#adminTypeFilter").autocomplete({ 176 $("#adminTypeFilter").autocomplete({
177 source : function(request, response) { 177 source : function(request, response) {
178 $.ajax({ 178 $.ajax({
179 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskAdminTypeAutocomplete.jsp", 179 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskAdminTypeAutocomplete.jsp",
180 type : "POST", 180 type : "POST",
181 dataType : "json", 181 dataType : "json",
182 data : { 182 data : {
183 term : request.term 183 term : request.term
184 }, 184 },
185 success : function(data) { 185 success : function(data) {
186 186
187 response($.map(data, function(item) { 187 response($.map(data, function(item) {
188 return { 188 return {
189 label : item.name, 189 label : item.name,
190 value : item.value, 190 value : item.value,
191 } 191 }
195 alert('error: ' + error); 195 alert('error: ' + error);
196 } 196 }
197 }); 197 });
198 }, 198 },
199 minLength : 0 199 minLength : 0
200 }); 200 });
201 201
202 $("#sectionNameFilter").autocomplete({ 202 $("#sectionNameFilter").autocomplete({
203 source : function(request, response) { 203 source : function(request, response) {
204 $.ajax({ 204 $.ajax({
205 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskSectionNameAutocomplete.jsp", 205 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskSectionNameAutocomplete.jsp",
206 type : "POST", 206 type : "POST",
207 dataType : "json", 207 dataType : "json",
208 data : { 208 data : {
209 term : request.term 209 term : request.term
210 }, 210 },
211 success : function(data) { 211 success : function(data) {
212 212
213 response($.map(data, function(item) { 213 response($.map(data, function(item) {
214 return { 214 return {
215 label : item.name, 215 label : item.name,
216 value : item.value, 216 value : item.value,
217 } 217 }
221 alert('error: ' + error); 221 alert('error: ' + error);
222 } 222 }
223 }); 223 });
224 }, 224 },
225 minLength : 0 225 minLength : 0
226 }); 226 });
227 227
228 $("#labelFilter").autocomplete({ 228 $("#labelFilter").autocomplete({
229 source : function(request, response) { 229 source : function(request, response) {
230 $.ajax({ 230 $.ajax({
231 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLabelAutocomplete.jsp", 231 url : "<%=sessionBean.getApplicationBean().getRootServer()%>/methods/taskLabelAutocomplete.jsp",
232 type : "POST", 232 type : "POST",
233 dataType : "json", 233 dataType : "json",
234 data : { 234 data : {
235 term : request.term 235 term : request.term
236 }, 236 },
237 success : function(data) { 237 success : function(data) {
238 238
239 response($.map(data, function(item) { 239 response($.map(data, function(item) {
240 return { 240 return {
241 label : item.name, 241 label : item.name,
242 value : item.value, 242 value : item.value,
243 } 243 }
247 alert('error: ' + error); 247 alert('error: ' + error);
248 } 248 }
249 }); 249 });
250 }, 250 },
251 minLength : 0 251 minLength : 0
252 }); 252 });
253 253
254 }); 254 });
255 255
256 256
257 function updatePage() { 257 function updatePage() {
258 var text = getCookie(); 258 var text = getCookie();
259 259
260 if (text == "1") { 260 if (text == "1") {
261 setCookie("0"); 261 setCookie("0");
262 setAction('forceReloadBranches', 'homeForm'); 262 setAction('forceReloadBranches', 'homeForm');
263 263
264 document.forms['homeForm'].submit(); 264 document.forms['homeForm'].submit();
265 } 265 }
266 266
267 setTimeout(updatePage, 1000); 267 setTimeout(updatePage, 1000);
268 } 268 }
269 updatePage(); 269 updatePage();
270 270
271 271
272 272
273 273
274 </script> 274 </script>
275 </head> 275 </head>
276 276
277 <body> 277 <body>
278 278
279 <jsp:include page="../componentes/template.jsp" /> 279 <jsp:include page="../componentes/template2.jsp" />
280 280
281 <div id="dialogAddSectionToTopic" title="Add Section(s) into Topic:"> 281 <div id="dialogAddSectionToTopic" title="Add Section(s) into Topic:">
282 <div id="dialogAddSectionToTopicTable"></div> 282 <div id="dialogAddSectionToTopicTable"></div>
283 </div> 283 </div>
284 284
285 <div id="page"> 285 <div id="page">
286 286
287 <% 287 <%
288 if (sessionBean.getUser() == null) { 288 if (sessionBean.getUser() == null) {
289 %> 289 %>
290 <label class="subTitel">You must login!</label> 290 <label class="subTitel">Please login or create a new account above</label>
291 <% 291 <%
292 } else { 292 } else {
293 293
294 if (sessionBean.getHomePage().getCompleteBranchList() == null) { 294 if (sessionBean.getHomePage().getCompleteBranchList() == null) {
295 sessionBean.getHomePage().loadParameters(request, response); 295 sessionBean.getHomePage().loadParameters(request, response);
299 %> 299 %>
300 300
301 <form name="homeForm" method="post" 301 <form name="homeForm" method="post"
302 action="<%=sessionBean.getApplicationBean().getRootServer()%>/proxy.jsp"> 302 action="<%=sessionBean.getApplicationBean().getRootServer()%>/proxy.jsp">
303 <input name="bean" type="hidden" value="homeBean" /> 303 <input name="bean" type="hidden" value="homeBean" />
304 304
305 <label class="subTitel"> 305 <label class="subTitel">
306 <input type="image" 306 <input type="image"
307 onclick="setAction('forceReloadBranches', 'homeForm');" 307 onclick="setAction('forceReloadBranches', 'homeForm');"
308 src="<%=sessionBean.getApplicationBean() 308 src="<%=sessionBean.getApplicationBean()
309 .getRefreshImage()%>" 309 .getRefreshImage()%>"
310 width="20" height="20" /> 310 width="20" height="20" />
311 </label> 311 </label>
312 312
313 <% if (sessionBean.getHomePage().getCompleteBranchList().isEmpty()) { %> 313 <% if (sessionBean.getHomePage().getCompleteBranchList().isEmpty()) { %>
314 <label class="subTitel">You have no task!</label> 314 <label class="subTitel">You have no task!</label>
315 <% } else { %> 315 <% } else { %>
316 316
317 <div class="subTitel"> 317 <div class="subTitel">
318 Your Tasks 318 Your Tasks
319 319
320 <p class="label"> 320 <p class="label">
321 You have 321 You have
322 <%=sessionBean.getHomePage().getBranchNumber()%> 322 <%=sessionBean.getHomePage().getBranchNumber()%>
323 tasks. 323 tasks.
332 </jsp:include> 332 </jsp:include>
333 333
334 <div class="tableDiv double-scroll"> 334 <div class="tableDiv double-scroll">
335 <table class="pageTable"> 335 <table class="pageTable">
336 <tr> 336 <tr>
337 <!-- remove this to save space 337 <!-- remove this to save space
338 <td> 338 <td>
339 <table class="sortTable"> 339 <table class="sortTable">
340 <tr> 340 <tr>
341 <td><label class="tableTitle">Task ID</label></td> 341 <td><label class="tableTitle">Task ID</label></td>
342 <td> 342 <td>
343 <table> 343 <table>
344 <tr><td> 344 <tr><td>
345 <input type="image" 345 <input type="image"
346 onclick="setAction('sortByBranchIdUp', 'homeForm');" 346 onclick="setAction('sortByBranchIdUp', 'homeForm');"
347 src="<%=sessionBean.getApplicationBean().getUpImage()%>"/> 347 src="<%=sessionBean.getApplicationBean().getUpImage()%>"/>
348 </td></tr> 348 </td></tr>
349 <tr><td> 349 <tr><td>
350 <input type="image" 350 <input type="image"
351 onclick="setAction('sortByBranchIdDown', 'homeForm');" 351 onclick="setAction('sortByBranchIdDown', 'homeForm');"
352 src="<%=sessionBean.getApplicationBean().getDownImage()%>"/> 352 src="<%=sessionBean.getApplicationBean().getDownImage()%>"/>
353 </td></tr> 353 </td></tr>
354 </table> 354 </table>
355 </td> 355 </td>
356 </tr> 356 </tr>
357 </table> 357 </table>
791 .getEditBranchImage()%>" /> 791 .getEditBranchImage()%>" />
792 </a></td> 792 </a></td>
793 793
794 <!-- Add to Topic --> 794 <!-- Add to Topic -->
795 <td style="max-width: 300px;"> 795 <td style="max-width: 300px;">
796 <!-- existing topic --> 796 <!-- existing topic -->
797 <% if (branch.getSection().getTopicSectionRelation() != null && !branch.getSection().getTopicSectionRelation().isEmpty()) { %> 797 <% if (branch.getSection().getTopicSectionRelation() != null && !branch.getSection().getTopicSectionRelation().isEmpty()) { %>
798 798
799 <lable>Already in topic: </lable> 799 <lable>Already in topic: </lable>
800 <table style="width: 100%"> 800 <table style="width: 100%">
801 <% 801 <%
802 for (LGTopicSectionRelation relation : branch 802 for (LGTopicSectionRelation relation : branch
803 .getSection().getTopicSectionRelation()) { 803 .getSection().getTopicSectionRelation()) {