public ShippingMainSettingsViewModel(
			IShippingOptionSettingsViewModel shippingOptionSettingsViewModel,
 			IShippingMethodSettingsViewModel shippingMethodSettingsViewModel,
			IShippingPackageSettingsViewModel shippingPackageSettingsViewModel,
			IViewModelsFactory<IJurisdictionSettingsViewModel> jurisdictionSettingsVmFactory,
			IViewModelsFactory<IJurisdictionGroupSettingsViewModel> jGroupVmFactory,
			IAuthenticationContext authContext)
 		{

			SubItems = new List<ItemTypeHomeTab>();

			if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingOptions))
			{
				SubItems.Add(new ItemTypeHomeTab { Caption = "Shipping options", ViewModel = shippingOptionSettingsViewModel });
			}
			if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingMethods))
			{
				SubItems.Add(new ItemTypeHomeTab { Caption = "Shipping methods", ViewModel = shippingMethodSettingsViewModel });
			}
			if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingPackages))
			{
				SubItems.Add(new ItemTypeHomeTab { Caption = "Shipping packages", ViewModel = shippingPackageSettingsViewModel });
			}
			if (authContext.CheckPermission(PredefinedPermissions.SettingsJurisdiction))
			{
				SubItems.Add(new ItemTypeHomeTab { Caption = "Jurisdictions", ViewModel = jurisdictionSettingsVmFactory.GetViewModelInstance(new KeyValuePair<string, object>("jurisdictionType", JurisdictionTypes.Shipping)) });
			}
			if (authContext.CheckPermission(PredefinedPermissions.SettingsJurisdictionGroups))
			{
				SubItems.Add(new ItemTypeHomeTab { Caption = "Jurisdiction groups", ViewModel = jGroupVmFactory.GetViewModelInstance(new KeyValuePair<string, object>("jurisdictionType", JurisdictionTypes.Shipping)) });
			}
			CurrentTab = SubItems[0];
		}
        public ShippingMainSettingsViewModel(
            IShippingOptionSettingsViewModel shippingOptionSettingsViewModel,
            IShippingMethodSettingsViewModel shippingMethodSettingsViewModel,
            IShippingPackageSettingsViewModel shippingPackageSettingsViewModel,
            IViewModelsFactory <IJurisdictionSettingsViewModel> jurisdictionSettingsVmFactory,
            IViewModelsFactory <IJurisdictionGroupSettingsViewModel> jGroupVmFactory,
            IAuthenticationContext authContext)
        {
            SubItems = new List <ItemTypeHomeTab>();

            if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingOptions))
            {
                SubItems.Add(new ItemTypeHomeTab {
                    Caption = "Shipping options", Category = NavigationNames.ModuleName, ViewModel = shippingOptionSettingsViewModel
                });
            }
            if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingMethods))
            {
                SubItems.Add(new ItemTypeHomeTab {
                    Caption = "Shipping methods", Category = NavigationNames.ModuleName, ViewModel = shippingMethodSettingsViewModel
                });
            }
            if (authContext.CheckPermission(PredefinedPermissions.SettingsShippingPackages))
            {
                SubItems.Add(new ItemTypeHomeTab {
                    Caption = "Shipping packages", Category = NavigationNames.ModuleName, ViewModel = shippingPackageSettingsViewModel
                });
            }
            if (authContext.CheckPermission(PredefinedPermissions.SettingsJurisdiction))
            {
                SubItems.Add(new ItemTypeHomeTab {
                    Caption = "Jurisdictions", Category = NavigationNames.ModuleName, ViewModel = jurisdictionSettingsVmFactory.GetViewModelInstance(new KeyValuePair <string, object>("jurisdictionType", JurisdictionTypes.Shipping))
                });
            }
            if (authContext.CheckPermission(PredefinedPermissions.SettingsJurisdictionGroups))
            {
                SubItems.Add(new ItemTypeHomeTab {
                    Caption = "Jurisdiction groups", Category = NavigationNames.ModuleName, ViewModel = jGroupVmFactory.GetViewModelInstance(new KeyValuePair <string, object>("jurisdictionType", JurisdictionTypes.Shipping))
                });
            }
            CurrentTab = SubItems[0];
        }