using System;
using System.Web;
using System.Web.Mvc;
using System.Web.Optimization;
using Vrh.iScheduler;
namespace Vrh.Web.iScheduler.Areas.iScheduler
{
///
/// Az iScheduler area regisztrációja.
///
public class iSchedulerAreaRegistration : AreaRegistration
{
///
/// Csak olvasható tulajdonság, mely konstans módon visszaadja az area nevét.
///
public override string AreaName
{
get { return SchConst.AREA; }
}
///
/// Az area regisztrációjának belépési pontja.
///
///
/// Ide kell tenni minden olyan dolgot,
/// melyet az area felélesztésekor el kell végezni.
/// Például:
/// - a szókódok inicializálása
/// - vagy a komponens működéséhez szükséges adatbázis migrációjának elvégzése
///
///
public override void RegisterArea(AreaRegistrationContext context)
{
RegisterRoutes(context);
RegisterBundles(BundleTable.Bundles);
//nyelvi fordítások inicializálása
VRH.Log4Pro.MultiLanguageManager.MultiLanguageManager.InitializeWordCodes(typeof(SchedulerWordCodes));
}
private void RegisterRoutes(AreaRegistrationContext context)
{
if (context == null) { throw new ArgumentNullException("context"); }
context.MapRoute(
this.AreaName + "_default",
this.AreaName + "/{controller}/{action}/{id}",
new { action = "Index", id = UrlParameter.Optional }
);
}
private void RegisterBundles(BundleCollection bundles)
{
if (bundles == null) { throw new ArgumentNullException("bundles"); }
string contentPrefix = string.Concat("~/Areas/", this.AreaName, "/Content/");
string scriptsPrefix = string.Concat("~/Areas/", this.AreaName, "/Scripts/");
#region Content - Componens (area) CSS összetevői
bundles.Add(new StyleBundle(SchConst.BUNDLES_STYLE_FOR_EDITOR).Include(
"~/Content/themes/base/autocomplete.css",
string.Concat(contentPrefix, "bootstrap-datetimepicker.min.css"),
string.Concat(contentPrefix, "Editor.css")
));
bundles.Add(new StyleBundle(SchConst.BUNDLES_STYLE_FOR_MANAGER).Include(
"~/Content/DataTables/css/dataTables.bootstrap4.min.css",
string.Concat(contentPrefix, "bootstrap-toggle.css"),
string.Concat(contentPrefix, "Manager.css")
));
bundles.Add(new StyleBundle(SchConst.BUNDLES_STYLE_FOR_MANAGERCALENDAR).Include(
"~/Content/fullcalendar.min.css",
string.Concat(contentPrefix, "bootstrap-toggle.css"),
string.Concat(contentPrefix, "ManagerCalendar.css")
));
#endregion Content - Componens (area) CSS összetevői
#region Scripts - Componens (area) javascript összetevői
bundles.Add(new ScriptBundle(SchConst.BUNDLES_SCRIPT_FOR_EDITOR).Include(
"~/Scripts/moment-with-locales.min.js",
"~/Scripts/jquery-ui-1.12.1.min.js",
string.Concat(scriptsPrefix, "bootstrap-datetimepicker.min.js"),
string.Concat(scriptsPrefix, "Editor.js")
));
bundles.Add(new ScriptBundle(SchConst.BUNDLES_SCRIPT_FOR_MANAGER).Include(
"~/Scripts/DataTables/jquery.dataTables.min.js",
"~/Scripts/DataTables/dataTables.bootstrap4.min.js",
"~/Scripts/moment-with-locales.min.js",
string.Concat(scriptsPrefix, "bootstrap-toggle.js"),
string.Concat(scriptsPrefix, "Manager.js")
));
bundles.Add(new ScriptBundle(SchConst.BUNDLES_SCRIPT_FOR_MANAGERCALENDAR).Include(
"~/Scripts/moment-with-locales.min.js",
"~/Scripts/jquery-ui-1.12.1.min.js",
"~/Scripts/fullcalendar.min.js",
string.Concat(scriptsPrefix, "bootstrap-toggle.js")
));
#endregion Scripts - Componens (area) javascript összetevői
}
}
}