Index: branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineItemController.cs
===================================================================
--- branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineItemController.cs (revision 839)
+++ branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineItemController.cs (revision 854)
@@ -6,4 +6,6 @@
 using Wierszowki.Services;
 using xVal.ServerSide;
+using System.Collections.Generic;
+using Wierszowki.Core.Interfaces;
 
 namespace Wierszowki.Controllers
@@ -40,5 +42,5 @@
             try
             {
-                _service.Create(magazineItem, ControllerContext.HttpContext.User.Identity.Name);                            
+                _service.Create(magazineItem, ControllerContext.HttpContext.User.Identity.Name);
                 ModelState.Clear();
             }
@@ -47,13 +49,22 @@
                 ex.AddModelStateErrors(ModelState, "magazineItem");
             }
-           
+
             if (ModelState.IsValid)
             {
-                return RedirectToAction("Confirm", _context.Authors.Single(a => a.Id == magazineItem.AuthorId));
-            }
+                Info inf = InitInfo("1", 0, 0, 0);
+                var confirmViewData = new ConfirmViewData();
+                confirmViewData = InitConfirmViewData(_context.Authors.Single(a => a.Id == magazineItem.AuthorId), OperationType.Create, inf);
+                return View("Confirm", confirmViewData);
+            }
+            var magazine = _service.Find(magazineItem.Id);
             var viewData = InitMagazineItemViewData();
             viewData.MagazineItem = magazineItem;
-            
-            return View(viewData); 
+            if (magazineItem.IssueId != 0)
+            {
+                viewData.Issue = _context.Issues.Single(i => i.Id == magazineItem.IssueId);
+                viewData.Magazine = viewData.Issue.Magazine;
+                viewData.IssueList = new SelectList(_context.FindIssuesByMagazineItemId(magazineItem.IssueId, 0), "Id", "Number");
+            }
+            return View(viewData);
         }
 
@@ -65,28 +76,60 @@
 
         [Authorize]
-        public ActionResult Edit(int id)
-        {
-            var viewData = InitMagazineItemViewData();
-            var magazineItem = _service.Find(id);
+        public ActionResult Edit(string id, string powrot, string month, string year, string user_id)
+        {
+            int id1 = 0;
+            int month1 = (month != null) ? Convert.ToInt32(month) : 0;
+            int year1 = (year != null) ? Convert.ToInt32(year) : 0;
+            int user1 = (user_id != null) ? Convert.ToInt32(user_id) : 0;
+            try
+            {
+                id1 = (id != null) ? Convert.ToInt32(id) : 0;
+            }
+            catch
+            {
+            }
+            var viewData = InitMagazineItemViewData();
+            var magazineItem = _service.Find(id1);
 
             if (magazineItem == null)
             {
-                ViewData["message"] = "null";
-                return View("Confirm");
-            }
-
+                Info inf = InitInfo(powrot, month1, year1, user1);
+                var confirmViewData = new ConfirmViewData();
+
+                if (id != "")     //nie znaleziono w bazie wierszowki o zadanym id
+                {
+                    confirmViewData = InitConfirmViewData(null, OperationType.WrongId, inf);
+                }
+                else              //nie podano numeru id
+                {
+                    confirmViewData = InitConfirmViewData(null, OperationType.NullId, null);
+                }
+                return View("Confirm", confirmViewData);
+            }
             viewData.MagazineItem = magazineItem;
             viewData.Magazine = magazineItem.Issue.Magazine;
             viewData.Issue = magazineItem.Issue;
-            viewData.IssueList = new SelectList(_context.FindIssuesByMagazineItemId(magazineItem.Issue.Id), "Id", "Number");
+            viewData.Info = InitInfo(powrot, month1, year1, user1);
+
+            var startDate = DateTime.Now.AddMonths(-3);
+            var endDate = DateTime.Now.AddMonths(1);
+            var issueList = _context.GetIssue().Where(i => i.Date >= startDate && i.Date <= endDate && i.MagazineId == magazineItem.Issue.MagazineId).OrderBy(i => i.Date).ToList();
+
+            int start_number = issueList[0].Number;
+            int AddId = 0;
+            if (magazineItem.Issue.Number < start_number)
+            {
+                viewData.SmallerMagazineNumber = 1;
+                AddId = magazineItem.Issue.Id;
+            }
+            viewData.IssueList = new SelectList(_context.FindIssuesByMagazineItemId(magazineItem.Issue.Id, AddId), "Id", "Number");
             return View(viewData);
         }
         [Authorize]
         [AcceptVerbs(HttpVerbs.Post)]
-        public ActionResult Update(MagazineItem magazineItem)
-        {
-            try
-            {
-                //var service = new MagazineItemService();
+        public ActionResult Update(MagazineItem magazineItem, Info info)
+        {
+            try
+            {
                 _service.Update(magazineItem, ControllerContext.HttpContext.User.Identity.Name);
                 ModelState.Clear();
@@ -99,41 +142,86 @@
             if (ModelState.IsValid)
             {
-                var author = _context.Authors.Single(a => a.Id == magazineItem.AuthorId);
-                return RedirectToAction("Confirm", author);               
-            }
-            var viewData = InitMagazineItemViewData();
-            viewData.MagazineItem = magazineItem;
-            return View(viewData);            
-        }
-
+                var confirmViewData = new ConfirmViewData();
+                confirmViewData = InitConfirmViewData(_context.Authors.Single(a => a.Id == magazineItem.AuthorId), OperationType.Update, info);
+                return View("Confirm", confirmViewData);
+            }
+            var magazine = _service.Find(magazineItem.Id);
+            var viewData = InitMagazineItemViewData();
+            viewData.Info = info;
+            viewData.MagazineItem = magazine;
+            if (magazineItem.IssueId != 0)
+            {
+                viewData.Issue = _context.Issues.Single(i => i.Id == magazine.IssueId);
+                viewData.Magazine = magazine.Issue.Magazine;
+                viewData.IssueList = new SelectList(_context.FindIssuesByMagazineItemId(magazine.Issue.Id, 0), "Id", "Number");
+            }
+            return View("Edit", viewData);
+        }
+        private Info InitInfo(string p, int m, int y, int u)
+        {
+            Info inf = new Info();
+            inf.powrot = p;
+            inf.month = m;
+            inf.year = y;
+            inf.user_id = u;
+            return inf;
+        }
         private MagazineItemViewData InitMagazineItemViewData()
         {
             var viewData = new MagazineItemViewData
-                               {
-                                   MagazineItem = new MagazineItem(),
-                                   AuthorList = new SelectList(_context.Authors.ToList(), "Id", "FullName"),
-                                   MagazineList = new SelectList(_context.Magazines.ToList(), "Id", "NickName"),
-                                   IssueList = new SelectList(_context.FindIssuesByMagazineId(0), "Id", "Name"),
-                                   ItemTypeList = new SelectList(_context.ItemTypes.ToList(), "Id", "Name")
-                               };
+            {
+                MagazineItem = new MagazineItem(),
+                AuthorList = new SelectList(_context.Authors.OrderBy(a => a.LastName).ToList(), "Id", "FullName"),
+                MagazineList = new SelectList(_context.Magazines.ToList(), "Id", "NickName"),
+                IssueList = new SelectList(_context.FindIssuesByMagazineId(0, 0), "Id", "Name"),
+                ItemTypeList = new SelectList(_context.ItemTypes.ToList(), "Id", "Name"),
+                SmallerMagazineNumber = 0,
+                Info = new Info()
+            };
             return viewData;
         }
         [Authorize]
-        public ActionResult Delete(int id)
-        {
-            return View("Delete");
+        public ActionResult Delete(string id, string powrot, string month, string year, string user_id)
+        {
+            int id1 = 0;
+            try
+            {
+                id1 = (id != null) ? Convert.ToInt32(id) : 0;
+            }
+            catch
+            {
+            }
+            var deleteViewData = new DeleteViewData();            
+            int month1 = (month != null) ? Convert.ToInt32(month) : 0;
+            int year1 = (year != null) ? Convert.ToInt32(year) : 0;
+            int user1 = (user_id != null) ? Convert.ToInt32(user_id) : 0;
+            deleteViewData.Info = InitInfo(powrot, month1, year1, user1);
+            return View("Delete", deleteViewData);
     }
         [Authorize]
         [AcceptVerbs(HttpVerbs.Post)]
-        public ActionResult Delete(MagazineItem magazineItem)
-        {
-            _service.Delete(magazineItem);   
-            if (magazineItem.AuthorId == 0){
-                ViewData["message"] = "null";
-                return View("Confirm");
-            }                                        
-            ViewData["message"] = "delete";
-            return View("Confirm");
-           
+        public ActionResult Delete(MagazineItem magazineItem, Info info)
+        {
+            var magazineItemToDelete = _service.Delete(magazineItem);
+            var confirmViewData = new ConfirmViewData();
+            if (magazineItemToDelete == null)
+            {
+                confirmViewData = InitConfirmViewData(null, OperationType.WrongId, info);
+            }
+            else
+            {
+                confirmViewData = InitConfirmViewData(magazineItemToDelete.Author, OperationType.Delete, info);
+            }
+            return View("Confirm", confirmViewData);
+        }
+        private ConfirmViewData InitConfirmViewData(Author author, OperationType c_type, Info inf)
+        {
+            var viewData = new ConfirmViewData
+            {
+                Author = author,
+                akcja = c_type,
+                info = inf
+            };
+            return viewData;
         }
     }
Index: branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineController.cs
===================================================================
--- branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineController.cs (revision 752)
+++ branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/MagazineController.cs (revision 854)
@@ -25,5 +25,5 @@
                 magazineId = id.Value;
 
-            var issues = _context.FindIssuesByMagazineId(magazineId);
+            var issues = _context.FindIssuesByMagazineId(magazineId,0);
 
             var selectListItems = new List<SelectListItem>
Index: branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/ReportController.cs
===================================================================
--- branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/ReportController.cs (revision 839)
+++ branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/ReportController.cs (revision 854)
@@ -8,4 +8,5 @@
 using Wierszowki.Core.Linq;
 using Wierszowki.Models;
+using System.Globalization;
 
 namespace Wierszowki.Controllers
@@ -35,9 +36,9 @@
 
             var viewData = new ReportViewData
-                               {
-                                   Authors = _context.GetAuthors().OrderBy(a => a.FullName).ToList(),
-                                   EmploymentTypeList =  new SelectList(_context.GetEmploymentTypes().ToList(),"Id","Name"),
-                                   UserList = new SelectList(_context.GetUsers().OrderBy(u => u.FirstName).ToList(),"Id","FullName")
-                               };
+            {
+                Authors = _context.GetAuthors().OrderBy(a => a.FullName).ToList(),
+                EmploymentTypeList =  new SelectList(_context.GetEmploymentTypes().ToList(),"Id","Name"),
+                UserList = new SelectList(_context.GetUsers().OrderBy(u => u.FullName).ToList(),"Id","FullName")
+            };
             return View(viewData);
         }
@@ -45,13 +46,75 @@
         public ActionResult All(int year, int month, int user)
         {
-            var items = _repository.Find(m => m.Date.Month == month && m.Date.Year == year && m.CreatedBy == user)
+            var allViewData = new AllViewData();
+            string error = "";
+            string naglowek = "";
+            
+            if (user <= 0)
+            {
+                error = "Nie mo¿na wywietliæ wierszówek. Spróbuj jeszcze raz. ";
+                allViewData = InitAllViewData("", error, null, null);
+                return View("Error",allViewData);
+            }
+            var name = "";
+            var items = new List<MagazineItem>();
+            if (user > 0)
+            {
+                var u = _context.GetUserById(user);
+                if (u != null)
+                {
+                    name = u.FullName;
+                    items = _repository.Find(m => m.Date.Month == month && m.Date.Year == year && m.CreatedBy == user)
                                    .OrderByDescending(m => m.UpdatedOn).ToList();
-            return View(items);
+
+                    if (items.Count <= 0)
+                    {
+                        error = "Brak wierszówek dla tego u¿ytkownika.";
+                        allViewData = InitAllViewData("", error, null, null);
+                        return View("Error", allViewData);
+                    }
+                }
+                else
+                {
+                    //U¿ytkownik bo taki nie istnieje 
+                    error = "Nie mo¿na wyswietliæ wierszówek, gdy¿ u¿ytkownik nie istnieje. ";
+                    allViewData = InitAllViewData("", error, null, null);
+                    return View("Error", allViewData);   
+                }
+                DateTime dat = new DateTime(1, 1, 1);
+                dat = dat.AddYears(year-1);
+                dat = dat.AddMonths(month-1);
+               
+                naglowek = "<div class='st1'>Wierszówki z " + dat.ToString("MM/yyyy", CultureInfo.CreateSpecificCulture("en-US")) + "</div>";
+                if ( name != "")
+                {
+                    naglowek += "<div class='st1'>Wprowadzaj¹cy: <span>" + name + "</span></div>";
+                }
+            }
+            Info inf = new Info();
+            inf.powrot = "2";
+            inf.month = month;
+            inf.year = year;
+            inf.user_id = user;
+
+            allViewData = InitAllViewData(naglowek, error, inf, items);
+            return View("All", allViewData); 
         }
 
         public ActionResult ToPrice()
         {
+            string naglowek = "Wierszówki do wyceny";
+            string  error = "";
+            var allViewData = new AllViewData();
+            Info inf = new Info();
+            inf.powrot = "1";
             var items = _repository.Find(m => m.Price <= 0).ToList();
-            return View("All", items);
+            if ( items.Count <= 0  )
+            {
+                error = "Brak wierszówek do wyceny.";
+                allViewData = InitAllViewData(naglowek, error, null, null);
+                return View("Error", allViewData);  
+            }
+            allViewData = InitAllViewData(naglowek, "", inf, items);
+            return View("All", allViewData);
         }
 
@@ -69,9 +132,9 @@
             
             var viewData = new AuthorCardViewData
-                               {
-                                   FullName = magazineItems[0].Author.FullName,
-                                   Date = magazineItems[0].Date,
-                                   MagazineItems = new Dictionary<string, List<MagazineItem>>()
-                               };
+            {
+                FullName = magazineItems[0].Author.FullName,
+                Date = magazineItems[0].Date,
+                MagazineItems = new Dictionary<string, List<MagazineItem>>()
+            };
             foreach (var magazineItem in magazineItems)
             {
@@ -123,4 +186,15 @@
             return View("AuthorsByMagazines", viewData);
         }
+        private AllViewData InitAllViewData(string str, string er, Info inf, List<MagazineItem> list)
+        {
+            var viewData = new AllViewData
+            {
+                naglowek = str,
+                error = er,
+                info = inf,
+                magazine = list
+            };
+            return viewData;
+        }  
     }
 }
Index: branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/UserController.cs
===================================================================
--- branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/UserController.cs (revision 839)
+++ branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/UserController.cs (revision 854)
@@ -1,2 +1,3 @@
+using System;
 using System.Linq;
 using System.Web.Mvc;
@@ -6,4 +7,6 @@
 using Wierszowki.Services.Interfaces;
 using xVal.ServerSide;
+using Wierszowki.Models;
+using System.Collections.Generic;
 
 namespace Wierszowki.Controllers
@@ -52,6 +55,9 @@
 
             if (ModelState.IsValid)
-                return View("Confirm", user);
-
+            {
+                var userConfirmViewData = new UserConfirmViewData();
+                userConfirmViewData = InitUserConfirmViewData("Potwierdzenie dodania u¿ytkownika", "", OperationType.Create, user);   
+                return View("Confirm", userConfirmViewData);
+            }
             return View(user);
         }
@@ -62,4 +68,5 @@
             return View(user);
         }
+
         [Authorize]
         [AcceptVerbs(HttpVerbs.Get)]
@@ -67,9 +74,10 @@
         {
             User user = _service.Find(id);
+            string errorInfo = "";
             if (user != null)
             {
                 string name = ControllerContext.HttpContext.User.Identity.Name;
                 var LogInUser = _service.FindOne(u => u.Login == name);
-                if (LogInUser.Id == user.Id)
+                if (LogInUser.Id == user.Id || LogInUser.Id == 1)
                 {
             return View(_service.Find(id));
@@ -77,11 +85,14 @@
                 else
                 {
-                    ViewData["message"] = "error_user";
-                    return View("Confirm"); 
+                    var userConfirmViewData = new UserConfirmViewData();
+                    errorInfo = "Nie mo¿na edytowaæ u¿ytkownika, gdy¿ login ró¿ni siê od zalogowanego!!!";
+                    userConfirmViewData = InitUserConfirmViewData("Edycja u¿ytkownika", errorInfo, OperationType.ErrorLogin, null);
+                    return View("Confirm", userConfirmViewData);                    
                 }
-
             }
-            ViewData["message"] = "error";
-            return View("Confirm");          
+            var userConfirmViewData1 = new UserConfirmViewData();
+            errorInfo = "Nie mo¿na edytowaæ u¿ytkownika, gdy¿ u¿ytkownik o takim id nie istnieje !!!";
+            userConfirmViewData1 = InitUserConfirmViewData("Edycja u¿ytkownika", errorInfo, OperationType.ErrorUser, null);
+            return View("Confirm", userConfirmViewData1);                 
         }
 
@@ -101,8 +112,21 @@
 
             if (ModelState.IsValid)
-                return View("Confirm", user);
-
-
+            {
+                var userConfirmViewData = new UserConfirmViewData();
+                userConfirmViewData = InitUserConfirmViewData("Potwierdzenie edycji u¿ytkownika", "", OperationType.Update, user);
+                return View("Confirm", userConfirmViewData); 
+            }
             return View(user);
+        }
+        private UserConfirmViewData InitUserConfirmViewData(string naglowek, string error, OperationType u_type, User user)
+        {
+            var viewData = new  UserConfirmViewData
+            {
+                Naglowek = naglowek,
+                ErrorInfo= error,
+                Akcja  = u_type,
+                User = user
+            };
+            return viewData;        
         }
     }
Index: branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/AuthorController.cs
===================================================================
--- branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/AuthorController.cs (revision 752)
+++ branches/Abonament/Wierszowki/Wierszowki.Web/Controllers/AuthorController.cs (revision 854)
@@ -5,4 +5,6 @@
 using Wierszowki.Services;
 using xVal.ServerSide;
+using System.Collections.Generic;
+using Wierszowki.Core.Interfaces;
 
 namespace Wierszowki.Controllers
@@ -28,8 +30,8 @@
         {
             var authorViewData = new AuthorViewData
-                                     {
-                                         Author = new Author(),
-                                         EmploymentTypeList = new SelectList(_context.GetEmploymentTypes().ToList(), "Id", "Name")
-                                     };
+            {
+                Author = new Author(),
+                EmploymentTypeList = new SelectList(_context.GetEmploymentTypes().ToList(), "Id", "Name")
+            };
 
             return View(authorViewData);
@@ -51,5 +53,10 @@
 
             if (ModelState.IsValid)
-                return RedirectToAction("Confirm", author);
+            {
+                var confirmViewData = new ConfirmViewData();
+                confirmViewData = InitConfirmViewData(author, OperationType.Create, null);
+                return View("Confirm", confirmViewData); 
+                //return RedirectToAction("Confirm", author);
+            }
 
 
@@ -74,8 +81,8 @@
         {
             var authorViewData = new AuthorViewData
-                     {
-                         Author = _context.GetAuthorById(id),
-                         EmploymentTypeList = new SelectList(_context.GetEmploymentTypes().ToList(), "Id", "Name")
-                     };
+            {
+                Author = _context.GetAuthorById(id),
+                EmploymentTypeList = new SelectList(_context.GetEmploymentTypes().ToList(), "Id", "Name")
+            };
 
             return View(authorViewData);
@@ -97,6 +104,9 @@
 
             if (ModelState.IsValid)
-                return View("Confirm", author);
-
+            {
+                var confirmViewData = new ConfirmViewData();
+                confirmViewData = InitConfirmViewData(author, OperationType.Update, null);
+                return View("Confirm", confirmViewData); 
+            }
             var authorViewData = new AuthorViewData
             {
@@ -107,4 +117,14 @@
             return View(authorViewData);
         }
+        private ConfirmViewData InitConfirmViewData(Author author, OperationType c_type, Info inf)
+        {
+            var viewData = new ConfirmViewData
+            {
+                Author = author,
+                akcja = c_type,
+                info = inf
+            };
+            return viewData;
+        }
     }
 }
