public virtual int UploadImage(HttpPostedFileBase fileData, string securityToken)
        {
            var fileName     = Guid.NewGuid() + ".jpg";
            var fullSavePath = Path.GetTempPath() + fileName;

            if (fileData.ContentLength > 0 && securityToken != null)
            {
                try
                {
                    fileData.SaveAs(fullSavePath);
                }
                catch (Exception)
                {
                    return(0);
                }

                if (uploadService.UploadFile(fullSavePath))
                {
                    var user = userService.GetUser(securityToken);
                    if (user != null)
                    {
                        var report = reportService.AddReportPhoto(user, fileName, FileType.Photo);
                        if (report != null)
                        {
                            return(report.Id);
                        }
                        return(0);
                    }

                    var facebookUser = RetrieveFacebookUser(securityToken);
                    if (facebookUser != null)
                    {
                        user = userService.AddUser(securityToken, facebookUser.FirstName, facebookUser.LastName, facebookUser.Email);
                        if (user != null)
                        {
                            var report = reportService.AddReportPhoto(user, fileName, FileType.Photo);
                            if (report != null)
                            {
                                return(report.Id);
                            }
                            return(0);
                        }
                    }
                    return(0);
                }
                return(0);
            }
            return(0);
        }