示例#1
0
        private void createRecord(Storage.Database db, IWaypointData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(Utils.Conversion.DateTimeToLong(data.DataFromDate)); //150
                    bw.Write((bool)(data.Lat != null));                           //158
                    bw.Write(data.Lat == null ? (double)0.0 : (double)data.Lat);  //159
                    bw.Write((bool)(data.Lon != null));                           //167
                    bw.Write(data.Lon == null ? (double)0.0 : (double)data.Lon);  //168
                    bw.Write(Utils.Conversion.DateTimeToLong(data.Time));         //176
                    bw.Write(data.WPType.ID);                                     //184
                    //spare
                    ms.Position = 200;
                    bw.Write(data.GeocacheCode);
                    ms.Position = 240;
                    bw.Write(data.Code ?? "");
                    ms.Position = 280;
                    bw.Write(GetSafeString(280, 500, data.Description) ?? "");
                    ms.Position = 500;
                    bw.Write(GetSafeString(500, 600, data.Name) ?? "");
                    ms.Position = 600;
                    bw.Write(data.Url ?? "");
                    ms.Position = 700;
                    bw.Write(data.UrlName ?? "");
                    ms.Position = 800;
                    bw.Write(data.Comment ?? "");

                    RecordInfo = db.RequestWaypointRecord(data.ID, data.GeocacheCode, DataBuffer, ms.Position, 100);
                }
        }
示例#2
0
文件: Log.cs 项目: pheijmans-zz/GAPP
        private void createRecord(Storage.Database db, ILogData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(data.LogType.ID);                                    //150
                    bw.Write(Utils.Conversion.DateTimeToLong(data.Date));         //154
                    bw.Write(Utils.Conversion.DateTimeToLong(data.DataFromDate)); //162
                    bw.Write(data.Encoded);                                       //170
                    ms.Position = 180;
                    bw.Write(data.GeocacheCode ?? "");
                    ms.Position = 220;
                    bw.Write(data.Finder ?? "");
                    ms.Position = 320;
                    bw.Write(data.FinderId ?? "");
                    ms.Position = 350;
                    bw.Write(data.TBCode ?? "");
                    ms.Position = 380;
                    bw.Write(data.Text ?? "");

                    RecordInfo = db.RequestLogRecord(data.ID, data.GeocacheCode ?? "", DataBuffer, ms.Position, 100);
                }
        }
示例#3
0
        private void createRecord(Storage.Database db, IGeocacheImageData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(Utils.Conversion.DateTimeToLong(data.DataFromDate)); //150
                    ms.Position = 180;
                    bw.Write(data.GeocacheCode ?? "");
                    ms.Position = 220;
                    bw.Write(data.Url);
                    ms.Position = 420;
                    bw.Write(data.MobileUrl ?? "");
                    ms.Position = 520;
                    bw.Write(data.ThumbUrl ?? "");
                    ms.Position = 620;
                    bw.Write(GetSafeString(620, 800, data.Name) ?? "");
                    ms.Position = 800;
                    bw.Write(data.Description ?? "");

                    RecordInfo = db.RequestGeocacheImageRecord(data.ID, data.GeocacheCode ?? "", DataBuffer, ms.Position, 10);
                }
        }
示例#4
0
 public StudyGroupViewModel(Storage.Database db) : base(db)
 {
     foreach (DataRow row in database.GetStudyGroups().Rows)
     {
         Model.Add(
             new Entity.StudyGroup {
             Id   = (uint)(long)row["Id"],
             Name = row["Name"].ToString()
         }
             );;
     }
 }
示例#5
0
 public LessonViewModel(Storage.Database db) : base(db)
 {
     foreach (DataRow row in database.GetLessons().Rows)
     {
         Model.Add(
             new Entity.Lesson {
             Id   = (uint)(long)row["Id"],
             Name = row["Name"].ToString()
         }
             );
     }
 }
 public ClassroomViewModel(Storage.Database db) : base(db)
 {
     foreach (DataRow row in database.GetClassrooms().Rows)
     {
         Model.Add(
             new Entity.Classroom {
             Id   = (uint)(long)row["Id"],
             Name = row["Name"].ToString()
         }
             );
     }
 }
 public LessonTimeViewModel(Storage.Database db) : base(db)
 {
     foreach (DataRow row in database.GetLessonTimes().Rows)
     {
         Model.Add(
             new Entity.LessonTime {
             Id    = (uint)(long)row["Id"],
             Start = ((DateTime)row["Start"]).TimeOfDay,
             End   = ((DateTime)row["End"]).TimeOfDay
         }
             );
     }
 }
示例#8
0
        public IActionResult Opret(Models.Teacher.OpretSkemaModel m)
        {
            if (ModelState.IsValid)
            {
                Storage.IStorage storage = new Storage.Database();

                storage.GemSkema(m.Hold, m.FagNavn, m.Overskrift, m.FriTekst, m.Email);

                return(Redirect("/Teacher/SkemaGemt/"));
            }
            else
            {
                return(View(m));
            }
        }
示例#9
0
        private void checkDescriptionsFit(string sd, string ld)
        {
            string s = string.Concat(sd, ld);

            if (!checkStringFits(s, 3010)) //add bytes for extra string length of long description
            {
                //oeps: ran out of space
                //mark this record for deletion
                Storage.Database db = RecordInfo.Database;
                this.DeleteRecord();
                GeocacheData gd = new GeocacheData();
                GeocacheData.Copy(this, gd);
                gd.ShortDescription = sd ?? "";
                gd.LongDescription  = ld ?? "";
                createRecord(db, gd);
            }
        }
 public ScheduleViewModel(Storage.Database db) : base(db)
 {
     foreach (DataRow row in database.GetSchedules().Rows)
     {
         Model.Add(
             new Entity.Schedule {
             Id             = (uint)(long)row["Id"],
             DayOfWeek      = (DayOfWeek)(long)row["DayOfWeek"],
             LessonTime     = database.GetLessonTime((uint)(long)row["LessonTimeId"]),
             StudyGroup     = database.GetStudyGroup((uint)(long)row["StudyGroupId"]),
             Lesson         = database.GetLesson((uint)(long)row["LessonId"]),
             Classroom      = database.GetClassroom((uint)(long)row["ClassroomId"]),
             Teacher        = database.GetTeacher((uint)(long)row["TeacherId"]),
             AdditionalInfo = row["AdditionalInfo"].ToString()
         }
             );
     }
 }
示例#11
0
        private void createRecord(Storage.Database db, IUserWaypointData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(Utils.Conversion.DateTimeToLong(data.Date)); //150
                    bw.Write(data.Lat);                                   //158
                    bw.Write(data.Lon);                                   //166
                    ms.Position = 200;
                    bw.Write(data.GeocacheCode);
                    ms.Position = 220;
                    bw.Write(data.Description);

                    RecordInfo = db.RequestUserWaypointRecord(data.ID, data.GeocacheCode ?? "", DataBuffer, ms.Position, 50);
                }
        }
示例#12
0
        private void createRecord(Storage.Database db, ILogImageData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(Utils.Conversion.DateTimeToLong(data.DataFromDate)); //150
                    ms.Position = 180;
                    bw.Write(data.LogId ?? "");
                    ms.Position = 220;
                    bw.Write(data.Url ?? "");
                    ms.Position = 420;
                    bw.Write(data.Name ?? "");

                    RecordInfo = db.RequestLogImageRecord(data.ID, data.LogId ?? "", DataBuffer, ms.Position, 10);
                }
        }
示例#13
0
 public DbfConnection()
 {
     this.UnderlyingDatabase = new Storage.Database();
 }
示例#14
0
文件: Log.cs 项目: pheijmans-zz/GAPP
 //new record to be stored
 public Log(Storage.Database db, ILogData data)
     : this(null)
 {
     createRecord(db, data);
     db.LogCollection.Add(this);
 }
示例#15
0
 //new record to be stored
 public Waypoint(Storage.Database db, IWaypointData data)
     : this(null)
 {
     createRecord(db, data);
     db.WaypointCollection.Add(this);
 }
示例#16
0
        private void createRecord(Storage.Database db, IGeocacheData data)
        {
            using (MemoryStream ms = new MemoryStream(DataBuffer))
                using (BinaryWriter bw = new BinaryWriter(ms))
                {
                    ms.Position = 0;

                    ms.Position = 150;
                    bw.Write(data.Archived);                                        //150
                    bw.Write(data.Available);                                       //151
                    bw.Write(data.Container == null ? 0 : data.Container.ID);       //152
                    bw.Write(Utils.Conversion.DateTimeToLong(data.DataFromDate));   //156
                    bw.Write(Utils.Conversion.DateTimeToLong(data.PublishedTime));  //164
                    bw.Write(data.Difficulty);                                      //172
                    bw.Write(data.Terrain);                                         //180
                    bw.Write(data.Favorites);                                       //188
                    bw.Write(data.Flagged);                                         //192
                    bw.Write(data.Found);                                           //193
                    bw.Write(data.GeocacheType == null ? 0 : data.GeocacheType.ID); //194
                    bw.Write(data.Lat);                                             //198
                    bw.Write(data.Lon);                                             //206
                    bw.Write(data.Locked);                                          //214
                    bw.Write(data.CustomLat != null);                               //215
                    if (data.CustomLat != null)
                    {
                        bw.Write((double)data.CustomLat); //216
                    }
                    else
                    {
                        bw.Write((double)0.0);
                    }
                    bw.Write(data.CustomLon != null); //224
                    if (data.CustomLon != null)
                    {
                        bw.Write((double)data.CustomLon); //225
                    }
                    else
                    {
                        bw.Write((double)0.0);
                    }
                    bw.Write(data.MemberOnly);

                    byte attrCount = (byte)(data.AttributeIds == null ? 0 : data.AttributeIds.Count);
                    bw.Write(attrCount); //234
                    if (attrCount > 0)
                    {
                        foreach (int i in data.AttributeIds)
                        {
                            bw.Write(i);
                        }
                    }
                    ms.Position = 300;
                    bw.Write(GetSafeString(300, 400, data.City) ?? "");
                    ms.Position = 400;
                    bw.Write(GetSafeString(400, 500, data.Country) ?? "");
                    ms.Position = 500;
                    bw.Write(GetSafeString(500, 1000, data.EncodedHints) ?? "");
                    ms.Position = 1000;
                    bw.Write(GetSafeString(1000, 1100, data.Municipality) ?? "");
                    ms.Position = 1100;
                    bw.Write(GetSafeString(1100, 1200, data.Name) ?? "");
                    ms.Position = 1200; //spare now
                    //bw.Write(GetSafeString(1200, 2000, data.Notes) ?? "");
                    bw.Write("");
                    //do not overwrite note if note is not set (e.g. import GPX)
                    if (!string.IsNullOrEmpty(data.Notes))
                    {
                        Core.Settings.Default.SetGeocacheNotes(data.Code, data.Notes);
                    }
                    ms.Position = 2000;
                    bw.Write(GetSafeString(2000, 2100, data.Owner) ?? "");
                    ms.Position = 2100;
                    bw.Write(GetSafeString(2100, 2150, data.OwnerId) ?? "");
                    ms.Position = 2150;
                    bw.Write(GetSafeString(2150, 2400, data.PersonalNote) ?? "");
                    ms.Position = 2400;
                    bw.Write(GetSafeString(2400, 2500, data.PlacedBy) ?? "");
                    ms.Position = 2500;
                    bw.Write(GetSafeString(2500, 2600, data.State) ?? "");
                    ms.Position = 2600;
                    bw.Write(GetSafeString(2600, 2800, data.Url) ?? "");
                    //spare
                    ms.Position = 3000;
                    bw.Write(data.LongDescriptionInHtml);  //3000
                    bw.Write(data.ShortDescriptionInHtml); //3001
                    //read both if needs description!
                    bw.Write(data.ShortDescription ?? ""); //3002
                    bw.Write(data.LongDescription ?? "");

                    RecordInfo = db.RequestGeocacheRecord(data.Code, "", DataBuffer, ms.Position, 500);
                }
        }
 public SensitiveViewModel(Storage.Database db) : base(db)
 {
 }
 public DefaultViewModel(Storage.Database db) : base(db)
 {
 }
        public AbstractViewModel(Storage.Database db)
        {
            database = db;

            Model = new C();
        }
示例#20
0
 //new record to be stored
 public GeocacheImage(Storage.Database db, IGeocacheImageData data)
     : this(null)
 {
     createRecord(db, data);
     db.GeocacheImageCollection.Add(this);
 }