Fixes the membership update.
This commit is contained in:
parent
bfb3e7d973
commit
294c54099c
35 changed files with 2683 additions and 11 deletions
19
yavscModel/Blogs/PostNotFoundException.cs
Normal file
19
yavscModel/Blogs/PostNotFoundException.cs
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
using System;
|
||||
using Yavsc.Model.Blogs;
|
||||
using Yavsc.Model.RolesAndMembers;
|
||||
using System.Web;
|
||||
using System.Web.Security;
|
||||
using Yavsc.Model.Circles;
|
||||
using System.Web.Mvc;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
|
||||
|
||||
namespace Yavsc.Model.Blogs
|
||||
{
|
||||
public class PostNotFoundException : Exception
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
53
yavscModel/Blogs/UUBlogEntryCollection.cs
Normal file
53
yavscModel/Blogs/UUBlogEntryCollection.cs
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
//
|
||||
// UUBlogEntryCollection.cs
|
||||
//
|
||||
// Author:
|
||||
// Paul Schneider <paul@pschneider.fr>
|
||||
//
|
||||
// Copyright (c) 2015 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 <http://www.gnu.org/licenses/>.
|
||||
|
||||
using System;
|
||||
|
||||
namespace Yavsc.Model.Blogs
|
||||
{
|
||||
/// <summary>
|
||||
/// Unique User blog entry collection.
|
||||
/// </summary>
|
||||
public class UUBlogEntryCollection: BlogEntryCollection {
|
||||
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="Yavsc.Model.Blogs.UUBlogEntryCollection"/> class.
|
||||
/// </summary>
|
||||
/// <param name="username">Username.</param>
|
||||
/// <param name="items">Items.</param>
|
||||
public UUBlogEntryCollection(string username,
|
||||
BlogEntryCollection items = null) {
|
||||
if (items != null) {
|
||||
if (!items.ConcernsAUniqueUser)
|
||||
throw new InvalidOperationException ();
|
||||
this.AddRange (items);
|
||||
}
|
||||
_username = username;
|
||||
}
|
||||
private string _username;
|
||||
/// <summary>
|
||||
/// Gets the name of the user.
|
||||
/// </summary>
|
||||
/// <value>The name of the user.</value>
|
||||
public string UserName { get { return _username; } }
|
||||
}
|
||||
|
||||
}
|
||||
64
yavscModel/Blogs/UUTBlogEntryCollection.cs
Normal file
64
yavscModel/Blogs/UUTBlogEntryCollection.cs
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
//
|
||||
// UUTBlogEntryCollection.cs
|
||||
//
|
||||
// Author:
|
||||
// Paul Schneider <paul@pschneider.fr>
|
||||
//
|
||||
// Copyright (c) 2015 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 <http://www.gnu.org/licenses/>.
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Configuration;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net.Mime;
|
||||
using System.Runtime.Serialization.Formatters.Binary;
|
||||
using System.Web;
|
||||
using System.Web.Configuration;
|
||||
using System.Web.Profile;
|
||||
using System.Web.Security;
|
||||
using Npgsql.Web.Blog;
|
||||
using Yavsc;
|
||||
using Yavsc.Model;
|
||||
using Yavsc.Model.Blogs;
|
||||
using Yavsc.ApiControllers;
|
||||
using Yavsc.Model.RolesAndMembers;
|
||||
using System.Net;
|
||||
using System.Web.Mvc;
|
||||
using Yavsc.Model.Circles;
|
||||
|
||||
namespace Yavsc.Controllers
|
||||
{
|
||||
public class UUTBlogEntryCollection : BlogEntryCollection {
|
||||
|
||||
UUTBlogEntryCollection(string username, string title,
|
||||
public BlogEntryCollection items = null) {
|
||||
if (items != null) {
|
||||
if (!items.ConcernsAUniqueTitle && items.ConcernsAUniqueTitle)
|
||||
throw new InvalidOperationException ();
|
||||
this.AddRange (items);
|
||||
}
|
||||
_title = title;
|
||||
_username = username;
|
||||
}
|
||||
private string _title;
|
||||
private string _username;
|
||||
public string UserName { get { return _username; } }
|
||||
public string Title { get { return _title; } }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
47
yavscModel/RolesAndMembers/ChangeUserNameProvider.cs
Normal file
47
yavscModel/RolesAndMembers/ChangeUserNameProvider.cs
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
//
|
||||
// ChangeUserNameProvider.cs
|
||||
//
|
||||
// Author:
|
||||
// Paul Schneider <paul@pschneider.fr>
|
||||
//
|
||||
// Copyright (c) 2015 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 <http://www.gnu.org/licenses/>.
|
||||
using System;
|
||||
using System.Configuration;
|
||||
using System.Reflection;
|
||||
using System.Configuration.Provider;
|
||||
|
||||
namespace Yavsc.Model.RolesAndMembers
|
||||
{
|
||||
/// <summary>
|
||||
/// Change user name provider.
|
||||
/// </summary>
|
||||
public abstract class ChangeUserNameProvider: ProviderBase
|
||||
{
|
||||
/// <summary>
|
||||
/// Initializes a new instance of the <see cref="Yavsc.Model.RolesAndMembers.ChangeUserNameProvider"/> class.
|
||||
/// </summary>
|
||||
public ChangeUserNameProvider ()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public abstract void ChangeName (string oldName, string newName) ;
|
||||
|
||||
public abstract bool IsNameAvailable(string name);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
75
yavscModel/RolesAndMembers/UserManager.cs
Normal file
75
yavscModel/RolesAndMembers/UserManager.cs
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Net.Mail;
|
||||
using System.Web;
|
||||
using System.Web.Configuration;
|
||||
using System.Web.Profile;
|
||||
using System.Web.Security;
|
||||
using Yavsc;
|
||||
using Yavsc.Model.RolesAndMembers;
|
||||
using Yavsc.Helpers;
|
||||
using System.Web.Mvc;
|
||||
using Yavsc.Model.Circles;
|
||||
using System.Collections.Specialized;
|
||||
using Yavsc.Model;
|
||||
using System.Configuration;
|
||||
using System.Reflection;
|
||||
|
||||
namespace Yavsc.Controllers
|
||||
{
|
||||
/// <summary>
|
||||
/// User manager.
|
||||
/// </summary>
|
||||
public static class UserManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Changes the name.
|
||||
/// </summary>
|
||||
/// <param name="oldName">Old name.</param>
|
||||
/// <param name="newName">New name.</param>
|
||||
public static void ChangeName (string oldName, string newName) {
|
||||
Provider.ChangeName (oldName, newName);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Determines if is available the specified name.
|
||||
/// </summary>
|
||||
/// <returns><c>true</c> if is available the specified name; otherwise, <c>false</c>.</returns>
|
||||
/// <param name="name">Name.</param>
|
||||
public static bool IsAvailable(string name)
|
||||
{
|
||||
return Provider.IsNameAvailable (name);
|
||||
}
|
||||
/// <summary>
|
||||
/// The provider.
|
||||
/// </summary>
|
||||
private static ChangeUserNameProvider provider;
|
||||
|
||||
/// <summary>
|
||||
/// Gets the provider.
|
||||
/// </summary>
|
||||
/// <value>The provider.</value>
|
||||
public static ChangeUserNameProvider Provider {
|
||||
get {
|
||||
return provider;
|
||||
}
|
||||
}
|
||||
|
||||
private static ChangeUserNameProvider GetProvider ()
|
||||
{
|
||||
DataProviderConfigurationSection config = ConfigurationManager.GetSection ("system.web/blog") as DataProviderConfigurationSection;
|
||||
if (config == null)
|
||||
throw new ConfigurationErrorsException("The configuration bloc for the blog provider was not found");
|
||||
ProviderSettings celt =
|
||||
config.Providers[config.DefaultProvider];
|
||||
if (config == null)
|
||||
throw new ConfigurationErrorsException("The default blog provider was not found");
|
||||
ConstructorInfo ci = Type.GetType (celt.Type).GetConstructor (Type.EmptyTypes);
|
||||
provider = ci.Invoke (Type.EmptyTypes) as ChangeUserNameProvider;
|
||||
provider.Initialize (celt.Name, celt.Parameters);
|
||||
return provider;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
12
yavscModel/WorkFlow/IDataProvider.cs
Normal file
12
yavscModel/WorkFlow/IDataProvider.cs
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Yavsc.Model.FrontOffice;
|
||||
|
||||
namespace Yavsc.Model.WorkFlow
|
||||
{
|
||||
public interface IDataProvider
|
||||
{
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue