Example #1
0
 /// <summary>
 /// Raises the catalog updating event.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="args">The <see cref="Mediachase.Commerce.Catalog.Events.CatalogEventArgs"/> instance containing the event data.</param>
 public void RaiseCatalogUpdatingEvent(CatalogDto sender, CatalogEventArgs args)
 {
     if (CatalogUpdating != null)
     {
         CatalogUpdating(sender, args);
     }
 }
Example #2
0
        protected override void OnCatalog(CatalogEventArgs e)
        {
            base.OnCatalog(e);

            var metadataPath = GetMetadataPath(e.Path);
            string metadata = GetMedata(metadataPath);
            var metadataParts = metadata.Split(new[] { "Name:", "Description: ", "Classification:" }, StringSplitOptions.RemoveEmptyEntries);

            FillRecordFields(metadataParts, e.Record);
            ChangeClassification(App, e.Record, metadataParts.Last());
        }
        protected override void OnCatalog(CatalogEventArgs e)
        {
            base.OnCatalog(e);
            // Добавить классификации в зависимости от расширения

            // пока что дикий хардкод с путями и расширениями
            List <string> videoExtensions = new List <string>()
            {
                ".mp4",
                ".avi",
                ".mkv"
            };
            List <string> audioExtensions = new List <string>()
            {
                ".flac",
                ".mp3",
                ".wav"
            };

            if (videoExtensions.Any(x => x.Equals(Path.GetExtension(e.Path))))
            {
                e.Record.Classifications.Add(new ClassificationPath("/Cubus/Video"));
            }
            if (audioExtensions.Any(x => x.Equals(Path.GetExtension(e.Path))))
            {
                e.Record.Classifications.Add(new ClassificationPath("/Cubus/Audio"));
            }


            String metaFilePath = System.IO.Path.ChangeExtension(e.Path, ".cm");

            if (!System.IO.File.Exists(metaFilePath))
            {
                return;
            }
            Dictionary <String, bool> fields = new Dictionary <string, bool>();

            foreach (Field field in e.Record.Fields.MyLanguage)
            {
                fields.Add(field.ValuePropertyName, false);
            }
            var doc = new XmlDocument();

            doc.Load(metaFilePath);
            foreach (XmlNode node in doc.ChildNodes)
            {
                if (fields.Keys.Contains(node.Name))
                {
                    e.Record.Fields.GetField <TextField>(node.Name).SetValue(node.Value);
                }
            }
        }
Example #4
0
        protected override void OnCatalog(CatalogEventArgs e)
        {
            base.OnCatalog(e);
            // Добавить классификации в зависимости от расширения

            // пока что дикий хардкод с путями и расширениями
            List<string> videoExtensions = new List<string>()
            {
                ".mp4",
                ".avi",
                ".mkv"
            };
            List<string> audioExtensions = new List<string>()
            {
                ".flac",
                ".mp3",
                ".wav"
            };

            if (videoExtensions.Any(x => x.Equals(Path.GetExtension(e.Path))))
            {
                e.Record.Classifications.Add(new ClassificationPath("/Cubus/Video"));
            }
            if (audioExtensions.Any(x => x.Equals(Path.GetExtension(e.Path))))
            {
                e.Record.Classifications.Add(new ClassificationPath("/Cubus/Audio"));
            }

            String metaFilePath = System.IO.Path.ChangeExtension(e.Path, ".cm");
            if (!System.IO.File.Exists(metaFilePath))
                return;
            Dictionary<String, bool> fields = new Dictionary<string, bool>();
            foreach (Field field in e.Record.Fields.MyLanguage)
                fields.Add(field.ValuePropertyName, false);
            var doc = new XmlDocument();
            doc.Load(metaFilePath);
            foreach (XmlNode node in doc.ChildNodes)
                if (fields.Keys.Contains(node.Name))
                    e.Record.Fields.GetField<TextField>(node.Name).SetValue(node.Value);
        }
Example #5
0
 public void CatalogUpdated(object source, CatalogEventArgs args)
 {
 }