Index: trunk/eCard/eCardMVC/Platnosci.Core/Linq/Merchant.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Core/Linq/Merchant.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci.Core/Linq/Merchant.cs (revision 952)
@@ -21,5 +21,5 @@
             else if (Payment != null)
             {
-                if (Payment.AMOUNT == null) Error = "amount";
+                if (Payment.AMOUNT < 0) Error = "amount";
                 else if (Payment.AUTODEPOSIT != true) Error = "autodeposit";
                 else if (String.IsNullOrEmpty(Payment.ORDERDESCRIPTION)) Error = "orderdescription";
@@ -28,12 +28,14 @@
                 else if (String.IsNullOrEmpty(Payment.SURNAME)) Error = "surname";
                 else if (String.IsNullOrEmpty(Payment.LANGUAGE)) Error = "language";
-                else if (Payment.ORDERNUMBER < 1) Error = "ordernumber";
             }
-            else if (Hash == BAD_HASH || Hash == "" || Hash == HASH_ERROR_INFO) Error = "hash";
-            else if (String.IsNullOrEmpty(Id)) Error = "id";
-            else if (String.IsNullOrEmpty(Password)) Error = "password";
-            else if (String.IsNullOrEmpty(Hash)) Error = "hash";
-            else if (String.IsNullOrEmpty(LinkFail)) Error = "linkfail";
-            else if (String.IsNullOrEmpty(LinkOk)) Error = "linkok";
+            if (String.IsNullOrEmpty(Error))
+            {
+                if (Hash == BAD_HASH || Hash == "" || Hash == HASH_ERROR_INFO) Error = "hash";
+                else if (String.IsNullOrEmpty(Id)) Error = "id";
+                else if (String.IsNullOrEmpty(Password)) Error = "password";
+                else if (String.IsNullOrEmpty(Hash)) Error = "hash";
+                else if (String.IsNullOrEmpty(LinkFail)) Error = "linkfail";
+                else if (String.IsNullOrEmpty(LinkOk)) Error = "linkok";
+            }
         }
     }
Index: trunk/eCard/eCardMVC/Platnosci/Web.config
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Web.config (revision 948)
+++ trunk/eCard/eCardMVC/Platnosci/Web.config (revision 952)
@@ -37,10 +37,10 @@
     <add key="wersja" value="TEST"/>
     <add key="eCard.Url" value="https://pay.ecard.pl/servlet/PSTEST"/>
+
+    <!--<add key="Strona" value="http://pay.truck-expo.com"/>
+    <add key="Css" value="truck"/>-->
     
-    <add key="Strona" value="http://pay.truck-expo.com"/>
-    <add key="Css" value="truck"/>
     <add key="Strona" value="http://platnosci.admoto.pl"/>
-    <add key="Css" value="admoto"/>
-    
+    <add key="Css" value="admoto"/>    
     <add key="LinkFail" value="/Platnosc/Fail"/>
     <add key="LinkOk" value="/Platnosc/Ok"/>
Index: trunk/eCard/eCardMVC/Platnosci/Models/FunkcjePlatnosci.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Models/FunkcjePlatnosci.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Models/FunkcjePlatnosci.cs (revision 952)
@@ -20,5 +20,23 @@
         public const string KOD_POLSKA = "616";         //kod kraju Akceptanta - Polska
         public const string KODOWANIE = "ISO-8859-2";
+        private IRepository<PlatnosciEcard> _repPayment;
+        private readonly ITranslateManager _translateManager;
 
+        public FunkcjePlatnosci()
+        {
+            _repPayment = new Repository<PlatnosciEcard>(new DataContext());
+            _translateManager = new Translation();     
+        }
+
+        public FunkcjePlatnosci(IRepository<PlatnosciEcard> repPayment)
+        {
+            _repPayment = repPayment;
+            _translateManager = new Translation();    
+        }
+        public FunkcjePlatnosci(IRepository<PlatnosciEcard> repPayment, ITranslateManager translate)
+        {
+            _repPayment = repPayment;
+            _translateManager = translate;
+        }
         public string BruttoToString(decimal? kwota, decimal? waluta, string miano)
         {
@@ -39,6 +57,6 @@
         public Waluta SetAmount(vPlatnosciEcard platnosc)
         {
-            var waluta = new Waluta {Amount = Convert.ToInt32(platnosc.Brutto*100)};
-
+            var waluta = new Waluta();
+            
             if (!String.IsNullOrEmpty(platnosc.waluta_miano) && platnosc.waluta_miano != "PLN")
             {
@@ -59,4 +77,5 @@
             else
             {
+                waluta.Amount = Convert.ToInt32(platnosc.Brutto * 100);
                 waluta.Currency = PLN;
             }
@@ -123,5 +142,5 @@
             return er;
         }
-        public PlatnosciEcard CreateAndAddNewPyment(vPlatnosciEcard platnosc, Waluta waluta, Payer payer, IRepository<PlatnosciEcard> _repPayment, string sessionId)
+        public PlatnosciEcard CreateAndAddNewPyment(vPlatnosciEcard platnosc, Waluta waluta, Payer payer, string sessionId)
         {
             var newPayment = new PlatnosciEcard();
@@ -145,10 +164,17 @@
             newPayment.Status_data = null;
 
-            if (newPayment != null)
-            {
-                _repPayment.Insert(newPayment);
-                return newPayment;
-            }
-            return null;
+            _repPayment.Insert(newPayment);
+            return newPayment;
+        }
+        public ErrorViewData IsError(vPlatnosciEcard platnosc, String UserName)
+        {
+            var errortxt = "";
+
+            if (platnosc == null)
+                errortxt = _translateManager.Translate("tlumaczenia", "brakdanych");
+            else if (!UserIdentity(platnosc, UserName))
+                errortxt = _translateManager.Translate("tlumaczenia", "weryfikacja");
+
+            return InitErrorViewData(errortxt, 0);
         }
     }
Index: trunk/eCard/eCardMVC/Platnosci/Models/eCardData.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Models/eCardData.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Models/eCardData.cs (revision 952)
@@ -1,11 +1,11 @@
 ﻿using System;
 using System.Web;
-using Platnosci.Core.Linq;
-using System.Configuration;
-using Platnosci.Core.Interface;
 using System.Net;
 using System.IO;
 using System.Linq;
 using System.Web.Mvc;
+using System.Configuration;
+using Platnosci.Core.Linq;
+using Platnosci.Core.Interface;
 
 namespace Platnosci.Models
@@ -20,5 +20,5 @@
         {
             _repPayment = repPayment;
-            _funkcjePlatnosci = new FunkcjePlatnosci();
+            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment);
         }
 
@@ -41,8 +41,9 @@
         public Merchant CreateMerchantData(vPlatnosciEcard invoice, Payer payer, string lang, string sessionId)
         {
+            var merchant = new Merchant();
+           
             var waluta = _funkcjePlatnosci.SetAmount(invoice);
-            var newPayment = _funkcjePlatnosci.CreateAndAddNewPyment(invoice, waluta, payer, _repPayment, sessionId);
+            var newPayment = _funkcjePlatnosci.CreateAndAddNewPyment(invoice, waluta, payer, sessionId);
 
-            var merchant = new Merchant();
             merchant.SystemKsiegowy = invoice.SystemKsiegowyId.ToString();
             if (ConfigurationManager.AppSettings["wersja"] == "TEST")
@@ -66,4 +67,6 @@
             merchant.LinkOk = linkOk;
             merchant.LinkFail = linkFail;
+
+            if (merchant != null) merchant.IsValid();
 
             return merchant;
Index: trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj.user
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj.user (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj.user (revision 952)
@@ -1,5 +1,5 @@
 ﻿<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <PropertyGroup>
-    <ProjectView>ShowAllFiles</ProjectView>
+    <ProjectView>ProjectFiles</ProjectView>
   </PropertyGroup>
   <ProjectExtensions>
Index: trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.designer.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.designer.cs (revision 948)
+++ trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.designer.cs (revision 952)
@@ -432,4 +432,13 @@
         
         /// <summary>
+        ///   Looks up a localized string similar to Zbyt dÅuga nazwa (Max. liczba znakÃ³w to {0})..
+        /// </summary>
+        internal static string ToLongValue {
+            get {
+                return ResourceManager.GetString("ToLongValue", resourceCulture);
+            }
+        }
+        
+        /// <summary>
         ///   Looks up a localized string similar to Payment by credit card for advert.
         /// </summary>
Index: trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.resx
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.resx (revision 948)
+++ trunk/eCard/eCardMVC/Platnosci/App_GlobalResources/tlumaczenia.resx (revision 952)
@@ -269,3 +269,6 @@
     <value>Tax number is required.</value>
   </data>
+  <data name="ToLongValue" xml:space="preserve">
+    <value>Zbyt dÅuga nazwa (Max. liczba znakÃ³w to {0}).</value>
+  </data>
 </root>
Index: trunk/eCard/eCardMVC/Platnosci/Views/Shared/Site.Master
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Views/Shared/Site.Master (revision 948)
+++ trunk/eCard/eCardMVC/Platnosci/Views/Shared/Site.Master (revision 952)
@@ -25,12 +25,10 @@
                         </td>
                     </tr>       
-                    <tr>
-                        <%if (ConfigurationManager.AppSettings["Css"] != "admoto"){%>
-                            <td class="title">
-                                <asp:Label ID="napis" runat="server" Text="<%$Resources:tlumaczenia,tytul%>"></asp:Label>
-                            </td>  
-                        <%}%>        
-                        <td class="kontrolkaLogowania">                  
-                            <div id="logindisplay"><br /><br /><% Html.RenderPartial("LogOnUserControl"); %></div>
+                    <tr class="opis">
+                        <td class="title">
+                            <asp:Label ID="napis" runat="server" Text="<%$Resources:tlumaczenia,tytul%>"></asp:Label>
+                        </td>    
+                        <td>                  
+                            <div id="logindisplay"><% Html.RenderPartial("LogOnUserControl"); %></div>
                         </td>            
                     </tr> 
Index: trunk/eCard/eCardMVC/Platnosci/Helpers/helper.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Helpers/helper.cs (revision 908)
+++ trunk/eCard/eCardMVC/Platnosci/Helpers/helper.cs (revision 952)
@@ -107,32 +107,23 @@
             string str = "";
             if (ConfigurationManager.AppSettings["Css"] == "admoto"){
-                UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
+                /*UrlHelper urlHelper = new UrlHelper(htmlHelper.ViewContext.RequestContext);
                 url = urlHelper.FileUrl("favicon.ico");
-                str = htmlHelper.LinkTag(url,"shortcut icon","");
+                str = htmlHelper.LinkTag(url,"shortcut icon","");*/
             }
             return str;
         }
-        public static string Logo(this HtmlHelper htmlHelper)
-        {
-            string rowspan = "";
-            if (ConfigurationManager.AppSettings["Css"] == "truck") rowspan = "";
-                else if (ConfigurationManager.AppSettings["Css"] == "admoto") rowspan = "2";
-            string str = htmlHelper.TdTag("logo", rowspan);
-            return str;
-        }
-        public static string TdTag(this HtmlHelper helper, string tdClass, string tdRowspan)
+        public static string Logo(this HtmlHelper helper)
         {
             UrlHelper urlHelper = new UrlHelper(helper.ViewContext.RequestContext);
-            string url = urlHelper.FileUrl("logo.gif");
+            
+            var logo = "";
+            if (ConfigurationManager.AppSettings["Css"] == "admoto") logo = "logo.png";
+            else logo = "logo.gif";
+
+            string url = urlHelper.FileUrl(logo);
             string logotag = helper.ImageTag(url, "logo");
            
             TagBuilder tb = new TagBuilder("td");
-            tb.Attributes.Add("class", tdClass);
-            if (tdRowspan != "") tb.Attributes.Add("rowspan", tdRowspan);
-
-            if (ConfigurationManager.AppSettings["Css"] == "admoto")
-            { 
-                logotag += "<span>"+HttpContext.GetGlobalResourceObject("tlumaczenia", "tytul").ToString()+"</span>";
-            }
+            tb.Attributes.Add("class", "logo");
 
             tb.InnerHtml = logotag; 
Index: trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Controllers/MerchantController.cs (revision 952)
@@ -15,7 +15,4 @@
     public class MerchantController : Controller
     {
-        public const string BAD_HASH = "zlyHash";                  //b³êdne has³o - odpowied z eCard
-        public const string HASH_ERROR_INFO = "payment not exist";
-
         private readonly IRepository<vPlatnosciEcard> _repVPayment;
         private readonly IRepository<PlatnosciEcard> _repPayment; 
@@ -28,5 +25,5 @@
             _repVPayment = new Repository<vPlatnosciEcard>(new DataContext());
             _repPayment = new Repository<PlatnosciEcard>(new DataContext());
-            _funkcjePlatnosci = new FunkcjePlatnosci();
+            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment);
             _translateManager = new Translation();
             _eCardData = new eCardData(_repPayment);
@@ -36,6 +33,6 @@
             _repVPayment = repVPayment;
             _repPayment = repPayment;
-            _funkcjePlatnosci = new FunkcjePlatnosci();
             _translateManager = translate;
+            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment, _translateManager);            
             _eCardData = ecardData;
         }
@@ -47,36 +44,18 @@
             var id1 = Convert.ToInt32(payer.Id_faktury);
             var platnosc = _repVPayment.Find(p => p.ID_faktury == id1).SingleOrDefault();
-                 
-            if (platnosc == null) 
-                return View("Error1", IsError("brakdanych", 0));
-            
-            if (!_funkcjePlatnosci.UserIdentity(platnosc, ControllerContext.HttpContext.User.Identity.Name))
-                return View("Error1", IsError("weryfikacja", 0));
+
+            var errorViewData = _funkcjePlatnosci.IsError(platnosc, ControllerContext.HttpContext.User.Identity.Name);
+            if (!String.IsNullOrEmpty(errorViewData.Error)) 
+                return View("Error1", errorViewData);
 
             var merchant = _eCardData.CreateMerchantData(platnosc, payer, language, Session.SessionID);
             
-            if (merchant != null) merchant.IsValid();
-            
             if (merchant == null || (merchant != null && (!String.IsNullOrEmpty(merchant.Error))))
-                return View("Error1", IsError("error_hash", payer.Id_faktury));
+                return View("Error1", _funkcjePlatnosci.InitErrorViewData(_translateManager.Translate("tlumaczenia", "error_hash"), payer.Id_faktury));
             
             var adres = _eCardData.GetUrl(merchant);
             Response.Redirect(adres);           
             return new EmptyResult();          
-        }         
-        public ErrorViewData IsError(string errortxt, int idFaktury)
-        {
-            if (errortxt == "brakdanych")
-                errortxt = _translateManager.Translate("tlumaczenia", "brakdanych");
-            else if (errortxt == "weryfikacja")
-                errortxt = _translateManager.Translate("tlumaczenia", "weryfikacja");
-            else if (errortxt == "error_hash")
-                errortxt = _translateManager.Translate("tlumaczenia", "error_hash");
-            else if (errortxt == "error_hash")
-                errortxt = _translateManager.Translate("tlumaczenia", "error_hash");
-
-            return _funkcjePlatnosci.InitErrorViewData(errortxt, idFaktury);
-        }
-        
+        } 
     }
 }
Index: trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs (revision 952)
@@ -24,5 +24,5 @@
             _repPayment = new Repository<PlatnosciEcard>(new DataContext());
             _repConfirm = new Repository<PotwierdzeniaEcard>(new DataContext());
-            _funkcjePlatnosci = new FunkcjePlatnosci();
+            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment);
             _translateManager = new Translation();         
         }
@@ -32,6 +32,7 @@
             _repPayment = repPayment;
             _repConfirm = repConfirm;
-            _funkcjePlatnosci = new FunkcjePlatnosci();
             _translateManager = translate;
+            _funkcjePlatnosci = new FunkcjePlatnosci(_repPayment, _translateManager);
+            
         }
         public ActionResult Show(string id, string language)
@@ -41,5 +42,7 @@
 
             var platnosc = _repVPayment.Find(p => p.ID_faktury == id1).SingleOrDefault();
-            if (!String.IsNullOrEmpty(IsError(platnosc).Error)) return View("Error1", IsError(platnosc));
+
+            var errorViewData = _funkcjePlatnosci.IsError(platnosc, HttpContext.User.Identity.Name);
+            if (!String.IsNullOrEmpty(errorViewData.Error)) return View("Error1", errorViewData);
             
             var invoiceDeatailsViewData = InitInvoiceDetailsViewData(platnosc);  
@@ -66,11 +69,15 @@
             
             if (String.IsNullOrEmpty(payer.FirstName))
-            {
                 ModelState.AddModelError("Payer.FirstName", _translateManager.Translate("tlumaczenia", "err_imieWK"));
-            }
+            
             if (String.IsNullOrEmpty(payer.LastName))
-            {
                 ModelState.AddModelError("Payer.LastName", _translateManager.Translate("tlumaczenia", "err_nazwiskoWK"));
-            }
+            
+            if (payer.FirstName.Length > 25)
+                ModelState.AddModelError("Payer.FirstName", String.Format(_translateManager.Translate("tlumaczenia", "ToLongValue"),"25"));
+           
+            if (payer.LastName.Length > 30)
+                ModelState.AddModelError("Payer.LastName", String.Format(_translateManager.Translate("tlumaczenia", "ToLongValue"),"30"));
+            
             if (ModelState.IsValid == false)
             {
Index: trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci/Platnosci.Web.csproj (revision 952)
@@ -141,6 +141,4 @@
   </ItemGroup>
   <ItemGroup>
-    <Content Include="Images\admoto\favicon.ico" />
-    <Content Include="Images\admoto\logo.gif" />
     <Content Include="Images\admoto\tlo1.gif" />
     <Content Include="Images\admoto\tlo2.gif" />
@@ -179,4 +177,5 @@
       <SubType>Designer</SubType>
     </Content>
+    <Content Include="Images\admoto\logo.png" />
     <Content Include="Views\Platnosc\Fail.aspx" />
     <Content Include="Views\Platnosc\Form.aspx" />
Index: trunk/eCard/eCardMVC/Platnosci/Content/admoto.css
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Content/admoto.css (revision 911)
+++ trunk/eCard/eCardMVC/Platnosci/Content/admoto.css (revision 952)
@@ -13,17 +13,4 @@
     border-bottom: solid 3px #ff8c00;
     border-top: solid 5px #ff8c00;
-}
-.logo span
-{
-    font-weight: bold;
-    color: #a9a9a9; 
-    font-size: 17px !important;
-    font-family: Arial, Helvetica, sans-serif;
-    vertical-align: bottom;   
-}
-.logo img
-{
-    position: relative;
-    top: 10px;
 }
 #logindisplay a:link
@@ -47,5 +34,7 @@
 {
     float: right;
+    padding-right: 5px;
     vertical-align: bottom;
+    padding-top: 10px;
 }
 .tlo
@@ -53,3 +42,8 @@
     background-image: url(../../Images/admoto/tlo_top_.gif);
 }
+.logo img
+{
+    width: 55%;
+    height:  55%;
+}
 
Index: trunk/eCard/eCardMVC/Platnosci/Content/Site.css
===================================================================
--- trunk/eCard/eCardMVC/Platnosci/Content/Site.css (revision 948)
+++ trunk/eCard/eCardMVC/Platnosci/Content/Site.css (revision 952)
@@ -135,5 +135,8 @@
 #flagi
 {
+    vertical-align: top;
     text-align: right;
+    padding-right: 5px;
+    padding-top: 5px;
 }
 #flagi a img
@@ -159,8 +162,4 @@
 {
     /*width: 200px;*/
-}
-.fieldset
-{
-    
 }
 .tablelogin
@@ -260,9 +259,12 @@
 }
 .title
-{
+{   
+    font-weight: bold;
+    color: #a9a9a9; 
+    font-size: 17px !important;
+    font-family: Arial, Helvetica, sans-serif;
+    padding-left: 8px;
     vertical-align: bottom;
-    padding-left: 15px;
-    font-size: 18px;
-    font-weight: bold;
+    padding-top: 10px;
 }
 .LogOfflink span a
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj (revision 934)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj (revision 952)
@@ -92,4 +92,5 @@
     <Compile Include="Web\TestMethods.cs" />
     <Compile Include="Web\UIAccountTest.cs" />
+    <Compile Include="Web\UIFieldTest.cs" />
     <Compile Include="Web\UIPlatnosciTests.cs" />
   </ItemGroup>
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIPlatnosciTests.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIPlatnosciTests.cs (revision 950)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIPlatnosciTests.cs (revision 952)
@@ -44,4 +44,20 @@
             ie.Dispose();
         }
+        [Test]
+        [Category("UI")]
+        public void AmountIsZeroReturnZlyHash()
+        {
+            const string test = "test";
+            var ie = new IE("http://localhost:3646/pl/Account/LogOn");
+            ie.TextField(Find.ByName("numerFaktury")).TypeText("1/SLJ/2009");
+            ie.TextField(Find.ByName("nip")).TypeText("9730727417");
+            ie.Button(Find.ById("loguj")).Click();
+
+            ie.TextField(Find.ByName("Payer.FirstName")).TypeText(test);
+            ie.TextField(Find.ByName("Payer.LastName")).TypeText(test);
+            ie.Button(Find.ById("place")).Click();
+            Assert.IsTrue(ie.ContainsText("Wystąpił nieoczekiwany błąd"));
+            
+        }
     }
 }
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIFieldTest.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIFieldTest.cs (revision 952)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/UIFieldTest.cs (revision 952)
@@ -0,0 +1,46 @@
+﻿using NUnit.Framework;
+using WatiN.Core;
+
+namespace Platnosci.Tests.Web
+{
+    [TestFixture]
+    public class UIFieldTest
+    {
+        [Test]
+        [Category("UI")]
+        public void FirstnameIsToLong()
+        {
+            const string test = "test";
+            var ie = new IE("http://localhost:3646/pl/Account/LogOn");
+            ie.TextField(Find.ByName("numerFaktury")).TypeText("1/SLJ/2009");
+            ie.TextField(Find.ByName("nip")).TypeText("9730727417");
+            ie.Button(Find.ById("loguj")).Click();
+
+            ie.TextField(Find.ByName("Payer.FirstName")).TypeText("12345678901234567890123456");
+            ie.TextField(Find.ByName("Payer.LastName")).TypeText(test);
+            ie.Button(Find.ById("place")).Click();
+            Assert.IsTrue(ie.ContainsText("Zbyt długa nazwa"));
+            ie.ForceClose();
+            ie.Close();
+            ie.Dispose();
+        } 
+        [Test]
+        [Category("UI")]
+        public void SurnameIsToLong()
+        {
+            const string test = "test";
+            var ie = new IE("http://localhost:3646/pl/Account/LogOn");
+            ie.TextField(Find.ByName("numerFaktury")).TypeText("1/SLJ/2009");
+            ie.TextField(Find.ByName("nip")).TypeText("9730727417");
+            ie.Button(Find.ById("loguj")).Click();
+
+            ie.TextField(Find.ByName("Payer.FirstName")).TypeText(test);
+            ie.TextField(Find.ByName("Payer.LastName")).TypeText("1234567890123456789012345678901");
+            ie.Button(Find.ById("place")).Click();
+            Assert.IsTrue(ie.ContainsText("Zbyt długa nazwa"));
+            ie.ForceClose();
+            ie.Close();
+            ie.Dispose();
+        } 
+    }
+}
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/PlatnosciControllerTests.cs (revision 952)
@@ -136,9 +136,9 @@
         {
             IRepository<vPlatnosciEcard> repVPayment = new Repository<vPlatnosciEcard>(new FakeDataContext());
-            vPlatnosciEcard platnosc = _function.CreateInvoice(123, "", "", 0, 0);
-            repVPayment.Insert(platnosc);
-
-            var controller = new PlatnoscController(repVPayment, null, null, _translateManager);
-            //controller.setBrakDanych("Platnosc o takim id nie istnieje");
+            vPlatnosciEcard platnosc = _function.CreateInvoice(123, "nip2", "", 0, 0);
+            repVPayment.Insert(platnosc);
+
+            var controller = new PlatnoscController(repVPayment, null, null, _translateManager);
+            controller.ControllerContext = _function.CreateControllerContext("nip2");
 
             var result = controller.Show("1234", "pl") as ViewResult;
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/TestMethods.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/TestMethods.cs (revision 930)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/TestMethods.cs (revision 952)
@@ -1,4 +1,7 @@
 ﻿using NUnit.Framework;
 using Platnosci.Core.Linq;
+using Platnosci.Models;
+using System.Linq;
+using Platnosci.Core.Interface;
 
 namespace Platnosci.Tests.Web
@@ -8,4 +11,5 @@
     {
         private readonly Function _function = new Function();
+        private readonly ITranslateManager _translateManager = new FakeTranslation();
 
         [Test]
@@ -24,4 +28,20 @@
             Assert.That(pl.nip, Is.EqualTo("nip"));
         }
+        [Test]
+        [Category("Unit")]
+        public void TestMethodCreateAndAddNewPaymentOk()
+        {
+            var idFaktury = 123;
+            var repPayment = new Repository<PlatnosciEcard>(new FakeDataContext());
+            var funkcjePlatnosci = new FunkcjePlatnosci(repPayment, _translateManager);
+            var invoice = _function.CreateInvoice(idFaktury, "nip", "abc/2009", 200, 2);
+            var payer = _function.CreatePayer(idFaktury, "test", "test");
+            var waluta = new Waluta {Amount = 200,Currency = "PLN"};
+            var result = funkcjePlatnosci.CreateAndAddNewPyment(invoice, waluta ,payer, "sessionId");
+
+            var payment = repPayment.Find(p => p.IDFaktury == 123).SingleOrDefault();
+            Assert.That(payment.IDFaktury, Is.EqualTo(idFaktury));
+        }
+
     }
 }
Index: trunk/eCard/eCardMVC/Platnosci.Tests/Web/MerchantControllerTests.cs
===================================================================
--- trunk/eCard/eCardMVC/Platnosci.Tests/Web/MerchantControllerTests.cs (revision 951)
+++ trunk/eCard/eCardMVC/Platnosci.Tests/Web/MerchantControllerTests.cs (revision 952)
@@ -1,3 +1,4 @@
-﻿using NUnit.Framework;
+﻿using System;
+using NUnit.Framework;
 using Platnosci.Core.Linq;
 using Platnosci.Core.Interface;
@@ -70,5 +71,5 @@
             var payment = repPayment.FindOne(i => i.IDFaktury == idFaktury);
 
-            System.Diagnostics.Debug.WriteLine("Faktura jest w EUR.");
+            System.Diagnostics.Debug.WriteLine(payment + " -- Faktura jest w EUR.");
             System.Diagnostics.Debug.WriteLine("PLN:" + amountPL + "," + " EUR:" + amountEUR);
             Assert.That(payment.AMOUNT, Is.EqualTo(amountEUR * 100));
@@ -84,6 +85,5 @@
             m.Id = "ABCD";
             
-            var repPayment = new Repository<PlatnosciEcard>(new FakeDataContext());
-            var eCardData = new eCardData(repPayment);
+            var eCardData = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
             var result = eCardData.GetUrl(m);
             
@@ -93,39 +93,14 @@
         [Test]
         [Category("Unit")]
-        public void PaymentIsNotValid()
-        {
-            var m = new Merchant();
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("payment"));
-        }
-        [Test]
-        [Category("Unit")]
         public void AmountIsNotValid()
         {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("amount"));
-        }
-        [Test]
-        [Category("Unit")]
-        public void AutodepositIsNotValid()
-        {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.Payment.AMOUNT = 100;
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("autodeposit"));
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var invoice = _function.CreateInvoice(123, "nip", "abc/2009", 0, 2);
+            
+            var payer = _function.CreatePayer(123, "test", "test");
+            var result = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            System.Diagnostics.Debug.WriteLine("Error: " + result.Error + " is not valid.");
+            Assert.That(result.Error, Is.EqualTo("hash"));  //dla wartosci amount=0 eCard zwroci hash o wartości "zlyHash"
         }
         [Test]
@@ -133,14 +108,12 @@
         public void OrderdescriptionIsNotValid()
         {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.Payment.AMOUNT = 100;
-            m.Payment.AUTODEPOSIT = true;
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("orderdescription"));
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var invoice = _function.CreateInvoice(123, "nip", "", 200, 2);
+
+            var payer = _function.CreatePayer(123, "test", "test");
+            var result = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            System.Diagnostics.Debug.WriteLine("Error: " + result.Error + " is not valid.");
+            Assert.That(result.Error, Is.EqualTo("orderdescription"));
         }
         [Test]
@@ -164,16 +137,13 @@
         public void NameIsNotValid()
         {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.Payment.AMOUNT = 100;
-            m.Payment.AUTODEPOSIT = true;
-            m.Payment.ORDERDESCRIPTION = "abc/2009";
-            m.Payment.CURRENCY = "test";
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("name"));
+
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var invoice = _function.CreateInvoice(123, "nip", "abc/2009", 200, 2);
+
+            var payer = _function.CreatePayer(123, "", "test");
+            var result = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            System.Diagnostics.Debug.WriteLine("Error: " + result.Error + " is not valid.");
+            Assert.That(result.Error, Is.EqualTo("name"));
         }
         [Test]
@@ -181,18 +151,12 @@
         public void SurnameIsNotValid()
         {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.Payment.AMOUNT = 100;
-            m.Payment.AUTODEPOSIT = true;
-            m.Payment.ORDERDESCRIPTION = "abc/2009";
-            m.Payment.CURRENCY = "test";
-            m.Payment.NAME = "test";
-
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("surname"));
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var invoice = _function.CreateInvoice(123, "nip", "abc/2009", 200, 2);
+
+            var payer = _function.CreatePayer(123, "test", "");
+            var result = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            System.Diagnostics.Debug.WriteLine("Error: " + result.Error + " is not valid.");
+            Assert.That(result.Error, Is.EqualTo("surname"));
         }
         [Test]
@@ -216,25 +180,5 @@
             Assert.That(result, Is.EqualTo("language"));
         }
-        [Test]
-        [Category("Unit")]
-        public void OrdernumberIsNotValid()
-        {
-            var m = new Merchant();
-            var p = new PlatnosciEcard();
-            m.Payment = p;
-            m.Payment.AMOUNT = 100;
-            m.Payment.AUTODEPOSIT = true;
-            m.Payment.ORDERDESCRIPTION = "abc/2009";
-            m.Payment.CURRENCY = "test";
-            m.Payment.NAME = "test";
-            m.Payment.SURNAME = "test";
-            m.Payment.LANGUAGE = "test";
-
-            m.IsValid();
-            var result = m.Error;
-
-            System.Diagnostics.Debug.WriteLine("Error: " + result + " is not valid.");
-            Assert.That(result, Is.EqualTo("ordernumber"));
-        }
+        
         [Test]
         [Category("Unit")]
@@ -252,9 +196,36 @@
             m.Payment.LANGUAGE = "test";
             m.Payment.ORDERNUMBER = 100;
+            m.Id = "aaaa";
+            m.Password = "aa";
+            m.Hash = "22";
+            m.LinkFail = "a";
+            m.LinkOk = "a";
 
             m.IsValid();
             var result = m.Error;
             Assert.That(result,Is.EqualTo(null));
-        }
+
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var invoice = _function.CreateInvoice(123, "nip", "abc/2009", 200, 2);
+
+            var payer = _function.CreatePayer(123, "test", "test");
+            var result2 = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            System.Diagnostics.Debug.WriteLine("Wszystkie dane sa poprawne!!");
+            Assert.That(result2.Error, Is.EqualTo(null));
+        }
+        [Test]
+        [Category("Unit")]
+        public void IncorrectValueAmount()
+        {
+            var ecarddata = new eCardData(new Repository<PlatnosciEcard>(new FakeDataContext()));
+            var brutto = Convert.ToDecimal(0.11);
+            var invoice = _function.CreateInvoice(123, "nip", "abc/2009", brutto, 2);
+
+            var payer = _function.CreatePayer(123, "test", "test");
+            var result = ecarddata.CreateMerchantData(invoice, payer, "PL", "abcd");
+
+            Assert.That(result.Error, Is.EqualTo(null));
+        }        
     }
 }
