/// <summary>
        /// Renders the media gallery.
        /// </summary>
        /// <param name="html">The html helper</param>
        /// <param name="model">The model to render the media gallery for.</param>
        /// <param name="numberAcross">Number of image to display accross</param>
        /// <param name="format">Table mode or list </param>
        /// <param name="javascriptCallbackOnLoadComplete"></param>
        public static void RenderMediaGallery(this HtmlHelper html, IEntity model, int numberAcross = 8, ImageGalleryViewFormat format = ImageGalleryViewFormat.Table, string javascriptCallbackOnLoadComplete = "")
        {
            // Validate before rendering the media upload.
            if (model == null) return;
            if (!(model is IEntityMediaSupport)) return;
            var mediaGalleryViewMode = model is MediaFolder ? MediaGalleryViewMode.FolderId : MediaGalleryViewMode.Entity;

            html.RenderPartial("~/views/shared/controls/ImageGallery.ascx", new ComLib.Web.Modules.Media.ImageGalleryViewModel()
            {
                NumberAcross = numberAcross,
                RefId = model.Id,
                RefGroupId = ModuleMap.Instance.GetId(model.GetType()),
                Mode = mediaGalleryViewMode,
                Format = ImageGalleryViewFormat.Table,
                EnableEdit = true
            });
        }
        /// <summary>
        /// Renders the media gallery.
        /// </summary>
        /// <param name="html">The html helper</param>
        /// <param name="model">The model to render the media gallery for.</param>
        /// <param name="numberAcross">Number of image to display accross</param>
        /// <param name="format">Table mode or list </param>
        /// <param name="javascriptCallbackOnLoadComplete"></param>
        public static void RenderMediaGallery(this HtmlHelper html, IEntity model, int numberAcross = 8, ImageGalleryViewFormat format = ImageGalleryViewFormat.Table, string javascriptCallbackOnLoadComplete = "")
        {
            // Validate before rendering the media upload.
            if (model == null)
            {
                return;
            }
            if (!(model is IEntityMediaSupport))
            {
                return;
            }
            var mediaGalleryViewMode = model is MediaFolder ? MediaGalleryViewMode.FolderId : MediaGalleryViewMode.Entity;

            html.RenderPartial("~/views/shared/controls/ImageGallery.ascx", new ComLib.Web.Modules.Media.ImageGalleryViewModel()
            {
                NumberAcross = numberAcross,
                RefId        = model.Id,
                RefGroupId   = ModuleMap.Instance.GetId(model.GetType()),
                Mode         = mediaGalleryViewMode,
                Format       = ImageGalleryViewFormat.Table,
                EnableEdit   = true
            });
        }