Index: /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Paid.aspx
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Paid.aspx (revision 905)
+++ /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Paid.aspx (revision 911)
@@ -7,5 +7,5 @@
 <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
 
-    <div class="Tytul">
+    <div class="SzczegolyZlecenia">
         <asp:Label ID="Szczegó³y" runat="server" Text="<%$Resources:tlumaczenia,Szczegoly%>"></asp:Label>
     </div>
Index: /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Form.aspx
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Form.aspx (revision 911)
+++ /trunk/eCard/eCardMVC/Platnosci/Views/Platnosc/Form.aspx (revision 911)
@@ -0,0 +1,28 @@
+<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
+
+<asp:Content ID="Content1" ContentPlaceHolderID="TitleContent" runat="server">
+	Form
+</asp:Content>
+
+<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
+ <form method="post" action="http://localhost:3646/ecard/Status.aspx">
+     
+     <br/> 1. Merchantnumber: <%=Html.TextBox("MERCHANTNUMBER","111")%>
+     <br/> 2. Ordernumber: <%=Html.TextBox("ORDERNUMBER","1234")%>
+     <br/> 3. Currentstate: <%=Html.TextBox("CURRENTSTATE","payment_deposited")%>
+     <br/> 4. ValidationCode: <%=Html.TextBox("VALIDATIONCODE","000")%>      
+     <br/> 5. APPROVALCODE: <%=Html.TextBox("APPROVALCODE","123")%>
+     <br/> 6. AUTHTIME: <%=Html.TextBox("AUTHTIME")%>
+     <br/> 7. BIN: <%=Html.TextBox("BIN","1234")%>
+     <br/> 8. COMMTYPE: <%=Html.TextBox("COMMTYPE","anbjbj")%>
+     <br/> 9. PAYMENTTYPE: <%=Html.TextBox("PAYMENTTYPE","True")%>
+     <br/>10. DATATRANSMISJI: <%=Html.TextBox("DATATRANSMISJI")%>
+     <br/>11. EVENTTYPE: <%=Html.TextBox("EVENTTYPE","True")%>
+     <br/>12. PAYMENTNUMBER: <%=Html.TextBox("PAYMENTNUMBER","True")%>
+     <br/>13. PREVIOUSSTATE: <%=Html.TextBox("PREVIOUSSTATE","shshshhs")%>
+     <br/>14. TYPE: <%=Html.TextBox("TYPE","20") %>
+     <br/>15. WITHCVC: <%=Html.TextBox("WITHCVC","YES")%>
+        
+     <p><input type="submit" value="Dalej" /></p>
+</form>
+</asp:Content>
Index: /trunk/eCard/eCardMVC/Platnosci/Views/Account/LogOn.aspx
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Views/Account/LogOn.aspx (revision 908)
+++ /trunk/eCard/eCardMVC/Platnosci/Views/Account/LogOn.aspx (revision 911)
@@ -19,5 +19,5 @@
     <%string info = HttpContext.GetGlobalResourceObject("tlumaczenia", "validateInfo").ToString(); %>
     <%= Html.ValidationSummary(info) %>
-
+    
     <% using (Html.BeginForm()) { %>
         <table class="tablelogin" border="0" cellpadding="0" cellspacing="0">
Index: /trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs (revision 908)
+++ /trunk/eCard/eCardMVC/Platnosci/Controllers/PlatnoscController.cs (revision 911)
@@ -24,5 +24,5 @@
         public const string ISPAID = "payment_deposited";       //transakcja potwierdzona do rozliczenia
         private readonly IRepository<vPlatnosciEcard> _repVPayment;       
-        private readonly IRepository<PlatnosciEcard> _repPayment;
+        private IRepository<PlatnosciEcard> _repPayment;
         private readonly IRepository<PotwierdzeniaEcard> _repConfirm;
         private ITranslate _t;
@@ -124,41 +124,44 @@
         public ActionResult Status()
         {
-            string MERCHANTNUMBER = Request.Form["MERCHANTNUMBER"];
-            int ORDERNUMBER = Convert.ToInt32(Request.Form["ORDERNUMBER"]);
-            string COMMTYPE = Request.Form["COMMTYPE"];
-            string CURRENTSTATE = Request.Form["CURRENTSTATE"];
-            string PREVIOUSSTATE = Request.Form["PREVIOUSSTATE"];
-            bool PAYMENTTYPE = Convert.ToBoolean(Request.Form["PAYMENTTYPE"]);
-            bool EVENTTYPE = Convert.ToBoolean(Request.Form["EVENTTYPE"]);
-            bool PAYMENTNUMBER = Convert.ToBoolean(Request.Form["PAYMENTNUMBER"]);
-            string APPROVALCODE = Request.Form["APPROVALCODE"];
-            string VALIDATIONCODE = Request.Form["VALIDATIONCODE"];
-            string BIN = Request.Form["BIN"];
-            DateTime AUTHTIME = Convert.ToDateTime(Request.Form["AUTHTIME"]);
-            string TYPE = Request.Form["TYPE"];
-            string WITHCVC = Request.Form["WITHCVC"];
-            DateTime DATATRANSMISJI = Convert.ToDateTime(Request.Form["DATATRANSMISJI"]);
+            string CURRENTSTATE = "";
+            int ORDERNUMBER = 0;
             
             PotwierdzeniaEcard potwierdzenie = new PotwierdzeniaEcard();
-            potwierdzenie.APPROVALCODE = APPROVALCODE;
-            potwierdzenie.AUTHTIME = AUTHTIME;
-            potwierdzenie.BIN = BIN;
-            potwierdzenie.COMMTYPE = COMMTYPE;
-            potwierdzenie.CURRENTSTATE = CURRENTSTATE;
-            potwierdzenie.DATATRANSMISJI = DATATRANSMISJI;
-            potwierdzenie.EVENTTYPE = EVENTTYPE;
-            potwierdzenie.MERCHANTNUMBER = MERCHANTNUMBER;
-            potwierdzenie.ORDERNUMBER = ORDERNUMBER;
-            potwierdzenie.PAYMENTNUMBER = PAYMENTNUMBER;
-            potwierdzenie.PAYMENTTYPE = PAYMENTTYPE;
-            potwierdzenie.PREVIOUSSTATE = PREVIOUSSTATE;
-            potwierdzenie.TYPE = TYPE;
-            potwierdzenie.VALIDATIONCODE = VALIDATIONCODE;
-            potwierdzenie.WITHCVC = WITHCVC;
-
-            _repConfirm.Insert(potwierdzenie);
-            UpdateStatus(ORDERNUMBER, CURRENTSTATE);
             var content = new ContentResult();
-            content.Content = "OK";
+            try
+            {
+                if (!String.IsNullOrEmpty(Request.Form["APPROVALCODE"])) potwierdzenie.APPROVALCODE = Request.Form["APPROVALCODE"];
+                if (!String.IsNullOrEmpty(Request.Form["AUTHTIME"])) potwierdzenie.AUTHTIME = Convert.ToDateTime(Request.Form["AUTHTIME"]);
+                if (!String.IsNullOrEmpty(Request.Form["BIN"])) potwierdzenie.BIN = Request.Form["BIN"];
+                if (!String.IsNullOrEmpty(Request.Form["COMMTYPE"])) potwierdzenie.COMMTYPE = Request.Form["COMMTYPE"];
+                if (!String.IsNullOrEmpty(Request.Form["CURRENTSTATE"]))
+                {
+                    CURRENTSTATE = Request.Form["CURRENTSTATE"];
+                    potwierdzenie.CURRENTSTATE = CURRENTSTATE;
+                }
+                if (!String.IsNullOrEmpty(Request.Form["DATATRANSMISJI"])) potwierdzenie.DATATRANSMISJI = Convert.ToDateTime(Request.Form["DATATRANSMISJI"]);
+                if (!String.IsNullOrEmpty(Request.Form["EVENTTYPE"])) potwierdzenie.EVENTTYPE = Convert.ToBoolean(Request.Form["EVENTTYPE"]);
+                if (!String.IsNullOrEmpty(Request.Form["MERCHANTNUMBER"])) potwierdzenie.MERCHANTNUMBER = Request.Form["MERCHANTNUMBER"];
+                if (!String.IsNullOrEmpty(Request.Form["ORDERNUMBER"]))
+                {
+                    ORDERNUMBER = Convert.ToInt32(Request.Form["ORDERNUMBER"]);
+                    potwierdzenie.ORDERNUMBER = ORDERNUMBER;
+                }
+                if (!String.IsNullOrEmpty(Request.Form["PAYMENTNUMBER"])) potwierdzenie.PAYMENTNUMBER = Convert.ToBoolean(Request.Form["PAYMENTNUMBER"]);
+                if (!String.IsNullOrEmpty(Request.Form["PAYMENTTYPE"])) potwierdzenie.PAYMENTTYPE = Convert.ToBoolean(Request.Form["PAYMENTTYPE"]);
+                if (!String.IsNullOrEmpty(Request.Form["PREVIOUSSTATE"])) potwierdzenie.PREVIOUSSTATE = Request.Form["PREVIOUSSTATE"];
+                if (!String.IsNullOrEmpty(Request.Form["TYPE"])) potwierdzenie.TYPE = Request.Form["TYPE"];
+                if (!String.IsNullOrEmpty(Request.Form["VALIDATIONCODE"])) potwierdzenie.VALIDATIONCODE = Request.Form["VALIDATIONCODE"];
+                if (!String.IsNullOrEmpty(Request.Form["WITHCVC"])) potwierdzenie.WITHCVC = Request.Form["WITHCVC"];
+
+                _repConfirm.Insert(potwierdzenie);
+                UpdateStatus(ORDERNUMBER, CURRENTSTATE);
+                content.Content = "OK";
+            }
+            catch(Exception ex)
+            {
+                content.Content = "NOTOK " + ex.Message + " " + ex.GetType();
+            }       
+            
             return content;
         }
@@ -211,5 +214,17 @@
                 System.Diagnostics.Debug.WriteLine("IsUpdate");
             }
-        }               
+        }
+        public IRepository<vPlatnosciEcard> getRepVPayment()
+        {
+            return this._repVPayment;
+        }
+        public IRepository<PlatnosciEcard> getRepPayment()
+        {
+            return this._repPayment;
+        }
+        public IRepository<PotwierdzeniaEcard> getRepConfirm()
+        {
+            return this._repConfirm;
+        }   
     }
 }
Index: /trunk/eCard/eCardMVC/Platnosci/Content/admoto.css
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Content/admoto.css (revision 908)
+++ /trunk/eCard/eCardMVC/Platnosci/Content/admoto.css (revision 911)
@@ -1,6 +1,11 @@
-﻿#flagi a:link,a:active, a:visited
+﻿#flagi A:link
 {
+    color: #EEEEEE; 
     text-decoration: none;
-    color: #EEEEEE;    
+}
+#flagi A:active,A:visited
+{
+    color: #EEEEEE;
+    text-decoration: none;        
 }
 .pagecontent
@@ -19,5 +24,5 @@
 .logo img
 {
-    position:relative;
+    position: relative;
     top: 10px;
 }
Index: /trunk/eCard/eCardMVC/Platnosci/Content/Site.css
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci/Content/Site.css (revision 908)
+++ /trunk/eCard/eCardMVC/Platnosci/Content/Site.css (revision 911)
@@ -22,9 +22,7 @@
     font-family: Arial, Helvetica, sans-serif;
     font-size: 1.5em;
-    padding: 20px 0 0 0;
-    color:#E00000;
-    font-weight: bold;
-}
-
+    color: #E00000;
+    font-weight: bold;
+}
 .wtab
 {
@@ -87,5 +85,5 @@
 }
 
-ul#menu li a
+/*ul#menu li a
 {
     padding: 10px 20px;
@@ -96,5 +94,9 @@
     color: #034af3;
 }
-
+ul#menu li a:active
+{
+    background-color: #a6e2a6;
+    text-decoration: none;
+}
 ul#menu li a:hover
 {
@@ -102,20 +104,12 @@
     text-decoration: none;
 }
-
-ul#menu li a:active
-{
-    background-color: #a6e2a6;
-    text-decoration: none;
-}
-
 ul#menu li.selected a
 {
     background-color: #fff;
     color: #000;
-}
+}*/
 
 input[type="text"] 
 {
-    /*width: 200px;*/
     border: 1px solid #CCC;
 }
@@ -150,5 +144,4 @@
     color: #ff0000;
 }
-/*formatowanie tabeli na stronie platnosc.aspx*/
 .img_info
 img{
@@ -239,12 +232,12 @@
 	color: Gray;
 }
+#link1 a
+{
+    color: #a9a9a9;
+}
 #link1 a:hover
 {
     color: Red;
     text-decoration: none;
-}
-#link1 a
-{
-    color: #a9a9a9;
 }
 #odstep
Index: /trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj (revision 904)
+++ /trunk/eCard/eCardMVC/Platnosci.Tests/Platnosci.Tests.csproj (revision 911)
@@ -83,4 +83,5 @@
     <Compile Include="Web\Function.cs" />
     <Compile Include="Web\PlatnosciControllerTests.cs" />
+    <Compile Include="Web\StatusTest.cs" />
     <Compile Include="Web\TestMethods.cs" />
     <Compile Include="Web\UIAccountTest.cs" />
Index: /trunk/eCard/eCardMVC/Platnosci.Tests/Web/StatusTest.cs
===================================================================
--- /trunk/eCard/eCardMVC/Platnosci.Tests/Web/StatusTest.cs (revision 911)
+++ /trunk/eCard/eCardMVC/Platnosci.Tests/Web/StatusTest.cs (revision 911)
@@ -0,0 +1,103 @@
+﻿using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using NUnit.Framework;
+using Platnosci.Core.Linq;
+using Platnosci.Core.Interface;
+using MvcContrib.TestHelper;
+using Platnosci.Controllers;
+using System.Web.Mvc;
+
+namespace Platnosci.Tests.Web
+{
+    [TestFixture] 
+    class StatusTest
+    {
+        private Function _f = new Function();
+
+        [Test]
+        [Category("Unit")]
+        public void FormatException_Ordernumber_Test()
+        {
+            IRepository<PotwierdzeniaEcard> repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+            var builder = new TestControllerBuilder();
+            var controller = new PlatnoscController(null, null, repConfirm, null);
+            builder.InitializeController(controller);
+            builder.Form.Add("MERCHANTNUMBER", "132423");
+            builder.Form.Add("ORDERNUMBER", "32hvhsvhv");
+
+            var result = controller.Status() as ContentResult;           
+            System.Diagnostics.Debug.WriteLine("1. Zły formt ordernumber.");
+            System.Diagnostics.Debug.WriteLine("2. Count: " + repConfirm.Count());
+            System.Diagnostics.Debug.WriteLine("3. Contetnt: " + result.Content);
+            Assert.That(repConfirm.Count().Equals(0));
+            Assert.That(result.Content.Contains("FormatException"));
+        }
+        [Test]
+        [Category("Unit")]
+        public void FormatException_Paymenttype_Test()
+        {
+            IRepository<PotwierdzeniaEcard> repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+            var builder = new TestControllerBuilder();
+            var controller = new PlatnoscController(null, null, repConfirm, null);
+            builder.InitializeController(controller);
+            builder.Form.Add("MERCHANTNUMBER", "132423");
+            builder.Form.Add("PAYMENTTYPE", "32hvhsvhv");
+
+            var result = controller.Status() as ContentResult;
+            System.Diagnostics.Debug.WriteLine("Zły formt paymenttype. " + " Count: " + repConfirm.Count());
+            Assert.That(repConfirm.Count().Equals(0));
+            Assert.That(result.Content.Contains("FormatException"));
+        }
+        [Test]
+        [Category("Unit")]
+        public void FormatException_Eventtype_Test()
+        {
+            IRepository<PotwierdzeniaEcard> repConfirm = new Repository<PotwierdzeniaEcard>(new FakeDataContext());
+            var builder = new TestControllerBuilder();
+            var controller = new PlatnoscController(null, null, repConfirm, null);
+            builder.InitializeController(controller);
+            builder.Form.Add("MERCHANTNUMBER", "132423");
+            builder.Form.Add("EVENTTYPE", "32hvhsvhv");
+
+            var result = controller.Status() as ContentResult;
+            System.Diagnostics.Debug.WriteLine("Zły formt eventtype. " + " Count: " + repConfirm.Count());
+            Assert.That(repConfirm.Count().Equals(0));
+            Assert.That(result.Content.Contains("FormatException"));
+        }
+        [Test]
+        [Category("Unit")]
+        public void OverflowException_Ordernumber_Test()
+        {
+            var controller = new PlatnoscController();
+            var builder = new TestControllerBuilder();
+            builder.InitializeController(controller);
+            builder.Form.Add("MERCHANTNUMBER", "132");
+            builder.Form.Add("ORDERNUMBER", "12311111111111111");
+            builder.Form.Add("VALIDATIONCODE", "AAA");
+            
+            var result = controller.Status() as ContentResult;
+            System.Diagnostics.Debug.WriteLine("1. Wartosc ordernumber jest za duza.");
+            System.Diagnostics.Debug.WriteLine("2. Contetnt: " + result.Content);
+            Assert.That(result.Content.Contains("OverflowException"));
+        }
+        [Test]
+        [Category("Unit")]
+        public void IncorrectLength_Validationcode_Test()
+        {
+            var controller = new PlatnoscController();
+            var builder = new TestControllerBuilder();
+            builder.InitializeController(controller);
+            builder.Form.Add("MERCHANTNUMBER", "132");
+            builder.Form.Add("ORDERNUMBER", "1234");
+            builder.Form.Add("VALIDATIONCODE", "AAAaaa");
+            
+            var result = controller.Status() as ContentResult;
+            System.Diagnostics.Debug.WriteLine("1. Validationcode jest zbyt dlugi. Conajwyzej 3 znaki.");
+            System.Diagnostics.Debug.WriteLine("2. Contetnt: " + result.Content);
+            Assert.That(result.Content.Contains("SqlException"));
+        }
+        
+    }
+}
