|
From: S C. <sl...@us...> - 2008-06-23 19:16:49
|
Update of /cvsroot/strandmapservic/nsdl-client-project/web/js In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv7837/web/js Modified Files: nsdlclientsms.js Log Message: debug=1 parameter in url provides link to results xml and tab with bm info Index: nsdlclientsms.js =================================================================== RCS file: /cvsroot/strandmapservic/nsdl-client-project/web/js/nsdlclientsms.js,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** nsdlclientsms.js 16 May 2008 21:57:13 -0000 1.8 --- nsdlclientsms.js 23 Jun 2008 19:16:46 -0000 1.9 *************** *** 29,43 **** // Use the built-in tabs for displaying related benchmarks and nses standards: infoBubble.addBuiltinTab("nses","NSES Standards"); - infoBubble.addBuiltinTab("relatedbenchmarks","Related Benchmarks"); ! // When a benchmark is selected by the user, make sure the resourcesTab is displayed: ! SMSEvent.addListener(StrandMap,"onbenchmarkselect", function() { ! infoBubble.selectTab(resourcesTab); ! }); ! // Create the 'Recommend' tab and set it's handler: recommendTab = new InfoBubbleTab('Recommend a Resource'); infoBubble.addTab(recommendTab); SMSEvent.addListener(StrandMap,"onbenchmarkselect",recommendTabCallback); } --- 29,52 ---- // Use the built-in tabs for displaying related benchmarks and nses standards: infoBubble.addBuiltinTab("nses","NSES Standards"); ! if(gup('debug') == 1){ ! // Add tabs to the Info Bubble in the order they will appear: ! benchmarkInfoTab = new InfoBubbleTab('Benchmark info'); ! infoBubble.addTab(benchmarkInfoTab); ! SMSEvent.addListener(benchmarkInfoTab,"onselect",myCallBackForBenchmarkInfoTab); ! } else { ! // Use the built-in tabs for displaying related benchmarks and nses standards: ! infoBubble.addBuiltinTab("relatedbenchmarks","Related Benchmarks"); ! } ! // Create the 'Recommend' tab and set it's handler: recommendTab = new InfoBubbleTab('Recommend a Resource'); infoBubble.addTab(recommendTab); SMSEvent.addListener(StrandMap,"onbenchmarkselect",recommendTabCallback); + + // When a benchmark is selected by the user, make sure the resourcesTab is displayed: + SMSEvent.addListener(StrandMap,"onbenchmarkselect", function() { + infoBubble.selectTab(resourcesTab); + }); } *************** *** 320,324 **** function sendResRequest(offset,displaytype,callback){ var json = StrandMap.getSelectedBenchmarkRecordJson(); ! if(!offset){ offset = 0; --- 329,333 ---- function sendResRequest(offset,displaytype,callback){ var json = StrandMap.getSelectedBenchmarkRecordJson(); ! var id = StrandMap.getSelectedBenchmarkId(); if(!offset){ offset = 0; *************** *** 327,377 **** displaytype=''; } ! if(displaytype == 'strict'){ ! var recordJson = StrandMap.getSelectedBenchmarkRecordJson(); ! var AAASCodeMod = getAAASCode(recordJson); ! var id = StrandMap.getSelectedBenchmarkId(); ! var reqUrl = "bubble/resourcesStrict.jsp?bmId="+ id + "&startingOffset=" + offset + "&displaytype="+displaytype+"&AAASCodeMod="+AAASCodeMod; } else { ! ! <!--// get the map id //--> ! var referringMapId = StrandMap.getReferringMapId(); ! if(referringMapId != null){ ! var mapId = referringMapId; ! } else { ! var mapId = StrandMap.getMapId(); ! } ! <!-- // get the grades for this benchmark //--> ! var grArray = json.itemRecord.Data.GradeRanges.GradeRange; ! switch(grArray[0]) ! { ! case 'K': ! var grades = 'K'; ! break ! case '3': ! var grades = '3'; ! break ! case '6': ! var grades = '6'; ! break ! case '9': ! var grades = '9'; ! break ! default: } ! <!-- // get the keywords for this benchmark //--> ! var kwArray = json.itemRecord.Data.Keywords.keyword; ! var keywords = ''; ! for(var i=0; i< kwArray.length; i++){ ! if(i == 0){ ! keywords += kwArray[i]; ! } else if(i == kwArray.length-1){ ! keywords += '|' + kwArray[i]; ! } else { ! keywords += '|' + kwArray[i]; ! } ! } if(mapId == 'SMS-MAP-1496' || mapId == 'SMS-MAP-1504' || mapId == 'SMS-MAP-1478' || mapId == 'SMS-MAP-1487'){ var subjects = 'social studies'; --- 336,385 ---- displaytype=''; } ! if(displaytype == 'strict'){ ! var recordJson = StrandMap.getSelectedBenchmarkRecordJson(); ! var AAASCodeMod = getAAASCode(recordJson); ! var reqUrl = "bubble/resourcesStrict.jsp?bmId="+ id + "&startingOffset=" + offset + "&displaytype="+displaytype+"&AAASCodeMod="+AAASCodeMod; ! } else { ! <!--// get the map id //--> ! var referringMapId = StrandMap.getReferringMapId(); ! if(referringMapId != null){ ! var mapId = referringMapId; } else { ! var mapId = StrandMap.getMapId(); ! } ! <!-- // get the grades for this benchmark //--> ! var grArray = json.itemRecord.Data.GradeRanges.GradeRange; ! switch(grArray[0]) ! { ! case 'K': ! var grades = 'K'; ! break ! case '3': ! var grades = '3'; ! break ! case '6': ! var grades = '6'; ! break ! case '9': ! var grades = '9'; ! break ! default: + } + <!-- // get the keywords for this benchmark //--> + var kwArray = json.itemRecord.Data.Keywords.keyword; + var keywords = ''; + for(var i=0; i< kwArray.length; i++){ + if(i == 0){ + keywords += kwArray[i]; + } else if(i == kwArray.length-1){ + keywords += '|' + kwArray[i]; + } else { + keywords += '|' + kwArray[i]; } ! } + if(mapId == 'SMS-MAP-1496' || mapId == 'SMS-MAP-1504' || mapId == 'SMS-MAP-1478' || mapId == 'SMS-MAP-1487'){ var subjects = 'social studies'; *************** *** 384,392 **** if(subjects == ''){ if(subjArray.search(':')){ ! var testsubj = subjArray.substr(subjArray.indexOf(':')+1); ! subjects += testsubj.replace(/#|\//g,'|'); ! } else { ! subjects += subjArray.replace(/#|\//g,'|'); ! } } } --- 392,400 ---- if(subjects == ''){ if(subjArray.search(':')){ ! var testsubj = subjArray.substr(subjArray.indexOf(':')+1); ! subjects += testsubj.replace(/#|\//g,'|'); ! } else { ! subjects += subjArray.replace(/#|\//g,'|'); ! } } } *************** *** 419,423 **** } } ! } } --- 427,431 ---- } } ! } } *************** *** 425,431 **** } } ! ! var reqUrl = "bubble/resources.jsp?keywords="+ keywords+ "&grades="+grades+"&subjects="+ subjects + "&startingOffset="+offset+ "&stdKeywords="+stdKeywords + "&displaytype="+displaytype; } new Ajax.Request( reqUrl, --- 433,442 ---- } } ! if(gup('debug') != 1){ ! var reqUrl = "bubble/resources.jsp?keywords="+ keywords+ "&grades="+grades+"&subjects="+ subjects + "&startingOffset="+offset+ "&stdKeywords="+stdKeywords + "&displaytype="+displaytype+"&bmId="+id+"&mapId="+mapId; ! } else { ! var reqUrl = "bubble/resources.jsp?keywords="+ keywords+ "&grades="+grades+"&subjects="+ subjects + "&startingOffset="+offset+ "&stdKeywords="+stdKeywords + "&displaytype="+displaytype+"&debug=1&bmId="+id+"&mapId="+mapId; } + } new Ajax.Request( reqUrl, *************** *** 526,529 **** --- 537,541 ---- }); } + function checkStrand(jsonResponse){ getStrandKeywords(jsonResponse); *************** *** 545,548 **** --- 557,596 ---- } + + + // This tab illustrates how to access benchmark JSON and display it in the tab: + function myCallBackForBenchmarkInfoTab() { + var id = StrandMap.getSelectedBenchmarkId(); + var mapTitle = StrandMap.getMapJson().itemRecord.Data.Name; + var recordJson = StrandMap.getSelectedBenchmarkRecordJson(); + + var content = '<h1>Benchmark details</h1>'; + content += '<p>In map <i>' + mapTitle + '</i></p>'; + + content += '<p>Here is a small sample of the data that is available from the service about this benchmark:</p>'; + content += '<ul>'; + content += '<li><b>Benchmark name</b>: ' + recordJson.itemRecord.Data.Name + '</li>'; + content += '<li><b>Description</b>: ' + recordJson.itemRecord.Data.Description + '</li>'; + content += '<li><b>Benchmark SMS ID</b>: ' + id + '</li>'; + content += '<li><b>AAAS Code</b>: ' + recordJson.itemRecord.Data.AAASCode + '</li>'; + + var grArray = recordJson.itemRecord.Data.GradeRanges.GradeRange; + content += '<li><b>Grade range</b>: ' + grArray[0] + ' - ' + grArray[grArray.length-1] + '</li>'; + + var kwArray = recordJson.itemRecord.Data.Keywords.keyword; + content += '<li><b>Keywords</b>: '; + for(var i=0; i< kwArray.length; i++) + content += kwArray[i] + (i == kwArray.length-1 ? '</li>' : ', '); + + var relArray = recordJson.itemRecord.Data.InternalRelationship.CatalogID; + content += '<li><b>Internal relationships</b>:'; + for(var i=0; i< relArray.length; i++) + content += '<br/>- ' + relArray[i].RelationType + ' - ' + relArray[i].CatalogNumber; + content += '</li></ul>'; + benchmarkInfoTab.setContent(content); + } + + + // ----- Other JS for the NSDL client page: *************** *** 574,576 **** isHelpDown = !isHelpDown; } ! \ No newline at end of file --- 622,635 ---- isHelpDown = !isHelpDown; } ! ! function gup( name ) ! { ! name = name.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]"); ! var regexS = "[\\?&]"+name+"=([^&#]*)"; ! var regex = new RegExp( regexS ); ! var results = regex.exec( window.location.href ); ! if( results == null ) ! return ""; ! else ! return results[1]; ! } \ No newline at end of file |