Esempio n. 1
0
        public int Save(CLayer.PropertyFiles file)
        {
            List <DataPlug.Parameter> param = new List <DataPlug.Parameter>();

            param.Add(Connection.GetParameter("pFileId", DataPlug.DataType._BigInt, file.FileId));
            param.Add(Connection.GetParameter("pPropertyId", DataPlug.DataType._BigInt, file.PropertyId));
            param.Add(Connection.GetParameter("pFileName", DataPlug.DataType._Varchar, file.FileName));
            //param.Add(Connection.GetParameter("pFileType", DataPlug.DataType._Int, file.FileType));
            object result = Connection.ExecuteQueryScalar("propertyfiles_Save", param);

            return(Connection.ToInteger(result));
        }
Esempio n. 2
0
        public CLayer.PropertyFiles Get(long fileId)
        {
            CLayer.PropertyFiles      file  = null;
            List <DataPlug.Parameter> param = new List <DataPlug.Parameter>();

            param.Add(Connection.GetParameter("pFileId", DataPlug.DataType._BigInt, fileId));
            DataTable dt = Connection.GetTable("propertyfiles_Get", param);

            if (dt.Rows.Count > 0)
            {
                file            = new CLayer.PropertyFiles();
                file.FileId     = Connection.ToLong(dt.Rows[0]["FileId"]);
                file.PropertyId = Connection.ToLong(dt.Rows[0]["PropertyId"]);
                file.FileName   = Connection.ToString(dt.Rows[0]["FileName"]);
                //file.FileType = Connection.ToInteger(dt.Rows[0]["FileType"]);
            }
            return(file);
        }
 public ActionResult PictureDelete(long id)
 {
     try
     {
         CLayer.PropertyFiles pf = BLayer.PropertyFiles.Get(id);
         BLayer.PropertyFiles.Delete(id);
         if (System.IO.File.Exists(Server.MapPath("~/Files/Property/" + pf.PropertyId.ToString() + "/" + pf.FileName)))
         {
             System.IO.File.Delete(Server.MapPath("~/Files/Property/" + pf.PropertyId.ToString() + "/" + pf.FileName));
         }
         Models.PropertyModel property = GetDetails(pf.PropertyId);
         property.ActiveTab = "gallery";
         return(View("Index", property));
         //return RedirectToAction("Index", new { id = pf.PropertyId });
     }
     catch (Exception ex)
     {
         Common.LogHandler.HandleError(ex);
         return(Redirect("~/ErrorPage"));
     }
 }
Esempio n. 4
0
 public static int Save(CLayer.PropertyFiles file)
 {
     DataLayer.PropertyFiles pf = new DataLayer.PropertyFiles();
     file.Validate();
     return(pf.Save(file));
 }
        public ActionResult PictureSave(Models.PropertyPicturesModel data)
        {
            try
            {
                if (ModelState.IsValid)
                {//.....ImageFile resize save new
                    #region Save
                    string FileNamePart         = data.PropertyId.ToString() + DateTime.Now.ToString("ddMMyyyyHHmmss");
                    CLayer.PropertyFiles prprty = new CLayer.PropertyFiles()
                    {
                        PropertyId = data.PropertyId,
                        FileId     = data.FileId,
                        FileName   = FileNamePart + System.IO.Path.GetFileNameWithoutExtension(data.photo.FileName) + ".jpg"
                    };

                    if (data.photo != null && data.photo.ContentLength > 0)
                    {
                        int Sizevalue        = Convert.ToInt32(ConfigurationManager.AppSettings.Get("FileUploadSizeInMB"));
                        int MaxContentLength = 1024 * 1024 * Sizevalue; //3 MB

                        string[] AllowedFileExtensions = new string[] { ".jpg", ".gif", ".png", ".jpeg" };
                        if (!AllowedFileExtensions.Contains(data.photo.FileName.Substring(data.photo.FileName.LastIndexOf('.'))))
                        {
                            ModelState.AddModelError(string.Empty, "Please use files of type: " + string.Join(", ", AllowedFileExtensions));
                        }
                        else if (data.photo.ContentLength > MaxContentLength)
                        {
                            ModelState.AddModelError(string.Empty, "Your file is too large, maximum allowed size is: " + MaxContentLength + " MB");
                        }
                        else
                        {
                            var fileName = FileNamePart + System.IO.Path.GetFileName(data.photo.FileName); //uploaded file from UI

                            if (!System.IO.Directory.Exists(Server.MapPath("~/Files/Temp/")))
                            {
                                System.IO.Directory.CreateDirectory(Server.MapPath("~/Files/Temp/"));
                            }
                            var path = System.IO.Path.Combine(Server.MapPath("~/Files/Temp/"), fileName);
                            data.photo.SaveAs(path);


                            int   maxHeight = Convert.ToInt32(ConfigurationManager.AppSettings.Get("MaxImgHeight"));
                            Image tempimage = Image.FromFile(path);

                            Image resized = Common.Utils.ScaleImage(tempimage, maxHeight);

                            // var  = prprty.FileName;// DateTime.Now.ToString("ddMMyyyyHHmmss") + System.IO.Path.GetFileName(data.photo.FileName);
                            if (!System.IO.Directory.Exists(Server.MapPath("~/Files/Property/" + data.PropertyId.ToString() + "/")))
                            {
                                System.IO.Directory.CreateDirectory(Server.MapPath("~/Files/Property/" + data.PropertyId.ToString() + "/"));
                            }
                            var path2 = System.IO.Path.Combine(Server.MapPath("~/Files/Property/" + data.PropertyId.ToString() + "/"), prprty.FileName);
                            resized.Save(path2, System.Drawing.Imaging.ImageFormat.Jpeg);
                            try
                            {
                                resized.Dispose();
                                tempimage.Dispose();
                                if (System.IO.File.Exists(path))
                                {
                                    System.IO.File.Delete(path);
                                }
                            }
                            catch
                            {
                            }
                            BLayer.PropertyFiles.Save(prprty);
                            ModelState.Clear();
                        }
                    }
                    #endregion
                    Models.PropertyModel property = GetDetails(data.PropertyId);
                    property.ActiveTab = "gallery";
                    return(View("Index", property));
                }
                return(Redirect("~/ErrorPage"));
            }
            catch (Exception ex)
            {
                Common.LogHandler.HandleError(ex);
                return(Redirect("~/ErrorPage"));
            }
        }
Esempio n. 6
0
        private List <CLayer.PropertyFiles> GetGDSImages(string response, long id)
        {
            List <CLayer.PropertyFiles> picturelist = new List <CLayer.PropertyFiles>();
            XmlDocument xmlDoc = new XmlDocument();
            string      a      = string.Empty;

            //  List<CLayer.PropertyFiles> pictureslist = new List<CLayer.PropertyFiles>();
            try
            {
                // xmlDoc.Load(@"F:\HotelDescriptiveIno.xml");
                xmlDoc.LoadXml(response);
                XmlNamespaceManager xmlnsManager    = new System.Xml.XmlNamespaceManager(xmlDoc.NameTable);
                XmlNode             node            = null;
                XmlNode             nodeImages      = null;
                XmlNode             nodeguestImages = null;

                string nodeRoot           = "/soapenv:Envelope/soapenv:Body/";
                string nodevalue          = "/si:OTA_HotelDescriptiveInfoRS/si:HotelDescriptiveContents/si:HotelDescriptiveContent/si:HotelInfo/si:Descriptions";                                    //"/si:MultimediaDescriptions/si:MultimediaDescription/si:ImageItems/si:ImageItem/si:ImageFormat/si:URL";
                string nodevalueguestroom = "/si:OTA_HotelDescriptiveInfoRS/si:HotelDescriptiveContents/si:HotelDescriptiveContent/si:HotelInfo/si:CategoryCodes/si:CategoryCodes/si:GuestRoomInfo"; //si:MultimediaDescriptions/si:MultimediaDescription/si:ImageItems/si:ImageItem/si:ImageFormat/si:URL";

                xmlnsManager.AddNamespace("soapenv", "http://schemas.xmlsoap.org/soap/envelope/");
                xmlnsManager.AddNamespace("awsse", "http://xml.amadeus.com/2010/06/Session_v3");
                xmlnsManager.AddNamespace("wsa", "http://www.w3.org/2005/08/addressing");
                xmlnsManager.AddNamespace("si", "http://www.opentravel.org/OTA/2003/05");

                nodeImages      = xmlDoc.SelectSingleNode(nodeRoot + nodevalue, xmlnsManager);
                nodeguestImages = xmlDoc.SelectSingleNode(nodeRoot + nodevalueguestroom, xmlnsManager);

                #region MAIN IMAGES
                if (nodeImages != null)
                {
                    XmlNodeList list         = nodeImages.SelectNodes("//si:MultimediaDescriptions/si:MultimediaDescription", xmlnsManager);
                    int         PictureCount = 0;
                    int         nodes        = 0;
                    if (list != null)
                    {
                        foreach (XmlNode item in list)
                        {
                            var subItem = item.SelectNodes("//si:ImageItems", xmlnsManager);
                            if (subItem != null)
                            {
                                foreach (XmlNode sItem in subItem)
                                {
                                    IEnumerable <XmlNode> subInnerItem = sItem.SelectNodes("//si:ImageItem", xmlnsManager).Cast <XmlNode>().OrderByDescending(r => Convert.ToDateTime(r.Attributes["LastModifyDateTime"].Value));
                                    // IEnumerable<XmlNode> subInnerItem = sItem.SelectNodes("//si:ImageItem/si:ImageFormat[@DimensionCategory='E']", xmlnsManager).Cast<XmlNode>().OrderByDescending(r => Convert.ToDecimal(r.Attributes["LastModifyDateTime"].Value));
                                    if (subInnerItem != null)
                                    {
                                        foreach (XmlNode sItem1 in subInnerItem)
                                        {
                                            var subUrlItem = sItem1.SelectNodes("//si:ImageItem/si:ImageFormat[@DimensionCategory='E']", xmlnsManager);
                                            if (subUrlItem != null)
                                            {
                                                PictureCount = subInnerItem.Count();
                                                foreach (XmlNode UItem in subUrlItem)
                                                {
                                                    var UrlItem = UItem.ChildNodes[0].InnerText;  //url

                                                    bool bImageExists = true;
                                                    if (!string.IsNullOrEmpty(UrlItem))
                                                    {
                                                        bImageExists = APIUtility.DoesImageExistRemotely(UrlItem);
                                                    }

                                                    if (bImageExists)
                                                    {
                                                        CLayer.PropertyFiles picture = new CLayer.PropertyFiles();
                                                        picture.FileName   = UrlItem;// itemimg.ImageFormat.Where(x => x.DimensionCategory == "E").ToList()[0].URL;
                                                        picture.PropertyId = id;
                                                        picture.IsValid    = true;
                                                        picturelist.Add(picture);
                                                        BLayer.Property.GDSSaveImageurl(id, picture.FileName);
                                                    }
                                                    nodes++;
                                                    if (nodes == PictureCount)
                                                    {
                                                        break;
                                                    }
                                                }
                                            }
                                            if (nodes == PictureCount)
                                            {
                                                break;
                                            }
                                        }
                                    }
                                    if (nodes == PictureCount)
                                    {
                                        break;
                                    }
                                }
                            }
                            if (nodes == PictureCount)
                            {
                                break;
                            }
                        }
                    }
                }
                #endregion


                #region GUESTROOMIMAGES
                if (nodeguestImages != null)
                {
                    XmlNodeList listGuestRoomImages = nodeguestImages.SelectNodes("//si:MultimediaDescriptions/si:MultimediaDescription", xmlnsManager);
                    if (listGuestRoomImages != null)
                    {
                        int PictureCount = 0;
                        int nodes        = 0;
                        foreach (XmlNode item in listGuestRoomImages)
                        {
                            var subItem = item.SelectNodes("//si:ImageItems", xmlnsManager);
                            if (subItem != null)
                            {
                                foreach (XmlNode sItem in subItem)
                                {
                                    IEnumerable <XmlNode> subInnerItem = sItem.SelectNodes("//si:ImageItem", xmlnsManager).Cast <XmlNode>().OrderByDescending(r => Convert.ToDateTime(r.Attributes["LastModifyDateTime"].Value));
                                    // IEnumerable<XmlNode> subInnerItem = sItem.SelectNodes("//si:ImageItem/si:ImageFormat[@DimensionCategory='E']", xmlnsManager).Cast<XmlNode>().OrderByDescending(r => Convert.ToDecimal(r.Attributes["LastModifyDateTime"].Value));
                                    if (subInnerItem != null)
                                    {
                                        foreach (XmlNode sItem1 in subInnerItem)
                                        {
                                            var subUrlItem = sItem1.SelectNodes("//si:ImageItem/si:ImageFormat[@DimensionCategory='E']", xmlnsManager);
                                            if (subUrlItem != null)
                                            {
                                                PictureCount = subInnerItem.Count();
                                                foreach (XmlNode UItem in subUrlItem)
                                                {
                                                    var  UrlItem      = UItem.ChildNodes[0].InnerText; //url
                                                    bool bImageExists = true;
                                                    if (!string.IsNullOrEmpty(UrlItem))
                                                    {
                                                        bImageExists = APIUtility.DoesImageExistRemotely(UrlItem);
                                                    }

                                                    if (bImageExists)
                                                    {
                                                        CLayer.PropertyFiles picture = new CLayer.PropertyFiles();
                                                        picture.FileName   = UrlItem;// itemimg.ImageFormat.Where(x => x.DimensionCategory == "E").ToList()[0].URL;
                                                        picture.PropertyId = id;
                                                        picturelist.Add(picture);
                                                        BLayer.Property.GDSSaveImageurl(id, picture.FileName);
                                                    }
                                                    nodes++;
                                                    if (nodes == PictureCount)
                                                    {
                                                        break;
                                                    }
                                                }
                                            }
                                            if (nodes == PictureCount)
                                            {
                                                break;
                                            }
                                        }
                                    }
                                    if (nodes == PictureCount)
                                    {
                                        break;
                                    }
                                }
                            }
                            if (nodes == PictureCount)
                            {
                                break;
                            }
                        }
                    }
                }

                #endregion
            }
            catch (Exception ex)
            {
                LogHandler.AddLog(ex.Message);
            }
            return(picturelist);
        }