public ActionResult GetObjectByHash(string hash)
        {
            JsonMessage jm = new JsonMessage();

            try
            {
                if (hash == "" || hash == null)
                {
                    jm.Object = ConstructorToJson(constructor);
                }
                else
                {
                    ConstructorModel _constructor = new ConstructorModel();
                    PaletteModel _palette = new PaletteModel();
                    ParseQueryString(hash, _constructor, _palette);
                    jm.Object = ConstructorToJson(_constructor, _palette);
                }
                jm.Result = true;
                jm.Message = "Операция выполнена успешно";
            }
            catch (Exception ex)
            {
                jm.Result = false;
                jm.Message = ex.Message;
            }

            return Json(jm);
        }
        public ActionResult UpdateCloth(int SelectedClothID)
        {
            JsonMessage jm = new JsonMessage();

            try
            {
                palette.SetClothById(SelectedClothID);
                constructor.Model.SetHeight(constructor.Model.Height);

                jm.Result = true;
                jm.Message = "Операция выполнена успешно";
            }
            catch (Exception ex)
            {
                jm.Result = false;
                jm.Message = ex.Message;
            }

            jm.Object = ConstructorToJson(constructor);

            Response.Cache.SetExpires(new DateTime(1980, 11, 11));
            Response.Cache.SetLastModified(DateTime.Parse("1/1/2001 00:00:01AM"));
            Response.Cache.SetNoStore();

            return Json(jm);
        }
        public ActionResult UpdateWidth(double Width)
        {
            JsonMessage jm = new JsonMessage();

            try
            {
                constructor.Model.SetWidth(Width);

                jm.Result = true;
                jm.Message = "Операция выполнена успешно";
            }
            catch (Exception ex)
            {
                jm.Result = false;
                jm.Message = ex.Message;
                if (ex is System.ArgumentException)
                {
                    jm.HelpURL = "/Constructor/Measurement/#width";
                }
            }

            jm.Object = ConstructorToJson(constructor);

            Response.Cache.SetExpires(new DateTime(1980, 11, 11));
            Response.Cache.SetLastModified(DateTime.Parse("1/1/2001 00:00:01AM"));
            Response.Cache.SetNoStore();

            return Json(jm);
        }
        public ActionResult UpdateMagnet(bool SelectedUseMagnet)
        {
            JsonMessage jm = new JsonMessage();

            try
            {
                constructor.Model.UseMagnet = SelectedUseMagnet;

                jm.Result = true;
                jm.Message = "Операция выполнена успешно";
            }
            catch (Exception ex)
            {
                jm.Result = false;
                jm.Message = ex.Message;
            }

            jm.Object = ConstructorToJson(constructor);

            Response.Cache.SetExpires(new DateTime(1980, 11, 11));
            Response.Cache.SetLastModified(DateTime.Parse("1/1/2001 00:00:01AM"));
            Response.Cache.SetNoStore();

            return Json(jm);
        }