Changeset 8211
- Timestamp:
- 03/04/12 13:33:26 (9 years ago)
- Location:
- mauRepo/MolesManager/trunk
- Files:
-
- 5 added
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
mauRepo/MolesManager/trunk/.pydevproject
r8180 r8211 3 3 4 4 <pydev_project> 5 <pydev_property name="org.python.pydev.PYTHON_PROJECT_INTERPRETER"> MolesManagerEnv</pydev_property>5 <pydev_property name="org.python.pydev.PYTHON_PROJECT_INTERPRETER">python.exe</pydev_property> 6 6 <pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">python 2.7</pydev_property> 7 7 <pydev_variables_property name="org.python.pydev.PROJECT_VARIABLE_SUBSTITUTION"> -
mauRepo/MolesManager/trunk/src/MolesManager/molesSessionMiddleware.py
r8206 r8211 29 29 30 30 # This indexes the tsvector column 31 31 32 db_manager._engine.execute("create index md_identifier_code_search_index on md_identifier using gin(code_search_vector)") 32 33 -
mauRepo/MolesManager/trunk/src/MolesManager/settings.py
r8138 r8211 27 27 'default': { 28 28 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 29 #'NAME': 'c:/virtualenvs/www/MolesManager/src/sqlite.db', #'/misc/frigid3/humid1/mnagni/workspaces/moles3/MolesManager/src/sqlite.db', # Or path to database file if using sqlite3. 29 30 'NAME': '/misc/frigid3/humid1/mnagni/workspaces/moles3/MolesManager/src/sqlite.db', # Or path to database file if using sqlite3. 30 31 'USER': '', # Not used with sqlite3. … … 46 47 # Language code for this installation. All choices can be found here: 47 48 # http://www.i18nguy.com/unicode/language-identifiers.html 48 LANGUAGE_CODE = 'en- us'49 LANGUAGE_CODE = 'en-gb' 49 50 50 51 SITE_ID = 1 … … 77 78 # Example: "http://media.lawrence.com/static/" 78 79 79 #Deployment parametrized version 80 STATIC_URL = 'http://localhost' 80 #Deployment parameterized version 81 #STATIC_URL = 'http://localhost' 82 STATIC_URL = 'http://127.0.0.1:8000/static/' 83 #STATIC_ROOT = os.path.join(PROJECT_ROOT, STATIC_URL) 84 #STATIC_URL = '/static/' 85 #STATIC_ROOT = os.path.join(PROJECT_ROOT, STATIC_URL) 81 86 82 87 # URL prefix for admin static files -- CSS, JavaScript and images. … … 199 204 MIGRATION_DB_SCRIPT = doMigration 200 205 201 RUN_MIGRATION = True206 RUN_MIGRATION = False 202 207 #Default to one day 203 208 MIGRATION_INTERVAL = 86400 -
mauRepo/MolesManager/trunk/src/MolesManager/static/js/cedaObservation.js
r8200 r8211 6 6 // return(<value>); 7 7 // } 8 function createCitation(coObs){ 9 var loopVal; 10 var author; 11 var co_author; 12 alert(coObs.relatedParty.length); 13 for (loopVal=0; loopVal<coObs.relatedParty.length; loopVal++) { 14 //temporarily make safe the loop 15 if (coObs.relatedParty[loopVal].role == null) { 16 continue; 8 9 function getIDs(coObs) 10 { 11 var idDict = {}; 12 for (loopVal=0; loopVal<coObs.identifier.length; loopVal++){ 13 idDict[coObs.identifier[loopVal].authority.title] = coObs.identifier[loopVal].code; 17 14 } 18 //alert(coObs.relatedParty[loopVal]); 19 20 //alert(coObs.relatedParty[loopVal].party); 21 //alert(coObs.relatedParty[loopVal].party.length); 22 if (coObs.relatedParty[loopVal].role.name == 'cl_author') { 23 author = coObs.relatedParty[loopVal].party[0].name; 24 } 25 26 else if (coObs.relatedParty[loopVal].role.name == 'cl_coinvestigator') { 27 alert(coObs.relatedParty[loopVal].role.name); 28 alert(coObs.relatedParty[loopVal].party); 29 if (coObs.relatedParty[loopVal].party != ''){ 30 for (coAuth = 0; coAuth<coObs.relatedParty[loopVal].party.length; coAuth++) { 31 co_author = coObs.relatedParty[loopVal].party[coAuth].name; 15 if (!('doi' in idDict)){ 16 idDict['doi'] = 'test/doi.string.123456' 17 } 18 return idDict 19 } 20 21 function getRelatedParties(coObs){ 22 var relatedPartyDict = {}; 23 for (loopVal=0; loopVal<coObs.relatedParty.length; loopVal++) 24 { 25 var names=[]; 26 if (typeof coObs.relatedParty[loopVal].role !='undefined') 27 { 28 if (typeof coObs.relatedParty[loopVal].role.name !='undefined') 29 { 30 for (loopInner=0; loopInner<coObs.relatedParty[loopVal].party.length; loopInner++) 31 { 32 names.push(coObs.relatedParty[loopVal].party[0].name) 33 } 34 relatedPartyDict[coObs.relatedParty[loopVal].role.name] = names; 32 35 } 33 } else { 34 co_author = ['']; 36 35 37 } 36 38 } 39 return relatedPartyDict 40 } 41 42 function createCitation(coObs,ids,rps){ 43 var citationString =''; 44 citationString += rps['cl_author']; 45 if (rps.hasOwnProperty('cl_coinvestigator')){ 46 for (loopVal=0; loopVal<rps['cl_coinvestigator'].length; loopVal++) 47 { citationString += ', ' + rps['cl_coinvestigator'][loopVal] 48 } 37 49 } 38 //author = coObs.relatedParty[0].party[0].name;39 //co_author.push(coObs.relatedParty[2].party[0].name);40 var citationString = '' + author.toString() + ', ' + co_author.toString();//.toString()//+ ' sub_author_list ' + 'title'41 //var citationString = typeof coObs.relatedParty[0].role.name;50 citationString += '. ' + ids['ceda_title'] + '. ' + 'Centre for Environmental Data Archival.'; 51 if ('doi' in ids){ 52 citationString += ' ' + ids['doi']; 53 } 42 54 return citationString 43 55 } 44 45 46 47 console.log("loads the page") 56 48 57 require(['dojo/ready', 'dojo/parser', 'dijit/registry', 'dojo/_base/json', 'dojo/store/Memory', 49 58 'dijit/Tree', 'dijit/form/Button'], function(ready, parser, registry, Tree){ 50 ready(function () { 59 ready(function () 60 { 51 61 52 62 //---------------------------------------------- … … 58 68 //obs_id.startup(); 59 69 60 var button = new dijit.form.Button({ 70 var button = new dijit.form.Button( 71 { 61 72 type: "submit", 62 73 label: "Search", … … 65 76 button.startup(); 66 77 67 var records_dataLineage = new dijit.form.Textarea({ 78 var records_dataLineage = new dijit.form.Textarea( 79 { 68 80 value: "" 69 81 }, "records_dataLineage"); 70 82 records_dataLineage.startup(); 71 83 72 var description_id = new dijit.form.Textarea({ 84 var description_id = new dijit.form.Textarea( 85 { 73 86 value: "" 74 87 }, "description_id"); 75 88 description_id.startup(); 76 89 77 var title_id = new dijit.form.TextBox({ 90 var title_id = new dijit.form.Textarea( 91 { 78 92 value: "", 79 93 }, "title_id"); 80 94 title_id.startup(); 81 95 82 var citation_id = new dijit.form.TextBox({ 96 var citation_id = new dijit.form.Textarea( 97 { 83 98 value: "" 84 99 }, "citation_id"); 85 100 citation_id.startup(); 86 101 87 var keywords_id = new dijit.form.TextBox({ 102 var keywords_id = new dijit.form.TextBox( 103 { 88 104 value: "" 89 105 }, "keywords_id"); … … 92 108 //---------------------------------------------- 93 109 //---------- Loads the widgets values ---------- 94 //---------------------------------------------- 95 110 //---------------------------------------------- 111 96 112 var json = dojo.byId('coObs_id').value; 97 113 var coObs = dojo.fromJson(json); 114 115 console.log(coObs.identifier.length) 116 98 117 console.log(coObs) 99 100 dojo.attr("title_id", 'value', coObs.title); 101 dojo.attr("citation_id", 'value', createCitation(coObs)); 118 var ids = getIDs(coObs); 119 var rps = getRelatedParties(coObs); 120 121 dojo.attr("title_id", 'value', ids['ceda_title']); 122 dojo.attr("citation_id", 'value', createCitation(coObs,ids,rps)); 102 123 dojo.attr("records_dataLineage", 'value', coObs.dataLineage); 103 124 dojo.attr("description_id", 'value', coObs.description); 104 125 dojo.attr("keywords_id", 'value', coObs.keywords); 105 106 rp = new dojo.store.Memory(coObs.relatedParty); 107 108 console.log(rp) 126 coords = new dojo.store.Memory(coObs.geographicalExtent); 127 rp = new dojo.store.Memory(coObs.relatedParty[0]); 109 128 }); 110 129 }); -
mauRepo/MolesManager/trunk/src/MolesManager/static/templates/base.html
r8200 r8211 30 30 <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/dojo/1.5/dijit/themes/claro/layout/TabContainer.css" /> 31 31 32 <body class="claro">33 34 35 32 <script type="text/javascript"> 36 33 console.log("load dojoConfig"); … … 59 56 <!--[if IE]><style type="text/css"> body {word-wrap: break-word;}</style><![endif]--> 60 57 61 <body >58 <body class="claro"> 62 59 <!-- CONTAINER FOR ENTIRE PAGE --> 63 60 <div class="container_12 fill" id="headerContainer"> -
mauRepo/MolesManager/trunk/src/MolesManager/static/templates/cedaObservation.html
r8141 r8211 1 1 {% extends "base.html" %} 2 2 {% block extra_head %} 3 4 {% endblock %} 3 <script src="http://openlayers.org/api/OpenLayers.js"></script> 4 <link rel="stylesheet" href="http://openlayers.org/dev/theme/default/style.css" type="text/css"> 5 6 <script type="text/javascript"> 7 var box_extents = [[-10,50,4,62]]; 8 var map; 9 var vectorLayer = new OpenLayers.Layer.Vector("Overlay",{isBaseLayer:false}); 10 function init() { 11 map = new OpenLayers.Map('map'); 12 var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS", "http://vmap0.tiles.osgeo.org/wms/vmap0?", {layers: 'basic'} ); 13 14 var boxes = new OpenLayers.Layer.Vector( "Boxes" ); 15 16 for (var i = 0; i < box_extents.length; i++) { 17 ext = box_extents[i]; 18 console.log(ext[0],ext[1]) 19 bounds = new OpenLayers.Bounds(ext[0],ext[1],ext[2],ext[3]); 20 21 22 box = new OpenLayers.Feature.Vector(bounds.toGeometry()); 23 24 boxes.addFeatures(box); 25 26 } 27 28 map.addLayer([ol_wms,boxes]); 29 console.log('ere') 30 map.addControl(new OpenLayers.Control.LayerSwitcher()); 31 var sf = new OpenLayers.Control.SelectFeature(boxes); 32 map.addControl(sf); 33 sf.activate(); 34 var proj = new OpenLayers.Projection("EPSG:4326"); 35 var point = new OpenLayers.LonLat(ext[0], ext[1]); 36 point.transform(proj, map.getProjectionObject()); 37 38 map.setCenter(point,3); 39 map.zoomToMaxExtent(); 40 } 41 window.onload = init; 42 </script> 43 44 45 {% endblock %} 5 46 6 47 {% block title %} CEDA Observation Record {% endblock %} … … 18 59 19 60 <div class="grid_8 alpha cedaObs" id="upper_middle_top"> 20 <label for="title">Title</label><div id="title_id" ></div> <br />61 <label for="title">Title</label><div id="title_id" class = "coObs_cite"></div> <br /> 21 62 <label for="citation">Citation</label><div id="citation_id"></div><br /> 22 63 <label for="keywords">Keywords</label><div id="keywords_id"></div><br /> … … 27 68 28 69 29 30 70 <div id = "middle_section" class="grid_12 whiteFill"> 31 <div id="middleLeft cedaObs" class=grid_3>71 <div class="grid_3 cedaobs alpha" id="middleLeft cedaObs"> 32 72 <script type="text/javascript"> 33 73 require(["dojo/parser", "dijit/layout/AccordionContainer", "dijit/layout/ContentPane"]); … … 49 89 </div> 50 90 </div> 51 <div class="grid_ 6cedaObs" id="middleMiddle">52 <div class="grid_ 6alpha" id="description">91 <div class="grid_5 cedaObs" id="middleMiddle"> 92 <div class="grid_5 alpha" id="description"> 53 93 <label for="description">Description</label><div id="description_id"></div> 54 94 <br /> 55 95 </div><!-- End of div description --> 56 <div class="grid_ 6omega" id="news">96 <div class="grid_5 omega" id="news"> 57 97 <p>News bar</p> 58 98 </div><!-- End of div news --> 59 99 </div> 100 <div class="grid_3 cedaObs omega" id="middleRight"> 101 <label for="geographicExtent">Geographic Extent</label><div id="geographicalExtent_id"></div> <br /> 102 <!-- begin map test --> 103 <div style="width:220px; height:150px" id="map" class="smallmap"></div> 60 104 61 <div class="grid_3 cedaObs" id="middleRight">62 <label for="geographicExtent">Geographic Extent</label><div id="geographicalExtent_id"></div> <br /> 105 <!-- end map test --> 106 63 107 <label for="resolution">Resolution</label><div id="resolution_id"></div> <br /> 64 108 </div> <!-- End of div upper_right --> -
mauRepo/MolesManager/trunk/src/MolesManager/static/templates/cedaSearch.html
r8120 r8211 4 4 {% endblock %} 5 5 6 {% block title %} CEDA Observation Record{% endblock %}6 {% block title %} CEDA Search Page {% endblock %} 7 7 8 8 {% block main %} … … 13 13 <div class="grid_12 claro fillWhite"> 14 14 <script type="text/javascript"> 15 require(['dijit/form/Form', 'dijit/form/TextBox' , 'ceda/cedaObservation']);15 require(['dijit/form/Form', 'dijit/form/TextBox']); 16 16 </script> 17 17 18 <input type="hidden" name="co Obs" id="coObs_id" value="{{ coObs}}" />18 <input type="hidden" name="coSearchTerm" id="coSearchTerm" value="{{ coSearchTerm }}" /> 19 19 20 <div data-dojo-type="dijit.form.Form" id=" myForm" data-dojo-id="myForm" encType="multipart/form-data" action="." method="POST">20 <div data-dojo-type="dijit.form.Form" id="searchForm" data-dojo-id="searchForm" encType="multipart/form-data" action="." method="POST"> 21 21 22 22 <script type="dojo/method" data-dojo-event="onSubmit"> … … 33 33 34 34 <div class="fieldWrapper"> 35 <label for="id_obj_id">ID</label> 36 <input type="text" name="obs_id" value= "" 37 data-dojo-type="dijit.form.TextBox" 38 data-dojo-props="trim:true, propercase:true" id="obs_id"/> 35 <label for="id_obj_id">SearchTerm</label> 36 <input type="text" name="searchTerm" value= "" data-dojo-type="dijit.form.TextBox" data-dojo-props="trim:true, propercase:true" id="coSearchTerm"/> 39 37 </div> <!-- End of div fieldWrapper --> 40 38 <button id="search_obs" type="submit"></button> -
mauRepo/MolesManager/trunk/src/MolesManager/urls.py
r8142 r8211 33 33 ) 34 34 35 # comment out all below 36 35 37 #urlpatterns += patterns('', 36 38 # url(r'css/(?P<path>.*)$', 'django.views.static.serve', {'document_root': STATIC_ROOT+'/css' , 'show_indexes': True}), -
mauRepo/MolesManager/trunk/src/MolesManager/views/cedaObservationView.py
r8200 r8211 16 16 ''' 17 17 @param request: an HttpRequest 18 @param objectId: an i stance of ObjectById18 @param objectId: an instance of ObjectById 19 19 ''' 20 20 if request.POST.has_key('obs_id'): 21 21 dp = Moles3EPB.searchEager(CEDA_Observation, request.POST['obs_id'], request.moles_session) 22 22 c['records'] = dp 23 23 24 24 25 def coView(request): -
mauRepo/MolesManager/trunk/src/MolesManager/views/cedaSearch.py
r8120 r8211 17 17 @param objectId: an instance of ObjectById 18 18 ''' 19 if request.POST.has_key('obs_id'): 20 dp = Moles3EPB.search(CEDA_Observation, request.POST['obs_id'], request.moles_session) 21 c['records'] = dp 19 20 if request.POST.has_key('searchTerm'): 21 print "got the post term. now to search" 22 title = '%' + '' + '%' 23 obs_with_title = request.moles_session.query(CEDA_Observation).filter(CEDA_Observation.identifier.code.like(title)) 24 25 c['records'] = obs_with_title 26 22 27 23 28 def coSearch(request): … … 25 30 __getSample(request, c) 26 31 if c.has_key('records'): 27 c['coObs'] = DJEncoder().encode(c['records']) 28 print c['coObs'] 29 30 c.update(csrf(request)) 31 return render_to_response('cedaObservation.html', c) 32 c.update(csrf(request)) 33 c.update(csrf(request)) 34 return render_to_response('cedaSearch.html', c)
Note: See TracChangeset
for help on using the changeset viewer.