public Object EditRecord(Int64 TypeID)
        {
            PropertyTypeMaster _type = new PropertyTypeMaster();
            try
            {
                PropertyType type = DAL.DALPropertyType.EditPropertyType(Convert.ToInt32(TypeID));
                _type.ID = type.ID;

                if (!String.IsNullOrEmpty(type.PropertyType1))
                {
                    _type.PropertyType = type.PropertyType1;
                }

                if (type.ClientID != null)
                {
                    _type.ClientID = type.ClientID;
                }
                if (type.SiteID != null)
                {
                    _type.SiteID = type.SiteID;
                }

            }
            catch (Exception ex)
            {
                throw;
            }
            return _type;
        }
        public ActionResult Create(PropertyTypeMaster model)
        {
            if (Session["Login"] != null)
            {
                LoginSession loginsession = (LoginSession)Session["Login"];
                if (String.IsNullOrEmpty(model.PropertyType))
                {
                    ModelState.AddModelError("Property Type", "Please Enter Property Type");
                }
                if (ModelState.IsValid)
                {
                    try
                    {

                        model.CreateBy = Convert.ToInt64(loginsession.UserID);
                        if (PropertyTypeModel.CreatePropertyType(model))
                        {
                            return Json(new { result = 1, message = "Record was successfully Saved!" });
                        }
                        else
                        {
                            return Json(new { result = 0, message = "Duplicate  Name " });
                        }
                    }
                    catch (Exception ex)
                    {
                        return Json(new { result = 0, message = "ErrorMessage" + ":" + ex.StackTrace.ToString() });
                    }
                }
                else
                {
                    String errorMessage = String.Empty;
                    String exception = String.Empty;
                    foreach (var modelStateVal in ViewData.ModelState.Values)
                    {
                        foreach (var error in modelStateVal.Errors)
                        {
                            errorMessage = error.ErrorMessage;
                            exception = error.Exception.ToString();
                        }
                    }
                    return Json(new { result = 0, message = "ErrorMessage" + ":" + exception });
                }
            }
            else
            { return RedirectToAction("Index", "Home"); }
        }
        public ActionResult Edit(String Type_ID)
        {
            if (Session["Login"] != null)
            {
                LoginSession loginsession = (LoginSession)Session["Login"];
                ViewBag.CompanyLogo = loginsession.CompanyLogo;
                ViewBag.Layout1 = BAL.Common.LayoutType(loginsession.UserType);
                String actionName = this.ControllerContext.RouteData.Values["action"].ToString();
                String controllerName = this.ControllerContext.RouteData.Values["controller"].ToString();
                ViewBag.Menu = BAL.Common.GetActiveMenu(controllerName, actionName, BAL.Common.LayoutType(loginsession.UserType));
                ViewBag.RoleName = loginsession.RoleName;
                if (Type_ID != null)
                {
                    String Dec_TypeID = BAL.Security.URLDecrypt(Type_ID);
                    if ((Dec_TypeID != "0") && (Dec_TypeID != null))
                    {
                        PropertyTypeMaster type = new PropertyTypeMaster();
                        try
                        {
                            type = BAL.PropertyTypeModel.EditPropertyType(Dec_TypeID);
                            ViewBag.Type_ID = type.ID;

                            if (loginsession.ClientID != null)
                            {
                                if (type.ClientID != null)
                                {
                                    ViewBag.Client = new SelectList(BAL.ClientModel.ClientDropDownList(loginsession.ClientID), "Value", "Text", type.ClientID);
                                    ViewBag.ClientSelectID = type.ClientID;
                                }

                                if (type.SiteID != null)
                                {
                                    ViewBag.SiteSelectID = type.SiteID;
                                    ViewBag.Site = new SelectList(BAL.SiteModel.SiteDropDownList(loginsession.UserID.ToString(), Convert.ToInt64(type.ClientID), loginsession.UserType, loginsession.RoleName), "Value", "Text", type.SiteID);

                                }

                            }

                            else
                            {
                                if (type.ClientID != null)
                                {
                                    ViewBag.Client = new SelectList(BAL.ClientModel.ClientDropDownList(), "Value", "Text", type.ClientID);
                                    ViewBag.ClientSelectID = type.ClientID;
                                }
                                if (type.SiteID != null)
                                {
                                    ViewBag.SiteSelectID = type.SiteID;
                                    ViewBag.Site = new SelectList(BAL.SiteModel.SiteDropDownList(loginsession.UserID.ToString(), Convert.ToInt64(type.ClientID), loginsession.UserType, loginsession.RoleName), "Value", "Text", type.SiteID);

                                }

                            }//else

                        }
                        catch (Exception ex)
                        { return Content(ex.Message); }
                        return View(type);
                    }
                }
                {
                    return RedirectToAction("Index", "PropertyType");
                }
            }
            else
            { return RedirectToAction("Index", "Home"); }
        }
        public ActionResult Update(PropertyTypeMaster model)
        {
            if (Session["Login"] != null)
            {
                if (ModelState.IsValid)
                {
                    try
                    {
                        LoginSession loginsession = (LoginSession)Session["Login"];
                        model.modifyBy = Convert.ToInt64(loginsession.UserID);
                        if (PropertyTypeModel.UpdatePropertyType(model))
                        {
                            return RedirectToAction("Index", "PropertyType");
                        }
                        else
                        {
                            // return Json(new { result = 0, message = "Duplicate Currency Name " });
                            return Content("Unable to save , try again");

                        }
                    }
                    catch (Exception ex)
                    {
                        return Content("ErrorMessage" + ":" + ex.StackTrace.ToString());
                    }
                }
                else
                {
                    String errorMessage = String.Empty;
                    String exception = String.Empty;
                    foreach (var modelStateVal in ViewData.ModelState.Values)
                    {
                        foreach (var error in modelStateVal.Errors)
                        {
                            errorMessage = error.ErrorMessage;
                            exception = error.Exception.ToString();
                        }
                    }
                    return Content("ErrorMessage" + ":" + exception);
                }
            }
            else
            { return RedirectToAction("Index", "Home"); }
        }
 public static bool UpdatePropertyType(PropertyTypeMaster Type)
 {
     Boolean flag = false;
     try
     {
         Icontext objinter = new BALPropertyType();
         flag = objinter.UpdateRecord(Type);
     }
     catch (Exception ex)
     {
         throw;
     }
     return flag;
 }