* InputCircle.cs: An input control specialized for circle selection
* UserCard.cs: Displays user informations on a little div * Estim.cs: * WebControls.csproj: * CircleInfo.cs: * CircleProvider.cs: * CircleApiController.cs: * BasketApiController.cs: * ITContentProvider.csproj: * CalendarApiController.cs: * WorkFlowApiController.cs: * NpgsqlCircleProvider.cs: * FrontOfficeApiController.cs: * InputUserName.cs: Fixes the ToolBoxData attribute * Web.csproj: * Circle.cs: refactoring * instdbws.sql: Foreign keys are cascading updates and deletions * Estim.tt: * Profile.cs: User's profile does not contain anymore the main e-mail address, it conflicts with registration informations, it is not part of the profile data
This commit is contained in:
parent
3d050e019e
commit
6680addcc8
24 changed files with 796 additions and 227 deletions
|
|
@ -15,7 +15,7 @@ namespace Yavsc.ApiControllers
|
|||
/// Maintains a collection of articles
|
||||
/// qualified with name value pairs
|
||||
/// </summary>
|
||||
public class BasketController : ApiController
|
||||
public class BasketApiController : ApiController
|
||||
{
|
||||
/// <summary>
|
||||
/// The wfmgr.
|
||||
|
|
@ -34,7 +34,7 @@ namespace Yavsc.ApiControllers
|
|||
/// <summary>
|
||||
/// Night flash controller.
|
||||
/// </summary>
|
||||
public class CalendarController: ApiController
|
||||
public class CalendarApiController: ApiController
|
||||
{
|
||||
YaEvent[] getTestList()
|
||||
{
|
||||
|
|
@ -30,50 +30,71 @@ namespace Yavsc.ApiControllers
|
|||
/// <summary>
|
||||
/// Circle controller.
|
||||
/// </summary>
|
||||
public class CircleController : ApiController
|
||||
public class CircleApiController : ApiController
|
||||
{
|
||||
/// <summary>
|
||||
/// Add the specified id and users.
|
||||
/// Creates the specified circle using the given title and user list.
|
||||
/// </summary>
|
||||
/// <param name="id">Identifier.</param>
|
||||
/// <param name="title">Title.</param>
|
||||
/// <param name="title">Identifier.</param>
|
||||
/// <param name="users">Users.</param>
|
||||
[Authorize]
|
||||
public void Add(string id, string [] users)
|
||||
public long Create(string title, string [] users)
|
||||
{
|
||||
string user = Membership.GetUser ().UserName;
|
||||
CircleManager.DefaultProvider.Add (user, id, users);
|
||||
}
|
||||
/// <summary>
|
||||
/// Delete the specified id.
|
||||
/// </summary>
|
||||
/// <param name="id">Identifier.</param>
|
||||
[Authorize] public void Delete(string id)
|
||||
{
|
||||
string user = Membership.GetUser ().UserName;
|
||||
CircleManager.DefaultProvider.Delete (user, id);
|
||||
return CircleManager.DefaultProvider.Create (user, title, users);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the specified id.
|
||||
/// Add the specified users to the circle.
|
||||
/// </summary>
|
||||
/// <param name="id">Circle Identifier.</param>
|
||||
/// <param name="username">username.</param>
|
||||
[Authorize]
|
||||
public void Add(long id, string username)
|
||||
{
|
||||
checkIsOwner (CircleManager.DefaultProvider.Get (id));
|
||||
CircleManager.DefaultProvider.Add (id, username);
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Delete the circle specified by id.
|
||||
/// </summary>
|
||||
/// <param name="id">Identifier.</param>
|
||||
[Authorize] public void Delete(long id)
|
||||
{
|
||||
checkIsOwner (CircleManager.DefaultProvider.Get(id));
|
||||
CircleManager.DefaultProvider.Delete (id);
|
||||
}
|
||||
|
||||
private void checkIsOwner(Circle c)
|
||||
{
|
||||
string user = Membership.GetUser ().UserName;
|
||||
if (c.Owner != user)
|
||||
throw new AccessViolationException ("You're not owner of this circle");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get the circle specified id.
|
||||
/// </summary>
|
||||
/// <param name="id">Identifier.</param>
|
||||
[Authorize]
|
||||
public Circle Get(string id)
|
||||
public Circle Get(long id)
|
||||
{
|
||||
string user = Membership.GetUser ().UserName;
|
||||
return CircleManager.DefaultProvider.Get (user, id);
|
||||
var c = CircleManager.DefaultProvider.Get (id);
|
||||
checkIsOwner (c);
|
||||
return c;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// List this instance.
|
||||
/// List the circles
|
||||
/// </summary>
|
||||
[Authorize]
|
||||
public CircleInfoCollection List()
|
||||
{
|
||||
string user = Membership.GetUser ().UserName;
|
||||
return CircleManager.DefaultProvider.List ();
|
||||
return CircleManager.DefaultProvider.List (user);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -100,7 +100,6 @@ namespace Yavsc.ApiControllers
|
|||
Estimate e = wfmgr.GetEstimate (estimid);
|
||||
tmpe.Session = new Dictionary<string,object> ();
|
||||
tmpe.Session.Add ("estim", e);
|
||||
|
||||
Profile prpro = new Profile (ProfileBase.Create (e.Responsible));
|
||||
if (!prpro.HasBankAccount)
|
||||
throw new TemplateException ("NotBankable:" + e.Responsible);
|
||||
|
|
@ -114,6 +113,8 @@ namespace Yavsc.ApiControllers
|
|||
|
||||
tmpe.Session.Add ("from", prpro);
|
||||
tmpe.Session.Add ("to", prcli);
|
||||
tmpe.Session.Add ("efrom", Membership.GetUser (e.Responsible).Email);
|
||||
tmpe.Session.Add ("efrom", Membership.GetUser (e.Client).Email);
|
||||
tmpe.Init ();
|
||||
return tmpe.TransformText ();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@ namespace Yavsc.ApiControllers
|
|||
/// <summary>
|
||||
/// Work flow controller.
|
||||
/// </summary>
|
||||
public class WorkFlowController : ApiController
|
||||
public class WorkFlowApiController : ApiController
|
||||
{
|
||||
string adminRoleName="Admin";
|
||||
/// <summary>
|
||||
Loading…
Add table
Add a link
Reference in a new issue