コード例 #1
0
        public async Task <IHttpActionResult> PutTypeMedia(int id, TypeMedia typeMedia)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != typeMedia.IdTypeMedia)
            {
                return(BadRequest());
            }

            db.Entry(typeMedia).State = EntityState.Modified;

            try
            {
                await db.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!TypeMediaExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
コード例 #2
0
ファイル: MediaController.cs プロジェクト: ferrarienz0/branch
        private Media TreatMediaCreation(string Name, string FileExtension, int UserId, bool IsUserMedia)
        {
            var MediaType = SQLContext.TypeMedias.Where(x => x.Name == FileExtension).FirstOrDefault();

            if (MediaType == default)
            {
                MediaType = new TypeMedia {
                    Name = FileExtension
                };

                SQLContext.TypeMedias.Add(MediaType);
                SQLContext.SaveChanges();
            }

            var NewMedia = new Media {
                URL = Url.Content(Path.Combine("~/Media_Data", Name))
            };

            SQLContext.Medias.Add(NewMedia);
            SQLContext.SaveChanges();

            if (IsUserMedia)
            {
                var User = SQLContext.Users.Find(UserId);
                User.MediaId = NewMedia.Id;
                SQLContext.Entry(User).State = System.Data.Entity.EntityState.Modified;
            }

            SQLContext.SaveChanges();

            return(NewMedia);
        }
コード例 #3
0
        /// <summary>
        /// Créer les deux types médias picto et image si ils ne sont pas en DB
        /// </summary>
        /// <param name="entities">Gestionnaire DB</param>
        private static void ParseTypeMedia(LISAEntities entities)
        {
            TypeMedia picto = entities.TypeMedias.FirstOrDefault(p => p.Libelle == "picto");

            if (picto == null)
            {
                picto = new TypeMedia()
                {
                    Libelle = "picto"
                };

                entities.TypeMedias.Add(picto);
            }

            TypeMedia image = entities.TypeMedias.FirstOrDefault(p => p.Libelle == "image");

            if (image == null)
            {
                image = new TypeMedia()
                {
                    Libelle = "image"
                };

                entities.TypeMedias.Add(image);
            }
        }
コード例 #4
0
 public static TypeMedia toTypeMedia(this MySqlDataReader reader)
 {
     if (reader.HasRows)
     {
         TypeMedia type = new TypeMedia();
         while (reader.Read())
         {
             if (!reader.IsDBNull(0))
             {
                 type.Id   = reader.GetInt32(Define.type_id);
                 type.Name = reader.GetString(Define.type_name);
                 type.Code = reader.GetString(Define.type_code);
                 try
                 {
                     type.Icon = reader.GetString(Define.type_icon);
                 }
                 catch (Exception)
                 {
                 }
             }
         }
         return(type);
     }
     return(null);
 }
コード例 #5
0
        public async Task <IHttpActionResult> GetTypeMedia(int id)
        {
            TypeMedia typeMedia = await db.TypeMedia.FindAsync(id);

            if (typeMedia == null)
            {
                return(NotFound());
            }

            return(Ok(typeMedia));
        }
コード例 #6
0
        public async Task <IHttpActionResult> PostTypeMedia(TypeMedia typeMedia)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.TypeMedia.Add(typeMedia);
            await db.SaveChangesAsync();

            return(CreatedAtRoute("DefaultApi", new { id = typeMedia.IdTypeMedia }, typeMedia));
        }
コード例 #7
0
        public async Task <IHttpActionResult> DeleteTypeMedia(int id)
        {
            TypeMedia typeMedia = await db.TypeMedia.FindAsync(id);

            if (typeMedia == null)
            {
                return(NotFound());
            }

            db.TypeMedia.Remove(typeMedia);
            await db.SaveChangesAsync();

            return(Ok(typeMedia));
        }
コード例 #8
0
        private static void ParseMediumPictoElement(XElement articleElement, LISAEntities entities, Article article)
        {
            string cheminMedium = articleElement.Element(XName.Get("picto")).Value;

            TypeMedia typeMedia = entities.TypeMedias.FirstOrDefault(p => p.Libelle == "picto");

            Media result = entities.Medias.FirstOrDefault(p => p.IdArticle == article.Id && p.IdTypeMedia == typeMedia.Id);

            if (result != null)
            {
                entities.Medias.Remove(result);
            }

            result = new Media()
            {
                Article   = article,
                TypeMedia = typeMedia,
                Chemin    = cheminMedium
            };

            entities.Medias.Add(result);
        }
コード例 #9
0
 private void Application_Startup(object sender, StartupEventArgs e)
 {
     Define.Fonts = ExCss.ReadFile(System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, @"Asset\Fonts\font-awesome.min.css"));
     if (!File.Exists(FileName))
     {
         MessageBox.Show("Không tìm thấy file cấu hình!");
         Application.Current.Shutdown();
         return;
     }
     Registry = new ModifyRegistry();
     key      = Registry.Read("MTC_KEY");
     if (string.IsNullOrEmpty(key))
     {
         this.MainWindow = new MTC();
         this.MainWindow.Show();
         return;
     }
     setting = Config.Read(FileName, key);
     if (setting == null || setting.EndDate.Date < DateTime.Now.Date)
     {
         MessageBox.Show("Phần mềm đã hết hạn sử dụng.");
         this.MainWindow = new MTC();
         this.MainWindow.Show();
         return;
     }
     if (setting.temp_folder.IndexOf(@"://") < 0 || setting.temp_folder.IndexOf(@"\\") < 0)
     {
         setting.temp_folder = System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, setting.temp_folder);
     }
     if (!System.IO.Directory.Exists(setting.temp_folder))
     {
         System.IO.Directory.CreateDirectory(setting.temp_folder);
     }
     cache       = AltaCache.Read(CacheName);
     TypeUsers   = MysqlHelper.getTypeUserAll();
     TypeMedias  = new MediaTypeArray(TypeMedia.getList());
     TypeDevices = new DeviceTypeArray(TypeDevice.getList());
     initVLC();
     if (cache.autoLogin && !string.IsNullOrEmpty(cache.hashUserName))
     {
         int     tmpResult = UserData.getUserIdByHash(cache.hashUserName);
         UILogin form      = new UILogin();
         if (tmpResult != -1)
         {
             byte[] tmp = UserData.getFingerPrinter(tmpResult);
             form.cacheName = UserData.getUserName(tmpResult);
             if (tmp != null)
             {
                 form.Template = new DPFP.Template();
                 form.Template.DeSerialize(tmp);
             }
             form.Show();
         }
         else
         {
             form.Show();
         }
         return;
     }
     this.MainWindow = new UILogin();
     this.MainWindow.Show();
     Console.WriteLine("Debug");
 }
コード例 #10
0
        public async Task <IActionResult> PostMedia(IFormFile file, int modelId, string name, string text, TypeMedia type)
        {
            MediaViewPost Media = new MediaViewPost
            {
                ModelId = modelId,
                Name    = name,
                File    = file,
                Text    = text,
                Type    = type
            };

            if (Media.ModelId < 1)
            {
                return(BadRequest());
            }
            else
            {
                try
                {
                    if (!Directory.Exists(pathDiretory + pathMedia))
                    {
                        Directory.CreateDirectory(pathDiretory + pathMedia);
                    }
                    if (Media.File == null)
                    {
                        return(BadRequest("No se publico el archivo multimedia"));
                    }
                    var exetension = Path.GetExtension(Media.File.FileName);
                    if ((exetension == ".jpg" || exetension == ".mp4" || exetension == ".txt"))
                    {
                        if (!Directory.Exists(pathDiretory + pathMedia))
                        {
                            Directory.CreateDirectory(pathDiretory + pathMedia);
                        }
                        string temppath = string.Empty;
                        switch (Media.Type)
                        {
                        case TypeMedia.Image:
                            temppath = pathMedia + $"{Guid.NewGuid()}_{Media.ModelId}.jpg";
                            break;

                        case TypeMedia.Video:
                            temppath = pathMedia + $"{Guid.NewGuid()}_{Media.ModelId}.mp4";
                            break;

                        case TypeMedia.Text:
                            temppath = pathMedia + $"{Guid.NewGuid()}_{Media.ModelId}.txt";
                            break;
                        }
                        temppath = temppath.Replace(" ", "");
                        using (var stream = new FileStream(pathDiretory + temppath, FileMode.Create))
                        {
                            await Media.File.CopyToAsync(stream);
                        }
                        var media = new Media()
                        {
                            ModelId   = Media.ModelId,
                            Name      = Media.Name,
                            Type      = Media.Type,
                            PathMedia = temppath
                        };
                        try
                        {
                            _context.Media.Add(media);
                            var result = await _context.SaveChangesAsync();

                            if (result > 0)
                            {
                                return(Ok(media));
                            }
                            else
                            {
                                return(BadRequest());
                            }
                        }
                        catch
                        {
                            System.IO.File.Delete(pathDiretory + temppath);
                            return(BadRequest());
                        }
                    }
                    else
                    {
                        return(BadRequest("No es un archivo valido, solo se admite .mp3, .mp4, .txt"));
                    }
                }
                catch (Exception e)
                {
                    return(BadRequest(e.ToString()));
                }
            }
        }