* PaypalApiController.cs: starting a paypal account access
* Catalog.xml: tests input with multiple values * FileSystemController.cs: Xml catalog path is now specified ala ~/ * WorkFlowController.cs: Gives the response a message * SimpleFormatter.cs: * FrontOfficeApiController.cs: document formatting * Global.asax.cs: due to refactoring * SimpleJsonPostMethod.cs: (code formatting) * Web.config: due to refactoring * Web.config: - document formatting - PayPal configuration * Web.csproj: references the PayPalCoreSdk.1.6.0 * packages.config: using the .Net 4.5.1 plateform
This commit is contained in:
127
web/Catalog.xml
127
web/Catalog.xml
@ -1,65 +1,72 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<XmlCatalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
<XmlCatalog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
||||||
<Brands>
|
<Brands>
|
||||||
<Brand>
|
<Brand>
|
||||||
<Name>shdsi</Name>
|
<Name>shdsi</Name>
|
||||||
<Slogan>Votre logiciel, efficace, sûr, et sur mesure</Slogan>
|
<Slogan>Votre logiciel, efficace, sûr, et sur mesure</Slogan>
|
||||||
<Logo>
|
<Logo>
|
||||||
<Src>/images/logoDev.png</Src>
|
<Src>/images/logoDev.png</Src>
|
||||||
<Alt></Alt>
|
<Alt>
|
||||||
</Logo>
|
</Alt>
|
||||||
<Categories>
|
</Logo>
|
||||||
<ProductCategory>
|
<Categories>
|
||||||
<Name>Systèmes d'information et sites Web</Name>
|
<ProductCategory>
|
||||||
<Reference>ntic</Reference>
|
<Name>Systèmes d'information et sites Web</Name>
|
||||||
<Products>
|
<Reference>ntic</Reference>
|
||||||
<Product xsi:type="Service">
|
<Products>
|
||||||
<Name>Développement</Name>
|
<Product xsi:type="Service">
|
||||||
<Description>Votre Extranet, Intranet,
|
<Name>Développement</Name>
|
||||||
|
<Description>Votre Extranet, Intranet,
|
||||||
site Web, sur mesure, élégant et efficace, au look racé, accessible,
|
site Web, sur mesure, élégant et efficace, au look racé, accessible,
|
||||||
et développé en cycles courts</Description>
|
et développé en cycles courts</Description>
|
||||||
<Reference>nticdev</Reference>
|
<Reference>nticdev</Reference>
|
||||||
</Product>
|
</Product>
|
||||||
<Product xsi:type="Service">
|
<Product xsi:type="Service">
|
||||||
<Name>Maintenance</Name>
|
<Name>Maintenance</Name>
|
||||||
<Description>Correction des anomalies, réalisation des évolutions, prévision des besoins</Description>
|
<Description>Correction des anomalies, réalisation des évolutions, prévision des besoins</Description>
|
||||||
<Reference>nticmaint</Reference>
|
<Reference>nticmaint</Reference>
|
||||||
</Product>
|
</Product>
|
||||||
</Products>
|
</Products>
|
||||||
</ProductCategory>
|
</ProductCategory>
|
||||||
</Categories>
|
</Categories>
|
||||||
<DefaultForm>
|
<DefaultForm>
|
||||||
<Action>/Commande</Action>
|
<Action>/Commande</Action>
|
||||||
<Items>
|
<Items>
|
||||||
<FormElement xsi:type="Text">
|
<FormElement xsi:type="Text">
|
||||||
<Val>Entrez un commentaire :</Val>
|
<Val>Entrez un commentaire :</Val>
|
||||||
</FormElement>
|
</FormElement>
|
||||||
<FormElement xsi:type="TextInput">
|
<FormElement xsi:type="TextInput">
|
||||||
<Id>comment</Id>
|
<Id>comment</Id>
|
||||||
<Value xsi:type="xsd:string">Commentaire</Value>
|
<Value xsi:type="xsd:string">Commentaire</Value>
|
||||||
</FormElement>
|
</FormElement>
|
||||||
<FormElement xsi:type="Text">
|
<FormElement xsi:type="Text">
|
||||||
<Val>Choisissez le type d'intervention souhaité: </Val>
|
<Val>Choisissez le type d'intervention souhaité: </Val>
|
||||||
</FormElement>
|
</FormElement>
|
||||||
|
<FormElement xsi:type="SelectInput">
|
||||||
<FormElement xsi:type="TextInput">
|
<Id>ad</Id>
|
||||||
<Id>testarray[]</Id>
|
<Items>
|
||||||
<Value xsi:type="xsd:string">xxxxxxxxxx</Value>
|
<Option>
|
||||||
</FormElement>
|
<value>d</value>
|
||||||
<FormElement xsi:type="TextInput">
|
<Text>à distance</Text>
|
||||||
<Id>testarray[]</Id>
|
</Option>
|
||||||
<Value xsi:type="xsd:string"></Value>
|
<Option>
|
||||||
</FormElement>
|
<value>s</value>
|
||||||
<FormElement xsi:type="SelectInput">
|
<Text>sur site</Text>
|
||||||
<Id>ad</Id>
|
</Option>
|
||||||
<Items>
|
</Items>
|
||||||
<string>à distance</string>
|
<SelectedIndex>0</SelectedIndex>
|
||||||
<string>sur site</string>
|
</FormElement>
|
||||||
</Items>
|
<FormElement xsi:type="TextInput">
|
||||||
<SelectedIndex>0</SelectedIndex>
|
<Id>testarray[]</Id>
|
||||||
</FormElement>
|
<Value xsi:type="xsd:string">xxxxxxxxxx</Value>
|
||||||
</Items>
|
</FormElement>
|
||||||
</DefaultForm>
|
<FormElement xsi:type="TextInput">
|
||||||
</Brand>
|
<Id>testarray[]</Id>
|
||||||
</Brands>
|
<Value xsi:type="xsd:string">
|
||||||
|
</Value>
|
||||||
|
</FormElement>
|
||||||
|
</Items>
|
||||||
|
</DefaultForm>
|
||||||
|
</Brand>
|
||||||
|
</Brands>
|
||||||
</XmlCatalog>
|
</XmlCatalog>
|
@ -12,9 +12,10 @@ namespace Yavsc.Controllers
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// File system controller.
|
/// File system controller.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public class FileSystemController : Controller
|
public class FileSystemController : Controller
|
||||||
{
|
{
|
||||||
private static string usersDir ="~/users";
|
private static string usersDir = "~/users";
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the users dir.
|
/// Gets the users dir.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -24,51 +25,54 @@ namespace Yavsc.Controllers
|
|||||||
return usersDir;
|
return usersDir;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Index this instance.
|
/// Index this instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[Authorize]
|
[Authorize]
|
||||||
public ActionResult Index()
|
public ActionResult Index ()
|
||||||
{
|
{
|
||||||
string user = Membership.GetUser ().UserName;
|
string user = Membership.GetUser ().UserName;
|
||||||
ViewData ["UserName"] = user;
|
ViewData ["UserName"] = user;
|
||||||
|
|
||||||
DirectoryInfo di = new DirectoryInfo (
|
DirectoryInfo di = new DirectoryInfo (
|
||||||
Path.Combine(
|
Path.Combine (
|
||||||
Server.MapPath(UsersDir),
|
Server.MapPath (UsersDir),
|
||||||
user));
|
user));
|
||||||
if (!di.Exists)
|
if (!di.Exists)
|
||||||
di.Create ();
|
di.Create ();
|
||||||
return View (new FileInfoCollection( di.GetFiles()));
|
return View (new FileInfoCollection (di.GetFiles ()));
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Details the specified id.
|
/// Details the specified id.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">Identifier.</param>
|
/// <param name="id">Identifier.</param>
|
||||||
public ActionResult Details(string id)
|
public ActionResult Details (string id)
|
||||||
{
|
{
|
||||||
foreach (char x in Path.GetInvalidPathChars()) {
|
foreach (char x in Path.GetInvalidPathChars()) {
|
||||||
if (id.Contains (x)) {
|
if (id.Contains (x)) {
|
||||||
ViewData ["Message"] =
|
ViewData ["Message"] =
|
||||||
string.Format (
|
string.Format (
|
||||||
"Something went wrong following the following path : {0} (\"{1}\")",
|
"Something went wrong following the following path : {0} (\"{1}\")",
|
||||||
id,x);
|
id, x);
|
||||||
return RedirectToAction ("Index");
|
return RedirectToAction ("Index");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
string fpath = Path.Combine (BaseDir, id);
|
string fpath = Path.Combine (BaseDir, id);
|
||||||
ViewData["Content"] = Url.Content (fpath);
|
ViewData ["Content"] = Url.Content (fpath);
|
||||||
FileInfo fi = new FileInfo (fpath);
|
FileInfo fi = new FileInfo (fpath);
|
||||||
|
|
||||||
return View (fi);
|
return View (fi);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create this instance.
|
/// Create this instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public ActionResult Create()
|
public ActionResult Create ()
|
||||||
{
|
{
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Create the specified collection.
|
/// Create the specified collection.
|
||||||
@ -76,36 +80,32 @@ namespace Yavsc.Controllers
|
|||||||
/// <param name="collection">Collection.</param>
|
/// <param name="collection">Collection.</param>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Authorize]
|
[Authorize]
|
||||||
public ActionResult Create(FormCollection collection)
|
public ActionResult Create (FormCollection collection)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
string fnre = "[A-Za-z0-9~\\-.]+";
|
string fnre = "[A-Za-z0-9~\\-.]+";
|
||||||
HttpFileCollectionBase hfc = Request.Files;
|
HttpFileCollectionBase hfc = Request.Files;
|
||||||
|
|
||||||
for (int i=0; i<hfc.Count; i++)
|
for (int i = 0; i < hfc.Count; i++) {
|
||||||
{
|
if (!Regex.Match (hfc [i].FileName, fnre).Success) {
|
||||||
if (!Regex.Match(hfc[i].FileName,fnre).Success)
|
ViewData ["Message"] += string.Format ("<p>File name '{0}' refused</p>", hfc [i].FileName);
|
||||||
{
|
ModelState.AddModelError (
|
||||||
ViewData ["Message"] += string.Format("<p>File name '{0}' refused</p>",hfc[i].FileName);
|
|
||||||
ModelState.AddModelError(
|
|
||||||
"AFile",
|
"AFile",
|
||||||
string.Format(
|
string.Format (
|
||||||
"The file name {0} dosn't match an acceptable file name {1}",
|
"The file name {0} dosn't match an acceptable file name {1}",
|
||||||
hfc[i].FileName,fnre))
|
hfc [i].FileName, fnre));
|
||||||
;
|
return View ();
|
||||||
return View();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (int i=0; i<hfc.Count; i++)
|
for (int i = 0; i < hfc.Count; i++) {
|
||||||
{
|
|
||||||
// TODO Limit with hfc[h].ContentLength
|
// TODO Limit with hfc[h].ContentLength
|
||||||
string filename = Path.Combine(Server.MapPath(BaseDir),hfc[i].FileName);
|
string filename = Path.Combine (Server.MapPath (BaseDir), hfc [i].FileName);
|
||||||
hfc[i].SaveAs(filename);
|
hfc [i].SaveAs (filename);
|
||||||
ViewData ["Message"] += string.Format("<p>File name '{0}' saved</p>",hfc[i].FileName);
|
ViewData ["Message"] += string.Format ("<p>File name '{0}' saved</p>", hfc [i].FileName);
|
||||||
}
|
}
|
||||||
return RedirectToAction ("Index","FileSystem");
|
return RedirectToAction ("Index", "FileSystem");
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
ViewData ["Message"] = "Exception:"+e.Message;
|
ViewData ["Message"] = "Exception:" + e.Message;
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -115,49 +115,53 @@ namespace Yavsc.Controllers
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <value>The base dir.</value>
|
/// <value>The base dir.</value>
|
||||||
public static string BaseDir { get { return Path.Combine (UsersDir, Membership.GetUser ().UserName); } }
|
public static string BaseDir { get { return Path.Combine (UsersDir, Membership.GetUser ().UserName); } }
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Edit the specified id.
|
/// Edit the specified id.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">Identifier.</param>
|
/// <param name="id">Identifier.</param>
|
||||||
public ActionResult Edit(int id)
|
public ActionResult Edit (int id)
|
||||||
{
|
{
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Edit the specified id and collection.
|
/// Edit the specified id and collection.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">Identifier.</param>
|
/// <param name="id">Identifier.</param>
|
||||||
/// <param name="collection">Collection.</param>
|
/// <param name="collection">Collection.</param>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public ActionResult Edit(int id, FormCollection collection)
|
public ActionResult Edit (int id, FormCollection collection)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
return RedirectToAction ("Index");
|
return RedirectToAction ("Index");
|
||||||
} catch {
|
} catch {
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete the specified id.
|
/// Delete the specified id.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">Identifier.</param>
|
/// <param name="id">Identifier.</param>
|
||||||
public ActionResult Delete(int id)
|
public ActionResult Delete (int id)
|
||||||
{
|
{
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Delete the specified id and collection.
|
/// Delete the specified id and collection.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="id">Identifier.</param>
|
/// <param name="id">Identifier.</param>
|
||||||
/// <param name="collection">Collection.</param>
|
/// <param name="collection">Collection.</param>
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
public ActionResult Delete(int id, FormCollection collection)
|
public ActionResult Delete (int id, FormCollection collection)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
return RedirectToAction ("Index");
|
return RedirectToAction ("Index");
|
||||||
} catch {
|
} catch {
|
||||||
return View ();
|
return View ();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -49,23 +49,23 @@ namespace Yavsc.ApiControllers
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Catalog this instance.
|
/// Catalog this instance.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[AcceptVerbs("GET")]
|
[AcceptVerbs ("GET")]
|
||||||
public Catalog Catalog ()
|
public Catalog Catalog ()
|
||||||
{
|
{
|
||||||
Catalog c = CatalogManager.GetCatalog (Request.RequestUri.AbsolutePath);
|
Catalog c = CatalogManager.GetCatalog (Request.RequestUri.AbsolutePath);
|
||||||
return c;
|
return c;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the product categorie.
|
/// Gets the product categorie.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>The product categorie.</returns>
|
/// <returns>The product categorie.</returns>
|
||||||
/// <param name="brandName">Brand name.</param>
|
/// <param name="brandName">Brand name.</param>
|
||||||
/// <param name="prodCategorie">Prod categorie.</param>
|
/// <param name="prodCategorie">Prod categorie.</param>
|
||||||
[AcceptVerbs("GET")]
|
[AcceptVerbs ("GET")]
|
||||||
public ProductCategory GetProductCategorie (string brandName, string prodCategorie)
|
public ProductCategory GetProductCategorie (string brandName, string prodCategorie)
|
||||||
{
|
{
|
||||||
return CatalogManager.GetCatalog (Request.RequestUri.AbsolutePath).GetBrand (brandName).GetProductCategory (prodCategorie)
|
return CatalogManager.GetCatalog (Request.RequestUri.AbsolutePath).GetBrand (brandName).GetProductCategory (prodCategorie);
|
||||||
;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@ -81,30 +81,32 @@ namespace Yavsc.ApiControllers
|
|||||||
return est;
|
return est;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Gets the estim tex.
|
/// Gets the estim tex.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>The estim tex.</returns>
|
/// <returns>The estim tex.</returns>
|
||||||
/// <param name="estimid">Estimid.</param>
|
/// <param name="estimid">Estimid.</param>
|
||||||
[AcceptVerbs("GET")]
|
[AcceptVerbs ("GET")]
|
||||||
public HttpResponseMessage GetEstimTex(long estimid)
|
public HttpResponseMessage GetEstimTex (long estimid)
|
||||||
{
|
{
|
||||||
string texest = null;
|
string texest = null;
|
||||||
try {
|
try {
|
||||||
texest = getEstimTex (estimid);
|
texest = getEstimTex (estimid);
|
||||||
}
|
} catch (TemplateException ex) {
|
||||||
catch (TemplateException ex) {
|
return new HttpResponseMessage (HttpStatusCode.OK) { Content =
|
||||||
return new HttpResponseMessage (HttpStatusCode.OK){ Content =
|
|
||||||
new ObjectContent (typeof(string),
|
new ObjectContent (typeof(string),
|
||||||
ex.Message, new ErrorHtmlFormatter(HttpStatusCode.NotAcceptable,
|
ex.Message, new ErrorHtmlFormatter (HttpStatusCode.NotAcceptable,
|
||||||
LocalizedText.DocTemplateException
|
LocalizedText.DocTemplateException
|
||||||
))};
|
))
|
||||||
}
|
};
|
||||||
catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
|
|
||||||
return new HttpResponseMessage (HttpStatusCode.OK){ Content =
|
return new HttpResponseMessage (HttpStatusCode.OK) { Content =
|
||||||
new ObjectContent (typeof(string),
|
new ObjectContent (typeof(string),
|
||||||
ex.Message, new SimpleFormatter("text/text")) };
|
ex.Message, new SimpleFormatter ("text/text"))
|
||||||
|
};
|
||||||
}
|
}
|
||||||
if (texest == null)
|
if (texest == null)
|
||||||
return new HttpResponseMessage (HttpStatusCode.OK) { Content =
|
return new HttpResponseMessage (HttpStatusCode.OK) { Content =
|
||||||
@ -119,20 +121,20 @@ namespace Yavsc.ApiControllers
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
private string getEstimTex(long estimid)
|
private string getEstimTex (long estimid)
|
||||||
{
|
{
|
||||||
Yavsc.templates.Estim tmpe = new Yavsc.templates.Estim();
|
Yavsc.templates.Estim tmpe = new Yavsc.templates.Estim ();
|
||||||
Estimate e = wfmgr.GetEstimate (estimid);
|
Estimate e = wfmgr.GetEstimate (estimid);
|
||||||
tmpe.Session = new Dictionary<string,object>();
|
tmpe.Session = new Dictionary<string,object> ();
|
||||||
tmpe.Session.Add ("estim", e);
|
tmpe.Session.Add ("estim", e);
|
||||||
|
|
||||||
Profile prpro = new Profile(ProfileBase.Create(e.Responsible));
|
Profile prpro = new Profile (ProfileBase.Create (e.Responsible));
|
||||||
if (!prpro.HasBankAccount)
|
if (!prpro.HasBankAccount)
|
||||||
throw new TemplateException ("NotBankable:"+e.Responsible);
|
throw new TemplateException ("NotBankable:" + e.Responsible);
|
||||||
|
|
||||||
Profile prcli = new Profile(ProfileBase.Create(e.Client));
|
Profile prcli = new Profile (ProfileBase.Create (e.Client));
|
||||||
if (!prcli.IsBillable)
|
if (!prcli.IsBillable)
|
||||||
throw new TemplateException ("NotBillable:"+e.Client);
|
throw new TemplateException ("NotBillable:" + e.Client);
|
||||||
tmpe.Session.Add ("from", prpro);
|
tmpe.Session.Add ("from", prpro);
|
||||||
tmpe.Session.Add ("to", prcli);
|
tmpe.Session.Add ("to", prcli);
|
||||||
tmpe.Init ();
|
tmpe.Init ();
|
||||||
@ -145,7 +147,7 @@ namespace Yavsc.ApiControllers
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns>The estim pdf.</returns>
|
/// <returns>The estim pdf.</returns>
|
||||||
/// <param name="estimid">Estimid.</param>
|
/// <param name="estimid">Estimid.</param>
|
||||||
public HttpResponseMessage GetEstimPdf(long estimid)
|
public HttpResponseMessage GetEstimPdf (long estimid)
|
||||||
{
|
{
|
||||||
Estimate estim = wfmgr.GetEstimate (estimid);
|
Estimate estim = wfmgr.GetEstimate (estimid);
|
||||||
//TODO better with pro.IsBankable && cli.IsBillable
|
//TODO better with pro.IsBankable && cli.IsBillable
|
||||||
|
48
web/Controllers/PaypalApiController.cs
Normal file
48
web/Controllers/PaypalApiController.cs
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
//
|
||||||
|
// PaypalApiController.cs
|
||||||
|
//
|
||||||
|
// Author:
|
||||||
|
// Paul Schneider <paulschneider@free.fr>
|
||||||
|
//
|
||||||
|
// Copyright (c) 2015 Paul Schneider
|
||||||
|
//
|
||||||
|
// 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.Web.Http;
|
||||||
|
|
||||||
|
#if HASPAYPALAPI
|
||||||
|
|
||||||
|
using PayPal.Api;
|
||||||
|
|
||||||
|
namespace Yavsc.ApiControllers
|
||||||
|
{
|
||||||
|
public class PaypalApiController: ApiController
|
||||||
|
{
|
||||||
|
public void GetPayments()
|
||||||
|
{
|
||||||
|
OAuthTokenCredential tokenCredential =
|
||||||
|
new OAuthTokenCredential("<CLIENT_ID>", "<CLIENT_SECRET>");
|
||||||
|
|
||||||
|
string accessToken = tokenCredential.GetAccessToken();
|
||||||
|
var parameters = new PayPal.Util.QueryParameters();
|
||||||
|
parameters.Add ("Count", "10");
|
||||||
|
|
||||||
|
PaymentHistory paymentHistory = Payment.Get(apiContext, accessToken, parameters);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
@ -108,7 +108,7 @@ namespace Yavsc.ApiControllers
|
|||||||
public HttpResponseMessage UpdateWritting([FromBody] Writting wr)
|
public HttpResponseMessage UpdateWritting([FromBody] Writting wr)
|
||||||
{
|
{
|
||||||
wfmgr.UpdateWritting (wr);
|
wfmgr.UpdateWritting (wr);
|
||||||
return Request.CreateResponse (System.Net.HttpStatusCode.OK);
|
return Request.CreateResponse<string> (System.Net.HttpStatusCode.OK,"WrittingUpdated:"+wr.Id);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -84,8 +84,6 @@ namespace Yavsc.Formatters
|
|||||||
writer.Write (doc);
|
writer.Write (doc);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,6 +8,7 @@ using System.Web.Mvc;
|
|||||||
using System.Web.Routing;
|
using System.Web.Routing;
|
||||||
using System.Web.Http;
|
using System.Web.Http;
|
||||||
using Yavsc.Formatters;
|
using Yavsc.Formatters;
|
||||||
|
using Yavsc.Model.FrontOffice;
|
||||||
|
|
||||||
namespace Yavsc
|
namespace Yavsc
|
||||||
{
|
{
|
||||||
|
@ -74,7 +74,8 @@ namespace Yavsc.Helpers
|
|||||||
/// <param name="query">Query.</param>
|
/// <param name="query">Query.</param>
|
||||||
public TAnswer Invoke(TQuery query)
|
public TAnswer Invoke(TQuery query)
|
||||||
{
|
{
|
||||||
Byte[] bytes = System.Text.Encoding.UTF8.GetBytes (JsonConvert.SerializeObject(query));
|
Byte[] bytes = System.Text.Encoding.UTF8.GetBytes (
|
||||||
|
JsonConvert.SerializeObject(query));
|
||||||
Request.ContentLength = bytes.Length;
|
Request.ContentLength = bytes.Length;
|
||||||
|
|
||||||
using (Stream dataStream = Request.GetRequestStream ()) {
|
using (Stream dataStream = Request.GetRequestStream ()) {
|
||||||
|
@ -20,7 +20,6 @@
|
|||||||
<add tagPrefix="yavsc" namespace="Yavsc.WebControls" assembly="Yavsc.WebControls" />
|
<add tagPrefix="yavsc" namespace="Yavsc.WebControls" assembly="Yavsc.WebControls" />
|
||||||
</controls>
|
</controls>
|
||||||
<namespaces>
|
<namespaces>
|
||||||
<add namespace="SalesCatalog.Model" />
|
|
||||||
<add namespace="Yavsc.Helpers" />
|
<add namespace="Yavsc.Helpers" />
|
||||||
<add namespace="Yavsc.Admin" />
|
<add namespace="Yavsc.Admin" />
|
||||||
<add namespace="Yavsc.CatExts" />
|
<add namespace="Yavsc.CatExts" />
|
||||||
@ -29,6 +28,8 @@
|
|||||||
<add namespace="Yavsc.Model.Blogs" />
|
<add namespace="Yavsc.Model.Blogs" />
|
||||||
<add namespace="Yavsc.Model.WorkFlow" />
|
<add namespace="Yavsc.Model.WorkFlow" />
|
||||||
<add namespace="Yavsc.Model.Google" />
|
<add namespace="Yavsc.Model.Google" />
|
||||||
|
<add namespace="Yavsc.Model.FrontOffice" />
|
||||||
|
|
||||||
</namespaces>
|
</namespaces>
|
||||||
</pages>
|
</pages>
|
||||||
</system.web>
|
</system.web>
|
||||||
|
@ -8,12 +8,8 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
-->
|
-->
|
||||||
<configuration>
|
<configuration>
|
||||||
<configSections>
|
<configSections>
|
||||||
<sectionGroup
|
<sectionGroup name="system.web.extensions" type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
name="system.web.extensions"
|
<sectionGroup name="scripting" type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
type="System.Web.Configuration.SystemWebExtensionsSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
|
||||||
<sectionGroup
|
|
||||||
name="scripting"
|
|
||||||
type="System.Web.Configuration.ScriptingSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
|
||||||
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
|
<section name="scriptResourceHandler" type="System.Web.Configuration.ScriptingScriptResourceHandlerSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="MachineToApplication" />
|
||||||
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
<sectionGroup name="webServices" type="System.Web.Configuration.ScriptingWebServicesSectionGroup, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
|
||||||
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
|
<section name="jsonSerialization" type="System.Web.Configuration.ScriptingJsonSerializationSection, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" allowDefinition="Everywhere" />
|
||||||
@ -23,23 +19,14 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
</sectionGroup>
|
</sectionGroup>
|
||||||
</sectionGroup>
|
</sectionGroup>
|
||||||
</sectionGroup>
|
</sectionGroup>
|
||||||
|
<section name="paypal" type="PayPal.SDKConfigHandler, PayPal" />
|
||||||
|
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
|
||||||
<sectionGroup name="system.web">
|
<sectionGroup name="system.web">
|
||||||
<section name="blog" type="Yavsc.Model.Blogs.Configuration.BlogProvidersConfigurationSection, YavscModel" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
<section name="blog" type="Yavsc.Model.Blogs.Configuration.BlogProvidersConfigurationSection, YavscModel" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
||||||
<section name="thanks" type="Yavsc.ThanksConfigurationSection, Yavsc" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
<section name="thanks" type="Yavsc.ThanksConfigurationSection, Yavsc" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
||||||
<section name="catalog" type="SalesCatalog.Configuration.CatalogProvidersConfigurationSection, SalesCatalog" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
<section name="catalog" type="Yavsc.Model.FrontOffice.Configuration.CatalogProvidersConfigurationSection, YavscModel" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
||||||
<section name="workflow" type="Yavsc.Model.WorkFlow.Configuration.WorkflowConfiguration, YavscModel" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
<section name="workflow" type="Yavsc.Model.WorkFlow.Configuration.WorkflowConfiguration, YavscModel" allowLocation="true" requirePermission="false" allowDefinition="Everywhere" />
|
||||||
</sectionGroup>
|
</sectionGroup>
|
||||||
<sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
|
|
||||||
<section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
|
|
||||||
<section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
|
|
||||||
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
|
|
||||||
</sectionGroup>
|
|
||||||
<sectionGroup name="dotNetOpenAuth" type="DotNetOpenAuth.Configuration.DotNetOpenAuthSection, DotNetOpenAuth.Core">
|
|
||||||
<section name="messaging" type="DotNetOpenAuth.Configuration.MessagingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
|
|
||||||
<section name="reporting" type="DotNetOpenAuth.Configuration.ReportingElement, DotNetOpenAuth.Core" requirePermission="false" allowLocation="true" />
|
|
||||||
<section name="oauth" type="DotNetOpenAuth.Configuration.OAuthElement, DotNetOpenAuth.OAuth" requirePermission="false" allowLocation="true" />
|
|
||||||
<section name="openid" type="DotNetOpenAuth.Configuration.OpenIdElement, DotNetOpenAuth.OpenId" requirePermission="false" allowLocation="true" />
|
|
||||||
</sectionGroup>
|
|
||||||
</configSections>
|
</configSections>
|
||||||
<runtime>
|
<runtime>
|
||||||
<!--
|
<!--
|
||||||
@ -93,12 +80,12 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
<add assembly="Microsoft.Build.Utilities.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<add assembly="Microsoft.Build.Utilities.v12.0, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<add assembly="Microsoft.Build, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<add assembly="Microsoft.Build, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<add assembly="System.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
<add assembly="System.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
|
||||||
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
<add assembly="System.Web.Mvc, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
<add assembly="System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
<add assembly="System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
<add assembly="System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
|
||||||
<add assembly="System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
<add assembly="System.Web.Http.WebHost, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
<add assembly="System.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
<add assembly="System.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
<add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
<add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
|
<add assembly="System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
|
||||||
</assemblies>
|
</assemblies>
|
||||||
</compilation>
|
</compilation>
|
||||||
<customErrors mode="Off" />
|
<customErrors mode="Off" />
|
||||||
@ -204,6 +191,7 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
</thanks>
|
</thanks>
|
||||||
<!-- <machineKey validationKey="13CA2E37A5A99AD8CE4A6B895BAF0ED3A022AA584B8D922256BA072189CEB085EEB4E573CA833D9B34FBF68687F6A6B3E008FB4EB67585A4D90551B9D36D42A1" decryptionKey="DA89CC83F6FB2EB12D5929DABC89299AC3928E0751705D33D02DB4162ED56536" validation="SHA1" decryption="AES" /> -->
|
<!-- <machineKey validationKey="13CA2E37A5A99AD8CE4A6B895BAF0ED3A022AA584B8D922256BA072189CEB085EEB4E573CA833D9B34FBF68687F6A6B3E008FB4EB67585A4D90551B9D36D42A1" decryptionKey="DA89CC83F6FB2EB12D5929DABC89299AC3928E0751705D33D02DB4162ED56536" validation="SHA1" decryption="AES" /> -->
|
||||||
<!--- <sessionState cookieless="true" regenerateExpiredSessionId="true" timeout="120"/> -->
|
<!--- <sessionState cookieless="true" regenerateExpiredSessionId="true" timeout="120"/> -->
|
||||||
|
<trust level="High" />
|
||||||
</system.web>
|
</system.web>
|
||||||
<system.codedom>
|
<system.codedom>
|
||||||
<compilers>
|
<compilers>
|
||||||
@ -296,6 +284,35 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
<authentication mode="Forms">
|
<authentication mode="Forms">
|
||||||
<forms loginUrl="~/Account/Login" timeout="30" name=".ASPXFORM$" path="/" requireSSL="false" slidingExpiration="true" defaultUrl="Index.aspx" enableCrossAppRedirects="false" />
|
<forms loginUrl="~/Account/Login" timeout="30" name=".ASPXFORM$" path="/" requireSSL="false" slidingExpiration="true" defaultUrl="Index.aspx" enableCrossAppRedirects="false" />
|
||||||
</authentication>
|
</authentication>
|
||||||
|
<!-- PayPal SDK settings -->
|
||||||
|
<paypal>
|
||||||
|
<settings>
|
||||||
|
<add name="mode" value="sandbox" />
|
||||||
|
<!-- live or sandbox -->
|
||||||
|
<add name="connectionTimeout" value="30000" />
|
||||||
|
<!-- (miliseconds) = 30s -->
|
||||||
|
<add name="requestRetries" value="1" />
|
||||||
|
<!-- -->
|
||||||
|
<add name="clientId" value="A9S6jrem3H0gdj8tQ2q1ahSCU38tAJRyiro7eED13h3Syn6C9ZSKSRkl" />
|
||||||
|
<!-- -->
|
||||||
|
<add name="clientSecret" value="PLF77VGTZGGSSZAY" />
|
||||||
|
<!-- -->
|
||||||
|
</settings>
|
||||||
|
</paypal>
|
||||||
|
<!-- log4net settings -->
|
||||||
|
<log4net>
|
||||||
|
<appender name="FileAppender" type="log4net.Appender.FileAppender">
|
||||||
|
<file value="yavsc.log" />
|
||||||
|
<appendToFile value="true" />
|
||||||
|
<layout type="log4net.Layout.PatternLayout">
|
||||||
|
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] %message%newline" />
|
||||||
|
</layout>
|
||||||
|
</appender>
|
||||||
|
<root>
|
||||||
|
<level value="DEBUG" />
|
||||||
|
<appender-ref ref="FileAppender" />
|
||||||
|
</root>
|
||||||
|
</log4net>
|
||||||
<connectionStrings>
|
<connectionStrings>
|
||||||
<add name="yavsc" connectionString="Server=127.0.0.1;Port=5432;Database=yavsc;User Id=yavsc;Password=admin;Encoding=Unicode;" providerName="Npgsql" />
|
<add name="yavsc" connectionString="Server=127.0.0.1;Port=5432;Database=yavsc;User Id=yavsc;Password=admin;Encoding=Unicode;" providerName="Npgsql" />
|
||||||
</connectionStrings>
|
</connectionStrings>
|
||||||
@ -312,5 +329,6 @@ http://msdn2.microsoft.com/en-us/library/b5ysx397.aspx
|
|||||||
<add key="RegistrationMessage" value="/RegistrationMail.txt" />
|
<add key="RegistrationMessage" value="/RegistrationMail.txt" />
|
||||||
<add key="ClientValidationEnabled" value="true" />
|
<add key="ClientValidationEnabled" value="true" />
|
||||||
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
|
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
|
||||||
|
<add key="PayPalLogger" value="PayPal.Log.Log4netLogger" />
|
||||||
</appSettings>
|
</appSettings>
|
||||||
</configuration>
|
</configuration>
|
@ -9,7 +9,7 @@
|
|||||||
<ProjectTypeGuids>{349C5851-65DF-11DA-9384-00065B846F21};{603C0E0B-DB56-11DC-BE95-000D561079B0};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
<ProjectTypeGuids>{349C5851-65DF-11DA-9384-00065B846F21};{603C0E0B-DB56-11DC-BE95-000D561079B0};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
<OutputType>Library</OutputType>
|
<OutputType>Library</OutputType>
|
||||||
<RootNamespace>Yavsc</RootNamespace>
|
<RootNamespace>Yavsc</RootNamespace>
|
||||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<DebugSymbols>true</DebugSymbols>
|
<DebugSymbols>true</DebugSymbols>
|
||||||
@ -88,10 +88,13 @@
|
|||||||
<Reference Include="System.Net.Http.WebRequest" />
|
<Reference Include="System.Net.Http.WebRequest" />
|
||||||
<Reference Include="System.Web.Mvc" />
|
<Reference Include="System.Web.Mvc" />
|
||||||
<Reference Include="System.Web.Http" />
|
<Reference Include="System.Web.Http" />
|
||||||
<Reference Include="System.Net.Http.Formatting" />
|
|
||||||
<Reference Include="System.Web.Http.WebHost" />
|
<Reference Include="System.Web.Http.WebHost" />
|
||||||
<Reference Include="System.Json" />
|
<Reference Include="System.Json" />
|
||||||
<Reference Include="System.Web.WebPages" />
|
<Reference Include="System.Web.WebPages" />
|
||||||
|
<Reference Include="PayPalCoreSDK">
|
||||||
|
<HintPath>..\packages\PayPalCoreSDK.1.6.0\lib\net451\PayPalCoreSDK.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="System.Net.Http.Formatting" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Folder Include="Models\" />
|
<Folder Include="Models\" />
|
||||||
@ -124,6 +127,7 @@
|
|||||||
<Folder Include="htmldoc\" />
|
<Folder Include="htmldoc\" />
|
||||||
<Folder Include="users\" />
|
<Folder Include="users\" />
|
||||||
<Folder Include="xmldoc\" />
|
<Folder Include="xmldoc\" />
|
||||||
|
<Folder Include="Views\PayPal\" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Compile Include="Controllers\HomeController.cs" />
|
<Compile Include="Controllers\HomeController.cs" />
|
||||||
@ -179,6 +183,7 @@
|
|||||||
<Compile Include="Helpers\Google\CalendarApi.cs" />
|
<Compile Include="Helpers\Google\CalendarApi.cs" />
|
||||||
<Compile Include="Formatters\ErrorHtmlFormatter.cs" />
|
<Compile Include="Formatters\ErrorHtmlFormatter.cs" />
|
||||||
<Compile Include="Formatters\RssFeedsFormatter.cs" />
|
<Compile Include="Formatters\RssFeedsFormatter.cs" />
|
||||||
|
<Compile Include="Controllers\PaypalApiController.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
<Content Include="Views\Web.config" />
|
<Content Include="Views\Web.config" />
|
||||||
|
@ -3,4 +3,6 @@
|
|||||||
<package id="jQuery" version="2.1.3" targetFramework="net45" />
|
<package id="jQuery" version="2.1.3" targetFramework="net45" />
|
||||||
<package id="jquery-globalize" version="0.1.3" targetFramework="net45" />
|
<package id="jquery-globalize" version="0.1.3" targetFramework="net45" />
|
||||||
<package id="log4net" version="2.0.3" targetFramework="net40" />
|
<package id="log4net" version="2.0.3" targetFramework="net40" />
|
||||||
|
<package id="Newtonsoft.Json" version="5.0.6" targetFramework="net45" />
|
||||||
|
<package id="PayPalCoreSDK" version="1.6.0" targetFramework="net451" />
|
||||||
</packages>
|
</packages>
|
Reference in New Issue
Block a user