bool IPicksInterface.TryGetValue(UGUI user, UUID id, out ProfilePick pick)
        {
            using (var conn = new NpgsqlConnection(m_ConnectionString))
            {
                conn.Open();
                using (var cmd = new NpgsqlCommand("SELECT * FROM userpicks WHERE \"pickuuid\" = @uuid LIMIT 1", conn))
                {
                    cmd.Parameters.AddParameter("@uuid", id);
                    using (NpgsqlDataReader reader = cmd.ExecuteReader())
                    {
                        if (reader.Read())
                        {
                            pick                = new ProfilePick();
                            pick.Creator.ID     = reader.GetUUID("creatoruuid");
                            pick.Description    = (string)reader["description"];
                            pick.Enabled        = (bool)reader["enabled"];
                            pick.Name           = (string)reader["name"];
                            pick.OriginalName   = (string)reader["originalname"];
                            pick.ParcelID       = reader.GetParcelID("parceluuid");
                            pick.PickID         = reader.GetUUID("pickuuid");
                            pick.SimName        = (string)reader["simname"];
                            pick.SnapshotID     = reader.GetUUID("snapshotuuid");
                            pick.SortOrder      = (int)reader["sortorder"];
                            pick.TopPick        = (bool)reader["toppick"];
                            pick.GlobalPosition = reader.GetVector3("posglobal");
                            pick.ParcelName     = (string)reader["parcelname"];
                            return(true);
                        }
                    }
                }
            }

            pick = default(ProfilePick);
            return(false);
        }
예제 #2
0
 bool IClassifiedsInterface.TryGetValue(UGUI user, UUID id, out ProfileClassified classified)
 {
     using (var conn = new NpgsqlConnection(m_ConnectionString))
     {
         conn.Open();
         using (var cmd = new NpgsqlCommand("SELECT * FROM classifieds WHERE \"classifieduuid\" = @uuid LIMIT 1", conn))
         {
             cmd.Parameters.AddParameter("@uuid", id);
             using (NpgsqlDataReader reader = cmd.ExecuteReader())
             {
                 if (reader.Read())
                 {
                     classified = new ProfileClassified
                     {
                         ClassifiedID   = reader.GetUUID("classifieduuid"),
                         Category       = (int)reader["category"],
                         CreationDate   = reader.GetDate("creationdate"),
                         Creator        = reader.GetUGUI("creatoruuid"),
                         Description    = (string)reader["description"],
                         ExpirationDate = reader.GetDate("expirationdate"),
                         Flags          = (byte)(short)reader["classifiedflags"],
                         GlobalPos      = reader.GetVector3("posglobal"),
                         Name           = (string)reader["name"],
                         ParcelID       = reader.GetParcelID("parceluuid"),
                         ParcelName     = (string)reader["parcelname"],
                         ParentEstate   = (int)reader["parentestate"],
                         Price          = (int)reader["priceforlisting"],
                         SimName        = (string)reader["simname"],
                         SnapshotID     = reader.GetUUID("snapshotuuid")
                     };
                     return(true);
                 }
             }
         }
     }
     classified = default(ProfileClassified);
     return(false);
 }