diff --git a/Makefile b/Makefile
index 00f8d623..b3733579 100644
--- a/Makefile
+++ b/Makefile
@@ -11,3 +11,7 @@ pushInProd:
pushInPre:
make -C src/Yavsc pushInPre
+
+packages:
+ make -C src/Yavsc.Abstract pack
+
diff --git a/rc-num.txt b/rc-num.txt
index 40994076..a45fd52c 100644
--- a/rc-num.txt
+++ b/rc-num.txt
@@ -1 +1 @@
-23
+24
diff --git a/src/Yavsc.Server/Models/Identity/BlackListedUserName.cs b/src/Yavsc.Abstract/Identity/BlackListedUserName.cs
similarity index 100%
rename from src/Yavsc.Server/Models/Identity/BlackListedUserName.cs
rename to src/Yavsc.Abstract/Identity/BlackListedUserName.cs
diff --git a/src/Yavsc.Server/Models/Identity/IWatchedUserName.cs b/src/Yavsc.Abstract/Identity/IWatchedUserName.cs
similarity index 100%
rename from src/Yavsc.Server/Models/Identity/IWatchedUserName.cs
rename to src/Yavsc.Abstract/Identity/IWatchedUserName.cs
diff --git a/src/Yavsc.Server/Models/Identity/ReservedUserName.cs b/src/Yavsc.Abstract/Identity/ReservedUserName.cs
similarity index 100%
rename from src/Yavsc.Server/Models/Identity/ReservedUserName.cs
rename to src/Yavsc.Abstract/Identity/ReservedUserName.cs
diff --git a/src/Yavsc.Abstract/Workflow/IGoogleCloudMobileDeclaration.cs b/src/Yavsc.Abstract/Workflow/IGoogleCloudMobileDeclaration.cs
index 77d0675a..2a8a274f 100644
--- a/src/Yavsc.Abstract/Workflow/IGoogleCloudMobileDeclaration.cs
+++ b/src/Yavsc.Abstract/Workflow/IGoogleCloudMobileDeclaration.cs
@@ -17,7 +17,6 @@
//
using System;
-using Yavsc.Abstract.Identity;
namespace Yavsc
{
@@ -29,11 +28,7 @@ namespace Yavsc
string Platform { get; set; }
string Version { get; set; }
DateTime? LatestActivityUpdate { get; set; }
- }
-
- public interface IGoogleCloudMobileDeclaration: IGCMDeclaration
- {
- IApplicationUser DeviceOwner { get; set; }
string DeviceOwnerId { get; set; }
}
+
}
diff --git a/src/Yavsc.Server/Models/Identity/GoogleCloudMobileDeclaration.cs b/src/Yavsc.Server/Models/Auth/GoogleCloudMobileDeclaration.cs
similarity index 90%
rename from src/Yavsc.Server/Models/Identity/GoogleCloudMobileDeclaration.cs
rename to src/Yavsc.Server/Models/Auth/GoogleCloudMobileDeclaration.cs
index ae634d33..10a7a48d 100644
--- a/src/Yavsc.Server/Models/Identity/GoogleCloudMobileDeclaration.cs
+++ b/src/Yavsc.Server/Models/Auth/GoogleCloudMobileDeclaration.cs
@@ -7,7 +7,7 @@ namespace Yavsc.Models.Identity
{
[JsonObject]
- public class GoogleCloudMobileDeclaration {
+ public class GoogleCloudMobileDeclaration : IGCMDeclaration {
[Required]
public string GCMRegistrationId { get; set; }
@@ -33,7 +33,7 @@ namespace Yavsc.Models.Identity
/// In order to say, is any activity has changed here.
///
///
- public DateTime LatestActivityUpdate { get; set; }
+ public DateTime ? LatestActivityUpdate { get; set; }
[JsonIgnore,ForeignKey("DeviceOwnerId")]
public virtual ApplicationUser DeviceOwner { get; set; }
diff --git a/src/Yavsc.Server/Models/Messaging/LiveFlow.cs b/src/Yavsc.Server/Models/Messaging/LiveFlow.cs
index 64c25705..10372757 100644
--- a/src/Yavsc.Server/Models/Messaging/LiveFlow.cs
+++ b/src/Yavsc.Server/Models/Messaging/LiveFlow.cs
@@ -1,7 +1,6 @@
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Yavsc.Abstract.Streaming;
-using Yavsc.Models;
namespace Yavsc.Models.Streaming
{
diff --git a/src/Yavsc/ApiControllers/GCMController.cs b/src/Yavsc/ApiControllers/GCMController.cs
index 0da84358..a4e05ad1 100644
--- a/src/Yavsc/ApiControllers/GCMController.cs
+++ b/src/Yavsc/ApiControllers/GCMController.cs
@@ -37,6 +37,7 @@ public class GCMController : Controller
_logger.LogError("Invalid model for GCMD");
return new BadRequestObjectResult(ModelState);
}
+ declaration.LatestActivityUpdate = DateTime.Now;
_logger.LogInformation($"Registering device with id:{declaration.DeviceId} for {uid}");
var alreadyRegisteredDevice = _context.GCMDevices.FirstOrDefault(d => d.DeviceId == declaration.DeviceId);
diff --git a/src/Yavsc/ApiControllers/Streaming/LiveApiController.cs b/src/Yavsc/ApiControllers/Streaming/LiveApiController.cs
index 981e6e7e..47474edc 100644
--- a/src/Yavsc/ApiControllers/Streaming/LiveApiController.cs
+++ b/src/Yavsc/ApiControllers/Streaming/LiveApiController.cs
@@ -1,6 +1,4 @@
-using System;
using System.Collections.Concurrent;
-using System.Collections.Generic;
using System.Linq;
using System.Net.WebSockets;
using System.Security.Claims;
@@ -8,10 +6,8 @@ using System.Threading;
using System.Threading.Tasks;
using Microsoft.AspNet.Http;
using Microsoft.AspNet.Mvc;
-using Microsoft.AspNet.SignalR;
using Microsoft.Data.Entity;
using Microsoft.Extensions.Logging;
-using Yavsc.Helpers;
using Yavsc.Models;
using Yavsc.Models.Streaming;
using Yavsc.ViewModels.Streaming;
diff --git a/src/Yavsc/Controllers/Survey/BugController.cs b/src/Yavsc/Controllers/Survey/BugController.cs
index ecca33fa..2747b0e8 100644
--- a/src/Yavsc/Controllers/Survey/BugController.cs
+++ b/src/Yavsc/Controllers/Survey/BugController.cs
@@ -4,7 +4,6 @@ using Microsoft.Data.Entity;
using Yavsc.Models;
using Yavsc.Models.IT.Fixing;
using Yavsc.Models.IT.Evolution;
-using System.Linq;
using Yavsc.Server.Helpers;
using System.Collections.Generic;
using Microsoft.AspNet.Mvc.Rendering;
diff --git a/src/Yavsc/Helpers/GoogleStoreHelpers.cs b/src/Yavsc/Helpers/GoogleStoreHelpers.cs
index b8ee7441..00a3fd3a 100644
--- a/src/Yavsc/Helpers/GoogleStoreHelpers.cs
+++ b/src/Yavsc/Helpers/GoogleStoreHelpers.cs
@@ -1,15 +1,14 @@
using System;
using System.Linq;
using System.Threading.Tasks;
-using Microsoft.AspNet.Identity.EntityFramework;
using Microsoft.Data.Entity;
-using System.Threading;
using Newtonsoft.Json.Linq;
-namespace Yavsc.Helpers.Google {
+namespace Yavsc.Helpers.Google
+{
using Yavsc.Models;
using Yavsc.Models.Auth;
- public static class GoogleStoreHelper {
+ public static class GoogleStoreHelper {
public static Task GetTokensAsync(this ApplicationDbContext context, string googleUserId)
{
diff --git a/src/Yavsc/Hubs/ChatHub.cs b/src/Yavsc/Hubs/ChatHub.cs
index fcbf07ba..d6c573cf 100644
--- a/src/Yavsc/Hubs/ChatHub.cs
+++ b/src/Yavsc/Hubs/ChatHub.cs
@@ -151,7 +151,7 @@ namespace Yavsc
[Authorize]
- public async void SendPV(string connectionId, string message)
+ public void SendPV(string connectionId, string message)
{
if (Clients.CallerState.BlackListedBy!=null)
foreach (string destId in Clients.CallerState.BlackListedBy)
diff --git a/src/Yavsc/Migrations/20181212103501_blogLang.Designer.cs b/src/Yavsc/Migrations/20181212103501_blogLang.Designer.cs
index d67a5b11..351620b9 100644
--- a/src/Yavsc/Migrations/20181212103501_blogLang.Designer.cs
+++ b/src/Yavsc/Migrations/20181212103501_blogLang.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/src/Yavsc/Migrations/20181212103501_blogLang.cs b/src/Yavsc/Migrations/20181212103501_blogLang.cs
index 7eda6eb1..23df91b2 100644
--- a/src/Yavsc/Migrations/20181212103501_blogLang.cs
+++ b/src/Yavsc/Migrations/20181212103501_blogLang.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20181218152420_BlogTradModel.Designer.cs b/src/Yavsc/Migrations/20181218152420_BlogTradModel.Designer.cs
index e195783e..077a74f1 100644
--- a/src/Yavsc/Migrations/20181218152420_BlogTradModel.Designer.cs
+++ b/src/Yavsc/Migrations/20181218152420_BlogTradModel.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/src/Yavsc/Migrations/20181218152420_BlogTradModel.cs b/src/Yavsc/Migrations/20181218152420_BlogTradModel.cs
index 12da15a5..04681841 100644
--- a/src/Yavsc/Migrations/20181218152420_BlogTradModel.cs
+++ b/src/Yavsc/Migrations/20181218152420_BlogTradModel.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20181231153224_bugTitles.Designer.cs b/src/Yavsc/Migrations/20181231153224_bugTitles.Designer.cs
index 3253eaa4..5b47f715 100644
--- a/src/Yavsc/Migrations/20181231153224_bugTitles.Designer.cs
+++ b/src/Yavsc/Migrations/20181231153224_bugTitles.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/src/Yavsc/Migrations/20181231153224_bugTitles.cs b/src/Yavsc/Migrations/20181231153224_bugTitles.cs
index 24ea479f..5d4a0085 100644
--- a/src/Yavsc/Migrations/20181231153224_bugTitles.cs
+++ b/src/Yavsc/Migrations/20181231153224_bugTitles.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20190103110008_liveSetup.Designer.cs b/src/Yavsc/Migrations/20190103110008_liveSetup.Designer.cs
index 11c41bc8..b96ddb7f 100644
--- a/src/Yavsc/Migrations/20190103110008_liveSetup.Designer.cs
+++ b/src/Yavsc/Migrations/20190103110008_liveSetup.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/src/Yavsc/Migrations/20190103110008_liveSetup.cs b/src/Yavsc/Migrations/20190103110008_liveSetup.cs
index 8aff63f1..b321460b 100644
--- a/src/Yavsc/Migrations/20190103110008_liveSetup.cs
+++ b/src/Yavsc/Migrations/20190103110008_liveSetup.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20190126133339_banTarget.Designer.cs b/src/Yavsc/Migrations/20190126133339_banTarget.Designer.cs
index f579553a..57d51033 100644
--- a/src/Yavsc/Migrations/20190126133339_banTarget.Designer.cs
+++ b/src/Yavsc/Migrations/20190126133339_banTarget.Designer.cs
@@ -1,7 +1,26 @@
+//
+// MyHub.cs
+//
+// Author:
+// Paul Schneider
+//
+// Copyright (c) 2016 GNU GPL
+//
+// This program is free software: you can redistribute it and/or modify
+// it under the terms of the GNU Lesser General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU Lesser General Public License for more details.
+//
+// You should have received a copy of the GNU Lesser General Public License
+// along with this program. If not, see .
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/src/Yavsc/Migrations/20190126133339_banTarget.cs b/src/Yavsc/Migrations/20190126133339_banTarget.cs
index 9a812d98..d8c3ccb9 100644
--- a/src/Yavsc/Migrations/20190126133339_banTarget.cs
+++ b/src/Yavsc/Migrations/20190126133339_banTarget.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20190127105601_banReason.Designer.cs b/src/Yavsc/Migrations/20190127105601_banReason.Designer.cs
index b6efeda1..6bc616dd 100644
--- a/src/Yavsc/Migrations/20190127105601_banReason.Designer.cs
+++ b/src/Yavsc/Migrations/20190127105601_banReason.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/src/Yavsc/Migrations/20190127105601_banReason.cs b/src/Yavsc/Migrations/20190127105601_banReason.cs
index bcf06ff3..abbbaf79 100644
--- a/src/Yavsc/Migrations/20190127105601_banReason.cs
+++ b/src/Yavsc/Migrations/20190127105601_banReason.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.Designer.cs b/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.Designer.cs
index a2c7c629..d9f3dae7 100644
--- a/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.Designer.cs
+++ b/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.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/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.cs b/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.cs
index 7ea380b3..2fc52e75 100644
--- a/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.cs
+++ b/src/Yavsc/Migrations/20190204162909_liveFlowSeqnum.cs
@@ -1,5 +1,3 @@
-using System;
-using System.Collections.Generic;
using Microsoft.Data.Entity.Migrations;
namespace Yavsc.Migrations
diff --git a/src/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs b/src/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs
index fdcd63f5..3799ea05 100644
--- a/src/Yavsc/Migrations/ApplicationDbContextModelSnapshot.cs
+++ b/src/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/src/Yavsc/Models/ApplicationDbContext.cs b/src/Yavsc/Models/ApplicationDbContext.cs
index 1f9469e8..054eae31 100644
--- a/src/Yavsc/Models/ApplicationDbContext.cs
+++ b/src/Yavsc/Models/ApplicationDbContext.cs
@@ -21,7 +21,6 @@ namespace Yavsc.Models
using Auth;
using Billing;
using Musical;
- using OAuth;
using Workflow;
using Identity;
using Market;
@@ -36,7 +35,6 @@ namespace Yavsc.Models
using Payment;
using Yavsc.Models.Calendar;
using Blog;
- using Newtonsoft.Json.Linq;
using Yavsc.Abstract.Identity;
using Yavsc.Server.Models.Blog;
diff --git a/src/Yavsc/Services/GoogleApis/CalendarManager.cs b/src/Yavsc/Services/GoogleApis/CalendarManager.cs
index e07df361..b52633ee 100644
--- a/src/Yavsc/Services/GoogleApis/CalendarManager.cs
+++ b/src/Yavsc/Services/GoogleApis/CalendarManager.cs
@@ -30,14 +30,11 @@ using Google.Apis.Calendar.v3.Data;
using System.Collections.Generic;
using System.Linq;
using Google.Apis.Services;
-using System.Threading;
using Google.Apis.Auth.OAuth2.Flows;
using Google.Apis.Auth.OAuth2.Responses;
-using Google.Apis.Util;
namespace Yavsc.Services
{
- using Yavsc.Helpers;
using Yavsc.Models;
using Yavsc.Models.Calendar;
using Yavsc.Server.Helpers;
diff --git a/src/Yavsc/Startup/Startup.FileServer.cs b/src/Yavsc/Startup/Startup.FileServer.cs
index 50ab2a4a..a0749464 100644
--- a/src/Yavsc/Startup/Startup.FileServer.cs
+++ b/src/Yavsc/Startup/Startup.FileServer.cs
@@ -1,5 +1,4 @@
using System.IO;
-using System.Security.Claims;
using Microsoft.AspNet.Authorization;
using Microsoft.AspNet.Builder;
using Microsoft.AspNet.FileProviders;
@@ -8,7 +7,6 @@ using Microsoft.AspNet.Http;
using Microsoft.AspNet.StaticFiles;
using Microsoft.Extensions.Logging;
using Yavsc.Abstract.FileSystem;
-using Yavsc.ViewModels.Auth;
namespace Yavsc
{
diff --git a/src/Yavsc/Startup/Startup.SanityChecks.cs b/src/Yavsc/Startup/Startup.SanityChecks.cs
index f356f270..1615efcb 100644
--- a/src/Yavsc/Startup/Startup.SanityChecks.cs
+++ b/src/Yavsc/Startup/Startup.SanityChecks.cs
@@ -1,11 +1,9 @@
using System;
using System.IO;
-using Google.Apis.Auth.OAuth2;
using Microsoft.AspNet.Builder;
using Microsoft.AspNet.Hosting;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
-using Newtonsoft.Json;
namespace Yavsc