Exemple #1
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="visitor"></param>
        /// <returns></returns>
        public async Task<int> Add(Visitor visitor)
        {
            string url = String.Format(CultureInfo.InvariantCulture
              , "{0}api/visitors", _urlPrefix);

            return await base.PostAsync<int, Visitor>(url, visitor);
        }
Exemple #2
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="visitor"></param>
        /// <returns></returns>
        public async Task Update(Visitor visitor)
        {
            string url = String.Format(CultureInfo.InvariantCulture
              , "{0}api/visitors", _urlPrefix);

            await base.PutAsync<Visitor>(url, visitor);
        }
Exemple #3
0
        /// <summary>
        /// Save personal information to isolated storage.
        /// </summary>
        /// <param name="pInformation">User defined personal information</param>
        /// <returns></returns>
        public void SavePersonalInformation(Visitor pInformation)
        {
            using (IsolatedStorageFile file = IsolatedStorageFile.GetUserStoreForApplication())
            {
                if (file.FileExists("user.json"))
                    file.DeleteFile("user.json");

                using (IsolatedStorageFileStream fs = file.CreateFile("user.json"))
                {
                    StreamWriter writer = new StreamWriter(fs);
                    string json = JsonConvert.SerializeObject(pInformation);
                    writer.Write(json);
                    writer.Flush();
                }
            }
        }
 /// <summary>
 /// Sample visitors.
 /// </summary>
 /// <returns>Visitors list</returns>
 public List<Visitor> GetVisitors()
 {
     List<Visitor> visitors = new List<Visitor>();
     Visitor visitor;
     for(int i = 0; i < 10; i++)
     {
         visitor = new Visitor
                       {
                           VisitorId = i,
                           FirstName = "Adam",
                           LastName = "Barr",
                           Company = "MyCompany",
                           LastVisit = new Visit
                                           {
                                               VisitDateTime = DateTime.UtcNow
                                           }
                       };
         visitors.Add(visitor);
     }
     return visitors;
 } 
		async Task Save()
		{
			if (isSaving)
				return;
			isSaving = true;
			var spinner = new UIActivityIndicatorView(UIActivityIndicatorViewStyle.Gray);
			spinner.StartAnimating();
			this.NavigationItem.RightBarButtonItem = new UIBarButtonItem(spinner);
			try
			{
				if (!validate())
					return;
				view.UpdateVisitor();

				var visitor = new Visitor
				{
					VisitorId = Visitor.Visitor.VisitorId,
					Company = Visitor.Visitor.Company,
					CreatedDateTime = Visitor.Visitor.CreatedDateTime,
					Email = Visitor.Visitor.Email,
					FirstName = Visitor.Visitor.FirstName,
					LastModifiedDateTime = DateTime.Now,
					LastName = Visitor.Visitor.LastName,
					LastVisit = Visitor.Visitor.LastVisit,
					PersonalId = Visitor.Visitor.PersonalId,
					Position = Visitor.Visitor.Position,
				};
				if (Visitor.Visitor.VisitorId == 0)
				{
					var result = await AppDelegate.CompanyClient.VisitorService.Add(visitor);
					if (result > 0)
					{
						Visitor.Visitor.VisitorId = result;
						VMMainPage.MainPage.Visitors.Add(Visitor);
					}
				}
				else
				{
					await AppDelegate.CompanyClient.VisitorService.Update(visitor);
				}

				if (Visitor.HasPhotoshanged)
				{

					var newVisitorPictures = Visitor.Pictures;

					foreach (var visitorPicture in newVisitorPictures)
					{
						visitorPicture.VisitorId = Visitor.Visitor.VisitorId;
					}

					await AppDelegate.CompanyClient.VisitorPictureService.AddOrUpdatePictures(newVisitorPictures);
					Visitor.HasPhotoshanged = false;
				}
				if(Selected !=null)
					Selected(Visitor.Visitor);
				this.NavigationController.PopViewControllerAnimated(true);

			}
			catch (Exception ex)
			{
				Console.WriteLine(ex);
				new UIAlertView("Error", "There was an error saving the visitor", null, "Ok").Show();
			}
			finally
			{
				isSaving = false;
				this.NavigationItem.RightBarButtonItem = saveButton;
			}
		}