adds access by circle to blog posts

This commit is contained in:
Paul Schneider 2015-07-02 14:42:18 +02:00
commit f25aa8ff97
32 changed files with 465 additions and 274 deletions

View file

@ -1,48 +0,0 @@
//
// CircleInfo.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.ComponentModel.DataAnnotations;
namespace Yavsc.Model.Circles
{
/// <summary>
/// Circle info.
/// </summary>
public class CircleInfo
{
public long Id { get; set; }
public string Title { get; set; }
public CircleInfo(Circle c)
{
Id = c.Id;
Title = c.Title;
}
public CircleInfo(long id, string title)
{
Id = id;
Title = title;
}
}
}

View file

@ -1,35 +0,0 @@
//
// CircleInfoCollection.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;
namespace Yavsc.Model.Circles
{
/// <summary>
/// Circle info collection.
/// </summary>
public class CircleInfoCollection : List<CircleInfo>
{
}
}

View file

@ -73,47 +73,8 @@ namespace Yavsc.Model.Circles
defaultProvider = ci.Invoke (Type.EmptyTypes) as CircleProvider;
defaultProvider.Initialize (pSection.DefaultProvider,pSetDef.Parameters);
}
/*
foreach (ProviderSettings pSettings in
providerSettings)
{
Console.WriteLine(
"Provider settings name: {0}",
pSettings.Name);
Console.WriteLine(
"Provider settings type: {0}",
pSettings.Type);
NameValueCollection parameters =
pSettings.Parameters;
IEnumerator pEnum =
parameters.GetEnumerator();
int i = 0;
while (pEnum.MoveNext())
{
string pLength =
parameters[i].Length.ToString();
Console.WriteLine(
"Provider ssettings: {0} has {1} parameters",
pSettings.Name, pLength);
}
}
*/
}
}
}

View file

@ -25,6 +25,8 @@ using System.Collections.Specialized;
using System.Collections;
using System.Reflection;
using System.Configuration.Provider;
using System.Web.Mvc;
using System.Collections.Generic;
namespace Yavsc.Model.Circles
{
@ -70,7 +72,14 @@ namespace Yavsc.Model.Circles
/// <summary>
/// List this instance.
/// </summary>
public abstract CircleInfoCollection List(string user);
public abstract IEnumerable<ListItem> List(string user);
/// <summary>
/// Covers the specified username.
/// </summary>
/// <param name="circle_ids">circle's owner.</param>
/// <param name="member">Username in his circle.</param>
public abstract bool Matches(long [] circle_ids, string member);
}