public Classified GetClassifiedByID(UUID id) { object remoteValue = DoRemote(id); if (remoteValue != null || m_doRemoteOnly) return (Classified) remoteValue; QueryFilter filter = new QueryFilter(); Dictionary<string, object> where = new Dictionary<string, object>(1); where.Add("ClassifiedUUID", id); filter.andFilters = where; List<string> retVal = GD.Query(new[] {"*"}, "userclassifieds", filter, null, null, null); if ((retVal == null) || (retVal.Count == 0)) return null; Classified classified = new Classified(); classified.FromOSD((OSDMap) OSDParser.DeserializeJson(retVal[6])); return classified; }
public List<Classified> GetClassifiedsInRegion(string regionName) { object remoteValue = DoRemote(regionName); if (remoteValue != null || m_doRemoteOnly) return (List<Classified>) remoteValue; QueryFilter filter = new QueryFilter(); filter.andFilters["SimName"] = regionName; List<string> retVal = GD.Query(new[] {"*"}, "userclassifieds", filter, null, null, null); if (retVal.Count == 0) { return new List<Classified>(); } List<Classified> Classifieds = new List<Classified>(); for (int i = 0; i < retVal.Count; i += 9) { Classified classified = new Classified(); //Pull the classified out of OSD classified.FromOSD((OSDMap) OSDParser.DeserializeJson(retVal[i + 6])); Classifieds.Add(classified); } return Classifieds; }
public List<Classified> GetClassifieds(UUID ownerID) { object remoteValue = DoRemote(ownerID); if (remoteValue != null || m_doRemoteOnly) return (List<Classified>) remoteValue; QueryFilter filter = new QueryFilter(); filter.andFilters["OwnerUUID"] = ownerID; List<string> query = GD.Query(new[] {"*"}, "userclassifieds", filter, null, null, null); List<Classified> classifieds = new List<Classified>(); for (int i = 0; i < query.Count; i += 9) { Classified classified = new Classified(); classified.FromOSD((OSDMap) OSDParser.DeserializeJson(query[i + 6])); classifieds.Add(classified); } return classifieds; }
public List<DirClassifiedReplyData> FindClassifieds(string queryText, string category, uint queryFlags, int StartQuery, UUID scopeID) { object remoteValue = DoRemote(queryText, category, queryFlags, StartQuery, scopeID); if (remoteValue != null || m_doRemoteOnly) return (List<DirClassifiedReplyData>) remoteValue; QueryFilter filter = new QueryFilter(); filter.andLikeFilters["Name"] = "%" + queryText + "%"; if (int.Parse(category) != (int) DirectoryManager.ClassifiedCategories.Any) //Check the category filter.andFilters["Category"] = category; if (scopeID != UUID.Zero) filter.andFilters["ScopeID"] = scopeID; List<string> retVal = GD.Query(new[] {"*"}, "userclassifieds", filter, null, (uint) StartQuery, 50); if (retVal.Count == 0) return new List<DirClassifiedReplyData>(); List<DirClassifiedReplyData> Data = new List<DirClassifiedReplyData>(); for (int i = 0; i < retVal.Count; i += 9) { //Pull the classified out of OSD Classified classified = new Classified(); classified.FromOSD((OSDMap) OSDParser.DeserializeJson(retVal[i + 5])); DirClassifiedReplyData replyData = new DirClassifiedReplyData { classifiedFlags = classified.ClassifiedFlags, classifiedID = classified.ClassifiedUUID, creationDate = classified.CreationDate, expirationDate = classified.ExpirationDate, price = classified.PriceForListing, name = classified.Name }; //Check maturity levels if ((replyData.classifiedFlags & (uint) DirectoryManager.ClassifiedFlags.Mature) != (uint) DirectoryManager.ClassifiedFlags.Mature) { if ((queryFlags & (uint) DirectoryManager.ClassifiedQueryFlags.Mature) == (uint) DirectoryManager.ClassifiedQueryFlags.Mature) Data.Add(replyData); } else //Its Mature, add all Data.Add(replyData); } return Data; }
public Classified GetClassified(UUID queryClassifiedID) { object remoteValue = DoRemote(queryClassifiedID); if (remoteValue != null || m_doRemoteOnly) return (Classified) remoteValue; QueryFilter filter = new QueryFilter(); filter.andFilters["ClassifiedUUID"] = queryClassifiedID; List<string> query = GD.Query(new[] {"*"}, "userclassifieds", filter, null, null, null); if (query.Count < 9) { return null; } Classified classified = new Classified(); classified.FromOSD((OSDMap) OSDParser.DeserializeJson(query[6])); return classified; }