public ActionResult Create(CallTariffViewModel viewModel)
        {
            if (!ModelState.IsValid) { return View(viewModel); }

            CallTariff callTariff = Mapper.Map<CallTariff>(viewModel);
            ServiceResult result = _callTarifService.AddCallTariff(callTariff);

            if (!result.IsValid)
            {
                result.Errors.ToList().ForEach(x => ModelState.AddModelError(x.Key.ToString(), x.Value));
                return View();
            }

            TempData["message"] = "Call Tarifs has been added";
            return RedirectToAction("Index");
        }
        public ActionResult Edit(CallTariffViewModel viewModel)
        {
            if (viewModel == null) { return new HttpStatusCodeResult(HttpStatusCode.BadRequest); }
            if (!ModelState.IsValid) { return View(viewModel); }
            CallTariff callTariff = _callTarifService.GetCallTariff(viewModel.ID);

            //http://stackoverflow.com/questions/5538974/the-relationship-could-not-be-changed-because-one-or-more-of-the-foreign-key-pro
            callTariff.CallTariffItems.ToList().ForEach(x => { callTariff.CallTariffItems.Remove(x); _callTarifService.RemoveCallTariff(x); });

            Mapper.Map(viewModel, callTariff);
            ServiceResult result = _callTarifService.UpdateCallTariff(callTariff);
            if (!result.IsValid)
            {
                result.Errors.ToList().ForEach(x => ModelState.AddModelError(x.Key.ToString(), x.Value));
                return View();
            }

            TempData["message"] = "Status has been edited";
            return RedirectToAction("Index");
        }