public Respuesta AddTemplateElements([FromBody] TemplateElements templateElement)

        {
            Respuesta respuesta = new Respuesta();
            ResponseTemplateElements response = new ResponseTemplateElements();

            respuesta.resultado = 0;

            //respuesta.mensaje = Tools.VerifyToken(new Token() { usuario = USER, token = TOKEN }, 0);

            //if (respuesta.mensaje != "1") { return respuesta; }


            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["APIDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();


                    SqlCommand cmd = new SqlCommand("dbo.InsertTemplateElement", connection, transaction);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@IdLanding", templateElement.id_landing);
                    cmd.Parameters.AddWithValue("@IdElement", templateElement.id_element);
                    cmd.Parameters.AddWithValue("@Position", templateElement.position);
                    cmd.Parameters.AddWithValue("@Content", templateElement.content);

                    cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int)
                    {
                        Direction = ParameterDirection.ReturnValue
                    });

                    cmd.ExecuteNonQuery();
                    response.id         = (int)cmd.Parameters["@Id"].Value;
                    response.id_element = templateElement.id_element;
                    response.id_landing = templateElement.id_landing;
                    response.position   = templateElement.position;
                    response.content    = templateElement.content;


                    transaction.Commit();

                    respuesta.resultado = 1;
                    respuesta.mensaje   = "Operación exitosa";
                    respuesta.data      = response;
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }
            return(respuesta);
        }
        public Respuesta UpdateDataImage([FromBody] DataImage dataImage)

        {
            Respuesta respuesta = new Respuesta();
            ResponseTemplateElements response = new ResponseTemplateElements();

            respuesta.resultado = 0;

            //respuesta.mensaje = Tools.VerifyToken(new Token() { usuario = USER, token = TOKEN }, 0);

            //if (respuesta.mensaje != "1") { return respuesta; }
            Uri url = new Uri($"ftp://made.corporativorilea.com.mx/ImagesLanding/{dataImage.UrlOld}");

            DeleteFileOnServer(url);

            UploadFileOnServer(dataImage);


            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["APIDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();


                    SqlCommand cmd = new SqlCommand("dbo.UpdateTemplateElement", connection, transaction);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@Id", dataImage.id);
                    cmd.Parameters.AddWithValue("@IdLanding", dataImage.id_landing);
                    cmd.Parameters.AddWithValue("@IdElement", dataImage.id_element);
                    cmd.Parameters.AddWithValue("@Content", dataImage.content);


                    cmd.ExecuteNonQuery();
                    response.id         = dataImage.id;
                    response.id_element = dataImage.id_element;
                    response.id_landing = dataImage.id_landing;
                    response.content    = dataImage.content;
                    //response.content = $"http://made.corporativorilea.com.mx/ImagesLanding/{dataImage.Description}";

                    transaction.Commit();

                    respuesta.resultado = 1;
                    respuesta.mensaje   = "Operación exitosa";
                    respuesta.data      = response;
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }
            return(respuesta);
        }
        public Respuesta DeleteLandingPage([FromBody] LandingPage landing)

        {
            Respuesta respuesta = new Respuesta();
            ResponseTemplateElements response = new ResponseTemplateElements();

            respuesta.resultado = 0;

            //respuesta.mensaje = Tools.VerifyToken(new Token() { usuario = USER, token = TOKEN }, 0);

            //if (respuesta.mensaje != "1") { return respuesta; }


            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["APIDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();


                    SqlCommand cmd = new SqlCommand("dbo.DeleteLandingPage", connection, transaction);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@IdLanding", landing.id);

                    cmd.ExecuteNonQuery();

                    response.id = landing.id;

                    transaction.Commit();

                    respuesta.resultado = 1;
                    respuesta.mensaje   = "Operación exitosa";
                    respuesta.data      = response;
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }
            return(respuesta);
        }
        public Respuesta AddDataImage([FromBody] DataImage dataImage)

        {
            Respuesta respuesta = new Respuesta();
            ResponseTemplateElements response = new ResponseTemplateElements();

            respuesta.resultado = 0;

            //respuesta.mensaje = Tools.VerifyToken(new Token() { usuario = USER, token = TOKEN }, 0);

            //if (respuesta.mensaje != "1") { return respuesta; }
            HttpPostedFileBase objFile     = (HttpPostedFileBase) new MemoryPostedFile(dataImage.Multimedia);
            String             UploadImage = String.Format("{0}/{1}/{2}", "ftp://made.corporativorilea.com.mx", "ImagesLanding", dataImage.Description);
            FtpWebRequest      request     = (FtpWebRequest)WebRequest.Create(UploadImage);

            request.Credentials = new NetworkCredential("made", "n#65sl6P");
            request.Proxy       = null;
            request.KeepAlive   = true;
            request.UseBinary   = true;
            request.Method      = WebRequestMethods.Ftp.UploadFile;

            byte[] fileContents = dataImage.Multimedia;

            request.ContentLength = fileContents.Length;
            Stream requestStream = request.GetRequestStream();

            requestStream.Write(fileContents, 0, fileContents.Length);
            requestStream.Close();

            FtpWebResponse responseFtp = (FtpWebResponse)request.GetResponse();

            Debug.WriteLine("Upload File Complete, status {0}", responseFtp.StatusDescription);


            try
            {
                using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["APIDB"].ConnectionString))
                {
                    connection.Open();
                    SqlTransaction transaction = connection.BeginTransaction();


                    SqlCommand cmd = new SqlCommand("dbo.InsertTemplateElement", connection, transaction);
                    cmd.CommandType = CommandType.StoredProcedure;
                    cmd.Parameters.AddWithValue("@IdLanding", dataImage.id_landing);
                    cmd.Parameters.AddWithValue("@IdElement", dataImage.id_element);
                    //cmd.Parameters.AddWithValue("@Content", $"made.corporativorilea.com.mx/ImagesLanding/{dataImage.Description}");
                    cmd.Parameters.AddWithValue("@Content", dataImage.content);
                    cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int)
                    {
                        Direction = ParameterDirection.ReturnValue
                    });

                    cmd.ExecuteNonQuery();
                    response.id         = (int)cmd.Parameters["@Id"].Value;
                    response.id_element = dataImage.id_element;
                    response.id_landing = dataImage.id_landing;
                    //response.content = $"http://made.corporativorilea.com.mx/ImagesLanding/{dataImage.Description}";
                    response.content = dataImage.content;

                    transaction.Commit();

                    respuesta.resultado = 1;
                    respuesta.mensaje   = "Operación exitosa";
                    respuesta.data      = response;
                }
            }
            catch (Exception ex)
            {
                respuesta.resultado = 0;
                respuesta.mensaje   = ex.Message;
                respuesta.data      = ex;
            }
            return(respuesta);
        }