diff --git a/Yavsc/ApiControllers/ActivityApiController.cs b/Yavsc/ApiControllers/ActivityApiController.cs index a2e310a1..cb828c5d 100644 --- a/Yavsc/ApiControllers/ActivityApiController.cs +++ b/Yavsc/ApiControllers/ActivityApiController.cs @@ -1,6 +1,8 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using System.Threading.Tasks; +using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -47,7 +49,7 @@ namespace Yavsc.Controllers } // PUT: api/ActivityApi/5 - [HttpPut("{id}")] + [HttpPut("{id}"),Authorize("AdministratorOnly")] public async Task PutActivity([FromRoute] string id, [FromBody] Activity activity) { if (!ModelState.IsValid) @@ -64,7 +66,7 @@ namespace Yavsc.Controllers try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -82,7 +84,7 @@ namespace Yavsc.Controllers } // POST: api/ActivityApi - [HttpPost] + [HttpPost,Authorize("AdministratorOnly")] public async Task PostActivity([FromBody] Activity activity) { if (!ModelState.IsValid) @@ -93,7 +95,7 @@ namespace Yavsc.Controllers _context.Activities.Add(activity); try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateException) { @@ -111,7 +113,7 @@ namespace Yavsc.Controllers } // DELETE: api/ActivityApi/5 - [HttpDelete("{id}")] + [HttpDelete("{id}"),Authorize("AdministratorOnly")] public async Task DeleteActivity([FromRoute] string id) { if (!ModelState.IsValid) @@ -126,7 +128,7 @@ namespace Yavsc.Controllers } _context.Activities.Remove(activity); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return Ok(activity); } diff --git a/Yavsc/ApiControllers/ApplicationUserApiController.cs b/Yavsc/ApiControllers/ApplicationUserApiController.cs index 6ab29293..618ba30a 100644 --- a/Yavsc/ApiControllers/ApplicationUserApiController.cs +++ b/Yavsc/ApiControllers/ApplicationUserApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; @@ -63,7 +64,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -92,7 +93,7 @@ namespace Yavsc.Controllers _context.Users.Add(applicationUser); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -125,7 +126,7 @@ namespace Yavsc.Controllers } _context.Users.Remove(applicationUser); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(applicationUser); } diff --git a/Yavsc/ApiControllers/BlackListApiController.cs b/Yavsc/ApiControllers/BlackListApiController.cs index 379eea9a..50dcd8e1 100644 --- a/Yavsc/ApiControllers/BlackListApiController.cs +++ b/Yavsc/ApiControllers/BlackListApiController.cs @@ -75,7 +75,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -107,7 +107,7 @@ namespace Yavsc.Controllers _context.BlackListed.Add(blackListed); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -143,7 +143,7 @@ namespace Yavsc.Controllers return HttpBadRequest(); _context.BlackListed.Remove(blackListed); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(blackListed); } diff --git a/Yavsc/ApiControllers/BlogAclApiController.cs b/Yavsc/ApiControllers/BlogAclApiController.cs index 92253043..0f884302 100644 --- a/Yavsc/ApiControllers/BlogAclApiController.cs +++ b/Yavsc/ApiControllers/BlogAclApiController.cs @@ -70,7 +70,7 @@ namespace Yavsc.Controllers try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -109,7 +109,7 @@ namespace Yavsc.Controllers _context.BlogACL.Add(circleAuthorizationToBlogPost); try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateException) { @@ -145,7 +145,7 @@ namespace Yavsc.Controllers return HttpNotFound(); } _context.BlogACL.Remove(circleAuthorizationToBlogPost); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return Ok(circleAuthorizationToBlogPost); } diff --git a/Yavsc/ApiControllers/BlogApiController.cs b/Yavsc/ApiControllers/BlogApiController.cs index a60142bd..86be090f 100644 --- a/Yavsc/ApiControllers/BlogApiController.cs +++ b/Yavsc/ApiControllers/BlogApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -62,7 +63,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -91,7 +92,7 @@ namespace Yavsc.Controllers _context.Blogspot.Add(blog); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -124,7 +125,7 @@ namespace Yavsc.Controllers } _context.Blogspot.Remove(blog); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(blog); } diff --git a/Yavsc/ApiControllers/BookQueryApiController.cs b/Yavsc/ApiControllers/BookQueryApiController.cs index 9a8d9367..74d7f54e 100644 --- a/Yavsc/ApiControllers/BookQueryApiController.cs +++ b/Yavsc/ApiControllers/BookQueryApiController.cs @@ -102,7 +102,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -136,7 +136,7 @@ namespace Yavsc.Controllers _context.Commands.Add(bookQuery); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -171,7 +171,7 @@ namespace Yavsc.Controllers if (bookQuery.ClientId != uid) return HttpNotFound(); _context.Commands.Remove(bookQuery); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(bookQuery); } diff --git a/Yavsc/ApiControllers/CircleApiController.cs b/Yavsc/ApiControllers/CircleApiController.cs index a5fbe226..bc636f73 100644 --- a/Yavsc/ApiControllers/CircleApiController.cs +++ b/Yavsc/ApiControllers/CircleApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; @@ -64,7 +65,7 @@ namespace Yavsc.Controllers try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -93,7 +94,7 @@ namespace Yavsc.Controllers _context.Circle.Add(circle); try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateException) { @@ -126,7 +127,7 @@ namespace Yavsc.Controllers } _context.Circle.Remove(circle); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return Ok(circle); } diff --git a/Yavsc/ApiControllers/ContactsApiController.cs b/Yavsc/ApiControllers/ContactsApiController.cs index 6e217d26..ee1f6234 100644 --- a/Yavsc/ApiControllers/ContactsApiController.cs +++ b/Yavsc/ApiControllers/ContactsApiController.cs @@ -1,4 +1,5 @@ using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -43,7 +44,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -72,7 +73,7 @@ namespace Yavsc.Controllers _context.ClientProviderInfo.Add(clientProviderInfo); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -105,7 +106,7 @@ namespace Yavsc.Controllers } _context.ClientProviderInfo.Remove(clientProviderInfo); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(clientProviderInfo); } diff --git a/Yavsc/ApiControllers/DimissClicksApiController.cs b/Yavsc/ApiControllers/DimissClicksApiController.cs index a51f7d89..d8c6cdc7 100644 --- a/Yavsc/ApiControllers/DimissClicksApiController.cs +++ b/Yavsc/ApiControllers/DimissClicksApiController.cs @@ -86,7 +86,7 @@ namespace Yavsc.Controllers try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -118,7 +118,7 @@ namespace Yavsc.Controllers _context.DimissClicked.Add(dimissClicked); try { - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); } catch (DbUpdateException) { @@ -155,7 +155,7 @@ namespace Yavsc.Controllers } _context.DimissClicked.Remove(dimissClicked); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return Ok(dimissClicked); } diff --git a/Yavsc/ApiControllers/EstimateApiController.cs b/Yavsc/ApiControllers/EstimateApiController.cs index 59e601ab..6ae3ce8c 100644 --- a/Yavsc/ApiControllers/EstimateApiController.cs +++ b/Yavsc/ApiControllers/EstimateApiController.cs @@ -91,7 +91,7 @@ namespace Yavsc.Controllers var entry = _context.Attach(estimate); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -143,7 +143,7 @@ namespace Yavsc.Controllers */ try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -184,7 +184,7 @@ namespace Yavsc.Controllers } } _context.Estimates.Remove(estimate); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(estimate); } diff --git a/Yavsc/ApiControllers/EstimateTemplatesApiController.cs b/Yavsc/ApiControllers/EstimateTemplatesApiController.cs index 921ff548..19b73f83 100644 --- a/Yavsc/ApiControllers/EstimateTemplatesApiController.cs +++ b/Yavsc/ApiControllers/EstimateTemplatesApiController.cs @@ -70,7 +70,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -100,7 +100,7 @@ namespace Yavsc.Controllers _context.EstimateTemplates.Add(estimateTemplate); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -137,7 +137,7 @@ namespace Yavsc.Controllers return new HttpStatusCodeResult(StatusCodes.Status403Forbidden); _context.EstimateTemplates.Remove(estimateTemplate); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(estimateTemplate); } diff --git a/Yavsc/ApiControllers/FileSystemApiController.cs b/Yavsc/ApiControllers/FileSystemApiController.cs index b2231447..dde4474e 100644 --- a/Yavsc/ApiControllers/FileSystemApiController.cs +++ b/Yavsc/ApiControllers/FileSystemApiController.cs @@ -57,7 +57,7 @@ namespace Yavsc.ApiControllers foreach (var f in Request.Form.Files) { var item = user.ReceiveUserFile(root, f); - dbContext.SaveChanges(); + dbContext.SaveChanges(User.GetUserId()); yield return item; }; } diff --git a/Yavsc/ApiControllers/GCMController.cs b/Yavsc/ApiControllers/GCMController.cs index 189b384f..aa0ebcd4 100644 --- a/Yavsc/ApiControllers/GCMController.cs +++ b/Yavsc/ApiControllers/GCMController.cs @@ -48,7 +48,7 @@ public class GCMController : Controller alreadyRegisteredDevice.Platform = declaration.Platform; alreadyRegisteredDevice.Version = declaration.Version; _context.Update(alreadyRegisteredDevice); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } else { @@ -56,7 +56,7 @@ public class GCMController : Controller declaration.DeclarationDate = DateTime.Now; declaration.DeviceOwnerId = uid; _context.GCMDevices.Add(declaration as GoogleCloudMobileDeclaration); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } var latestActivityUpdate = _context.Activities.Max(a=>a.DateModified); return Json(new { diff --git a/Yavsc/ApiControllers/MusicalPreferencesApiController.cs b/Yavsc/ApiControllers/MusicalPreferencesApiController.cs index 35bf5f08..b5a06ea5 100644 --- a/Yavsc/ApiControllers/MusicalPreferencesApiController.cs +++ b/Yavsc/ApiControllers/MusicalPreferencesApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -62,7 +63,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -91,7 +92,7 @@ namespace Yavsc.Controllers _context.MusicalPreferences.Add(musicalPreference); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -124,7 +125,7 @@ namespace Yavsc.Controllers } _context.MusicalPreferences.Remove(musicalPreference); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(musicalPreference); } diff --git a/Yavsc/ApiControllers/MusicalTendenciesApiController.cs b/Yavsc/ApiControllers/MusicalTendenciesApiController.cs index 9dcb81d1..5f0cb222 100644 --- a/Yavsc/ApiControllers/MusicalTendenciesApiController.cs +++ b/Yavsc/ApiControllers/MusicalTendenciesApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -63,7 +64,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -92,7 +93,7 @@ namespace Yavsc.Controllers _context.MusicalTendency.Add(musicalTendency); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -125,7 +126,7 @@ namespace Yavsc.Controllers } _context.MusicalTendency.Remove(musicalTendency); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(musicalTendency); } diff --git a/Yavsc/ApiControllers/PdfEstimateController.cs b/Yavsc/ApiControllers/PdfEstimateController.cs index cf0a8bee..78e09c53 100644 --- a/Yavsc/ApiControllers/PdfEstimateController.cs +++ b/Yavsc/ApiControllers/PdfEstimateController.cs @@ -32,14 +32,15 @@ namespace Yavsc.ApiControllers public PdfEstimateController( IAuthorizationService authorizationService, ILoggerFactory loggerFactory, - ApplicationDbContext context) + IStringLocalizer SR, + ApplicationDbContext context) { this.authorizationService = authorizationService; dbContext = context; logger = loggerFactory.CreateLogger(); + this._localizer = SR; } - [HttpGet("get/{id}", Name = "Get"), Authorize] public async Task Get(long id) { @@ -89,10 +90,12 @@ namespace Yavsc.ApiControllers [HttpPost("prosign/{id}")] public async Task ProSign(long id) { - var uid = User.GetUserId(); - var estimate = dbContext.Estimates.Include( - e=>e.Query - ).FirstOrDefault(e=>e.Id == id && e.OwnerId == uid ); + var estimate = dbContext.Estimates. + Include(e=>e.Client).Include(e=>e.Client.Devices) + .Include(e=>e.Bill).Include(e=>e.Owner).Include(e=>e.Owner.Performer) + .FirstOrDefault(e=>e.Id == id); + if (estimate == null) + return new BadRequestResult(); if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement())) { return new ChallengeResult(); @@ -101,11 +104,16 @@ namespace Yavsc.ApiControllers return new BadRequestResult(); User.ReceiveProSignature(id,Request.Form.Files[0],"pro"); estimate.ProviderValidationDate = DateTime.Now; - dbContext.SaveChanges(); + dbContext.SaveChanges(User.GetUserId()); // Notify the client + var locstr = _localizer["EstimationMessageToClient"]; + var yaev = new EstimationEvent(dbContext,estimate,_localizer); - var regids = estimate.Client.Devices.Select(d => d.GCMRegistrationId); + + var regids = estimate.Client.Devices.Select(d => d.GCMRegistrationId).ToArray(); + logger.LogWarning($"new regids: {regids}"); var grep = await _GCMSender.NotifyEstimateAsync(_googleSettings,regids,yaev); + logger.LogWarning($"grep: {grep}"); return Ok (new { ProviderValidationDate = estimate.ProviderValidationDate, GCMSent = grep.success }); } @@ -130,7 +138,8 @@ namespace Yavsc.ApiControllers { var uid = User.GetUserId(); var estimate = dbContext.Estimates.Include( e=>e.Query - ).FirstOrDefault( e=> e.Id == id && e.Query.ClientId == uid ); + ).Include(e=>e.Owner).Include(e=>e.Owner.Performer).Include(e=>e.Client) + .FirstOrDefault( e=> e.Id == id && e.Query.ClientId == uid ); if (!await authorizationService.AuthorizeAsync(User, estimate, new ViewRequirement())) { return new ChallengeResult(); @@ -139,7 +148,7 @@ namespace Yavsc.ApiControllers return new BadRequestResult(); User.ReceiveProSignature(id,Request.Form.Files[0],"cli"); estimate.ClientValidationDate = DateTime.Now; - dbContext.SaveChanges(); + dbContext.SaveChanges(User.GetUserId()); return Ok (new { ClientValidationDate = estimate.ClientValidationDate }); } diff --git a/Yavsc/ApiControllers/PerformersApiController.cs b/Yavsc/ApiControllers/PerformersApiController.cs index bcf353d0..509cf97e 100644 --- a/Yavsc/ApiControllers/PerformersApiController.cs +++ b/Yavsc/ApiControllers/PerformersApiController.cs @@ -1,14 +1,13 @@ -using System.Collections.Generic; using Microsoft.AspNet.Mvc; using System.Linq; -using Yavsc.Models; -using Yavsc.Models.Workflow; using System.Security.Claims; using Microsoft.AspNet.Authorization; +using Microsoft.Data.Entity; namespace Yavsc.Controllers { + using Models; [Produces("application/json")] [Route("api/performers")] public class PerformersApiController : Controller @@ -24,15 +23,32 @@ namespace Yavsc.Controllers /// /// /// - [Authorize(Roles="Performer")] + [Authorize(Roles="Performer"),HttpGet("{id}")] public IActionResult Get(string id) { + var pfr = dbContext.Performers.Include( + p=>p.OrganizationAddress + ).Include( + p=>p.Performer + ).Include( + p=>p.Performer.Posts + ).SingleOrDefault(p=> p.PerformerId == id); if (id==null) { - ModelState.AddModelError("id","Specifier un code activité"); - return new BadRequestObjectResult(ModelState); + ModelState.AddModelError("id","Specifier un identifiant de prestataire valide"); } - return Ok(dbContext.Performers.Where(p=>p.Active && p.PerformerId == id)); + else { + var uid = User.GetUserId(); + if (!User.IsInRole("Administrator")) + if (uid != id) return new ChallengeResult(); + + if (!pfr.Active) + { + ModelState.AddModelError("id","Prestataire désactivé."); + } + } + if (ModelState.IsValid) return Ok(pfr); + return new BadRequestObjectResult(ModelState); } } } \ No newline at end of file diff --git a/Yavsc/ApiControllers/PostRateApiController.cs b/Yavsc/ApiControllers/PostRateApiController.cs index 42cc6e44..2ecfd6b7 100644 --- a/Yavsc/ApiControllers/PostRateApiController.cs +++ b/Yavsc/ApiControllers/PostRateApiController.cs @@ -39,7 +39,7 @@ namespace Yavsc.Controllers return HttpBadRequest(); blogpost.Rate = rate; - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(); } diff --git a/Yavsc/ApiControllers/PostTagsApiController.cs b/Yavsc/ApiControllers/PostTagsApiController.cs index a2e268e7..3292a5d0 100644 --- a/Yavsc/ApiControllers/PostTagsApiController.cs +++ b/Yavsc/ApiControllers/PostTagsApiController.cs @@ -6,9 +6,10 @@ using Microsoft.Data.Entity; namespace Yavsc.Controllers { + using System.Security.Claims; using Models; using Models.Relationship; - + [Produces("application/json")] [Route("~/api/PostTagsApi")] public class PostTagsApiController : Controller @@ -64,7 +65,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -93,7 +94,7 @@ namespace Yavsc.Controllers _context.TagsDomain.Add(postTag); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -126,7 +127,7 @@ namespace Yavsc.Controllers } _context.TagsDomain.Remove(postTag); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(postTag); } diff --git a/Yavsc/ApiControllers/ProductApiController.cs b/Yavsc/ApiControllers/ProductApiController.cs index 9300ec37..7fdb0f38 100644 --- a/Yavsc/ApiControllers/ProductApiController.cs +++ b/Yavsc/ApiControllers/ProductApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; @@ -64,7 +65,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -93,7 +94,7 @@ namespace Yavsc.Controllers _context.Products.Add(product); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -126,7 +127,7 @@ namespace Yavsc.Controllers } _context.Products.Remove(product); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(product); } diff --git a/Yavsc/ApiControllers/ServiceApiController.cs b/Yavsc/ApiControllers/ServiceApiController.cs index bf1b2417..ee0d2de3 100644 --- a/Yavsc/ApiControllers/ServiceApiController.cs +++ b/Yavsc/ApiControllers/ServiceApiController.cs @@ -1,5 +1,6 @@ using System.Collections.Generic; using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Http; using Microsoft.AspNet.Mvc; @@ -64,7 +65,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -93,7 +94,7 @@ namespace Yavsc.Controllers _context.Services.Add(service); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -126,7 +127,7 @@ namespace Yavsc.Controllers } _context.Services.Remove(service); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(service); } diff --git a/Yavsc/ApiControllers/TagsApiController.cs b/Yavsc/ApiControllers/TagsApiController.cs index 8f24f0e9..d7dfb59a 100644 --- a/Yavsc/ApiControllers/TagsApiController.cs +++ b/Yavsc/ApiControllers/TagsApiController.cs @@ -7,6 +7,7 @@ using Yavsc.Models; namespace Yavsc.Controllers { + using System.Security.Claims; using Models.Relationship; [Produces("application/json")] [Route("api/TagsApi")] @@ -63,7 +64,7 @@ namespace Yavsc.Controllers try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateConcurrencyException) { @@ -92,7 +93,7 @@ namespace Yavsc.Controllers _context.Tags.Add(tag); try { - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } catch (DbUpdateException) { @@ -125,7 +126,7 @@ namespace Yavsc.Controllers } _context.Tags.Remove(tag); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return Ok(tag); } diff --git a/Yavsc/Controllers/AccountController.cs b/Yavsc/Controllers/AccountController.cs index eeaa9983..46aa79cf 100644 --- a/Yavsc/Controllers/AccountController.cs +++ b/Yavsc/Controllers/AccountController.cs @@ -241,7 +241,7 @@ namespace Yavsc.Controllers var ninfo = _dbContext.UserLogins.First(l=>l.ProviderKey == info.ProviderKey && l.LoginProvider == info.LoginProvider); ninfo.ProviderDisplayName = info.ProviderDisplayName; _dbContext.Entry(ninfo).State = EntityState.Modified; - _dbContext.SaveChanges(); + _dbContext.SaveChanges(User.GetUserId()); return Redirect(returnUrl); } diff --git a/Yavsc/Controllers/ActivityController.cs b/Yavsc/Controllers/ActivityController.cs index 3aa109e7..9f9ce013 100644 --- a/Yavsc/Controllers/ActivityController.cs +++ b/Yavsc/Controllers/ActivityController.cs @@ -9,6 +9,7 @@ using Microsoft.Extensions.Logging; namespace Yavsc.Controllers { + using System.Security.Claims; using Models; using Models.Workflow; @@ -137,7 +138,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Activities.Add(activity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } SetSettingClasseInfo(); @@ -174,7 +175,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(activity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(activity); @@ -205,7 +206,7 @@ namespace Yavsc.Controllers { Activity activity = _context.Activities.Single(m => m.Code == id); _context.Activities.Remove(activity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/BlogspotController.cs b/Yavsc/Controllers/BlogspotController.cs index be942c25..542443b9 100644 --- a/Yavsc/Controllers/BlogspotController.cs +++ b/Yavsc/Controllers/BlogspotController.cs @@ -134,7 +134,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Blogspot.Add(blog); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } ModelState.AddModelError("Unknown","Invalid Blog posted ..."); @@ -188,7 +188,7 @@ namespace Yavsc.Controllers { // saves the change _context.Update(blog); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); ViewData["StatusMessage"] = "Post modified"; return RedirectToAction("Index"); } @@ -231,7 +231,7 @@ namespace Yavsc.Controllers if (auth.Result) { _context.Blogspot.Remove(blog); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); } return RedirectToAction("Index"); } diff --git a/Yavsc/Controllers/CircleController.cs b/Yavsc/Controllers/CircleController.cs index f439d762..56f480bf 100644 --- a/Yavsc/Controllers/CircleController.cs +++ b/Yavsc/Controllers/CircleController.cs @@ -1,4 +1,5 @@ +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -53,7 +54,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Circle.Add(circle); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(circle); @@ -83,7 +84,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(circle); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(circle); @@ -114,7 +115,7 @@ namespace Yavsc.Controllers { Circle circle = await _context.Circle.SingleAsync(m => m.Id == id); _context.Circle.Remove(circle); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/CircleMembersController.cs b/Yavsc/Controllers/CircleMembersController.cs index bf4bc15f..a3ad7d60 100644 --- a/Yavsc/Controllers/CircleMembersController.cs +++ b/Yavsc/Controllers/CircleMembersController.cs @@ -68,7 +68,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.CircleMembers.Add(circleMember); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewData["CircleId"] = new SelectList(_context.Circle, "Id", "Name", circleMember.CircleId); @@ -102,7 +102,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(circleMember); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewData["CircleId"] = new SelectList(_context.Circle, "Id", "Circle", circleMember.CircleId); @@ -135,7 +135,7 @@ namespace Yavsc.Controllers { CircleMember circleMember = await _context.CircleMembers.SingleAsync(m => m.MemberId == id); _context.CircleMembers.Remove(circleMember); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/ClientController.cs b/Yavsc/Controllers/ClientController.cs index 76fbed7e..5c7e0a63 100644 --- a/Yavsc/Controllers/ClientController.cs +++ b/Yavsc/Controllers/ClientController.cs @@ -6,6 +6,7 @@ using Microsoft.Data.Entity; using System.Collections.Generic; using Yavsc.Models; using Yavsc.Models.Auth; +using System.Security.Claims; namespace Yavsc.Controllers { @@ -56,7 +57,7 @@ namespace Yavsc.Controllers { client.Id = Guid.NewGuid().ToString(); _context.Applications.Add(client); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } SetAppTypesInputValues(); @@ -100,7 +101,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(client); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(client); @@ -131,7 +132,7 @@ namespace Yavsc.Controllers { Client client = await _context.Applications.SingleAsync(m => m.Id == id); _context.Applications.Remove(client); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/CoWorkingController.cs b/Yavsc/Controllers/CoWorkingController.cs index 583fd25f..c1f7bd3e 100644 --- a/Yavsc/Controllers/CoWorkingController.cs +++ b/Yavsc/Controllers/CoWorkingController.cs @@ -1,4 +1,5 @@ using System.Linq; +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; using Microsoft.AspNet.Mvc.Rendering; @@ -57,7 +58,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.WorkflowProviders.Add(coWorking); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewData["PerformerId"] = new SelectList(_context.Performers, "PerformerId", "Performer", coWorking.PerformerId); @@ -91,7 +92,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(coWorking); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewData["PerformerId"] = new SelectList(_context.Performers, "PerformerId", "Performer", coWorking.PerformerId); @@ -124,7 +125,7 @@ namespace Yavsc.Controllers { CoWorking coWorking = await _context.WorkflowProviders.SingleAsync(m => m.Id == id); _context.WorkflowProviders.Remove(coWorking); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/ColorsController.cs b/Yavsc/Controllers/ColorsController.cs index a01b1a10..a97dba84 100644 --- a/Yavsc/Controllers/ColorsController.cs +++ b/Yavsc/Controllers/ColorsController.cs @@ -1,3 +1,4 @@ +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -52,7 +53,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Color.Add(color); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(color); @@ -82,7 +83,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(color); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(color); @@ -113,7 +114,7 @@ namespace Yavsc.Controllers { Color color = await _context.Color.SingleAsync(m => m.Id == id); _context.Color.Remove(color); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/CommandController.cs b/Yavsc/Controllers/CommandController.cs index a13069ef..a1d58653 100644 --- a/Yavsc/Controllers/CommandController.cs +++ b/Yavsc/Controllers/CommandController.cs @@ -162,7 +162,7 @@ namespace Yavsc.Controllers } else _context.Attach(command.Location); _context.BookQueries.Add(command, GraphBehavior.IncludeDependents); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); var yaev = command.CreateEvent(_localizer); MessageWithPayloadResponse grep = null; @@ -222,7 +222,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(command); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(command); @@ -253,7 +253,7 @@ namespace Yavsc.Controllers { BookQuery command = _context.BookQueries.Single(m => m.Id == id); _context.BookQueries.Remove(command); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/CommandFormsController.cs b/Yavsc/Controllers/CommandFormsController.cs index 9c3c9720..4fd40812 100644 --- a/Yavsc/Controllers/CommandFormsController.cs +++ b/Yavsc/Controllers/CommandFormsController.cs @@ -1,4 +1,5 @@ using System.Linq; +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; using Microsoft.AspNet.Mvc.Rendering; @@ -59,7 +60,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.CommandForm.Add(commandForm); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } SetViewBag(commandForm); @@ -91,7 +92,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(commandForm); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } SetViewBag(commandForm); @@ -123,7 +124,7 @@ namespace Yavsc.Controllers { CommandForm commandForm = await _context.CommandForm.SingleAsync(m => m.Id == id); _context.CommandForm.Remove(commandForm); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/DoController.cs b/Yavsc/Controllers/DoController.cs index d1d81bfb..bd59f1e8 100644 --- a/Yavsc/Controllers/DoController.cs +++ b/Yavsc/Controllers/DoController.cs @@ -78,7 +78,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.UserActivities.Add(userActivity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } ViewBag.DoesCode = new SelectList(_context.Activities, "Code", "Name", userActivity.DoesCode); @@ -120,7 +120,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(userActivity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } ViewData["DoesCode"] = new SelectList(_context.Activities, "Code", "Does", userActivity.DoesCode); @@ -161,7 +161,7 @@ namespace Yavsc.Controllers return RedirectToAction("Index"); } _context.UserActivities.Remove(userActivity); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/EstimateController.cs b/Yavsc/Controllers/EstimateController.cs index 694f7420..288d914c 100644 --- a/Yavsc/Controllers/EstimateController.cs +++ b/Yavsc/Controllers/EstimateController.cs @@ -42,7 +42,8 @@ namespace Yavsc.Controllers .Include(e=>e.Query.PerformerProfile.Performer) .Where( e=>e.OwnerId == uid || e.ClientId == uid - ).ToList()); + ).OrderByDescending(e=>e.ProviderValidationDate) + .ToList()); } // GET: Estimate/Details/5 @@ -101,7 +102,7 @@ namespace Yavsc.Controllers { _context.Estimates .Add(estimate); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); var query = _context.BookQueries.FirstOrDefault( q=>q.Id == estimate.CommandId ); @@ -177,7 +178,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(estimate); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(estimate); @@ -210,7 +211,7 @@ namespace Yavsc.Controllers { Estimate estimate = _context.Estimates.Single(m => m.Id == id); _context.Estimates.Remove(estimate); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/FormsController.cs b/Yavsc/Controllers/FormsController.cs index 7be26a6a..b1898821 100644 --- a/Yavsc/Controllers/FormsController.cs +++ b/Yavsc/Controllers/FormsController.cs @@ -1,3 +1,4 @@ +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; using Microsoft.Data.Entity; @@ -52,7 +53,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Form.Add(form); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(form); @@ -82,7 +83,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(form); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(form); @@ -113,7 +114,7 @@ namespace Yavsc.Controllers { Form form = await _context.Form.SingleAsync(m => m.Id == id); _context.Form.Remove(form); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/FrontOfficeController.cs b/Yavsc/Controllers/FrontOfficeController.cs index 282d64bb..31635d73 100644 --- a/Yavsc/Controllers/FrontOfficeController.cs +++ b/Yavsc/Controllers/FrontOfficeController.cs @@ -79,7 +79,7 @@ namespace Yavsc.Controllers { _context.BookQueries.Update(bookQuery); } - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); // TODO Send sys notifications & // notify the user (make him a basket badge) return View("Index"); diff --git a/Yavsc/Controllers/HairTaintsController.cs b/Yavsc/Controllers/HairTaintsController.cs index 49bf9502..6fca488c 100644 --- a/Yavsc/Controllers/HairTaintsController.cs +++ b/Yavsc/Controllers/HairTaintsController.cs @@ -1,3 +1,4 @@ +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Mvc; @@ -57,7 +58,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.HairTaint.Add(hairTaint); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewBag.ColorId = new SelectList(_context.Color, "Id", "Name", hairTaint.ColorId); @@ -89,7 +90,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(hairTaint); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } ViewBag.ColorId = new SelectList(_context.Color, "Id", "Name", hairTaint.ColorId); @@ -121,7 +122,7 @@ namespace Yavsc.Controllers { HairTaint hairTaint = await _context.HairTaint.SingleAsync(m => m.Id == id); _context.HairTaint.Remove(hairTaint); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/HomeController.cs b/Yavsc/Controllers/HomeController.cs index a9edbf59..b57a9704 100644 --- a/Yavsc/Controllers/HomeController.cs +++ b/Yavsc/Controllers/HomeController.cs @@ -4,17 +4,17 @@ using Microsoft.AspNet.Http.Features; using Microsoft.AspNet.Diagnostics; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Hosting; -using Yavsc.Models; using Microsoft.AspNet.Identity; using System.Linq; using System.Security.Claims; using Microsoft.Data.Entity; -using System.Collections.Generic; using Microsoft.AspNet.Http; using System.Threading.Tasks; namespace Yavsc.Controllers { + using Models; + [ServiceFilter(typeof(LanguageActionFilter)),AllowAnonymous] public class HomeController : Controller { diff --git a/Yavsc/Controllers/InstrumentationController.cs b/Yavsc/Controllers/InstrumentationController.cs index e9e7a2c5..3bde85b0 100644 --- a/Yavsc/Controllers/InstrumentationController.cs +++ b/Yavsc/Controllers/InstrumentationController.cs @@ -68,7 +68,7 @@ namespace Yavsc.Controllers return new ChallengeResult(); _context.Instrumentation.Add(model); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(model); @@ -103,7 +103,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(musicianSettings); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(musicianSettings); @@ -142,7 +142,7 @@ namespace Yavsc.Controllers _context.Instrumentation.Remove(musicianSettings); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/InstrumentsController.cs b/Yavsc/Controllers/InstrumentsController.cs index 4ad6b778..354a7bc4 100644 --- a/Yavsc/Controllers/InstrumentsController.cs +++ b/Yavsc/Controllers/InstrumentsController.cs @@ -3,6 +3,7 @@ using Microsoft.AspNet.Mvc; namespace Yavsc.Controllers { + using System.Security.Claims; using Models; using Models.Musical; public class InstrumentsController : Controller @@ -51,7 +52,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Instrument.Add(instrument); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(instrument); @@ -81,7 +82,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(instrument); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(instrument); @@ -112,7 +113,7 @@ namespace Yavsc.Controllers { Instrument instrument = _context.Instrument.Single(m => m.Id == id); _context.Instrument.Remove(instrument); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/LocationTypesController.cs b/Yavsc/Controllers/LocationTypesController.cs index d7890aaa..c9557229 100644 --- a/Yavsc/Controllers/LocationTypesController.cs +++ b/Yavsc/Controllers/LocationTypesController.cs @@ -3,6 +3,7 @@ using Microsoft.AspNet.Mvc; namespace Yavsc.Controllers { + using System.Security.Claims; using Models; using Models.Relationship; public class LocationTypesController : Controller @@ -51,7 +52,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.LocationType.Add(locationType); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(locationType); @@ -81,7 +82,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(locationType); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(locationType); @@ -112,7 +113,7 @@ namespace Yavsc.Controllers { LocationType locationType = _context.LocationType.Single(m => m.Id == id); _context.LocationType.Remove(locationType); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/ManageController.cs b/Yavsc/Controllers/ManageController.cs index 3217646e..34649b19 100644 --- a/Yavsc/Controllers/ManageController.cs +++ b/Yavsc/Controllers/ManageController.cs @@ -25,7 +25,6 @@ namespace Yavsc.Controllers using Models.Relationship; using PayPal.PayPalAPIInterfaceService; using PayPal.PayPalAPIInterfaceService.Model; - using PayPal.PayPalAPIInterfaceService.Model; [Authorize, ServiceFilter(typeof(LanguageActionFilter))] public class ManageController : Controller @@ -295,7 +294,7 @@ namespace Yavsc.Controllers { var user = _dbContext.Users.FirstOrDefault(u => u.Id == User.GetUserId()); user.DedicatedGoogleCalendar = model.GoogleCalendarId; - await _dbContext.SaveChangesAsync(); + await _dbContext.SaveChangesAsync(User.GetUserId()); if (string.IsNullOrEmpty(model.ReturnUrl)) return RedirectToAction("Index"); else return Redirect(model.ReturnUrl); @@ -570,7 +569,7 @@ namespace Yavsc.Controllers _dbContext.Update(model); } else _dbContext.Performers.Add(model); - _dbContext.SaveChanges(); + _dbContext.SaveChanges(User.GetUserId()); // Give this user the Performer role if (!User.IsInRole("Performer")) await _userManager.AddToRoleAsync(user, "Performer"); @@ -597,7 +596,7 @@ namespace Yavsc.Controllers _dbContext.Performers.Remove( _dbContext.Performers.First(x => x.PerformerId == uid) ); - _dbContext.SaveChanges(); + _dbContext.SaveChanges(User.GetUserId()); await _userManager.RemoveFromRoleAsync(user, "Performer"); } var message = ManageMessageId.UnsetActivitySuccess; diff --git a/Yavsc/Controllers/MusicalTendenciesController.cs b/Yavsc/Controllers/MusicalTendenciesController.cs index df35e49e..75b07f2c 100644 --- a/Yavsc/Controllers/MusicalTendenciesController.cs +++ b/Yavsc/Controllers/MusicalTendenciesController.cs @@ -3,6 +3,7 @@ using Microsoft.AspNet.Mvc; namespace Yavsc.Controllers { + using System.Security.Claims; using Models; using Models.Musical; public class MusicalTendenciesController : Controller @@ -51,7 +52,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.MusicalTendency.Add(musicalTendency); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(musicalTendency); @@ -81,7 +82,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(musicalTendency); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(musicalTendency); @@ -112,7 +113,7 @@ namespace Yavsc.Controllers { MusicalTendency musicalTendency = _context.MusicalTendency.Single(m => m.Id == id); _context.MusicalTendency.Remove(musicalTendency); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/NotificationsController.cs b/Yavsc/Controllers/NotificationsController.cs index 61307d6a..53c4b76c 100644 --- a/Yavsc/Controllers/NotificationsController.cs +++ b/Yavsc/Controllers/NotificationsController.cs @@ -1,7 +1,6 @@ -using System.Linq; +using System.Security.Claims; using System.Threading.Tasks; using Microsoft.AspNet.Mvc; -using Microsoft.AspNet.Mvc.Rendering; using Microsoft.Data.Entity; using Yavsc.Models; using Yavsc.Models.Messaging; @@ -54,7 +53,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Notification.Add(notification); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(notification); @@ -84,7 +83,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(notification); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } return View(notification); @@ -115,7 +114,7 @@ namespace Yavsc.Controllers { Notification notification = await _context.Notification.SingleAsync(m => m.Id == id); _context.Notification.Remove(notification); - await _context.SaveChangesAsync(); + await _context.SaveChangesAsync(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Controllers/SIRENExceptionsController.cs b/Yavsc/Controllers/SIRENExceptionsController.cs index 9cd19866..e3e511d1 100644 --- a/Yavsc/Controllers/SIRENExceptionsController.cs +++ b/Yavsc/Controllers/SIRENExceptionsController.cs @@ -1,4 +1,5 @@ using System.Linq; +using System.Security.Claims; using Microsoft.AspNet.Authorization; using Microsoft.AspNet.Mvc; using Yavsc.Models; @@ -53,7 +54,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.ExceptionsSIREN.Add(exceptionSIREN); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(exceptionSIREN); @@ -83,7 +84,7 @@ namespace Yavsc.Controllers if (ModelState.IsValid) { _context.Update(exceptionSIREN); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } return View(exceptionSIREN); @@ -114,7 +115,7 @@ namespace Yavsc.Controllers { ExceptionSIREN exceptionSIREN = _context.ExceptionsSIREN.Single(m => m.SIREN == id); _context.ExceptionsSIREN.Remove(exceptionSIREN); - _context.SaveChanges(); + _context.SaveChanges(User.GetUserId()); return RedirectToAction("Index"); } } diff --git a/Yavsc/Helpers/GoogleHelpers.cs b/Yavsc/Helpers/GoogleHelpers.cs index 4858f56e..cd6de3ff 100644 --- a/Yavsc/Helpers/GoogleHelpers.cs +++ b/Yavsc/Helpers/GoogleHelpers.cs @@ -29,6 +29,8 @@ namespace Yavsc.Helpers using Models.Google.Messaging; using Models.Messaging; using Models; + using Interfaces.Workflow; + /// /// Google helpers. @@ -73,6 +75,16 @@ namespace Yavsc.Helpers (this GoogleAuthSettings googleSettings, IEnumerable regids, Event ev) where Event : IEvent { + if (ev == null) + throw new Exception("Spécifier un évènement"); + if (ev.Message == null) + throw new Exception("Spécifier un message"); + if (ev.Sender == null) + throw new Exception("Spécifier un expéditeur"); + + if (regids == null) + throw new NotImplementedException("Notify & No GCM reg ids"); + var msg = new MessageWithPayload() { notification = new Notification() @@ -84,12 +96,14 @@ namespace Yavsc.Helpers data = ev, registration_ids = regids.ToArray() }; - - if (regids == null) - throw new NotImplementedException("Notify & No GCM reg ids"); + try { using (var m = new SimpleJsonPostMethod("https://gcm-http.googleapis.com/gcm/send",$"key={googleSettings.ApiKey}")) { return m.Invoke(msg); } + } + catch (Exception ex) { + throw new Exception ("Quelque chose s'est mal passé à l'envoi",ex); + } } public static async Task GetCredentialForGoogleApiAsync(this UserManager userManager, ApplicationDbContext context, string uid) { diff --git a/Yavsc/Hubs/ChatHub.cs b/Yavsc/Hubs/ChatHub.cs index a5f0522b..957bc13c 100644 --- a/Yavsc/Hubs/ChatHub.cs +++ b/Yavsc/Hubs/ChatHub.cs @@ -38,7 +38,6 @@ namespace Yavsc if (Context.User != null) { isAuth = Context.User.Identity.IsAuthenticated; - userName = Context.User.Identity.Name; var group = isAuth ? "authenticated" : "anonymous"; // Log ("Cx: " + group); @@ -55,9 +54,8 @@ namespace Yavsc UserAgent = Context.Request.Headers["User-Agent"], Connected = true }); - db.SaveChanges(); + db.SaveChanges(user.Id); } - } } else Groups.Add(Context.ConnectionId, "anonymous"); @@ -78,16 +76,16 @@ namespace Yavsc var cx = db.Connections.SingleOrDefault(c => c.ConnectionId == Context.ConnectionId); if (cx != null) { + var user = db.Users.Single(u => u.UserName == userName); if (stopCalled) { - var user = db.Users.Single(u => u.UserName == userName); user.Connections.Remove(cx); } else { cx.Connected = false; } - db.SaveChanges(); + db.SaveChanges(user.Id); } } } @@ -110,7 +108,7 @@ namespace Yavsc if (cx != null) { cx.Connected = true; - db.SaveChanges(); + db.SaveChanges(user.Id); } else cx = new Connection { ConnectionId = Context.ConnectionId, UserAgent = Context.Request.Headers["User-Agent"], @@ -147,10 +145,9 @@ namespace Yavsc var cx = db.Connections.SingleOrDefault(c=>c.ConnectionId == Context.ConnectionId); if (cx!=null) { db.Connections.Remove(cx); - db.SaveChanges(); + db.SaveChanges(cx.ApplicationUserId); } } - } } diff --git a/Yavsc/Interfaces/Workflow/IEvent.cs b/Yavsc/Interfaces/Workflow/IEvent.cs index df7a8714..460df0b5 100644 --- a/Yavsc/Interfaces/Workflow/IEvent.cs +++ b/Yavsc/Interfaces/Workflow/IEvent.cs @@ -1,19 +1,22 @@ +namespace Yavsc.Interfaces.Workflow { + public interface IEvent { + /// + /// /topic/(bookquery|estimate) + /// + /// + string Topic { get; set ; } + /// + /// Should be the user's name + /// + /// + string Sender { get; set ; } + /// + /// The message + /// + /// + string Message { get; set; } + } + -public interface IEvent { - /// - /// /topic/(bookquery|estimate) - /// - /// - string Topic { get; set ; } - /// - /// Should be the user's name - /// - /// - string Sender { get; set ; } - /// - /// The message - /// - /// - string Message { get; set; } } \ No newline at end of file diff --git a/Yavsc/Migrations/20170217221646_bookQueryStatus.Designer.cs b/Yavsc/Migrations/20170217221646_bookQueryStatus.Designer.cs index ba879c17..59e80846 100644 --- a/Yavsc/Migrations/20170217221646_bookQueryStatus.Designer.cs +++ b/Yavsc/Migrations/20170217221646_bookQueryStatus.Designer.cs @@ -1,7 +1,6 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; -using Microsoft.Data.Entity.Metadata; using Microsoft.Data.Entity.Migrations; using Yavsc.Models; diff --git a/Yavsc/Migrations/20170217221646_bookQueryStatus.cs b/Yavsc/Migrations/20170217221646_bookQueryStatus.cs index 805d3deb..53aac870 100644 --- a/Yavsc/Migrations/20170217221646_bookQueryStatus.cs +++ b/Yavsc/Migrations/20170217221646_bookQueryStatus.cs @@ -1,5 +1,3 @@ -using System; -using System.Collections.Generic; using Microsoft.Data.Entity.Migrations; using Yavsc.Interfaces.Workflow; diff --git a/Yavsc/Migrations/20170220102125_notifications.Designer.cs b/Yavsc/Migrations/20170220102125_notifications.Designer.cs index 38f96ada..bbc61f0d 100644 --- a/Yavsc/Migrations/20170220102125_notifications.Designer.cs +++ b/Yavsc/Migrations/20170220102125_notifications.Designer.cs @@ -1,7 +1,6 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; -using Microsoft.Data.Entity.Metadata; using Microsoft.Data.Entity.Migrations; using Yavsc.Models; diff --git a/Yavsc/Migrations/20170220102125_notifications.cs b/Yavsc/Migrations/20170220102125_notifications.cs index 57dcaeef..12bbbcd2 100644 --- a/Yavsc/Migrations/20170220102125_notifications.cs +++ b/Yavsc/Migrations/20170220102125_notifications.cs @@ -1,5 +1,3 @@ -using System; -using System.Collections.Generic; using Microsoft.Data.Entity.Migrations; namespace Yavsc.Migrations diff --git a/Yavsc/Migrations/20170220125518_dimissclick.Designer.cs b/Yavsc/Migrations/20170220125518_dimissclick.Designer.cs index 085e520e..68dfef30 100644 --- a/Yavsc/Migrations/20170220125518_dimissclick.Designer.cs +++ b/Yavsc/Migrations/20170220125518_dimissclick.Designer.cs @@ -1,7 +1,6 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; -using Microsoft.Data.Entity.Metadata; using Microsoft.Data.Entity.Migrations; using Yavsc.Models; diff --git a/Yavsc/Migrations/20170220125518_dimissclick.cs b/Yavsc/Migrations/20170220125518_dimissclick.cs index 3d49c187..9bdc51ab 100644 --- a/Yavsc/Migrations/20170220125518_dimissclick.cs +++ b/Yavsc/Migrations/20170220125518_dimissclick.cs @@ -1,5 +1,3 @@ -using System; -using System.Collections.Generic; using Microsoft.Data.Entity.Migrations; namespace Yavsc.Migrations diff --git a/Yavsc/Migrations/20170220144141_hiddenActivity.Designer.cs b/Yavsc/Migrations/20170220144141_hiddenActivity.Designer.cs index a9686b3e..2c4591f0 100644 --- a/Yavsc/Migrations/20170220144141_hiddenActivity.Designer.cs +++ b/Yavsc/Migrations/20170220144141_hiddenActivity.Designer.cs @@ -1,7 +1,6 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; -using Microsoft.Data.Entity.Metadata; using Microsoft.Data.Entity.Migrations; using Yavsc.Models; diff --git a/Yavsc/Migrations/20170220144141_hiddenActivity.cs b/Yavsc/Migrations/20170220144141_hiddenActivity.cs index c6a8d2da..23647b1a 100644 --- a/Yavsc/Migrations/20170220144141_hiddenActivity.cs +++ b/Yavsc/Migrations/20170220144141_hiddenActivity.cs @@ -1,5 +1,3 @@ -using System; -using System.Collections.Generic; using Microsoft.Data.Entity.Migrations; namespace Yavsc.Migrations diff --git a/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs b/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs index d40bb11d..811d6f93 100644 --- a/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs +++ b/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs @@ -1,8 +1,6 @@ using System; using Microsoft.Data.Entity; using Microsoft.Data.Entity.Infrastructure; -using Microsoft.Data.Entity.Metadata; -using Microsoft.Data.Entity.Migrations; using Yavsc.Models; namespace Yavsc.Migrations diff --git a/Yavsc/Models/ApplicationDbContext.cs b/Yavsc/Models/ApplicationDbContext.cs index e641de65..59fc70d2 100644 --- a/Yavsc/Models/ApplicationDbContext.cs +++ b/Yavsc/Models/ApplicationDbContext.cs @@ -5,10 +5,8 @@ using System.Threading.Tasks; using Microsoft.AspNet.Authentication.OAuth; using Microsoft.AspNet.Identity.EntityFramework; using Microsoft.Data.Entity; -using System.Web; using System.Threading; using Yavsc.Models.Haircut; -using Yavsc.Models.Messaging; namespace Yavsc.Models { @@ -28,6 +26,7 @@ namespace Yavsc.Models using Musical.Profiles; using Workflow.Profiles; using Drawing; + public class ApplicationDbContext : IdentityDbContext { protected override void OnModelCreating(ModelBuilder builder) @@ -123,7 +122,7 @@ namespace Yavsc.Models public Task ClearTokensAsync() { Tokens.RemoveRange(this.Tokens); - SaveChanges(); + SaveChanges(null); return Task.FromResult(0); } @@ -138,7 +137,7 @@ namespace Yavsc.Models if (item != null) { Tokens.Remove(item); - SaveChanges(); + SaveChanges(email); } return Task.FromResult(0); } @@ -184,7 +183,7 @@ namespace Yavsc.Models item.RefreshToken = value.RefreshToken; Tokens.Update(item); } - SaveChanges(); + SaveChanges(googleUserId); return Task.FromResult(0); } @@ -225,13 +224,11 @@ namespace Yavsc.Models public DbSet GeneralSettings { get; set; } public DbSet WorkflowProviders { get; set; } - private void AddTimestamps() + private void AddTimestamps(string currentUsername) { var entities = ChangeTracker.Entries().Where(x => x.Entity.GetType().GetInterface("IBaseTrackedEntity")!=null && (x.State == EntityState.Added || x.State == EntityState.Modified)); - var currentUsername = !string.IsNullOrEmpty(System.Web.HttpContext.Current?.User?.Identity?.Name) - ? HttpContext.Current.User.Identity.Name - : "Anonymous"; + // Microsoft.AspNet.Identity; foreach (var entity in entities) { @@ -245,15 +242,13 @@ namespace Yavsc.Models ((IBaseTrackedEntity)entity.Entity).UserModified = currentUsername; } } - - - override public int SaveChanges() { - AddTimestamps(); + public int SaveChanges(string userId) { + AddTimestamps(userId); return base.SaveChanges(); } - - public override async Task SaveChangesAsync(CancellationToken ctoken = default(CancellationToken)) { - AddTimestamps(); + + public async Task SaveChangesAsync(string userId, CancellationToken ctoken = default(CancellationToken)) { + AddTimestamps(userId); return await base.SaveChangesAsync(); } diff --git a/Yavsc/Models/Billing/CommandLine.cs b/Yavsc/Models/Billing/CommandLine.cs index 75f3b381..cd55e5ce 100644 --- a/Yavsc/Models/Billing/CommandLine.cs +++ b/Yavsc/Models/Billing/CommandLine.cs @@ -16,6 +16,8 @@ namespace Yavsc.Models.Billing public string Description { get; set; } public BaseProduct Article { get; set; } public int Count { get; set; } + + [DisplayFormat(DataFormatString="{0:C}")] public decimal UnitaryCost { get; set; } public long EstimateId { get; set; } diff --git a/Yavsc/Models/Billing/Estimate.cs b/Yavsc/Models/Billing/Estimate.cs index 64031b75..01e5d906 100644 --- a/Yavsc/Models/Billing/Estimate.cs +++ b/Yavsc/Models/Billing/Estimate.cs @@ -9,6 +9,7 @@ namespace Yavsc.Models.Billing { using Interfaces; using Models.Workflow; + using Newtonsoft.Json; public partial class Estimate : IEstimate { @@ -22,7 +23,7 @@ namespace Yavsc.Models.Billing /// it will result in a new estimate template /// /// - [ForeignKey("CommandId")] + [ForeignKey("CommandId"),JsonIgnore] public BookQuery Query { get; set; } public string Description { get; set; } public string Title { get; set; } @@ -62,12 +63,12 @@ namespace Yavsc.Models.Billing [Required] public string OwnerId { get; set; } - [ForeignKey("OwnerId")] + [ForeignKey("OwnerId"),JsonIgnore] public virtual PerformerProfile Owner { get; set; } [Required] public string ClientId { get; set; } - [ForeignKey("ClientId")] + [ForeignKey("ClientId"),JsonIgnore] public virtual ApplicationUser Client { get; set; } public string CommandType diff --git a/Yavsc/Models/Billing/NominativeServiceCommand.cs b/Yavsc/Models/Billing/NominativeServiceCommand.cs index e824acf6..c11b22bb 100644 --- a/Yavsc/Models/Billing/NominativeServiceCommand.cs +++ b/Yavsc/Models/Billing/NominativeServiceCommand.cs @@ -2,13 +2,12 @@ using System; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; -using Yavsc.Interfaces.Workflow; -using Yavsc.Models.Market; -using Yavsc.Models.Workflow; -using YavscLib; namespace Yavsc.Models.Billing { +using Interfaces.Workflow; +using Workflow; +using YavscLib; public abstract class NominativeServiceCommand : IBaseTrackedEntity, IQuery { diff --git a/Yavsc/Models/Haircut/HairCutQuery.cs b/Yavsc/Models/Haircut/HairCutQuery.cs index 1464f0ee..57bd3a6a 100644 --- a/Yavsc/Models/Haircut/HairCutQuery.cs +++ b/Yavsc/Models/Haircut/HairCutQuery.cs @@ -1,4 +1,4 @@ -using System; + using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Yavsc.Models.Billing; diff --git a/Yavsc/Models/Haircut/HairCutQueryEvent.cs b/Yavsc/Models/Haircut/HairCutQueryEvent.cs index 900b7b6e..ccb12992 100644 --- a/Yavsc/Models/Haircut/HairCutQueryEvent.cs +++ b/Yavsc/Models/Haircut/HairCutQueryEvent.cs @@ -1,3 +1,5 @@ +using Yavsc.Interfaces.Workflow; + namespace Yavsc.Models.Haircut { public class HairCutQueryEvent : BookQueryProviderInfo, IEvent diff --git a/Yavsc/Models/Haircut/HairPrestation.cs b/Yavsc/Models/Haircut/HairPrestation.cs index e3825420..66ecac62 100644 --- a/Yavsc/Models/Haircut/HairPrestation.cs +++ b/Yavsc/Models/Haircut/HairPrestation.cs @@ -1,5 +1,4 @@ -using System.ComponentModel.DataAnnotations; -using System.ComponentModel.DataAnnotations.Schema; + using Yavsc.Models.Market; namespace Yavsc.Models.Haircut diff --git a/Yavsc/Models/Identity/ApplicationUser.cs b/Yavsc/Models/Identity/ApplicationUser.cs index 7488326d..f799b452 100644 --- a/Yavsc/Models/Identity/ApplicationUser.cs +++ b/Yavsc/Models/Identity/ApplicationUser.cs @@ -11,6 +11,8 @@ namespace Yavsc.Models using Models.Chat; using Models.Bank; using Models.Access; + using Newtonsoft.Json; + public class ApplicationUser : IdentityUser { /// @@ -40,24 +42,24 @@ namespace Yavsc.Models /// User's posts /// /// - [InverseProperty("Author")] + [InverseProperty("Author"),JsonIgnore] public virtual List Posts { get; set; } /// /// User's contact list /// /// - [InverseProperty("Owner")] + [InverseProperty("Owner"),JsonIgnore] public virtual List Book { get; set; } /// /// External devices using the API /// /// - [InverseProperty("DeviceOwner")] + [InverseProperty("DeviceOwner"),JsonIgnore] public virtual List Devices { get; set; } - [InverseProperty("Owner")] + [InverseProperty("Owner"),JsonIgnore] public virtual List Connections { get; set; } @@ -65,7 +67,7 @@ namespace Yavsc.Models /// User's circles /// /// - [InverseProperty("Owner")] + [InverseProperty("Owner"),JsonIgnore] public virtual List Circles { get; set; } @@ -90,6 +92,7 @@ namespace Yavsc.Models public long DiskQuota { get; set; } = 512*1024*1024; public long DiskUsage { get; set; } = 0; + [JsonIgnore] public virtual List BlackList { get; set; } } } diff --git a/Yavsc/Models/Messaging/BaseEvent.cs b/Yavsc/Models/Messaging/BaseEvent.cs index ab648c00..befcbc0e 100644 --- a/Yavsc/Models/Messaging/BaseEvent.cs +++ b/Yavsc/Models/Messaging/BaseEvent.cs @@ -23,11 +23,13 @@ using System.ComponentModel.DataAnnotations; namespace Yavsc.Models.Messaging { - using Interfaces; - /// - /// Base event. - /// - + using Interfaces; + using Interfaces.Workflow; + + /// + /// Base event. + /// + public class BaseEvent : IEvent { public BaseEvent() { diff --git a/Yavsc/Models/Messaging/BookQueryEvent.cs b/Yavsc/Models/Messaging/BookQueryEvent.cs index d7544aa3..2e4a4bb5 100644 --- a/Yavsc/Models/Messaging/BookQueryEvent.cs +++ b/Yavsc/Models/Messaging/BookQueryEvent.cs @@ -1,7 +1,3 @@ - -namespace Yavsc.Models.Messaging -{ - // // BookQueryEvent.cs // @@ -23,6 +19,12 @@ namespace Yavsc.Models.Messaging // You should have received a copy of the GNU Lesser General Public License // along with this program. If not, see . +namespace Yavsc.Models.Messaging +{ +using Interfaces.Workflow; + + + public class BookQueryEvent: BookQueryProviderInfo, IEvent { public BookQueryEvent() diff --git a/Yavsc/Models/Messaging/EstimationEvent.cs b/Yavsc/Models/Messaging/EstimationEvent.cs index 31c24c15..1425f708 100644 --- a/Yavsc/Models/Messaging/EstimationEvent.cs +++ b/Yavsc/Models/Messaging/EstimationEvent.cs @@ -1,16 +1,22 @@ using System.Linq; +using Microsoft.Data.Entity; using Microsoft.Extensions.Localization; -using Yavsc.Helpers; -using Yavsc.Models.Billing; namespace Yavsc.Models.Messaging { + using Interfaces.Workflow; + using Billing; + using Yavsc.Helpers; + public class EstimationEvent: IEvent { public EstimationEvent(ApplicationDbContext context, Estimate estimate, IStringLocalizer SR) { + Topic = "Estimation"; Estimation = estimate; - var perfer = context.Performers.FirstOrDefault( + var perfer = context.Performers.Include( + p=>p.Performer + ).FirstOrDefault( p => p.PerformerId == estimate.OwnerId ); // Use estimate.OwnerId; @@ -27,28 +33,19 @@ namespace Yavsc.Models.Messaging ProviderClientInfo ProviderInfo { get; set; } Estimate Estimation { get; set; } - private string subtopic = null; - string IEvent.Topic - { - get - { - return "/topic/estimate"+subtopic!=null?"/"+subtopic:""; - } - - set - { - subtopic = value; - } - } - - string IEvent.Sender - { - get; set; - } - - string IEvent.Message + public string Topic { get; set; } + + public string Sender + { + get; set; + } + + public string Message + { + get; set; + } } } \ No newline at end of file diff --git a/Yavsc/Models/Workflow/BookQuery.cs b/Yavsc/Models/Workflow/BookQuery.cs index 9f7edec7..c27890db 100644 --- a/Yavsc/Models/Workflow/BookQuery.cs +++ b/Yavsc/Models/Workflow/BookQuery.cs @@ -5,7 +5,6 @@ using Newtonsoft.Json; namespace Yavsc.Models.Workflow { - using YavscLib; using Yavsc.Models.Billing; using Yavsc.Models.Relationship; /// diff --git a/Yavsc/Models/Workflow/PerformerProfile.cs b/Yavsc/Models/Workflow/PerformerProfile.cs index dcbc34ab..b6318e03 100644 --- a/Yavsc/Models/Workflow/PerformerProfile.cs +++ b/Yavsc/Models/Workflow/PerformerProfile.cs @@ -5,8 +5,9 @@ using System.ComponentModel.DataAnnotations.Schema; namespace Yavsc.Models.Workflow { using Models.Relationship; - - public class PerformerProfile { + using YavscLib.Workflow; + + public class PerformerProfile : IPerformerProfile { [Key] public string PerformerId { get; set; } diff --git a/Yavsc/Models/Workflow/Query.cs b/Yavsc/Models/Workflow/Query.cs index c619f78b..32c2d74d 100644 --- a/Yavsc/Models/Workflow/Query.cs +++ b/Yavsc/Models/Workflow/Query.cs @@ -1,11 +1,8 @@ -using System; - namespace Yavsc.Models.Workflow { - using Interfaces.Workflow; - using Models.Market; - using YavscLib; - + using Interfaces.Workflow; + using YavscLib; + public interface IQuery: IBaseTrackedEntity { QueryStatus Status { get; set; } diff --git a/Yavsc/Resources/Yavsc.Resources.YavscLocalisation.resx b/Yavsc/Resources/Yavsc.Resources.YavscLocalisation.resx index 4ea89a52..0a7b4e3c 100644 --- a/Yavsc/Resources/Yavsc.Resources.YavscLocalisation.resx +++ b/Yavsc/Resources/Yavsc.Resources.YavscLocalisation.resx @@ -212,14 +212,13 @@ Demandes de Devis en souffrance Devis à valider Devis à accèpter ou refuser + {0} à validé et évalué votre demande, avec un devis à {1:C} + Date de l'évennement Factures à produire Factures à honnorer Paiements effectués - - {0} a validé un devis pour vous : {1}\nAu total : {2} € - Il attend maintenant votre signature. Demande de devis Date de l'évennement Page web de l'événement diff --git a/Yavsc/Settings/SiteSettings.cs b/Yavsc/Settings/SiteSettings.cs index b360fa63..c677de7a 100644 --- a/Yavsc/Settings/SiteSettings.cs +++ b/Yavsc/Settings/SiteSettings.cs @@ -4,6 +4,8 @@ namespace Yavsc { public string Title { get; set; } public string Slogan { get; set; } + + public string Banner { get; set; } /// /// Conceptually, /// This authorisation server only has this present site as unique audience. diff --git a/Yavsc/Startup/Startup.cs b/Yavsc/Startup/Startup.cs index 419c7b20..37a879ab 100755 --- a/Yavsc/Startup/Startup.cs +++ b/Yavsc/Startup/Startup.cs @@ -16,7 +16,6 @@ using Microsoft.AspNet.Localization; using Microsoft.AspNet.Mvc; using Microsoft.AspNet.Mvc.Filters; using Microsoft.AspNet.Mvc.Razor; -using Microsoft.AspNet.Http.Extensions; using Microsoft.Data.Entity; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; @@ -232,6 +231,7 @@ namespace Yavsc IOptions localizationOptions, IOptions oauth2SettingsContainer, RoleManager roleManager, + UserManager userManager, IAuthorizationService authorizationService, ILoggerFactory loggerFactory) { @@ -320,7 +320,7 @@ namespace Yavsc { foreach (var c in db.Connections) db.Connections.Remove(c); - db.SaveChanges(); + db.SaveChanges("Startup"); } }); @@ -339,13 +339,13 @@ namespace Yavsc ConfigureWorkflow(app, SiteSetup); app.UseRequestLocalization(localizationOptions.Value, (RequestCulture) new RequestCulture((string)"fr")); app.UseSession(); - app.UseMvc(routes => { routes.MapRoute( name: "default", template: "{controller=Home}/{action=Index}/{id?}"); }); + } // Entry point for the application. diff --git a/Yavsc/Views/Estimate/Details.cshtml b/Yavsc/Views/Estimate/Details.cshtml index c9e7acea..3c73a456 100644 --- a/Yavsc/Views/Estimate/Details.cshtml +++ b/Yavsc/Views/Estimate/Details.cshtml @@ -9,7 +9,6 @@

Estimate


- @Html.DisplayFor(model => model)

@SR["Edit"] | diff --git a/Yavsc/Views/Estimate/Index.cshtml b/Yavsc/Views/Estimate/Index.cshtml index 85fdf739..6decbb57 100644 --- a/Yavsc/Views/Estimate/Index.cshtml +++ b/Yavsc/Views/Estimate/Index.cshtml @@ -12,10 +12,10 @@ + @@ -32,10 +35,10 @@ @foreach (var item in Model) { + diff --git a/Yavsc/Views/Home/Index.cshtml b/Yavsc/Views/Home/Index.cshtml index 76c2bfa8..47f217ce 100755 --- a/Yavsc/Views/Home/Index.cshtml +++ b/Yavsc/Views/Home/Index.cshtml @@ -27,7 +27,7 @@ + + @await Component.InvokeAsync("Estimate",Model.Id) diff --git a/Yavsc/Views/Shared/_Layout.cshtml b/Yavsc/Views/Shared/_Layout.cshtml index 113ed354..20412951 100755 --- a/Yavsc/Views/Shared/_Layout.cshtml +++ b/Yavsc/Views/Shared/_Layout.cshtml @@ -5,6 +5,7 @@ @ViewData["Title"] - @SiteSettings.Value.Title + @@ -32,13 +33,18 @@ + @RenderSection("header", required: false) @if (ViewData ["Notify"] != null) { foreach (Notification n in ViewData ["Notify"] as IEnumerable) { @@ -75,12 +81,7 @@

Site de développement

- - Get up. - - - Get up. - +@SiteSettings.Value.Slogan
- @Html.DisplayNameFor(model => model.Description) + @Html.DisplayNameFor(model => model.Title) - @Html.DisplayNameFor(model => model.Title) + @Html.DisplayNameFor(model => model.Description) @Html.DisplayNameFor(model => model.Query.Client) @@ -23,6 +23,9 @@ @SR["Performer"] + @Html.DisplayNameFor(model => model.ProviderValidationDate) + @SR["Id"]
- @Html.DisplayFor(modelItem => item.Description) + @Html.DisplayFor(modelItem => item.Title) - @Html.DisplayFor(modelItem => item.Title) + @Html.DisplayFor(modelItem => item.Description) @Html.DisplayFor(modelItem => item.Query.Client.UserName) @@ -43,6 +46,9 @@ @Html.DisplayFor(modelItem => item.Query.PerformerProfile.Performer.UserName) + @Html.DisplayFor(modelItem => item.ProviderValidationDate) + @Html.DisplayFor(modelItem => item.Id)