Esempio n. 1
0
def getfunOranizationList(request, txt, department):
    namelist = ""
    db = uf.getDBConnection()
    '''
	db.federalfund.distinct("ORGANIZATION_NAME").forEach(function(doc){
	 db.federalfundOrganizations.insert({name:doc})
	}
	)
	db.federalfundOrganizations.createIndex({name:1})
	'''

    x = re.compile(txt, re.IGNORECASE)
    c = db.federalfundOrganizations.find({
        "name": x,
        "department": department,
        "fundcount": {
            "$gt": 3
        }
    }).limit(20)

    for u in c:
        namelist = namelist + '<a href="#" onclick=\'getFederalFund("' + u[
            "name"] + '", "NIH")\'>' + u["name"] + '</a><br>'

    #getFederalFund("University of Arizona","NIH","NSF","")
    return HttpResponse(namelist)
Esempio n. 2
0
def getFederalFund(request, university, sponsor, yearfrom, yearto):
    data = ""
    db = uf.getDBConnection()

    map = Code(
        ' function() { var txt = this.topics; if(txt){ txt = txt.split(",");  for (var i = txt.length - 1; i >= 0; i--)  if (txt[i])  emit(txt[i], 1);  }}'
    )
    reduce = Code(
        ' function( key, values ) {     var count = 0;     values.forEach(function(v) {   count +=v; });  return count; }'
    )
    query = {}
    query["ORGANIZATION_NAME"] = university.upper()
    if sponsor != "":
        query["DEPARTMENT"] = sponsor.upper()

    result = db.federalfund.map_reduce(map,
                                       reduce,
                                       "tmpTopicsFundCount",
                                       query=query)
    data = "var federaltopics={"
    res = result.find().sort("value", -1)
    for doc in res:
        data = data + "'" + doc["_id"] + "'" + ":" + str(doc["value"]) + ", "
    data = data + "}"
    return HttpResponse(data)
Esempio n. 3
0
def savefeedback(request):
    quid = request.POST.get('quid', '')
    txt = request.POST.get('txt', '')
    db = uf.getDBConnection()
    t2 = {"$set": {'feedback': txt}}
    db.searchQuery.update({'quid': quid}, t2)
    return HttpResponse("Saved!")
Esempio n. 4
0
def selectedbuilding(request, txt):

    selectedIds = "var selected=["
    db = uf.getDBConnection()
    cursor = db.emplbuilding.find({"buildingid": txt})

    for doc in cursor:
        selectedIds = selectedIds + str(doc["dummyid"]) + ","
    selectedIds = selectedIds + "]"
    return HttpResponse(selectedIds)
Esempio n. 5
0
def selecteddepartments(request, txt):

    db = uf.getDBConnection()
    txt = txt.split(",")  #["Medicine","Health Promotion Sciences"]
    cursor = db.currentfacuty.find({"dept": {"$in": txt}})
    userid = []
    for doc in cursor:
        userid.append(doc["userid"])

    cursor = db.networkv2Nodes.find({"userid": {"$in": userid}})
    selectedIds = ""
    for doc in cursor:
        selectedIds = selectedIds + str(doc["dummyid"]) + ","

    return HttpResponse(selectedIds)
Esempio n. 6
0
def peoplesearch3(request):

    if request.POST.get('url', '') != "":
        url = request.POST.get('url', '')
        qid, txt = uf.geturlcontent(url)
        qid = str(int(qid))
    else:
        txt2 = request.POST.get('txt', 'add text')
        ts = time.time()
        qid = datetime.datetime.fromtimestamp(ts).strftime('%Y%m%d%H%M%S')
        db = uf.getDBConnection()
        t2 = {'quid': qid, 'query': txt2, 'url': 'xxx'}
        db.searchQuery.insert(t2)
    cmd = "java -cp \"" + uf.peopleserachbasedlocation + ":" + uf.peopleserachbasedlocation + "*\"  LuceneQuery " + str(
        qid)
    print(cmd)
    proc = Popen(cmd, stdout=PIPE, stdin=PIPE, stderr=PIPE, shell=True)
    data, map_err = proc.communicate()
    return HttpResponse(data + map_err)