Files
OurUmbraco/uWiki/BusinessLogic/WikiHelpRequest.cs
T
Sebastiaan Janssen 810cbd267f Initial commit
2012-12-17 09:41:11 +01:00

73 lines
2.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace uWiki.Businesslogic
{
public class WikiHelpRequest
{
public string Section { get; set; }
public string Application { get; set; }
public string ApplicationPage { get; set; }
public string Url { get; set; }
private WikiHelpRequest() { }
public static WikiHelpRequest Create(string section, string application, string applicationPage, string url)
{
try
{
WikiHelpRequest w = new WikiHelpRequest();
w.Section = section;
w.Application = application;
w.ApplicationPage = applicationPage;
w.Url = url;
w.Save();
return w;
} catch (Exception ex) {
umbraco.BusinessLogic.Log.Add(umbraco.BusinessLogic.LogTypes.Debug, -1, ex.ToString());
}
return null;
}
public void Save()
{
HelpRequestEventArgs e = new HelpRequestEventArgs();
FireBeforeSave(e);
if (!e.Cancel)
{
Data.SqlHelper.ExecuteNonQuery(
"INSERT INTO wikiHelpRequest (section, application, applicationPage, url) VALUES(@section, @application, @applicationPage, @url)",
Data.SqlHelper.CreateParameter("@section", Section),
Data.SqlHelper.CreateParameter("@application", Application),
Data.SqlHelper.CreateParameter("@applicationPage", ApplicationPage),
Data.SqlHelper.CreateParameter("@url", Url));
FireAfterSave(e);
}
}
private Events _e = new Events();
public static event EventHandler<HelpRequestEventArgs> BeforeSave;
protected virtual void FireBeforeSave(HelpRequestEventArgs e)
{
_e.FireCancelableEvent(BeforeSave, this, e);
}
public static event EventHandler<HelpRequestEventArgs> AfterSave;
protected virtual void FireAfterSave(HelpRequestEventArgs e)
{
if (AfterSave != null)
AfterSave(this, e);
}
}
}