Changeset 1177 for MDService2/trunk/MDService2/WebContent
- Timestamp:
- 03/24/11 11:50:48 (13 years ago)
- Location:
- MDService2/trunk/MDService2/WebContent
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
MDService2/trunk/MDService2/WebContent/index.jsp
r1169 r1177 85 85 </td> 86 86 <td valign="top"> 87 <label>Complex query</label>< br/>87 <label>Complex query</label><span name='detail_index' class='cmd cmd_detail'></span><br/> 88 88 <div id="searchclauselist"></div> 89 89 <input type="checkbox" checked="false" id="input-withsummary" name="WS"/><label>with Summary</label> … … 157 157 <div id="detail-float"> 158 158 </div> 159 <div id="detail-floating"> 160 </div> 159 161 162 <div id="terms_autocomplete"></div> 160 163 161 164 </body> -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_helpers.js
r1157 r1177 152 152 }// Usage:x = new CloneObject(obj); 153 153 154 function findPos(obj) { 155 var curleft = obj.offsetLeft || 0; 156 var curtop = obj.offsetTop || 0; 157 while (obj = obj.offsetParent) { 158 curleft += obj.offsetLeft; 159 curtop += obj.offsetTop; 160 } 161 return {x:curleft,y:curtop}; 162 } -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_searchclause.js
r1156 r1177 1 1 // client-side modelling of "business-objects": 2 2 // SearchClause, SearchClauseset, 3 4 var element_autocomplete = new Array();5 var elements_hashtable = {};6 3 7 4 … … 9 6 //var relation_autocomplete = new Array('any','all','=','>','<'); 10 7 //var value_autocomplete = new Array(); 11 function SearchClause(index, _relation, _value ) {8 function SearchClause(index, relation, value ) { 12 9 this.index = index; 13 this.relation = _relation;14 this.value = _value;10 this.relation = relation; 11 this.value = value; 15 12 this.negation = false; 16 13 … … 36 33 }; 37 34 SearchClause.prototype.GetValueInput = function(){ 38 return $($($('.sc-i','#searchclauselist')[this.i]).find('.sc-j')[this.j]).find('.value _input');35 return $($($('.sc-i','#searchclauselist')[this.i]).find('.sc-j')[this.j]).find('.value-input'); 39 36 }; 40 37 … … 52 49 //TODO defaults 53 50 //this.relation = '='; 54 var index_detail = "";55 if ((this.i == 0) && (this.j == 0)) {56 index_detail = "<span name='detail_index' class='cmd cmd_detail'></span>";57 }51 //var index_detail = ""; 52 //if ((this.i == 0) && (this.j == 0)) { 53 // index_detail = "<span name='detail_index' class='cmd cmd_detail'></span>"; 54 //} 58 55 var x = "<div id='" + this.j + "' class='sc-j or_level' ><div id='" + this.listid + "' class='sc-wrapper focused' > " + 59 "<div class='search'><span class='index _search'><select class='index_select'/><input type='text' class='index-input autocomplete-input' /></span>" +60 index_detail +56 "<div class='search'><span class='index-search'><select class='index_select'/><input type='text' class='index-input autocomplete-input' /></span>" + 57 //index_detail + 61 58 //"<select type='text' class='rel_input' />" + 62 59 "<select class='rel_input'><option value='='>=</option><option value='>'>></option><option value='<'><</option><option value='any'>any</option><option value='contains'>contains</option><option value='all'>all</option></select>" + 63 "<select class='value_select'/><input type='text' class='value _input' />" +64 "<span class='sc_cmds'><span name='detail_value' class='cmd cmd_detail'></span><spanclass='cmd cmd_sc_delete'> </span><span class='sc_id'>" + this.listid + "</span>" +60 "<select class='value_select'/><input type='text' class='value-input' /><span name='detail_value' class='cmd cmd_detail'></span>" + 61 "<span class='sc_cmds'><span class='cmd cmd_sc_delete'> </span><span class='sc_id'>" + this.listid + "</span>" + 65 62 "<span class='cmd cmd_add_and'> </span><span class='cmd cmd_add_or'></span>"+ 66 63 " </span></div><div class='index-context'><table></table></div></div></div>"; … … 107 104 }); 108 105 e_value.focusin(function(){ 106 $('.sc-wrapper','#searchclauselist').each(function(){ 107 $(this).removeClass("focused"); 108 }); 109 $(this).closest('.sc-wrapper').addClass("focused"); 110 }); 111 $($($('.sc-i','#searchclauselist')[this.i]).find('.sc-j')[this.j]).find('.cmd_detail').click(function(){ 109 112 $('.sc-wrapper','#searchclauselist').each(function(){ 110 113 $(this).removeClass("focused"); … … 193 196 194 197 if (element_autocomplete.length == 0) return; 195 198 196 199 //autocomplete 197 200 function handleTermsSelection(i,j,elem){ … … 250 253 handleTermsSelection(i,j,sValue); 251 254 252 //$('.focused','#searchclauselist').find('.value _input').focus();255 //$('.focused','#searchclauselist').find('.value-input').focus(); 253 256 254 257 } … … 258 261 } 259 262 260 this.GetIndexInput().autocompleteArray(element_autocomplete,{261 //autoFill:true,263 $(this.GetIndexInput()).autocompleteArray(element_autocomplete,{ 264 autoFill:true, 262 265 //width:150, 263 266 onFindValue:findValue, … … 265 268 }); 266 269 270 $('body').find('.ac_results').css({'z-index' : '1000'}); 267 271 268 272 }; … … 315 319 $('.focused','#searchclauselist').find('.index-context').hide(); 316 320 317 $('.focused','#searchclauselist').find('.value _input').focus();321 $('.focused','#searchclauselist').find('.value-input').focus(); 318 322 319 323 }); … … 396 400 $('#sc0-0').find('.index-input').val(""); 397 401 $('#sc0-0').find('.rel_input').val("="); 398 $('#sc0-0').find('.value _input').val("");402 $('#sc0-0').find('.value-input').val(""); 399 403 notifyUser("cannot remove", 'debug'); 400 404 return; … … 438 442 $('#sc0-0','#searchclauselist').find('.index-input').val(data["searchClause"]["index"]); 439 443 $('#sc0-0','#searchclauselist').find('.relation_input').val(data["searchClause"]["relation"]["value"]); 440 $('#sc0-0','#searchclauselist').find('.value _input').val(data["searchClause"]["term"]);444 $('#sc0-0','#searchclauselist').find('.value-input').val(data["searchClause"]["term"]); 441 445 } else { 442 446 if (data["triple"]["boolean"]["value"] == "and") { … … 564 568 }, 565 569 566 updatedata: function(term, is_category, category) { 567 $('.focused','#searchclauselist').find('.index-input').val(term); 570 updatedata: function(term, is_category, category, value) { 568 571 569 572 var i = $('.focused','#searchclauselist').closest('.sc-i').attr("id"); 570 573 var j = $('.focused','#searchclauselist').closest('.sc-j').attr("id"); 571 searchclauseset.searchclauses[i][j].index = term.replace(" ","_"); 572 573 $('.focused','#searchclauselist').find('.value_input').focus(); 574 575 if (term != undefined){ 576 $('.focused','#searchclauselist').find('.index-input').val(term); 577 searchclauseset.searchclauses[i][j].index = term.replace(" ","_"); 578 } 579 580 if (value == undefined){ 581 $('.focused','#searchclauselist').find('.value-input').focus(); 582 } else { 583 $('.focused','#searchclauselist').find('.value-input').val(value); 584 searchclauseset.searchclauses[i][j].value = value; 585 } 574 586 575 587 if (is_category) { -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_ui.js
r1174 r1177 13 13 /////// INIT VARIABLE SETTINGS 14 14 // get url parameters 15 params = getUrlVars();15 url_params = getUrlVars(); 16 16 // create searchclauses 17 searchclauseset.addsearchclause(new SearchClause("","",""),"",0,0);17 //searchclauseset.addsearchclause(new SearchClause("","",""),"",0,0); 18 18 // load query if exists params 19 19 //loadQueryFromUriParams(); … … 44 44 createLayouts('base'); 45 45 46 initDetailFloat(); 47 // autocomplete correction 48 searchclauseset.addsearchclause(new SearchClause("","",""),"",0,0); 49 46 50 }); 47 51 … … 136 140 $(this).toggleClass('cmd_down cmd_up'); 137 141 }); 142 138 143 139 144 ////////////////////////////////////////////// … … 620 625 $(this).addClass('cmd_up ui-dialog-titlebar-up'); 621 626 }); 622 623 624 $("#detail-float").dialog({ autoOpen: false});//,625 //position: ['right','70px'],626 //height: 450,627 //width: 300,628 //minHeigh: 100});629 630 //$('#detail-float').dialog( "option", "minHeight", '0px' );631 632 $("#detail-float").dialog();633 $("#detail-float").tabs();634 627 635 628 } 636 629 630 function initDetailFloat(){ 631 $("#detail-float").dialog({ autoOpen: false}); 632 $("#detail-float").dialog(); 633 $("#detail-float").tabs(); 634 }; 637 635 function submit_query (columns, query, squery, ws) { 638 636 notifyUser("processing query"); … … 749 747 }; 750 748 751 function showDetail(_data, textStatus, xmlhttpreq) { 752 try { 753 var data = _data; 754 var blankdata = "<html><\html>"; 755 756 if(typeof xmlhttpreq!='undefined') 757 { 758 if (xmlhttpreq.responseXML != null){ 759 var isinfo = xmlhttpreq.responseXML.baseURI.split("/static/info.xml?id="); 760 if (isinfo != "undefined"){ 761 if ( isinfo.length = 2){ 762 var infoid = new RegExp('[\\?]id=([^&#]*)').exec(xmlhttpreq.responseXML.baseURI); 763 infoid = infoid[1] || 0; 764 infoid = infoid + "-info"; 765 data = $(_data).find('#' + infoid); 766 } 767 } 768 } 769 } 770 /* 771 if (data == null){ 772 addToDetailList(blankdata); 773 } else { 774 addToDetailList(data); 775 } 776 */ 777 778 if (data == null){ 779 var title = ""; 780 $('#detail-float').html(blankdata); 781 782 //addToDetailList(blankdata); 783 784 if ( $('#detail-float').dialog("isOpen")) { 785 var up = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-titlebar-up'); 786 up.removeClass('.cmd_up .ui-dialog-titlebar-up'); 787 up.addClass('.cmd_get .ui-dialog-titlebar-get'); 788 var down = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-titlebar-down'); 789 down.removeClass('.cmd_down .ui-dialog-titlebar-down'); 790 down.addClass('.cmd_get .ui-dialog-titlebar-get'); 791 792 $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-title').text(title); 793 } else { 794 $('#detail-float').dialog('open'); 795 $('#detail-float').siblings('div.ui-dialog-titlebar').addClass('ui-state-default'); 796 $('#detail-float').siblings('div.ui-dialog-titlebar').children().remove(); 797 var x = '<span class="cmd cmd_del ui-dialog-titlebar-del "/><span class="cmd cmd_get ui-dialog-titlebar-get"/><span class="ui-dialog-title">' + "" +'</span>'; 798 $('#detail-float').siblings('div.ui-dialog-titlebar').prepend(x); 799 800 } 801 802 } else 803 { 804 //addToDetailList(data); 805 $('#detail-float').html(data); 806 var title = $('#detail-float').find('.inner-title').attr('value'); 807 if (title == undefined) title = $('#detail-float').find('.title, .inner-title').first().text(); 808 $('#detail-float').dialog( "option", "title", title ); 809 810 $('#detail-float').find('.detail-header').hide(); 811 $('#detail-float').find('.detail-content').show(); 812 813 if ( $('#detail-float').dialog("isOpen")) { 814 var get = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.cmd_get'); 815 get.removeClass('cmd_get'); 816 get.removeClass('ui-dialog-titlebar-get'); 817 get.addClass('cmd_up'); 818 get.addClass('ui-dialog-titlebar-up'); 819 820 $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-title').text(title); 821 } else { 822 //ui-state-default 823 $('#detail-float').dialog('open'); 824 $('#detail-float').siblings('div.ui-dialog-titlebar').addClass('ui-state-default'); 825 $('#detail-float').siblings('div.ui-dialog-titlebar').children().remove(); 826 var x = '<span class="cmd cmd_del ui-dialog-titlebar-del "/><span class="cmd cmd_up ui-dialog-titlebar-up"/><span class="ui-dialog-title">' + title +'</span>'; 827 $('#detail-float').siblings('div.ui-dialog-titlebar').prepend(x); 828 829 notifyUser("query processed:" + textStatus); 830 } 831 } 832 833 } catch (e) { 834 notifyUser(e,'debug'); 835 } 836 } 749 -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_ui_detail.js
r1174 r1177 1 1 2 function Detail(detailwidget ) {2 function Detail(detailwidget, name) { 3 3 this.detailwidget = detailwidget; 4 4 … … 9 9 this.url = undefined; 10 10 this.type = undefined; 11 this.name = undefined;11 this.name = name; 12 12 this.content = undefined; 13 13 this.temp_id = ""; … … 25 25 26 26 var widget = this.detailwidget; 27 /* 27 28 if ($(widget).parents('.result').length > 0){ 28 29 this.name = "record"; … … 40 41 } 41 42 } 42 43 */ 43 44 this.type = blocks_settings[this.name].detail.type; 44 45 switch (this.name){ … … 59 60 case 'values': 60 61 this.content = undefined; 61 this.url = $(widget).parent().find("a").attr('href'); 62 var index = $(widget).closest('.sc-wrapper').find('.index-input').val(); 63 if (index != ""){ 64 this.url = "values/htmllist/?q=" + index + "&sort=size&repository=" + getSelectedRepository();//$(widget).parent().find("a").attr('href'); 65 } 66 break; 67 case 'index': 68 this.content = undefined; 69 this.url = 'terms/htmlpage/?q=all'; 62 70 break; 63 71 default: … … 127 135 addPaging($(this).children('.cmds-ui-block')); 128 136 //$(this).show(); 129 }); 137 var name = $(this).closest('.detail-wrapper').attr("id"); 138 if (name == "detail_values"){ 139 $(this).find(".cmd_columns").click(function(event) { 140 event.preventDefault(); 141 handleValueSelection($(this)); 142 }); 143 } 144 }); 130 145 } 131 146 }; … … 146 161 case "floating": 147 162 this.openContent(); 148 showDetail($(this.content_wrapper),'html'); 163 showDetail(this.content_wrapper, "html"); 164 //this.showFloatingDetail(); 149 165 this.openUrl(); 150 166 break; … … 169 185 } 170 186 }; 187 188 Detail.prototype.showFloatingDetail = function(){ 189 var pos = $(this.detailwidget ).offset(); 190 //var iWidth = (options.width > 0) ? options.width : $input.width(); 191 // reposition 192 $('#detail-floating').css({ 193 //width: parseInt(iWidth) + "px", 194 top: (pos.y + $(this.detailwidget).height()) + "px", 195 left: pos.x + "px", 196 "z-index": "1000" 197 }); 198 $('#detail-floating').append($(this.content_wrapper)); 199 $('#detail-floating').show(); 200 }; 201 171 202 var detail_container = $("#detaillist"); 172 203 … … 184 215 return; 185 216 } 217 // test for values 218 if (name == 'values'){ 219 var index = $(widget).closest('.sc-wrapper').find('.index-input').val(); 220 if (index == ""){ 221 return; 222 } 223 } 186 224 detail = this.details[name]; 187 225 //url = this.getdetailurl(name, widget); 188 226 if (detail == undefined) { 189 227 //content = this.getdetailcontent(name, widget); 190 detail = new Detail( widget );228 detail = new Detail( widget, name ); 191 229 this.adddetail(detail); 192 230 } else { … … 228 266 if ($(widget).closest('.c-widget').attr('id') == 'collections-widget'){ 229 267 name = 'collections'; 268 } else { 269 if ($(widget).attr("name") == "detail_index"){ 270 name = 'index'; 271 } else { 272 if ($(widget).prev().hasClass("value-input")){ 273 name = 'values'; 274 } 275 } 230 276 } 231 277 } … … 282 328 } 283 329 }; 330 331 332 function showDetail(_data, textStatus, xmlhttpreq) { 333 try { 334 var data = _data; 335 var blankdata = "<html><\html>"; 336 337 if(typeof xmlhttpreq!='undefined') 338 { 339 if (xmlhttpreq.responseXML != null){ 340 var isinfo = xmlhttpreq.responseXML.baseURI.split("/static/info.xml?id="); 341 if (isinfo != "undefined"){ 342 if ( isinfo.length = 2){ 343 var infoid = new RegExp('[\\?]id=([^&#]*)').exec(xmlhttpreq.responseXML.baseURI); 344 infoid = infoid[1] || 0; 345 infoid = infoid + "-info"; 346 data = $(_data).find('#' + infoid); 347 } 348 } 349 } 350 } 351 352 if (!$('#detail-float').is( ":ui-dialog" )) { 353 initDetailFloat(); 354 } 355 356 if (data == null){ 357 var title = ""; 358 $('#detail-float').html(blankdata); 359 360 if ( $('#detail-float').dialog("isOpen")) { 361 var up = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-titlebar-up'); 362 up.removeClass('.cmd_up .ui-dialog-titlebar-up').addClass('.cmd_get .ui-dialog-titlebar-get'); 363 var down = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-titlebar-down'); 364 down.removeClass('.cmd_down .ui-dialog-titlebar-down').addClass('.cmd_get .ui-dialog-titlebar-get'); 365 366 $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-title').text(title); 367 } else { 368 $('#detail-float').dialog('open'); 369 $('#detail-float').siblings('div.ui-dialog-titlebar').addClass('ui-state-default'); 370 $('#detail-float').siblings('div.ui-dialog-titlebar').children().remove(); 371 var x = '<span class="cmd cmd_del ui-dialog-titlebar-del "/><span class="cmd cmd_get ui-dialog-titlebar-get"/><span class="ui-dialog-title">' + "" +'</span>'; 372 $('#detail-float').siblings('div.ui-dialog-titlebar').prepend(x); 373 374 } 375 376 } else 377 { 378 379 // detail data 380 var did = $(data).attr("id"); 381 var detail = detailcaller.getdetail(did); 382 var pos = $(detail.detailwidget).offset(); 383 pos.top = pos.top + $(detail.detailwidget).height(); 384 385 $('#detail-float').html(data); 386 var title = $('#detail-float').find('.inner-title').attr('value'); 387 if (title == undefined) title = $('#detail-float').find('.title, .inner-title').first().text(); 388 $('#detail-float').dialog( "option", "title", title ); 389 $("#detail-float").dialog('option', 'position', [pos.left,pos.top]); 390 391 $('#detail-float').find('.detail-header').hide(); 392 $('#detail-float').find('.detail-content').show(); 393 394 if ( $('#detail-float').dialog("isOpen")) { 395 var get = $('#detail-float').siblings('div.ui-dialog-titlebar').find('.cmd_get'); 396 get.removeClass('cmd_get'); 397 get.removeClass('ui-dialog-titlebar-get'); 398 get.addClass('cmd_up'); 399 get.addClass('ui-dialog-titlebar-up'); 400 401 $('#detail-float').siblings('div.ui-dialog-titlebar').find('.ui-dialog-title').text(title); 402 } else { 403 //ui-state-default 404 $('#detail-float').dialog('open'); 405 $('#detail-float').siblings('div.ui-dialog-titlebar').addClass('ui-state-default'); 406 $('#detail-float').siblings('div.ui-dialog-titlebar').children().remove(); 407 var x = '<span class="cmd cmd_del ui-dialog-titlebar-del "/><span class="cmd cmd_up ui-dialog-titlebar-up"/><span class="ui-dialog-title">' + title +'</span>'; 408 $('#detail-float').siblings('div.ui-dialog-titlebar').append(x); 409 } 410 } 411 412 } catch (e) { 413 notifyUser(e,'debug'); 414 } 415 } -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_ui_helpers.js
r1159 r1177 1 2 var outerLayout, middleLayout, innerLayout;3 var block_positions = ["center","north","south","east","west"];4 1 5 2 function createBlock(name, _parent){ … … 124 121 } 125 122 126 123 //// 124 function handleValueCaller(_this){ 125 126 $(_this).after('<div class="ui-context-dialog cmds-ui-closable cmd cmd_get" ></div>'); 127 detail = $(_this).parent().children('.ui-context-dialog'); 128 129 detail.load($(_this).attr('href'), function(event) { 130 $(this).removeClass('cmd_get cmd'); 131 handleUIBlock($(this).children('.cmds-ui-block')); 132 addPaging($(this).children('.cmds-ui-block')); 133 $(this).show(); 134 135 $(this).find('.cmd_columns').click(function(event) { 136 event.preventDefault(); 137 handleValueSelection($(this)); 138 }); 139 }); 140 } 141 function handleIndexSelection(elem){ 142 var index = $(elem).closest('.treecol').text(); 143 searchclauseset.updatedata(index, false); 144 }; 145 function handleValueSelection(elem){ 146 var index = undefined; 147 if ($(elem).closest('.ui-context-dialog').parent().siblings('.treecol').length > 0){ 148 index = $(elem).closest('.ui-context-dialog').parent().siblings('.treecol').text(); 149 } 150 var value = $(elem).closest('td').text(); 151 searchclauseset.updatedata(index, false, undefined, value); 152 }; 127 153 // 128 154 function handleUIBlock (elems) -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_ui_load.js
r1169 r1177 188 188 } 189 189 // select first 190 if ( params["repository"] != undefined){191 var r = parseInt( params["repository"])-1;190 if (url_params["repository"] != undefined){ 191 var r = parseInt(url_params["repository"])-1; 192 192 $($select.find("option")[r]).attr("selected","true"); 193 193 } else { … … 424 424 function loadQueryFromUriParams(){ 425 425 426 var q = params["q"];427 var squery = params["squery"];428 var collection = params["collection"];429 var startItem = params["startItem"];430 var maximumItems = params["maximumItems"];431 var repository = params["repository"];432 var columns = params["columns"];426 var q = url_params["q"]; 427 var squery = url_params["squery"]; 428 var collection = url_params["collection"]; 429 var startItem = url_params["startItem"]; 430 var maximumItems = url_params["maximumItems"]; 431 var repository = url_params["repository"]; 432 var columns = url_params["columns"]; 433 433 if ((q != undefined) || (squery != undefined) || (collection != undefined)) { 434 434 if (q == undefined) { -
MDService2/trunk/MDService2/WebContent/scripts/mdservice_ui_settings.js
r1169 r1177 1 1 //VARIABLES 2 2 var jsonw; 3 var params;3 var url_params; 4 4 var local_collections = false; 5 6 var element_autocomplete = new Array(); 7 var elements_hashtable = {}; 8 9 var outerLayout, middleLayout, innerLayout; 10 var block_positions = ["center","north","south","east","west"]; 11 5 12 6 13 // LOAD DATA SEETTINGS … … 259 266 } 260 267 }, 261 columns:{262 id: " #columns",268 index:{ 269 id: "", 263 270 detail: { 264 271 parent: "", -
MDService2/trunk/MDService2/WebContent/style/cmds-ui.css
r1170 r1177 71 71 72 72 .cmds-elem-plus .detail, 73 .ui-context-dialog { display:none }/*; position:absolute; border 1px solid #A6C9E2; background-color: #fafaff;z-index:1; }*/73 .ui-context-dialog { display:none; overflow: auto; position:absolute; border 1px solid #A6C9E2; background-color: #fafaff;}/* z-index:1; }*/ 74 74 /* .cmds-elem-plus .detail { display: none; border: 1px solid #A6C9E2;} */ 75 75
Note: See TracChangeset
for help on using the changeset viewer.