diff --git a/Project-Unite.sln b/Project-Unite.sln new file mode 100644 index 0000000..209f3cf --- /dev/null +++ b/Project-Unite.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Project-Unite", "Project-Unite\Project-Unite.csproj", "{0C571DE1-E76B-4C3E-84A8-00E8938406E1}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {0C571DE1-E76B-4C3E-84A8-00E8938406E1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {0C571DE1-E76B-4C3E-84A8-00E8938406E1}.Debug|Any CPU.Build.0 = Debug|Any CPU + {0C571DE1-E76B-4C3E-84A8-00E8938406E1}.Release|Any CPU.ActiveCfg = Release|Any CPU + {0C571DE1-E76B-4C3E-84A8-00E8938406E1}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Project-Unite/ACL.cs b/Project-Unite/ACL.cs new file mode 100644 index 0000000..d85c896 --- /dev/null +++ b/Project-Unite/ACL.cs @@ -0,0 +1,318 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using Project_Unite.Models; +using Microsoft.AspNet.Identity.Owin; +using System.Web.Mvc; +using System.Diagnostics; +using System.Web.Mvc.Html; +using System.Data.Entity; + +namespace Project_Unite +{ + public static class ACL + { + public static IHtmlString Markdown(this HtmlHelper hpr, string md) + { + return hpr.Raw(CommonMark.CommonMarkConverter.Convert(hpr.Encode(md))); + } + + public static IHtmlString UserLink(this HtmlHelper hpr, string userId) + { + using(var db = new ApplicationDbContext()) + { + var usr = db.Users.Include(x=>x.Roles).FirstOrDefault(x => x.Id == userId); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + return hpr.ActionLink(usr.DisplayName, "ViewProfile", "Profiles", new { name = usr.UserName }, new { style = @"color: " + userRole.ColorHex }); + + } + } + + public static IHtmlString UserName(this HtmlHelper hpr, string userId) + { + using (var db = new ApplicationDbContext()) + { + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(x => x.Id == userId); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + return hpr.Raw($@"{hpr.Encode(usr.DisplayName)}"); + + } + } + + + public static string UserNameRaw(string userId) + { + using (var db = new ApplicationDbContext()) + { + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(x => x.Id == userId); + + + return usr.DisplayName; + + } + } + + public static string UserNameFromEmailRaw(string userId) + { + using (var db = new ApplicationDbContext()) + { + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(x => x.UserName == userId); + + + return usr.DisplayName; + + } + } + + public static bool CanSee(string userName, string fId) + { + + + if (string.IsNullOrWhiteSpace(userName) || string.IsNullOrWhiteSpace(fId)) + return false; + if (!Granted(userName, "CanPostTopics")) + return false; //obviously if this role has a global restraint for this ACL def we shouldn't let them post in ANY forum. + + var db = new ApplicationDbContext(); + + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(u => u.UserName == userName); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + db.Dispose(); + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + + db = new ApplicationDbContext(); + + + + + var forums = db.ForumCategories; + var forum = forums.First(x => x.Id == fId); + var perms = forum.Permissions.FirstOrDefault(x => x.RoleId == userRole.Id); + if (perms == null) + { + UpdateACLDefinitions(fId); + return true; + } + return (int)perms.Permissions >= (int)PermissionPreset.CanRead; + } + + public static bool UserEmailConfirmed(string username) + { + if (string.IsNullOrWhiteSpace(username)) + return true; + return new ApplicationDbContext().Users.FirstOrDefault(x => x.UserName == username).EmailConfirmed; + } + + public static Role LowestPriorityRole() + { + var db = new ApplicationDbContext(); + var roles = db.Roles; + List actualRoles = new List(); + foreach (Role r in roles) + { + actualRoles.Add(r); + } + return actualRoles.OrderBy(x => x.Priority).First(); + } + + public static bool CanReply(string userName, string fId) + { + + + if (string.IsNullOrWhiteSpace(userName) || string.IsNullOrWhiteSpace(fId)) + return false; + if (!Granted(userName, "CanPostTopics")) + return false; //obviously if this role has a global restraint for this ACL def we shouldn't let them post in ANY forum. + + var db = new ApplicationDbContext(); + + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(u => u.UserName == userName); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + db.Dispose(); + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + + db = new ApplicationDbContext(); + + + + + var forums = db.ForumCategories; + var forum = forums.First(x => x.Id == fId); + var perms = forum.Permissions.FirstOrDefault(x => x.RoleId == userRole.Id); + if (perms == null) + { + UpdateACLDefinitions(fId); + return true; + } + return perms.Permissions >= PermissionPreset.CanReply; + } + + public static ApplicationUser GetUserInfo(string id) + { + return new ApplicationDbContext().Users.FirstOrDefault(x => x.Id == id); + } + + public static bool CanPost(string userName, string fId) + { + + + if (string.IsNullOrWhiteSpace(userName) || string.IsNullOrWhiteSpace(fId)) + return false; + if (!Granted(userName, "CanPostTopics")) + return false; //obviously if this role has a global restraint for this ACL def we shouldn't let them post in ANY forum. + + var db = new ApplicationDbContext(); + + var usr = db.Users.Include(x => x.Roles).FirstOrDefault(u => u.UserName == userName); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + db.Dispose(); + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + + db = new ApplicationDbContext(); + + + + + var forums = db.ForumCategories; + var forum = forums.First(x => x.Id == fId); + var perms = forum.Permissions.FirstOrDefault(x=>x.RoleId==userRole.Id); + if (perms == null) + { + UpdateACLDefinitions(fId); + return true; + } + return perms.Permissions >= PermissionPreset.CanPost; + } + + public static void UpdateACLDefinitions(string fid) + { + var db = new ApplicationDbContext(); + var forum = db.ForumCategories.FirstOrDefault(x => x.Id == fid); + if (forum == null) + return; + int recordsAdded = 0; + + if (forum.Permissions.Length < db.Roles.Count()) + { + var rolesToAdd = db.Roles.Where(r => forum.Permissions.FirstOrDefault(p => p.RoleId == r.Id) == null); + foreach(var role in rolesToAdd) + { + var perm = new ForumPermission(); + perm.Id = Guid.NewGuid().ToString(); + perm.CategoryId = forum.Id; + perm.RoleId = role.Id; + perm.Permissions = PermissionPreset.CanPost; + db.ForumPermissions.Add(perm); + recordsAdded++; + } + db.AuditLogs.Add(new AuditLog("system", AuditLogLevel.Admin, $"Automatic forum ACL update occurred - Forum: {forum.Name}, records added: {recordsAdded}.")); + db.SaveChanges(); + } + + } + + public static bool CanManageRole(string userId, string roleId) + { + try + { + if (!Granted(userId, "CanEditRoles")) + return false; + + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(u => u.UserName == userId); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + var manageRole = (Role)db.Roles.FirstOrDefault(x => x.Id == roleId); + + db.Dispose(); + var userRole = (Role)userRoles.OrderByDescending(m => m.Priority).First(); + if (manageRole.Priority > userRole.Priority) + return false; + + return true; + } + catch + { + return false; + } + } + + + public static ForumCategory GetForumById(string id) + { + var db = new ApplicationDbContext(); + + return db.ForumCategories.FirstOrDefault(x => x.Id == id); + + } + + public static bool Granted(string userName, string prop) + { + if (string.IsNullOrWhiteSpace(prop)) + return true; + + try + { + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(u => u.UserName == userName); + + var userRoles = new List(); + foreach (var usrRole in usr.Roles) + { + userRoles.Add(db.Roles.FirstOrDefault(r => r.Id == usrRole.RoleId) as Role); + } + db.Dispose(); + var userRole = userRoles.OrderByDescending(m => m.Priority).First(); + + var t = userRole.GetType(); + foreach (var propInf in t.GetProperties(System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance)) + { + if (propInf.Name == prop && propInf.PropertyType == typeof(bool)) + return (bool)propInf.GetValue(userRole); + } + + return false; + } + catch (Exception ex) + { + Debug.Print(ex.ToString()); + return false; + } + + } + } +} \ No newline at end of file diff --git a/Project-Unite/App_Start/BundleConfig.cs b/Project-Unite/App_Start/BundleConfig.cs new file mode 100644 index 0000000..b0ec54b --- /dev/null +++ b/Project-Unite/App_Start/BundleConfig.cs @@ -0,0 +1,31 @@ +using System.Web; +using System.Web.Optimization; + +namespace Project_Unite +{ + public class BundleConfig + { + // For more information on bundling, visit http://go.microsoft.com/fwlink/?LinkId=301862 + public static void RegisterBundles(BundleCollection bundles) + { + bundles.Add(new ScriptBundle("~/bundles/jquery").Include( + "~/Scripts/jquery-{version}.js")); + + bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include( + "~/Scripts/jquery.validate*")); + + // Use the development version of Modernizr to develop with and learn from. Then, when you're + // ready for production, use the build tool at http://modernizr.com to pick only the tests you need. + bundles.Add(new ScriptBundle("~/bundles/modernizr").Include( + "~/Scripts/modernizr-*")); + + bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include( + "~/Scripts/bootstrap.js", + "~/Scripts/respond.js")); + + bundles.Add(new StyleBundle("~/Content/css").Include( + "~/Content/bootstrap.css", + "~/Content/site.css")); + } + } +} diff --git a/Project-Unite/App_Start/FilterConfig.cs b/Project-Unite/App_Start/FilterConfig.cs new file mode 100644 index 0000000..220151d --- /dev/null +++ b/Project-Unite/App_Start/FilterConfig.cs @@ -0,0 +1,14 @@ +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite +{ + public class FilterConfig + { + public static void RegisterGlobalFilters(GlobalFilterCollection filters) + { + filters.Add(new HandleErrorAttribute()); + + } + } +} diff --git a/Project-Unite/App_Start/IdentityConfig.cs b/Project-Unite/App_Start/IdentityConfig.cs new file mode 100644 index 0000000..848daba --- /dev/null +++ b/Project-Unite/App_Start/IdentityConfig.cs @@ -0,0 +1,124 @@ +using System; +using System.Collections.Generic; +using System.Data.Entity; +using System.Linq; +using System.Net; +using System.Net.Mail; +using System.Security.Claims; +using System.Threading.Tasks; +using System.Web; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.EntityFramework; +using Microsoft.AspNet.Identity.Owin; +using Microsoft.Owin; +using Microsoft.Owin.Security; +using Project_Unite.Models; + +namespace Project_Unite +{ + public class EmailService : IIdentityMessageService + { + public Task SendAsync(IdentityMessage message) + { + var smtp = new SmtpClient("in-v3.mailjet.com", 25); + smtp.UseDefaultCredentials = false; + smtp.Credentials = new NetworkCredential("fcc885a166c73e91ba6592345f64dfeb", "84b7c56e71b6c9bd1b26a98222494823"); + var sMsg = new MailMessage("sys@michaeltheshifter.me", message.Destination); + + sMsg.Body = @" + +

Message from the ShiftOS staff

+ +

" + CommonMark.CommonMarkConverter.Convert(message.Body) + "

"; + sMsg.Subject = "[ShiftOS (Project: Unite)] " + message.Subject; + sMsg.IsBodyHtml = true; + smtp.Send(sMsg); + + return Task.FromResult(0); + } + } + + public class SmsService : IIdentityMessageService + { + public Task SendAsync(IdentityMessage message) + { + // Plug in your SMS service here to send a text message. + return Task.FromResult(0); + } + } + + // Configure the application user manager used in this application. UserManager is defined in ASP.NET Identity and is used by the application. + public class ApplicationUserManager : UserManager + { + public ApplicationUserManager(IUserStore store) + : base(store) + { + } + + public static ApplicationUserManager Create(IdentityFactoryOptions options, IOwinContext context) + { + var manager = new ApplicationUserManager(new UserStore(context.Get())); + // Configure validation logic for usernames + manager.UserValidator = new UserValidator(manager) + { + AllowOnlyAlphanumericUserNames = false, + RequireUniqueEmail = true + }; + + // Configure validation logic for passwords + manager.PasswordValidator = new PasswordValidator + { + RequiredLength = 6, + RequireNonLetterOrDigit = false, + RequireDigit = true, + RequireLowercase = true, + RequireUppercase = false, + }; + + // Configure user lockout defaults + manager.UserLockoutEnabledByDefault = true; + manager.DefaultAccountLockoutTimeSpan = TimeSpan.FromMinutes(5); + manager.MaxFailedAccessAttemptsBeforeLockout = 5; + + // Register two factor authentication providers. This application uses Phone and Emails as a step of receiving a code for verifying the user + // You can write your own provider and plug it in here. + manager.RegisterTwoFactorProvider("Phone Code", new PhoneNumberTokenProvider + { + MessageFormat = "Your security code is {0}" + }); + manager.RegisterTwoFactorProvider("Email Code", new EmailTokenProvider + { + Subject = "Security Code", + BodyFormat = "Your security code is {0}" + }); + manager.EmailService = new EmailService(); + manager.SmsService = new SmsService(); + var dataProtectionProvider = options.DataProtectionProvider; + if (dataProtectionProvider != null) + { + manager.UserTokenProvider = + new DataProtectorTokenProvider(dataProtectionProvider.Create("ASP.NET Identity")); + } + return manager; + } + } + + // Configure the application sign-in manager which is used in this application. + public class ApplicationSignInManager : SignInManager + { + public ApplicationSignInManager(ApplicationUserManager userManager, IAuthenticationManager authenticationManager) + : base(userManager, authenticationManager) + { + } + + public override Task CreateUserIdentityAsync(ApplicationUser user) + { + return user.GenerateUserIdentityAsync((ApplicationUserManager)UserManager); + } + + public static ApplicationSignInManager Create(IdentityFactoryOptions options, IOwinContext context) + { + return new ApplicationSignInManager(context.GetUserManager(), context.Authentication); + } + } +} diff --git a/Project-Unite/App_Start/RouteConfig.cs b/Project-Unite/App_Start/RouteConfig.cs new file mode 100644 index 0000000..2fc4239 --- /dev/null +++ b/Project-Unite/App_Start/RouteConfig.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using System.Web.Routing; + +namespace Project_Unite +{ + public class RouteConfig + { + public static void RegisterRoutes(RouteCollection routes) + { + routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); + + routes.MapRoute( + name: "Default", + url: "{controller}/{action}/{id}", + defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional } + ); + } + } +} diff --git a/Project-Unite/App_Start/Startup.Auth.cs b/Project-Unite/App_Start/Startup.Auth.cs new file mode 100644 index 0000000..5bd6820 --- /dev/null +++ b/Project-Unite/App_Start/Startup.Auth.cs @@ -0,0 +1,70 @@ +using System; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.Owin; +using Microsoft.Owin; +using Microsoft.Owin.Security.Cookies; +using Microsoft.Owin.Security.Google; +using Owin; +using Project_Unite.Models; + +namespace Project_Unite +{ + public partial class Startup + { + // For more information on configuring authentication, please visit http://go.microsoft.com/fwlink/?LinkId=301864 + public void ConfigureAuth(IAppBuilder app) + { + // Configure the db context, user manager and signin manager to use a single instance per request + app.CreatePerOwinContext(ApplicationDbContext.Create); + app.CreatePerOwinContext(ApplicationUserManager.Create); + app.CreatePerOwinContext(ApplicationSignInManager.Create); + + // Enable the application to use a cookie to store information for the signed in user + // and to use a cookie to temporarily store information about a user logging in with a third party login provider + // Configure the sign in cookie + app.UseCookieAuthentication(new CookieAuthenticationOptions + { + AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie, + LoginPath = new PathString("/Account/Login"), + Provider = new CookieAuthenticationProvider + { + // Enables the application to validate the security stamp when the user logs in. + // This is a security feature which is used when you change a password or add an external login to your account. + OnValidateIdentity = SecurityStampValidator.OnValidateIdentity( + validateInterval: TimeSpan.FromMinutes(30), + regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager)) + } + }); + app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie); + + // Enables the application to temporarily store user information when they are verifying the second factor in the two-factor authentication process. + app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5)); + + // Enables the application to remember the second login verification factor such as phone or email. + // Once you check this option, your second step of verification during the login process will be remembered on the device where you logged in from. + // This is similar to the RememberMe option when you log in. + app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie); + + // Uncomment the following lines to enable logging in with third party login providers + //app.UseMicrosoftAccountAuthentication( + // clientId: "", + // clientSecret: ""); + + //app.UseTwitterAuthentication( + // consumerKey: "", + // consumerSecret: ""); + + //app.UseFacebookAuthentication( + // appId: "", + // appSecret: ""); + + app.UseGoogleAuthentication(new GoogleOAuth2AuthenticationOptions() + { + ClientId = "433137899460-02t7aruq56lddf8hckpgad44rhjc4h7d.apps.googleusercontent.com", + ClientSecret = "1TnTKaWFoflG0DFQSrqjUjXP" + }); + + + } + } +} \ No newline at end of file diff --git a/Project-Unite/ApplicationInsights.config b/Project-Unite/ApplicationInsights.config new file mode 100644 index 0000000..9b7f199 --- /dev/null +++ b/Project-Unite/ApplicationInsights.config @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + System.Web.Handlers.TransferRequestHandler + Microsoft.VisualStudio.Web.PageInspector.Runtime.Tracing.RequestDataHttpHandler + System.Web.StaticFileHandler + System.Web.Handlers.AssemblyResourceLoader + System.Web.Optimization.BundleHandler + System.Web.Script.Services.ScriptHandlerFactory + System.Web.Handlers.TraceHandler + System.Web.Services.Discovery.DiscoveryRequestHandler + System.Web.HttpDebugHandler + + + + + + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + c28af358-114e-400b-a0c9-07e6275d7fa4 + \ No newline at end of file diff --git a/Project-Unite/Content/Site.css b/Project-Unite/Content/Site.css new file mode 100644 index 0000000..25bfed1 --- /dev/null +++ b/Project-Unite/Content/Site.css @@ -0,0 +1,159 @@ +body { + padding-top: 50px; + padding-bottom: 20px; +} + +/* Set padding to keep content from hitting the edges */ +.body-content { + padding-left: 15px; + padding-right: 15px; +} + +/* Override the default bootstrap behavior where horizontal description lists + will truncate terms that are too long to fit in the left column +*/ +.dl-horizontal dt { + white-space: normal; +} + +/*.modal { + padding-top:10%; + padding-right:50%; + @media only screen and (min-device-width:1024px) { + padding-left:0%; padding-right:0%; padding-top:0%; + } +}*/ + + +.form-control{ + width:100%; + background-color:black; + color:white; + width:100%; + max-width:none; +} + + +/* http://prismjs.com/download.html?themes=prism-okaidia&languages=markup+css+clike+javascript */ +/** + * okaidia theme for JavaScript, CSS and HTML + * Loosely based on Monokai textmate theme by http://www.monokai.nl/ + * @author ocodia + */ + +code[class*="language-"], +pre[class*="language-"] { + color: #f8f8f2; + background: none; + text-shadow: 0 1px rgba(0, 0, 0, 0.3); + font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace; + text-align: left; + white-space: pre; + word-spacing: normal; + word-break: normal; + word-wrap: normal; + line-height: 1.5; + + -moz-tab-size: 4; + -o-tab-size: 4; + tab-size: 4; + + -webkit-hyphens: none; + -moz-hyphens: none; + -ms-hyphens: none; + hyphens: none; +} + +/* Code blocks */ +pre[class*="language-"] { + padding: 1em; + margin: .5em 0; + overflow: auto; + border-radius: 0.3em; +} + +:not(pre) > code[class*="language-"], +pre[class*="language-"] { + background: #272822; +} + +/* Inline code */ +:not(pre) > code[class*="language-"] { + padding: .1em; + border-radius: .3em; + white-space: normal; +} + +.token.comment, +.token.prolog, +.token.doctype, +.token.cdata { + color: slategray; +} + +.token.punctuation { + color: #f8f8f2; +} + +.namespace { + opacity: .7; +} + +.token.property, +.token.tag, +.token.constant, +.token.symbol, +.token.deleted { + color: #f92672; +} + +.token.boolean, +.token.number { + color: #ae81ff; +} + +.token.selector, +.token.attr-name, +.token.string, +.token.char, +.token.builtin, +.token.inserted { + color: #a6e22e; +} + +.token.operator, +.token.entity, +.token.url, +.language-css .token.string, +.style .token.string, +.token.variable { + color: #f8f8f2; +} + +.token.atrule, +.token.attr-value, +.token.function { + color: #e6db74; +} + +.token.keyword { + color: #66d9ef; +} + +.token.regex, +.token.important { + color: #fd971f; +} + +.token.important, +.token.bold { + font-weight: bold; +} +.token.italic { + font-style: italic; +} + +.token.entity { + cursor: help; +} + diff --git a/Project-Unite/Content/bootstrap-theme.css b/Project-Unite/Content/bootstrap-theme.css new file mode 100644 index 0000000..6647e30 --- /dev/null +++ b/Project-Unite/Content/bootstrap-theme.css @@ -0,0 +1,6278 @@ +/* Dark Admin Bootstrap Theme by PrepBootstrap - http://www.prepbootstrap.com */ +html { + font-family: sans-serif; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + font-size: 2em; + margin: 0.67em 0; +} +mark { + background: #ff0; + color: #000; +} +small { + font-size: 80%; +} +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} +sup { + top: -0.5em; +} +sub { + bottom: -0.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + -moz-box-sizing: content-box; + box-sizing: content-box; + height: 0; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + color: inherit; + font: inherit; + margin: 0; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + border: 0; + padding: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-appearance: textfield; + -moz-box-sizing: content-box; + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + border: 1px solid #c0c0c0; + margin: 0 2px; + padding: 0.35em 0.625em 0.75em; +} +legend { + border: 0; + padding: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-collapse: collapse; + border-spacing: 0; +} +td, +th { + padding: 0; +} +@media print { + * { + text-shadow: none !important; + color: #000 !important; + background: transparent !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="javascript:"]:after, + a[href^="#"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + select { + background: #fff !important; + } + .navbar { + display: none; + } + .table td, + .table th { + background-color: #fff !important; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 62.5%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #BDBDBD; + background-color: #060606; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #2a9fd6; + text-decoration: none; +} +a:hover, +a:focus { + color: #2a9fd6; + text-decoration: underline; +} +a:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + padding: 4px; + line-height: 1.42857143; + background-color: #060606; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; + display: inline-block; + max-width: 100%; + height: auto; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #282828; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + margin: -1px; + padding: 0; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: "Droid Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; + font-weight: 500; + line-height: 1.1; + color: #ffffff; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #BDBDBD; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 200; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +cite { + font-style: normal; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-muted { + color: #BDBDBD; +} +.text-primary { + color: #2a9fd6; +} +a.text-primary:hover { + color: #2180ac; +} +.text-success { + color: #ffffff; +} +a.text-success:hover { + color: #e6e6e6; +} +.text-info { + color: #ffffff; +} +a.text-info:hover { + color: #e6e6e6; +} +.text-warning { + color: #ffffff; +} +a.text-warning:hover { + color: #e6e6e6; +} +.text-danger { + color: #ffffff; +} +a.text-danger:hover { + color: #e6e6e6; +} +.bg-primary { + color: #fff; + background-color: #2a9fd6; +} +a.bg-primary:hover { + background-color: #2180ac; +} +.bg-success { + background-color: #77b300; +} +a.bg-success:hover { + background-color: #558000; +} +.bg-info { + background-color: #9933cc; +} +a.bg-info:hover { + background-color: #7a29a3; +} +.bg-warning { + background-color: #ff8800; +} +a.bg-warning:hover { + background-color: #cc6d00; +} +.bg-danger { + background-color: #cc0000; +} +a.bg-danger:hover { + background-color: #990000; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #282828; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + list-style: none; + margin-left: -5px; +} +.list-inline > li { + display: inline-block; + padding-left: 5px; + padding-right: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + clear: left; + text-align: right; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #BDBDBD; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #282828; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #555555; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #282828; + border-left: 0; + text-align: right; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +blockquote:before, +blockquote:after { + content: ""; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + white-space: nowrap; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #ffffff; + background-color: #333333; + border-radius: 3px; + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + word-break: break-all; + word-wrap: break-word; + color: #282828; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + margin-right: auto; + margin-left: auto; + padding-left: 15px; + padding-right: 15px; +} +.row { + margin-left: -15px; + margin-right: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-left: 15px; + padding-right: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: 0%; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: 0%; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0%; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: 0%; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: 0%; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0%; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: 0%; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: 0%; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0%; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: 0%; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: 0%; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0%; + } +} +table { + max-width: 100%; + background-color: #181818; +} +th { + text-align: left; +} +.table { + width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #282828; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #282828; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #282828; +} +.table .table { + background-color: #060606; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #282828; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #282828; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-child(odd) > td, +.table-striped > tbody > tr:nth-child(odd) > th { + background-color: #080808; +} +.table-hover > tbody > tr:hover > td, +.table-hover > tbody > tr:hover > th { + background-color: #282828; +} +table col[class*="col-"] { + position: static; + float: none; + display: table-column; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + float: none; + display: table-cell; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #282828; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr.active:hover > th { + background-color: #1b1b1b; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #77b300; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr.success:hover > th { + background-color: #669a00; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #9933cc; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr.info:hover > th { + background-color: #8a2eb8; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #ff8800; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr.warning:hover > th { + background-color: #e67a00; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #cc0000; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr.danger:hover > th { + background-color: #b30000; +} +@media (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + overflow-x: scroll; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #282828; + -webkit-overflow-scrolling: touch; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + padding: 0; + margin: 0; + border: 0; + min-width: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #BDBDBD; + border: 0; + border-bottom: 1px solid #282828; +} +label { + display: inline-block; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + /* IE8-9 */ + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 9px; + font-size: 14px; + line-height: 1.42857143; + color: #BDBDBD; +} +.form-control { + display: block; + width: 100%; + height: 38px; + padding: 8px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #BDBDBD; + background-color: #ffffff; + background-image: none; + border: 1px solid #282828; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); +} +.form-control::-moz-placeholder { + color: #BDBDBD; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #BDBDBD; +} +.form-control::-webkit-input-placeholder { + color: #BDBDBD; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + cursor: not-allowed; + background-color: #adafae; + opacity: 1; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +input[type="date"] { + line-height: 38px; +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + display: block; + min-height: 20px; + margin-top: 10px; + margin-bottom: 10px; + padding-left: 20px; +} +.radio label, +.checkbox label { + display: inline; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + float: left; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + vertical-align: middle; + font-weight: normal; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +.radio[disabled], +.radio-inline[disabled], +.checkbox[disabled], +.checkbox-inline[disabled], +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"], +fieldset[disabled] .radio, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.input-lg { + height: 54px; + padding: 14px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +select.input-lg { + height: 54px; + line-height: 54px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 47.5px; +} +.has-feedback .form-control-feedback { + position: absolute; + top: 25px; + right: 0; + display: block; + width: 38px; + height: 38px; + line-height: 38px; + text-align: center; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline { + color: #ffffff; +} +.has-success .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-success .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; +} +.has-success .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #77b300; +} +.has-success .form-control-feedback { + color: #ffffff; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline { + color: #ffffff; +} +.has-warning .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-warning .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; +} +.has-warning .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #ff8800; +} +.has-warning .form-control-feedback { + color: #ffffff; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline { + color: #ffffff; +} +.has-error .form-control { + border-color: #ffffff; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} +.has-error .form-control:focus { + border-color: #e6e6e6; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ffffff; +} +.has-error .input-group-addon { + color: #ffffff; + border-color: #ffffff; + background-color: #cc0000; +} +.has-error .form-control-feedback { + color: #ffffff; +} +.form-control-static { + margin-bottom: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #c8c8c8; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; + vertical-align: middle; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .control-label, +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + margin-top: 0; + margin-bottom: 0; + padding-top: 9px; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 29px; +} +.form-horizontal .form-group { + margin-left: -15px; + margin-right: -15px; +} +.form-horizontal .form-control-static { + padding-top: 9px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + top: 0; + right: 15px; +} +.btn { + display: inline-block; + margin-bottom: 0; + font-weight: normal; + text-align: center; + vertical-align: middle; + cursor: pointer; + background-image: none; + border: 1px solid transparent; + white-space: nowrap; + padding: 8px 12px; + font-size: 14px; + line-height: 1.42857143; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus { + outline: thin dotted; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus { + color: #ffffff; + text-decoration: none; +} +.btn:active, +.btn.active { + outline: 0; + background-image: none; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + pointer-events: none; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-default { + color: #ffffff; + background-color: #424242; + border-color: #424242; +} +.btn-default:hover, +.btn-default:focus, +.btn-default:active, +.btn-default.active, +.open .dropdown-toggle.btn-default { + color: #ffffff; + background-color: #2d2d2d; + border-color: #232323; +} +.btn-default:active, +.btn-default.active, +.open .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #424242; + border-color: #424242; +} +.btn-default .badge { + color: #424242; + background-color: #ffffff; +} +.btn-primary { + color: #ffffff; + background-color: #2a9fd6; + border-color: #2a9fd6; +} +.btn-primary:hover, +.btn-primary:focus, +.btn-primary:active, +.btn-primary.active, +.open .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #2386b4; + border-color: #1f79a3; +} +.btn-primary:active, +.btn-primary.active, +.open .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #2a9fd6; + border-color: #2a9fd6; +} +.btn-primary .badge { + color: #2a9fd6; + background-color: #ffffff; +} +.btn-success { + color: #ffffff; + background-color: #77b300; + border-color: #77b300; +} +.btn-success:hover, +.btn-success:focus, +.btn-success:active, +.btn-success.active, +.open .dropdown-toggle.btn-success { + color: #ffffff; + background-color: #5c8a00; + border-color: #4e7600; +} +.btn-success:active, +.btn-success.active, +.open .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #77b300; + border-color: #77b300; +} +.btn-success .badge { + color: #77b300; + background-color: #ffffff; +} +.btn-info { + color: #ffffff; + background-color: #9933cc; + border-color: #9933cc; +} +.btn-info:hover, +.btn-info:focus, +.btn-info:active, +.btn-info.active, +.open .dropdown-toggle.btn-info { + color: #ffffff; + background-color: #812bab; + border-color: #74279b; +} +.btn-info:active, +.btn-info.active, +.open .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #9933cc; + border-color: #9933cc; +} +.btn-info .badge { + color: #9933cc; + background-color: #ffffff; +} +.btn-warning { + color: #ffffff; + background-color: #ff8800; + border-color: #ff8800; +} +.btn-warning:hover, +.btn-warning:focus, +.btn-warning:active, +.btn-warning.active, +.open .dropdown-toggle.btn-warning { + color: #ffffff; + background-color: #d67200; + border-color: #c26700; +} +.btn-warning:active, +.btn-warning.active, +.open .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #ff8800; + border-color: #ff8800; +} +.btn-warning .badge { + color: #ff8800; + background-color: #ffffff; +} +.btn-danger { + color: #ffffff; + background-color: #cc0000; + border-color: #cc0000; +} +.btn-danger:hover, +.btn-danger:focus, +.btn-danger:active, +.btn-danger.active, +.open .dropdown-toggle.btn-danger { + color: #ffffff; + background-color: #a30000; + border-color: #8f0000; +} +.btn-danger:active, +.btn-danger.active, +.open .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #cc0000; + border-color: #cc0000; +} +.btn-danger .badge { + color: #cc0000; + background-color: #ffffff; +} +.btn-link { + color: #2a9fd6; + font-weight: normal; + cursor: pointer; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #2a9fd6; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #BDBDBD; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 14px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; + padding-left: 0; + padding-right: 0; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + transition: height 0.35s ease; +} +@font-face { + font-family: 'Glyphicons Halflings'; + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\2a"; +} +.glyphicon-plus:before { + content: "\2b"; +} +.glyphicon-euro:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px solid; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + list-style: none; + font-size: 14px; + background-color: #222222; + border: 1px solid #444444; + border: 1px solid rgba(255, 255, 255, 0.1); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + background-clip: padding-box; +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: rgba(255, 255, 255, 0.1); +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #ffffff; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + text-decoration: none; + color: #ffffff; + background-color: #2a9fd6; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + outline: 0; + background-color: #2a9fd6; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #BDBDBD; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); + cursor: not-allowed; +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + left: auto; + right: 0; +} +.dropdown-menu-left { + left: 0; + right: auto; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #BDBDBD; +} +.dropdown-backdrop { + position: fixed; + left: 0; + right: 0; + bottom: 0; + top: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0; + border-bottom: 4px solid; + content: ""; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + left: auto; + right: 0; + } + .navbar-right .dropdown-menu-left { + left: 0; + right: auto; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus { + outline: none; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child > .btn:last-child, +.btn-group > .btn-group:first-child > .dropdown-toggle { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.btn-group > .btn-group:last-child > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-left: 8px; + padding-right: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-left: 12px; + padding-right: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-bottom-left-radius: 4px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + float: none; + display: table-cell; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +[data-toggle="buttons"] > .btn > input[type="radio"], +[data-toggle="buttons"] > .btn > input[type="checkbox"] { + display: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-left: 0; + padding-right: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 54px; + padding: 14px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 54px; + line-height: 54px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 8px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #BDBDBD; + text-align: center; + background-color: #adafae; + border: 1px solid #282828; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 14px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-top-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + margin-left: -1px; +} +.nav { + margin-bottom: 0; + padding-left: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #222222; +} +.nav > li.disabled > a { + color: #BDBDBD; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #BDBDBD; + text-decoration: none; + background-color: transparent; + cursor: not-allowed; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #222222; + border-color: #2a9fd6; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #282828; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: transparent transparent #282828; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #ffffff; + background-color: #2a9fd6; + border: 1px solid #282828; + border-bottom-color: transparent; + cursor: default; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #060606; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #ffffff; + background-color: #2a9fd6; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + text-align: center; + margin-bottom: 5px; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #dddddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #dddddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #060606; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + max-height: 340px; + overflow-x: visible; + padding-right: 15px; + padding-left: 15px; + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-left: 0; + padding-right: 0; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; + height: 50px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + margin-right: 15px; + padding: 9px 10px; + margin-top: 8px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: none; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } + .navbar-nav.navbar-right:last-child { + margin-right: -15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + } +} +.navbar-form { + margin-left: -15px; + margin-right: -15px; + padding: 10px 15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + margin-top: 6px; + margin-bottom: 6px; +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + padding-left: 0; + vertical-align: middle; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + border: 0; + margin-left: 0; + margin-right: 0; + padding-top: 0; + padding-bottom: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-form.navbar-right:last-child { + margin-right: -15px; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 6px; + margin-bottom: 6px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-left: 15px; + margin-right: 15px; + } + .navbar-text.navbar-right:last-child { + margin-right: 0; + } +} +.navbar-default { + background-color: #060606; + border-color: #000000; +} +.navbar-default .navbar-brand { + color: #ffffff; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #BDBDBD; +} +.navbar-default .navbar-nav > li > a { + color: #BDBDBD; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #BDBDBD; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #282828; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #282828; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #cccccc; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #000000; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + background-color: transparent; + color: #ffffff; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #BDBDBD; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #BDBDBD; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #BDBDBD; +} +.navbar-default .navbar-link:hover { + color: #ffffff; +} +.navbar-inverse { + background-color: #222222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #ffffff; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #BDBDBD; +} +.navbar-inverse .navbar-nav > li > a { + color: #BDBDBD; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #aaaaaa; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #ffffff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + background-color: transparent; + color: #ffffff; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #BDBDBD; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #aaaaaa; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #BDBDBD; +} +.navbar-inverse .navbar-link:hover { + color: #ffffff; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #222222; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + content: "/\00a0"; + padding: 0 5px; + color: #ffffff; +} +.breadcrumb > .active { + color: #BDBDBD; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 8px 12px; + line-height: 1.42857143; + text-decoration: none; + color: #ffffff; + background-color: #222222; + border: 1px solid #282828; + margin-left: -1px; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-bottom-right-radius: 4px; + border-top-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + color: #ffffff; + background-color: #2a9fd6; + border-color: transparent; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 2; + color: #ffffff; + background-color: #2a9fd6; + border-color: transparent; + cursor: default; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #BDBDBD; + background-color: #222222; + border-color: #282828; + cursor: not-allowed; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 14px 16px; + font-size: 18px; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-bottom-right-radius: 6px; + border-top-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-bottom-right-radius: 3px; + border-top-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + list-style: none; + text-align: center; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #222222; + border: 1px solid #282828; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #2a9fd6; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #BDBDBD; + background-color: #222222; + cursor: not-allowed; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +.label[href]:hover, +.label[href]:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #424242; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #282828; +} +.label-primary { + background-color: #2a9fd6; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #2180ac; +} +.label-success { + background-color: #77b300; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #558000; +} +.label-info { + background-color: #9933cc; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #7a29a3; +} +.label-warning { + background-color: #ff8800; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #cc6d00; +} +.label-danger { + background-color: #cc0000; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #990000; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + color: #ffffff; + line-height: 1; + vertical-align: baseline; + white-space: nowrap; + text-align: center; + background-color: #2a9fd6; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} +a.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #2a9fd6; + background-color: #ffffff; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #151515; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.container .jumbotron { + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron { + padding-left: 60px; + padding-right: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #060606; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-left: auto; + margin-right: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #2a9fd6; +} +.thumbnail .caption { + padding: 9px; + color: #BDBDBD; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable { + padding-right: 35px; +} +.alert-dismissable .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + background-color: #77b300; + border-color: #809a00; + color: #ffffff; +} +.alert-success hr { + border-top-color: #6a8000; +} +.alert-success .alert-link { + color: #e6e6e6; +} +.alert-info { + background-color: #9933cc; + border-color: #6e2caf; + color: #ffffff; +} +.alert-info hr { + border-top-color: #61279b; +} +.alert-info .alert-link { + color: #e6e6e6; +} +.alert-warning { + background-color: #ff8800; + border-color: #f05800; + color: #ffffff; +} +.alert-warning hr { + border-top-color: #d64f00; +} +.alert-warning .alert-link { + color: #e6e6e6; +} +.alert-danger { + background-color: #cc0000; + border-color: #bd001f; + color: #ffffff; +} +.alert-danger hr { + border-top-color: #a3001b; +} +.alert-danger .alert-link { + color: #e6e6e6; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + overflow: hidden; + height: 20px; + margin-bottom: 20px; + background-color: #222222; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} +.progress-bar { + float: left; + width: 0%; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #ffffff; + text-align: center; + background-color: #2a9fd6; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + transition: width 0.6s ease; +} +.progress-striped .progress-bar { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 40px 40px; +} +.progress.active .progress-bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #77b300; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #9933cc; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #ff8800; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #cc0000; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media, +.media .media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media-object { + display: block; +} +.media-heading { + margin: 0 0 5px; +} +.media > .pull-left { + margin-right: 10px; +} +.media > .pull-right { + margin-left: 10px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + margin-bottom: 20px; + padding-left: 0; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #222222; + border: 1px solid #282828; +} +.list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +a.list-group-item { + color: #BDBDBD; +} +a.list-group-item .list-group-item-heading { + color: #ffffff; +} +a.list-group-item:hover, +a.list-group-item:focus { + text-decoration: none; + background-color: #484848; +} +a.list-group-item.active, +a.list-group-item.active:hover, +a.list-group-item.active:focus { + z-index: 2; + color: #ffffff; + background-color: #2a9fd6; + border-color: #2a9fd6; +} +a.list-group-item.active .list-group-item-heading, +a.list-group-item.active:hover .list-group-item-heading, +a.list-group-item.active:focus .list-group-item-heading { + color: inherit; +} +a.list-group-item.active .list-group-item-text, +a.list-group-item.active:hover .list-group-item-text, +a.list-group-item.active:focus .list-group-item-text { + color: #d5ecf7; +} +.list-group-item-success { + color: #ffffff; + background-color: #77b300; +} +a.list-group-item-success { + color: #ffffff; +} +a.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +a.list-group-item-success:focus { + color: #ffffff; + background-color: #669a00; +} +a.list-group-item-success.active, +a.list-group-item-success.active:hover, +a.list-group-item-success.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff; +} +.list-group-item-info { + color: #ffffff; + background-color: #9933cc; +} +a.list-group-item-info { + color: #ffffff; +} +a.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +a.list-group-item-info:focus { + color: #ffffff; + background-color: #8a2eb8; +} +a.list-group-item-info.active, +a.list-group-item-info.active:hover, +a.list-group-item-info.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff; +} +.list-group-item-warning { + color: #ffffff; + background-color: #ff8800; +} +a.list-group-item-warning { + color: #ffffff; +} +a.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +a.list-group-item-warning:focus { + color: #ffffff; + background-color: #e67a00; +} +a.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff; +} +.list-group-item-danger { + color: #ffffff; + background-color: #cc0000; +} +a.list-group-item-danger { + color: #ffffff; +} +a.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +a.list-group-item-danger:focus { + color: #ffffff; + background-color: #b30000; +} +a.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus { + color: #fff; + background-color: #ffffff; + border-color: #ffffff; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #222222; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #3c3c3c; + border-top: 1px solid #282828; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table { + margin-bottom: 0; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive { + border-top: 1px solid #282828; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + border: 0; + margin-bottom: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; + overflow: hidden; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse .panel-body { + border-top: 1px solid #282828; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #282828; +} +.panel-default { + border-color: #282828; +} +.panel-default > .panel-heading { + color: #BDBDBD; + background-color: #3c3c3c; + border-color: #282828; +} +.panel-default > .panel-heading + .panel-collapse .panel-body { + border-top-color: #282828; +} +.panel-default > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #282828; +} +.panel-primary { + border-color: #2a9fd6; +} +.panel-primary > .panel-heading { + color: #ffffff; + background-color: #2a9fd6; + border-color: #2a9fd6; +} +.panel-primary > .panel-heading + .panel-collapse .panel-body { + border-top-color: #2a9fd6; +} +.panel-primary > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #2a9fd6; +} +.panel-success { + border-color: #809a00; +} +.panel-success > .panel-heading { + color: #ffffff; + background-color: #77b300; + border-color: #809a00; +} +.panel-success > .panel-heading + .panel-collapse .panel-body { + border-top-color: #809a00; +} +.panel-success > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #809a00; +} +.panel-info { + border-color: #6e2caf; +} +.panel-info > .panel-heading { + color: #ffffff; + background-color: #9933cc; + border-color: #6e2caf; +} +.panel-info > .panel-heading + .panel-collapse .panel-body { + border-top-color: #6e2caf; +} +.panel-info > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #6e2caf; +} +.panel-warning { + border-color: #f05800; +} +.panel-warning > .panel-heading { + color: #ffffff; + background-color: #ff8800; + border-color: #f05800; +} +.panel-warning > .panel-heading + .panel-collapse .panel-body { + border-top-color: #f05800; +} +.panel-warning > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #f05800; +} +.panel-danger { + border-color: #bd001f; +} +.panel-danger > .panel-heading { + color: #ffffff; + background-color: #cc0000; + border-color: #bd001f; +} +.panel-danger > .panel-heading + .panel-collapse .panel-body { + border-top-color: #bd001f; +} +.panel-danger > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #bd001f; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #151515; + border: 1px solid #030303; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} +.close:hover, +.close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} +.modal-open { + overflow: hidden; +} +.modal { + display: none; + overflow: auto; + overflow-y: scroll; + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #202020; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; + outline: none; +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000000; +} +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #282828; + min-height: 16.42857143px; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 20px; +} +.modal-footer { + margin-top: 15px; + padding: 19px 20px 20px; + text-align: right; + border-top: 1px solid #282828; +} +.modal-footer .btn + .btn { + margin-left: 5px; + margin-bottom: 0; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1030; + display: block; + visibility: visible; + font-size: 12px; + line-height: 1.4; + opacity: 0; + filter: alpha(opacity=0); +} +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90); +} +.tooltip.top { + margin-top: -3px; + padding: 5px 0; +} +.tooltip.right { + margin-left: 3px; + padding: 0 5px; +} +.tooltip.bottom { + margin-top: 3px; + padding: 5px 0; +} +.tooltip.left { + margin-left: -3px; + padding: 0 5px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #ffffff; + text-align: center; + text-decoration: none; + background-color: rgba(0, 0, 0, 0.9); + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: rgba(0, 0, 0, 0.9); +} +.tooltip.top-left .tooltip-arrow { + bottom: 0; + left: 5px; + border-width: 5px 5px 0; + border-top-color: rgba(0, 0, 0, 0.9); +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + right: 5px; + border-width: 5px 5px 0; + border-top-color: rgba(0, 0, 0, 0.9); +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: rgba(0, 0, 0, 0.9); +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: rgba(0, 0, 0, 0.9); +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: rgba(0, 0, 0, 0.9); +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + left: 5px; + border-width: 0 5px 5px; + border-bottom-color: rgba(0, 0, 0, 0.9); +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + right: 5px; + border-width: 0 5px 5px; + border-bottom-color: rgba(0, 0, 0, 0.9); +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + max-width: 276px; + padding: 1px; + text-align: left; + background-color: #202020; + background-clip: padding-box; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + white-space: normal; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + margin: 0; + padding: 8px 14px; + font-size: 14px; + font-weight: normal; + line-height: 18px; + background-color: #181818; + border-bottom: 1px solid #0b0b0b; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + border-width: 10px; + content: ""; +} +.popover.top > .arrow { + left: 50%; + margin-left: -11px; + border-bottom-width: 0; + border-top-color: #666666; + border-top-color: rgba(0, 0, 0, 0.25); + bottom: -11px; +} +.popover.top > .arrow:after { + content: " "; + bottom: 1px; + margin-left: -10px; + border-bottom-width: 0; + border-top-color: #202020; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-left-width: 0; + border-right-color: #666666; + border-right-color: rgba(0, 0, 0, 0.25); +} +.popover.right > .arrow:after { + content: " "; + left: 1px; + bottom: -10px; + border-left-width: 0; + border-right-color: #202020; +} +.popover.bottom > .arrow { + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #666666; + border-bottom-color: rgba(0, 0, 0, 0.25); + top: -11px; +} +.popover.bottom > .arrow:after { + content: " "; + top: 1px; + margin-left: -10px; + border-top-width: 0; + border-bottom-color: #202020; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #666666; + border-left-color: rgba(0, 0, 0, 0.25); +} +.popover.left > .arrow:after { + content: " "; + right: 1px; + border-right-width: 0; + border-left-color: #202020; + bottom: -10px; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + overflow: hidden; + width: 100%; +} +.carousel-inner > .item { + display: none; + position: relative; + -webkit-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 15%; + opacity: 0.5; + filter: alpha(opacity=50); + font-size: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0%), color-stop(rgba(0, 0, 0, 0.0001) 100%)); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} +.carousel-control.right { + left: auto; + right: 0; + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0%), color-stop(rgba(0, 0, 0, 0.5) 100%)); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} +.carousel-control:hover, +.carousel-control:focus { + outline: none; + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + margin-top: -10px; + margin-left: -10px; + font-family: serif; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + margin-left: -30%; + padding-left: 0; + list-style: none; + text-align: center; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + border: 1px solid #ffffff; + border-radius: 10px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); +} +.carousel-indicators .active { + margin: 0; + width: 12px; + height: 12px; + background-color: #ffffff; +} +.carousel-caption { + position: absolute; + left: 15%; + right: 15%; + bottom: 20px; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + margin-left: -15px; + font-size: 30px; + } + .carousel-caption { + left: 20%; + right: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +.navbar { + border-bottom: 1px solid #282828; +} +.text-primary, +.text-primary:hover { + color: #2a9fd6; +} +.text-success, +.text-success:hover { + color: #77b300; +} +.text-danger, +.text-danger:hover { + color: #cc0000; +} +.text-warning, +.text-warning:hover { + color: #ff8800; +} +.text-info, +.text-info:hover { + color: #9933cc; +} +table, +.table { + color: #fff; +} +table a, +.table a { + color: #fff; + text-decoration: underline; +} +.table-responsive > .table { + background-color: #181818; +} +.has-warning .help-block, +.has-warning .control-label { + color: #ff8800; +} +.has-warning .form-control, +.has-warning .form-control:focus { + border-color: #ff8800; +} +.has-error .help-block, +.has-error .control-label { + color: #cc0000; +} +.has-error .form-control, +.has-error .form-control:focus { + border-color: #cc0000; +} +.has-success .help-block, +.has-success .control-label { + color: #77b300; +} +.has-success .form-control, +.has-success .form-control:focus { + border-color: #77b300; +} +legend { + color: #fff; +} +.input-group-addon { + background-color: #424242; +} +.nav .caret, +.nav a:hover .caret { + border-top-color: #fff; + border-bottom-color: #fff; +} +.nav-tabs a, +.nav-pills a, +.breadcrumb a, +.pager a { + color: #fff; +} +.alert .alert-link, +.alert a { + color: #ffffff; + text-decoration: underline; +} +.alert .close { + color: #fff; + text-decoration: none; + opacity: 0.4; +} +.alert .close:hover, +.alert .close:focus { + color: #fff; + opacity: 1; +} +.jumbotron h1, +.jumbotron h2, +.jumbotron h3, +.jumbotron h4, +.jumbotron h5, +.jumbotron h6 { + color: #fff; +} +.clearfix:before, +.clearfix:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-footer:before, +.modal-footer:after { + content: " "; + display: table; +} +.clearfix:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-left: auto; + margin-right: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; + visibility: hidden !important; +} +.affix { + position: fixed; +} + + +body { + margin-top: 70px; +} + +#wrapper { + padding-left: 0; +} + +#page-wrapper { + width: 100%; + padding: 5px 15px; +} + +/* Nav Messages */ + +.messages-dropdown .dropdown-menu .message-preview .avatar, +.messages-dropdown .dropdown-menu .message-preview .name, +.messages-dropdown .dropdown-menu .message-preview .message, +.messages-dropdown .dropdown-menu .message-preview .time { + display: block; +} + +.messages-dropdown .dropdown-menu .message-preview .avatar { + float: left; + margin-right: 15px; +} + +.messages-dropdown .dropdown-menu .message-preview .name { + font-weight: bold; +} + +.messages-dropdown .dropdown-menu .message-preview .message { + font-size: 12px; +} + +.messages-dropdown .dropdown-menu .message-preview .time { + font-size: 12px; +} + + +/* Nav Announcements */ + +.alerts-heading { + font-size: 50px; + margin: 0; +} + +.alerts-text { + margin: 0; +} + +/* Table Headers */ + +table.tablesorter thead { + cursor: pointer; +} + +table.tablesorter thead tr th:hover { + background-color: #f5f5f5; +} + +/* Edit Below to Customize Widths > 768px */ +@media (min-width:768px) { + + /* Wrappers */ + + #wrapper { + padding-left: 225px; + } + + #page-wrapper { + padding: 15px 25px; + } + + /* Side Nav */ + + .side-nav { + margin-left: -225px; + left: 225px; + width: 225px; + position: fixed; + top: 50px; + height: 100%; + border-radius: 0; + border: none; + background-color: #222222; + overflow-y: auto; + } + + /*menu overrides*/ + .side-nav>li.dropdown>ul.dropdown-menu { + position: relative; + min-width: 225px; + margin: 0; + padding: 0; + border: none; + border-radius: 0; + background-color: transparent; + box-shadow: none; + -webkit-box-shadow: none; + } + + .side-nav>li.dropdown>ul.dropdown-menu>li>a { + color: #999999; + padding: 15px 15px 15px 25px; + } + + .side-nav>li.dropdown>ul.dropdown-menu>li>a:hover, + .side-nav>li.dropdown>ul.dropdown-menu>li>a.active, + .side-nav>li.dropdown>ul.dropdown-menu>li>a:focus { + color: #fff; + background-color: #080808; + } + + .side-nav>li>a { + width: 225px; + } + + .navbar-inverse .navbar-nav>li>a:hover, + .navbar-inverse .navbar-nav>li>a:focus { + background-color: #080808; + } + + /* Nav Messages */ + + .messages-dropdown .dropdown-menu { + min-width: 300px; + } + + .messages-dropdown .dropdown-menu li a { + white-space: normal; + } + + .navbar-collapse { + padding-left: 15px !important; + padding-right: 15px !important; + } + +} + +.divider-vertical { + border-right: 1px solid #000000; + height: 50px; + margin: 0 9px; + overflow: hidden; + width: 1px; +} +.navbar-search +{ + padding-right: 27px; + padding-top: 7px; +} + +/*Feed*/ + +.feed-item:before, .feed-item:after { + content: " "; + display: block; + height: 11px; +} +.feed-item .icon { + color: #FFFFFF; + font-size: 16px; + height: 28px; + line-height: 28px; + padding-left: 11px; + position: relative; + text-align: center; + vertical-align: middle; + width: 28px; + z-index: 1; +} +.pull-left { + float: left; +} +.feed-item-body { + margin-left: 40px; + padding-top: 3px; + vertical-align: bottom; +} +.feed-item-body .time { + color: #D2D2D2; + font-size: 11.05px; + line-height: 1.5em; +} +.feed +{ + height: 430px; + overflow: hidden; + position: relative; + width: auto; + color: #F8F8F8; +} + +.news-list,.server-stats { + list-style: none outside none; + padding-left: 0; +} + +.news-list img, .news-list .icon, .users-list img, .users-list .icon { + float: left; + height: 50px; + width: 50px; + margin-right: 20px; +} +.news-list li, .users-list li { + -moz-box-sizing: content-box; + border-top: 1px solid rgba(51, 51, 51, 0.25); + cursor: pointer; + height: 67px; + + padding-bottom: 12px; + transition: background-color 0.2s ease-out 0s; +} + +.selected { + border-left:7px solid #2A9FD6; +} + + .timeline { + list-style: none; + padding: 20px 0 20px; + position: relative; + } + + .timeline:before { + top: 0; + bottom: 0; + position: absolute; + content: " "; + width: 3px; + background-color: #eeeeee; + left: 50%; + margin-left: -1.5px; + } + + .timeline > li { + margin-bottom: 20px; + position: relative; + } + + .timeline > li:before, + .timeline > li:after { + content: " "; + display: table; + } + + .timeline > li:after { + clear: both; + } + + .timeline > li:before, + .timeline > li:after { + content: " "; + display: table; + } + + .timeline > li:after { + clear: both; + } + + .timeline > li > .timeline-panel { + width: 46%; + float: left; + border: 1px solid #d4d4d4; + border-radius: 2px; + padding: 20px; + position: relative; + -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175); + box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175); + } + + .timeline > li > .timeline-panel:before { + position: absolute; + top: 26px; + right: -15px; + display: inline-block; + border-top: 15px solid transparent; + border-left: 15px solid #ccc; + border-right: 0 solid #ccc; + border-bottom: 15px solid transparent; + content: " "; + } + + .timeline > li > .timeline-panel:after { + position: absolute; + top: 27px; + right: -14px; + display: inline-block; + border-top: 14px solid transparent; + border-left: 14px solid #fff; + border-right: 0 solid #fff; + border-bottom: 14px solid transparent; + content: " "; + } + + .timeline > li > .timeline-badge { + border:3px solid white; + color: #fff; + width: 50px; + height: 50px; + line-height: 50px; + font-size: 1.4em; + text-align: center; + position: absolute; + top: 16px; + left: 50%; + margin-left: -25px; + background-color: #999999; + z-index: 100; + border-top-right-radius: 50%; + border-top-left-radius: 50%; + border-bottom-right-radius: 50%; + border-bottom-left-radius: 50%; + } + + .timeline > li.timeline-inverted > .timeline-panel { + float: right; + } + + .timeline > li.timeline-inverted > .timeline-panel:before { + border-left-width: 0; + border-right-width: 15px; + left: -15px; + right: auto; + } + + .timeline > li.timeline-inverted > .timeline-panel:after { + border-left-width: 0; + border-right-width: 14px; + left: -14px; + right: auto; + } + + .timeline-badge.primary { + background-color: #2e6da4 !important; + } + + .timeline-badge.success { + background-color: #3f903f !important; + } + + .timeline-badge.warning { + background-color: #f0ad4e !important; + } + + .timeline-badge.danger { + background-color: #d9534f !important; + } + + .timeline-badge.info { + background-color: #5bc0de !important; + } + + .timeline-title { + margin-top: 0; + color: inherit; + } + + .timeline-body > p, + .timeline-body > ul { + margin-bottom: 0; + } + + .timeline-body > p + p { + margin-top: 5px; + } + +@media (max-width: 767px) { + ul.timeline:before { + left: 40px; + } + + ul.timeline > li > .timeline-panel { + width: calc(100% - 90px); + width: -moz-calc(100% - 90px); + width: -webkit-calc(100% - 90px); + } + + ul.timeline > li > .timeline-badge { + left: 15px; + margin-left: 0; + top: 16px; + } + + ul.timeline > li > .timeline-panel { + float: right; + } + + ul.timeline > li > .timeline-panel:before { + border-left-width: 0; + border-right-width: 15px; + left: -15px; + right: auto; + } + + ul.timeline > li > .timeline-panel:after { + border-left-width: 0; + border-right-width: 14px; + left: -14px; + right: auto; + } +} \ No newline at end of file diff --git a/Project-Unite/Content/bootstrap.css b/Project-Unite/Content/bootstrap.css new file mode 100644 index 0000000..6d6e682 --- /dev/null +++ b/Project-Unite/Content/bootstrap.css @@ -0,0 +1,6816 @@ +/* NUGET: BEGIN LICENSE TEXT + * + * Microsoft grants you the right to use these script files for the sole + * purpose of either: (i) interacting through your browser with the Microsoft + * website or online service, subject to the applicable licensing or use + * terms; or (ii) using the files as included with a Microsoft product subject + * to that product's license terms. Microsoft reserves all other rights to the + * files not expressly granted by Microsoft, whether by implication, estoppel + * or otherwise. The notices and licenses below are for informational purposes only. + * + * NUGET: END LICENSE TEXT */ +/*! + * Bootstrap v3.0.0 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + */ + +/*! normalize.css v2.1.0 | MIT License | git.io/normalize */ + +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +nav, +section, +summary { + display: block; +} + +audio, +canvas, +video { + display: inline-block; +} + +audio:not([controls]) { + display: none; + height: 0; +} + +[hidden] { + display: none; +} + +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} + +body { + margin: 0; +} + +a:focus { + outline: thin dotted; +} + +a:active, +a:hover { + outline: 0; +} + +h1 { + margin: 0.67em 0; + font-size: 2em; +} + +abbr[title] { + border-bottom: 1px dotted; +} + +b, +strong { + font-weight: bold; +} + +dfn { + font-style: italic; +} + +hr { + height: 0; + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +mark { + color: #000; + background: #ff0; +} + +code, +kbd, +pre, +samp { + font-family: monospace, serif; + font-size: 1em; +} + +pre { + white-space: pre-wrap; +} + +q { + quotes: "\201C" "\201D" "\2018" "\2019"; +} + +small { + font-size: 80%; +} + +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} + +sup { + top: -0.5em; +} + +sub { + bottom: -0.25em; +} + +img { + border: 0; +} + +svg:not(:root) { + overflow: hidden; +} + +figure { + margin: 0; +} + +fieldset { + padding: 0.35em 0.625em 0.75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} + +legend { + padding: 0; + border: 0; +} + +button, +input, +select, +textarea { + margin: 0; + font-family: inherit; + font-size: 100%; +} + +button, +input { + line-height: normal; +} + +button, +select { + text-transform: none; +} + +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + cursor: pointer; + -webkit-appearance: button; +} + +button[disabled], +html input[disabled] { + cursor: default; +} + +input[type="checkbox"], +input[type="radio"] { + padding: 0; + box-sizing: border-box; +} + +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} + +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} + +textarea { + overflow: auto; + vertical-align: top; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +@media print { + * { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + .ir a:after, + a[href^="javascript:"]:after, + a[href^="#"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + @page { + margin: 2cm .5cm; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .table td, + .table th { + background-color: #fff !important; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} + +*, +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +html { + font-size: 62.5%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.428571429; + color: #333333; + background-color: #ffffff; +} + +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +input, +select[multiple], +textarea { + background-image: none; +} + +a { + color: #428bca; + text-decoration: none; +} + +a:hover, +a:focus { + color: #2a6496; + text-decoration: underline; +} + +a:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +img { + vertical-align: middle; +} + +.img-responsive { + display: block; + height: auto; + max-width: 100%; +} + +.img-rounded { + border-radius: 6px; +} + +.img-thumbnail { + display: inline-block; + height: auto; + max-width: 100%; + padding: 4px; + line-height: 1.428571429; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} + +.img-circle { + border-radius: 50%; +} + +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eeeeee; +} + +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0 0 0 0); + border: 0; +} + +p { + margin: 0 0 10px; +} + +.lead { + margin-bottom: 20px; + font-size: 16.099999999999998px; + font-weight: 200; + line-height: 1.4; +} + +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} + +small { + font-size: 85%; +} + +cite { + font-style: normal; +} + +.text-muted { + color: #999999; +} + +.text-primary { + color: #428bca; +} + +.text-warning { + color: #c09853; +} + +.text-danger { + color: #b94a48; +} + +.text-success { + color: #468847; +} + +.text-info { + color: #3a87ad; +} + +.text-left { + text-align: left; +} + +.text-right { + text-align: right; +} + +.text-center { + text-align: center; +} + +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-weight: 500; + line-height: 1.1; +} + +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small { + font-weight: normal; + line-height: 1; + color: #999999; +} + +h1, +h2, +h3 { + margin-top: 20px; + margin-bottom: 10px; +} + +h4, +h5, +h6 { + margin-top: 10px; + margin-bottom: 10px; +} + +h1, +.h1 { + font-size: 36px; +} + +h2, +.h2 { + font-size: 30px; +} + +h3, +.h3 { + font-size: 24px; +} + +h4, +.h4 { + font-size: 18px; +} + +h5, +.h5 { + font-size: 14px; +} + +h6, +.h6 { + font-size: 12px; +} + +h1 small, +.h1 small { + font-size: 24px; +} + +h2 small, +.h2 small { + font-size: 18px; +} + +h3 small, +.h3 small, +h4 small, +.h4 small { + font-size: 14px; +} + +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eeeeee; +} + +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} + +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} + +dl { + margin-bottom: 20px; +} + +dt, +dd { + line-height: 1.428571429; +} + +dt { + font-weight: bold; +} + +dd { + margin-left: 0; +} + +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } + .dl-horizontal dd:before, + .dl-horizontal dd:after { + display: table; + content: " "; + } + .dl-horizontal dd:after { + clear: both; + } + .dl-horizontal dd:before, + .dl-horizontal dd:after { + display: table; + content: " "; + } + .dl-horizontal dd:after { + clear: both; + } +} + +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #999999; +} + +abbr.initialism { + font-size: 90%; + text-transform: uppercase; +} + +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + border-left: 5px solid #eeeeee; +} + +blockquote p { + font-size: 17.5px; + font-weight: 300; + line-height: 1.25; +} + +blockquote p:last-child { + margin-bottom: 0; +} + +blockquote small { + display: block; + line-height: 1.428571429; + color: #999999; +} + +blockquote small:before { + content: '\2014 \00A0'; +} + +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + border-right: 5px solid #eeeeee; + border-left: 0; +} + +blockquote.pull-right p, +blockquote.pull-right small { + text-align: right; +} + +blockquote.pull-right small:before { + content: ''; +} + +blockquote.pull-right small:after { + content: '\00A0 \2014'; +} + +q:before, +q:after, +blockquote:before, +blockquote:after { + content: ""; +} + +address { + display: block; + margin-bottom: 20px; + font-style: normal; + line-height: 1.428571429; +} + +code, +pre { + font-family: Monaco, Menlo, Consolas, "Courier New", monospace; +} + +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + white-space: nowrap; + background-color: #f9f2f4; + border-radius: 4px; +} + +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.428571429; + color: #333333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #cccccc; + border-radius: 4px; +} + +pre.prettyprint { + margin-bottom: 20px; +} + +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border: 0; +} + +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} + +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} + +.container:before, +.container:after { + display: table; + content: " "; +} + +.container:after { + clear: both; +} + +.container:before, +.container:after { + display: table; + content: " "; +} + +.container:after { + clear: both; +} + +.row { + margin-right: -15px; + margin-left: -15px; +} + +.row:before, +.row:after { + display: table; + content: " "; +} + +.row:after { + clear: both; +} + +.row:before, +.row:after { + display: table; + content: " "; +} + +.row:after { + clear: both; +} + +.col-xs-1, +.col-xs-2, +.col-xs-3, +.col-xs-4, +.col-xs-5, +.col-xs-6, +.col-xs-7, +.col-xs-8, +.col-xs-9, +.col-xs-10, +.col-xs-11, +.col-xs-12, +.col-sm-1, +.col-sm-2, +.col-sm-3, +.col-sm-4, +.col-sm-5, +.col-sm-6, +.col-sm-7, +.col-sm-8, +.col-sm-9, +.col-sm-10, +.col-sm-11, +.col-sm-12, +.col-md-1, +.col-md-2, +.col-md-3, +.col-md-4, +.col-md-5, +.col-md-6, +.col-md-7, +.col-md-8, +.col-md-9, +.col-md-10, +.col-md-11, +.col-md-12, +.col-lg-1, +.col-lg-2, +.col-lg-3, +.col-lg-4, +.col-lg-5, +.col-lg-6, +.col-lg-7, +.col-lg-8, +.col-lg-9, +.col-lg-10, +.col-lg-11, +.col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} + +.col-xs-1, +.col-xs-2, +.col-xs-3, +.col-xs-4, +.col-xs-5, +.col-xs-6, +.col-xs-7, +.col-xs-8, +.col-xs-9, +.col-xs-10, +.col-xs-11 { + float: left; +} + +.col-xs-1 { + width: 8.333333333333332%; +} + +.col-xs-2 { + width: 16.666666666666664%; +} + +.col-xs-3 { + width: 25%; +} + +.col-xs-4 { + width: 33.33333333333333%; +} + +.col-xs-5 { + width: 41.66666666666667%; +} + +.col-xs-6 { + width: 50%; +} + +.col-xs-7 { + width: 58.333333333333336%; +} + +.col-xs-8 { + width: 66.66666666666666%; +} + +.col-xs-9 { + width: 75%; +} + +.col-xs-10 { + width: 83.33333333333334%; +} + +.col-xs-11 { + width: 91.66666666666666%; +} + +.col-xs-12 { + width: 100%; +} + +@media (min-width: 768px) { + .container { + max-width: 750px; + } + .col-sm-1, + .col-sm-2, + .col-sm-3, + .col-sm-4, + .col-sm-5, + .col-sm-6, + .col-sm-7, + .col-sm-8, + .col-sm-9, + .col-sm-10, + .col-sm-11 { + float: left; + } + .col-sm-1 { + width: 8.333333333333332%; + } + .col-sm-2 { + width: 16.666666666666664%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-4 { + width: 33.33333333333333%; + } + .col-sm-5 { + width: 41.66666666666667%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-7 { + width: 58.333333333333336%; + } + .col-sm-8 { + width: 66.66666666666666%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-10 { + width: 83.33333333333334%; + } + .col-sm-11 { + width: 91.66666666666666%; + } + .col-sm-12 { + width: 100%; + } + .col-sm-push-1 { + left: 8.333333333333332%; + } + .col-sm-push-2 { + left: 16.666666666666664%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-4 { + left: 33.33333333333333%; + } + .col-sm-push-5 { + left: 41.66666666666667%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-7 { + left: 58.333333333333336%; + } + .col-sm-push-8 { + left: 66.66666666666666%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-10 { + left: 83.33333333333334%; + } + .col-sm-push-11 { + left: 91.66666666666666%; + } + .col-sm-pull-1 { + right: 8.333333333333332%; + } + .col-sm-pull-2 { + right: 16.666666666666664%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-4 { + right: 33.33333333333333%; + } + .col-sm-pull-5 { + right: 41.66666666666667%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-7 { + right: 58.333333333333336%; + } + .col-sm-pull-8 { + right: 66.66666666666666%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-10 { + right: 83.33333333333334%; + } + .col-sm-pull-11 { + right: 91.66666666666666%; + } + .col-sm-offset-1 { + margin-left: 8.333333333333332%; + } + .col-sm-offset-2 { + margin-left: 16.666666666666664%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-4 { + margin-left: 33.33333333333333%; + } + .col-sm-offset-5 { + margin-left: 41.66666666666667%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-7 { + margin-left: 58.333333333333336%; + } + .col-sm-offset-8 { + margin-left: 66.66666666666666%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-10 { + margin-left: 83.33333333333334%; + } + .col-sm-offset-11 { + margin-left: 91.66666666666666%; + } +} + +@media (min-width: 992px) { + .container { + max-width: 970px; + } + .col-md-1, + .col-md-2, + .col-md-3, + .col-md-4, + .col-md-5, + .col-md-6, + .col-md-7, + .col-md-8, + .col-md-9, + .col-md-10, + .col-md-11 { + float: left; + } + .col-md-1 { + width: 8.333333333333332%; + } + .col-md-2 { + width: 16.666666666666664%; + } + .col-md-3 { + width: 25%; + } + .col-md-4 { + width: 33.33333333333333%; + } + .col-md-5 { + width: 41.66666666666667%; + } + .col-md-6 { + width: 50%; + } + .col-md-7 { + width: 58.333333333333336%; + } + .col-md-8 { + width: 66.66666666666666%; + } + .col-md-9 { + width: 75%; + } + .col-md-10 { + width: 83.33333333333334%; + } + .col-md-11 { + width: 91.66666666666666%; + } + .col-md-12 { + width: 100%; + } + .col-md-push-0 { + left: auto; + } + .col-md-push-1 { + left: 8.333333333333332%; + } + .col-md-push-2 { + left: 16.666666666666664%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-4 { + left: 33.33333333333333%; + } + .col-md-push-5 { + left: 41.66666666666667%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-7 { + left: 58.333333333333336%; + } + .col-md-push-8 { + left: 66.66666666666666%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-10 { + left: 83.33333333333334%; + } + .col-md-push-11 { + left: 91.66666666666666%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-pull-1 { + right: 8.333333333333332%; + } + .col-md-pull-2 { + right: 16.666666666666664%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-4 { + right: 33.33333333333333%; + } + .col-md-pull-5 { + right: 41.66666666666667%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-7 { + right: 58.333333333333336%; + } + .col-md-pull-8 { + right: 66.66666666666666%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-10 { + right: 83.33333333333334%; + } + .col-md-pull-11 { + right: 91.66666666666666%; + } + .col-md-offset-0 { + margin-left: 0; + } + .col-md-offset-1 { + margin-left: 8.333333333333332%; + } + .col-md-offset-2 { + margin-left: 16.666666666666664%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-4 { + margin-left: 33.33333333333333%; + } + .col-md-offset-5 { + margin-left: 41.66666666666667%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-7 { + margin-left: 58.333333333333336%; + } + .col-md-offset-8 { + margin-left: 66.66666666666666%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-10 { + margin-left: 83.33333333333334%; + } + .col-md-offset-11 { + margin-left: 91.66666666666666%; + } +} + +@media (min-width: 1200px) { + .container { + max-width: 1170px; + } + .col-lg-1, + .col-lg-2, + .col-lg-3, + .col-lg-4, + .col-lg-5, + .col-lg-6, + .col-lg-7, + .col-lg-8, + .col-lg-9, + .col-lg-10, + .col-lg-11 { + float: left; + } + .col-lg-1 { + width: 8.333333333333332%; + } + .col-lg-2 { + width: 16.666666666666664%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-4 { + width: 33.33333333333333%; + } + .col-lg-5 { + width: 41.66666666666667%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-7 { + width: 58.333333333333336%; + } + .col-lg-8 { + width: 66.66666666666666%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-10 { + width: 83.33333333333334%; + } + .col-lg-11 { + width: 91.66666666666666%; + } + .col-lg-12 { + width: 100%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-push-1 { + left: 8.333333333333332%; + } + .col-lg-push-2 { + left: 16.666666666666664%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-4 { + left: 33.33333333333333%; + } + .col-lg-push-5 { + left: 41.66666666666667%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-7 { + left: 58.333333333333336%; + } + .col-lg-push-8 { + left: 66.66666666666666%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-10 { + left: 83.33333333333334%; + } + .col-lg-push-11 { + left: 91.66666666666666%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-pull-1 { + right: 8.333333333333332%; + } + .col-lg-pull-2 { + right: 16.666666666666664%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-4 { + right: 33.33333333333333%; + } + .col-lg-pull-5 { + right: 41.66666666666667%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-7 { + right: 58.333333333333336%; + } + .col-lg-pull-8 { + right: 66.66666666666666%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-10 { + right: 83.33333333333334%; + } + .col-lg-pull-11 { + right: 91.66666666666666%; + } + .col-lg-offset-0 { + margin-left: 0; + } + .col-lg-offset-1 { + margin-left: 8.333333333333332%; + } + .col-lg-offset-2 { + margin-left: 16.666666666666664%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-4 { + margin-left: 33.33333333333333%; + } + .col-lg-offset-5 { + margin-left: 41.66666666666667%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-7 { + margin-left: 58.333333333333336%; + } + .col-lg-offset-8 { + margin-left: 66.66666666666666%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-10 { + margin-left: 83.33333333333334%; + } + .col-lg-offset-11 { + margin-left: 91.66666666666666%; + } +} + +table { + max-width: 100%; + background-color: transparent; +} + +th { + text-align: left; +} + +.table { + width: 100%; + margin-bottom: 20px; +} + +.table thead > tr > th, +.table tbody > tr > th, +.table tfoot > tr > th, +.table thead > tr > td, +.table tbody > tr > td, +.table tfoot > tr > td { + padding: 8px; + line-height: 1.428571429; + vertical-align: top; + border-top: 1px solid #dddddd; +} + +.table thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #dddddd; +} + +.table caption + thead tr:first-child th, +.table colgroup + thead tr:first-child th, +.table thead:first-child tr:first-child th, +.table caption + thead tr:first-child td, +.table colgroup + thead tr:first-child td, +.table thead:first-child tr:first-child td { + border-top: 0; +} + +.table tbody + tbody { + border-top: 2px solid #dddddd; +} + +.table .table { + background-color: #ffffff; +} + +.table-condensed thead > tr > th, +.table-condensed tbody > tr > th, +.table-condensed tfoot > tr > th, +.table-condensed thead > tr > td, +.table-condensed tbody > tr > td, +.table-condensed tfoot > tr > td { + padding: 5px; +} + +.table-bordered { + border: 1px solid #dddddd; +} + +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #dddddd; +} + +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} + +.table-striped > tbody > tr:nth-child(odd) > td, +.table-striped > tbody > tr:nth-child(odd) > th { + background-color: #f9f9f9; +} + +.table-hover > tbody > tr:hover > td, +.table-hover > tbody > tr:hover > th { + background-color: #f5f5f5; +} + +table col[class*="col-"] { + display: table-column; + float: none; +} + +table td[class*="col-"], +table th[class*="col-"] { + display: table-cell; + float: none; +} + +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} + +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; + border-color: #d6e9c6; +} + +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td { + background-color: #d0e9c6; + border-color: #c9e2b3; +} + +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; + border-color: #eed3d7; +} + +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td { + background-color: #ebcccc; + border-color: #e6c1c7; +} + +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; + border-color: #fbeed5; +} + +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td { + background-color: #faf2cc; + border-color: #f8e5be; +} + +@media (max-width: 768px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-x: scroll; + overflow-y: hidden; + border: 1px solid #dddddd; + } + .table-responsive > .table { + margin-bottom: 0; + background-color: #fff; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > thead > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > thead > tr:last-child > td, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} + +fieldset { + padding: 0; + margin: 0; + border: 0; +} + +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} + +label { + display: inline-block; + margin-bottom: 5px; + font-weight: bold; +} + +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} + +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + /* IE8-9 */ + + line-height: normal; +} + +input[type="file"] { + display: block; +} + +select[multiple], +select[size] { + height: auto; +} + +select optgroup { + font-family: inherit; + font-size: inherit; + font-style: inherit; +} + +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +input[type="number"]::-webkit-outer-spin-button, +input[type="number"]::-webkit-inner-spin-button { + height: auto; +} + +.form-control:-moz-placeholder { + color: #999999; +} + +.form-control::-moz-placeholder { + color: #999999; +} + +.form-control:-ms-input-placeholder { + color: #999999; +} + +.form-control::-webkit-input-placeholder { + color: #999999; +} + +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.428571429; + color: #555555; + vertical-align: middle; + background-color: #ffffff; + border: 1px solid #cccccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -webkit-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; + transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; +} + +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); +} + +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + cursor: not-allowed; + background-color: #eeeeee; +} + +textarea.form-control { + height: auto; +} + +.form-group { + margin-bottom: 15px; +} + +.radio, +.checkbox { + display: block; + min-height: 20px; + padding-left: 20px; + margin-top: 10px; + margin-bottom: 10px; + vertical-align: middle; +} + +.radio label, +.checkbox label { + display: inline; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} + +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + float: left; + margin-left: -20px; +} + +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} + +.radio-inline, +.checkbox-inline { + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} + +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} + +input[type="radio"][disabled], +input[type="checkbox"][disabled], +.radio[disabled], +.radio-inline[disabled], +.checkbox[disabled], +.checkbox-inline[disabled], +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"], +fieldset[disabled] .radio, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} + +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} + +select.input-sm { + height: 30px; + line-height: 30px; +} + +textarea.input-sm { + height: auto; +} + +.input-lg { + height: 45px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} + +select.input-lg { + height: 45px; + line-height: 45px; +} + +textarea.input-lg { + height: auto; +} + +.has-warning .help-block, +.has-warning .control-label { + color: #c09853; +} + +.has-warning .form-control { + border-color: #c09853; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.has-warning .form-control:focus { + border-color: #a47e3c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e; +} + +.has-warning .input-group-addon { + color: #c09853; + background-color: #fcf8e3; + border-color: #c09853; +} + +.has-error .help-block, +.has-error .control-label { + color: #b94a48; +} + +.has-error .form-control { + border-color: #b94a48; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.has-error .form-control:focus { + border-color: #953b39; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392; +} + +.has-error .input-group-addon { + color: #b94a48; + background-color: #f2dede; + border-color: #b94a48; +} + +.has-success .help-block, +.has-success .control-label { + color: #468847; +} + +.has-success .form-control { + border-color: #468847; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.has-success .form-control:focus { + border-color: #356635; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b; +} + +.has-success .input-group-addon { + color: #468847; + background-color: #dff0d8; + border-color: #468847; +} + +.form-control-static { + padding-top: 7px; + margin-bottom: 0; +} + +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} + +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + padding-left: 0; + margin-top: 0; + margin-bottom: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } +} + +.form-horizontal .control-label, +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} + +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} + +.form-horizontal .form-group:before, +.form-horizontal .form-group:after { + display: table; + content: " "; +} + +.form-horizontal .form-group:after { + clear: both; +} + +.form-horizontal .form-group:before, +.form-horizontal .form-group:after { + display: table; + content: " "; +} + +.form-horizontal .form-group:after { + clear: both; +} + +@media (min-width: 768px) { + .form-horizontal .control-label { + text-align: right; + } +} + +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.428571429; + text-align: center; + white-space: nowrap; + vertical-align: middle; + cursor: pointer; + border: 1px solid transparent; + border-radius: 4px; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + -o-user-select: none; + user-select: none; +} + +.btn:focus { + outline: thin dotted #333; + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} + +.btn:hover, +.btn:focus { + color: #333333; + text-decoration: none; +} + +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} + +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + pointer-events: none; + cursor: not-allowed; + opacity: 0.65; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; +} + +.btn-default { + color: #333333; + background-color: #ffffff; + border-color: #cccccc; +} + +.btn-default:hover, +.btn-default:focus, +.btn-default:active, +.btn-default.active, +.open .dropdown-toggle.btn-default { + color: #333333; + background-color: #ebebeb; + border-color: #adadad; +} + +.btn-default:active, +.btn-default.active, +.open .dropdown-toggle.btn-default { + background-image: none; +} + +.btn-default.disabled, +.btn-default[disabled], +fieldset[disabled] .btn-default, +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled:active, +.btn-default[disabled]:active, +fieldset[disabled] .btn-default:active, +.btn-default.disabled.active, +.btn-default[disabled].active, +fieldset[disabled] .btn-default.active { + background-color: #ffffff; + border-color: #cccccc; +} + +.btn-primary { + color: #ffffff; + background-color: #428bca; + border-color: #357ebd; +} + +.btn-primary:hover, +.btn-primary:focus, +.btn-primary:active, +.btn-primary.active, +.open .dropdown-toggle.btn-primary { + color: #ffffff; + background-color: #3276b1; + border-color: #285e8e; +} + +.btn-primary:active, +.btn-primary.active, +.open .dropdown-toggle.btn-primary { + background-image: none; +} + +.btn-primary.disabled, +.btn-primary[disabled], +fieldset[disabled] .btn-primary, +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled:active, +.btn-primary[disabled]:active, +fieldset[disabled] .btn-primary:active, +.btn-primary.disabled.active, +.btn-primary[disabled].active, +fieldset[disabled] .btn-primary.active { + background-color: #428bca; + border-color: #357ebd; +} + +.btn-warning { + color: #ffffff; + background-color: #f0ad4e; + border-color: #eea236; +} + +.btn-warning:hover, +.btn-warning:focus, +.btn-warning:active, +.btn-warning.active, +.open .dropdown-toggle.btn-warning { + color: #ffffff; + background-color: #ed9c28; + border-color: #d58512; +} + +.btn-warning:active, +.btn-warning.active, +.open .dropdown-toggle.btn-warning { + background-image: none; +} + +.btn-warning.disabled, +.btn-warning[disabled], +fieldset[disabled] .btn-warning, +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled:active, +.btn-warning[disabled]:active, +fieldset[disabled] .btn-warning:active, +.btn-warning.disabled.active, +.btn-warning[disabled].active, +fieldset[disabled] .btn-warning.active { + background-color: #f0ad4e; + border-color: #eea236; +} + +.btn-danger { + color: #ffffff; + background-color: #d9534f; + border-color: #d43f3a; +} + +.btn-danger:hover, +.btn-danger:focus, +.btn-danger:active, +.btn-danger.active, +.open .dropdown-toggle.btn-danger { + color: #ffffff; + background-color: #d2322d; + border-color: #ac2925; +} + +.btn-danger:active, +.btn-danger.active, +.open .dropdown-toggle.btn-danger { + background-image: none; +} + +.btn-danger.disabled, +.btn-danger[disabled], +fieldset[disabled] .btn-danger, +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled:active, +.btn-danger[disabled]:active, +fieldset[disabled] .btn-danger:active, +.btn-danger.disabled.active, +.btn-danger[disabled].active, +fieldset[disabled] .btn-danger.active { + background-color: #d9534f; + border-color: #d43f3a; +} + +.btn-success { + color: #ffffff; + background-color: #5cb85c; + border-color: #4cae4c; +} + +.btn-success:hover, +.btn-success:focus, +.btn-success:active, +.btn-success.active, +.open .dropdown-toggle.btn-success { + color: #ffffff; + background-color: #47a447; + border-color: #398439; +} + +.btn-success:active, +.btn-success.active, +.open .dropdown-toggle.btn-success { + background-image: none; +} + +.btn-success.disabled, +.btn-success[disabled], +fieldset[disabled] .btn-success, +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled:active, +.btn-success[disabled]:active, +fieldset[disabled] .btn-success:active, +.btn-success.disabled.active, +.btn-success[disabled].active, +fieldset[disabled] .btn-success.active { + background-color: #5cb85c; + border-color: #4cae4c; +} + +.btn-info { + color: #ffffff; + background-color: #5bc0de; + border-color: #46b8da; +} + +.btn-info:hover, +.btn-info:focus, +.btn-info:active, +.btn-info.active, +.open .dropdown-toggle.btn-info { + color: #ffffff; + background-color: #39b3d7; + border-color: #269abc; +} + +.btn-info:active, +.btn-info.active, +.open .dropdown-toggle.btn-info { + background-image: none; +} + +.btn-info.disabled, +.btn-info[disabled], +fieldset[disabled] .btn-info, +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled:active, +.btn-info[disabled]:active, +fieldset[disabled] .btn-info:active, +.btn-info.disabled.active, +.btn-info[disabled].active, +fieldset[disabled] .btn-info.active { + background-color: #5bc0de; + border-color: #46b8da; +} + +.btn-link { + font-weight: normal; + color: #428bca; + cursor: pointer; + border-radius: 0; +} + +.btn-link, +.btn-link:active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} + +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} + +.btn-link:hover, +.btn-link:focus { + color: #2a6496; + text-decoration: underline; + background-color: transparent; +} + +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #999999; + text-decoration: none; +} + +.btn-lg { + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} + +.btn-sm, +.btn-xs { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} + +.btn-xs { + padding: 1px 5px; +} + +.btn-block { + display: block; + width: 100%; + padding-right: 0; + padding-left: 0; +} + +.btn-block + .btn-block { + margin-top: 5px; +} + +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} + +.fade { + opacity: 0; + -webkit-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} + +.fade.in { + opacity: 1; +} + +.collapse { + display: none; +} + +.collapse.in { + display: block; +} + +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + transition: height 0.35s ease; +} + +@font-face { + font-family: 'Glyphicons Halflings'; + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg'); +} + +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + -webkit-font-smoothing: antialiased; + font-style: normal; + font-weight: normal; + line-height: 1; +} + +.glyphicon-asterisk:before { + content: "\2a"; +} + +.glyphicon-plus:before { + content: "\2b"; +} + +.glyphicon-euro:before { + content: "\20ac"; +} + +.glyphicon-minus:before { + content: "\2212"; +} + +.glyphicon-cloud:before { + content: "\2601"; +} + +.glyphicon-envelope:before { + content: "\2709"; +} + +.glyphicon-pencil:before { + content: "\270f"; +} + +.glyphicon-glass:before { + content: "\e001"; +} + +.glyphicon-music:before { + content: "\e002"; +} + +.glyphicon-search:before { + content: "\e003"; +} + +.glyphicon-heart:before { + content: "\e005"; +} + +.glyphicon-star:before { + content: "\e006"; +} + +.glyphicon-star-empty:before { + content: "\e007"; +} + +.glyphicon-user:before { + content: "\e008"; +} + +.glyphicon-film:before { + content: "\e009"; +} + +.glyphicon-th-large:before { + content: "\e010"; +} + +.glyphicon-th:before { + content: "\e011"; +} + +.glyphicon-th-list:before { + content: "\e012"; +} + +.glyphicon-ok:before { + content: "\e013"; +} + +.glyphicon-remove:before { + content: "\e014"; +} + +.glyphicon-zoom-in:before { + content: "\e015"; +} + +.glyphicon-zoom-out:before { + content: "\e016"; +} + +.glyphicon-off:before { + content: "\e017"; +} + +.glyphicon-signal:before { + content: "\e018"; +} + +.glyphicon-cog:before { + content: "\e019"; +} + +.glyphicon-trash:before { + content: "\e020"; +} + +.glyphicon-home:before { + content: "\e021"; +} + +.glyphicon-file:before { + content: "\e022"; +} + +.glyphicon-time:before { + content: "\e023"; +} + +.glyphicon-road:before { + content: "\e024"; +} + +.glyphicon-download-alt:before { + content: "\e025"; +} + +.glyphicon-download:before { + content: "\e026"; +} + +.glyphicon-upload:before { + content: "\e027"; +} + +.glyphicon-inbox:before { + content: "\e028"; +} + +.glyphicon-play-circle:before { + content: "\e029"; +} + +.glyphicon-repeat:before { + content: "\e030"; +} + +.glyphicon-refresh:before { + content: "\e031"; +} + +.glyphicon-list-alt:before { + content: "\e032"; +} + +.glyphicon-flag:before { + content: "\e034"; +} + +.glyphicon-headphones:before { + content: "\e035"; +} + +.glyphicon-volume-off:before { + content: "\e036"; +} + +.glyphicon-volume-down:before { + content: "\e037"; +} + +.glyphicon-volume-up:before { + content: "\e038"; +} + +.glyphicon-qrcode:before { + content: "\e039"; +} + +.glyphicon-barcode:before { + content: "\e040"; +} + +.glyphicon-tag:before { + content: "\e041"; +} + +.glyphicon-tags:before { + content: "\e042"; +} + +.glyphicon-book:before { + content: "\e043"; +} + +.glyphicon-print:before { + content: "\e045"; +} + +.glyphicon-font:before { + content: "\e047"; +} + +.glyphicon-bold:before { + content: "\e048"; +} + +.glyphicon-italic:before { + content: "\e049"; +} + +.glyphicon-text-height:before { + content: "\e050"; +} + +.glyphicon-text-width:before { + content: "\e051"; +} + +.glyphicon-align-left:before { + content: "\e052"; +} + +.glyphicon-align-center:before { + content: "\e053"; +} + +.glyphicon-align-right:before { + content: "\e054"; +} + +.glyphicon-align-justify:before { + content: "\e055"; +} + +.glyphicon-list:before { + content: "\e056"; +} + +.glyphicon-indent-left:before { + content: "\e057"; +} + +.glyphicon-indent-right:before { + content: "\e058"; +} + +.glyphicon-facetime-video:before { + content: "\e059"; +} + +.glyphicon-picture:before { + content: "\e060"; +} + +.glyphicon-map-marker:before { + content: "\e062"; +} + +.glyphicon-adjust:before { + content: "\e063"; +} + +.glyphicon-tint:before { + content: "\e064"; +} + +.glyphicon-edit:before { + content: "\e065"; +} + +.glyphicon-share:before { + content: "\e066"; +} + +.glyphicon-check:before { + content: "\e067"; +} + +.glyphicon-move:before { + content: "\e068"; +} + +.glyphicon-step-backward:before { + content: "\e069"; +} + +.glyphicon-fast-backward:before { + content: "\e070"; +} + +.glyphicon-backward:before { + content: "\e071"; +} + +.glyphicon-play:before { + content: "\e072"; +} + +.glyphicon-pause:before { + content: "\e073"; +} + +.glyphicon-stop:before { + content: "\e074"; +} + +.glyphicon-forward:before { + content: "\e075"; +} + +.glyphicon-fast-forward:before { + content: "\e076"; +} + +.glyphicon-step-forward:before { + content: "\e077"; +} + +.glyphicon-eject:before { + content: "\e078"; +} + +.glyphicon-chevron-left:before { + content: "\e079"; +} + +.glyphicon-chevron-right:before { + content: "\e080"; +} + +.glyphicon-plus-sign:before { + content: "\e081"; +} + +.glyphicon-minus-sign:before { + content: "\e082"; +} + +.glyphicon-remove-sign:before { + content: "\e083"; +} + +.glyphicon-ok-sign:before { + content: "\e084"; +} + +.glyphicon-question-sign:before { + content: "\e085"; +} + +.glyphicon-info-sign:before { + content: "\e086"; +} + +.glyphicon-screenshot:before { + content: "\e087"; +} + +.glyphicon-remove-circle:before { + content: "\e088"; +} + +.glyphicon-ok-circle:before { + content: "\e089"; +} + +.glyphicon-ban-circle:before { + content: "\e090"; +} + +.glyphicon-arrow-left:before { + content: "\e091"; +} + +.glyphicon-arrow-right:before { + content: "\e092"; +} + +.glyphicon-arrow-up:before { + content: "\e093"; +} + +.glyphicon-arrow-down:before { + content: "\e094"; +} + +.glyphicon-share-alt:before { + content: "\e095"; +} + +.glyphicon-resize-full:before { + content: "\e096"; +} + +.glyphicon-resize-small:before { + content: "\e097"; +} + +.glyphicon-exclamation-sign:before { + content: "\e101"; +} + +.glyphicon-gift:before { + content: "\e102"; +} + +.glyphicon-leaf:before { + content: "\e103"; +} + +.glyphicon-eye-open:before { + content: "\e105"; +} + +.glyphicon-eye-close:before { + content: "\e106"; +} + +.glyphicon-warning-sign:before { + content: "\e107"; +} + +.glyphicon-plane:before { + content: "\e108"; +} + +.glyphicon-random:before { + content: "\e110"; +} + +.glyphicon-comment:before { + content: "\e111"; +} + +.glyphicon-magnet:before { + content: "\e112"; +} + +.glyphicon-chevron-up:before { + content: "\e113"; +} + +.glyphicon-chevron-down:before { + content: "\e114"; +} + +.glyphicon-retweet:before { + content: "\e115"; +} + +.glyphicon-shopping-cart:before { + content: "\e116"; +} + +.glyphicon-folder-close:before { + content: "\e117"; +} + +.glyphicon-folder-open:before { + content: "\e118"; +} + +.glyphicon-resize-vertical:before { + content: "\e119"; +} + +.glyphicon-resize-horizontal:before { + content: "\e120"; +} + +.glyphicon-hdd:before { + content: "\e121"; +} + +.glyphicon-bullhorn:before { + content: "\e122"; +} + +.glyphicon-certificate:before { + content: "\e124"; +} + +.glyphicon-thumbs-up:before { + content: "\e125"; +} + +.glyphicon-thumbs-down:before { + content: "\e126"; +} + +.glyphicon-hand-right:before { + content: "\e127"; +} + +.glyphicon-hand-left:before { + content: "\e128"; +} + +.glyphicon-hand-up:before { + content: "\e129"; +} + +.glyphicon-hand-down:before { + content: "\e130"; +} + +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} + +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} + +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} + +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} + +.glyphicon-globe:before { + content: "\e135"; +} + +.glyphicon-tasks:before { + content: "\e137"; +} + +.glyphicon-filter:before { + content: "\e138"; +} + +.glyphicon-fullscreen:before { + content: "\e140"; +} + +.glyphicon-dashboard:before { + content: "\e141"; +} + +.glyphicon-heart-empty:before { + content: "\e143"; +} + +.glyphicon-link:before { + content: "\e144"; +} + +.glyphicon-phone:before { + content: "\e145"; +} + +.glyphicon-usd:before { + content: "\e148"; +} + +.glyphicon-gbp:before { + content: "\e149"; +} + +.glyphicon-sort:before { + content: "\e150"; +} + +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} + +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} + +.glyphicon-sort-by-order:before { + content: "\e153"; +} + +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} + +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} + +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} + +.glyphicon-unchecked:before { + content: "\e157"; +} + +.glyphicon-expand:before { + content: "\e158"; +} + +.glyphicon-collapse-down:before { + content: "\e159"; +} + +.glyphicon-collapse-up:before { + content: "\e160"; +} + +.glyphicon-log-in:before { + content: "\e161"; +} + +.glyphicon-flash:before { + content: "\e162"; +} + +.glyphicon-log-out:before { + content: "\e163"; +} + +.glyphicon-new-window:before { + content: "\e164"; +} + +.glyphicon-record:before { + content: "\e165"; +} + +.glyphicon-save:before { + content: "\e166"; +} + +.glyphicon-open:before { + content: "\e167"; +} + +.glyphicon-saved:before { + content: "\e168"; +} + +.glyphicon-import:before { + content: "\e169"; +} + +.glyphicon-export:before { + content: "\e170"; +} + +.glyphicon-send:before { + content: "\e171"; +} + +.glyphicon-floppy-disk:before { + content: "\e172"; +} + +.glyphicon-floppy-saved:before { + content: "\e173"; +} + +.glyphicon-floppy-remove:before { + content: "\e174"; +} + +.glyphicon-floppy-save:before { + content: "\e175"; +} + +.glyphicon-floppy-open:before { + content: "\e176"; +} + +.glyphicon-credit-card:before { + content: "\e177"; +} + +.glyphicon-transfer:before { + content: "\e178"; +} + +.glyphicon-cutlery:before { + content: "\e179"; +} + +.glyphicon-header:before { + content: "\e180"; +} + +.glyphicon-compressed:before { + content: "\e181"; +} + +.glyphicon-earphone:before { + content: "\e182"; +} + +.glyphicon-phone-alt:before { + content: "\e183"; +} + +.glyphicon-tower:before { + content: "\e184"; +} + +.glyphicon-stats:before { + content: "\e185"; +} + +.glyphicon-sd-video:before { + content: "\e186"; +} + +.glyphicon-hd-video:before { + content: "\e187"; +} + +.glyphicon-subtitles:before { + content: "\e188"; +} + +.glyphicon-sound-stereo:before { + content: "\e189"; +} + +.glyphicon-sound-dolby:before { + content: "\e190"; +} + +.glyphicon-sound-5-1:before { + content: "\e191"; +} + +.glyphicon-sound-6-1:before { + content: "\e192"; +} + +.glyphicon-sound-7-1:before { + content: "\e193"; +} + +.glyphicon-copyright-mark:before { + content: "\e194"; +} + +.glyphicon-registration-mark:before { + content: "\e195"; +} + +.glyphicon-cloud-download:before { + content: "\e197"; +} + +.glyphicon-cloud-upload:before { + content: "\e198"; +} + +.glyphicon-tree-conifer:before { + content: "\e199"; +} + +.glyphicon-tree-deciduous:before { + content: "\e200"; +} + +.glyphicon-briefcase:before { + content: "\1f4bc"; +} + +.glyphicon-calendar:before { + content: "\1f4c5"; +} + +.glyphicon-pushpin:before { + content: "\1f4cc"; +} + +.glyphicon-paperclip:before { + content: "\1f4ce"; +} + +.glyphicon-camera:before { + content: "\1f4f7"; +} + +.glyphicon-lock:before { + content: "\1f512"; +} + +.glyphicon-bell:before { + content: "\1f514"; +} + +.glyphicon-bookmark:before { + content: "\1f516"; +} + +.glyphicon-fire:before { + content: "\1f525"; +} + +.glyphicon-wrench:before { + content: "\1f527"; +} + +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px solid #000000; + border-right: 4px solid transparent; + border-bottom: 0 dotted; + border-left: 4px solid transparent; + content: ""; +} + +.dropdown { + position: relative; +} + +.dropdown-toggle:focus { + outline: 0; +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + list-style: none; + background-color: #ffffff; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); + background-clip: padding-box; +} + +.dropdown-menu.pull-right { + right: 0; + left: auto; +} + +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} + +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.428571429; + color: #333333; + white-space: nowrap; +} + +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #ffffff; + text-decoration: none; + background-color: #428bca; +} + +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #ffffff; + text-decoration: none; + background-color: #428bca; + outline: 0; +} + +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #999999; +} + +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled=false); +} + +.open > .dropdown-menu { + display: block; +} + +.open > a { + outline: 0; +} + +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.428571429; + color: #999999; +} + +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} + +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} + +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + border-top: 0 dotted; + border-bottom: 4px solid #000000; + content: ""; +} + +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 1px; +} + +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } +} + +.btn-default .caret { + border-top-color: #333333; +} + +.btn-primary .caret, +.btn-success .caret, +.btn-warning .caret, +.btn-danger .caret, +.btn-info .caret { + border-top-color: #fff; +} + +.dropup .btn-default .caret { + border-bottom-color: #333333; +} + +.dropup .btn-primary .caret, +.dropup .btn-success .caret, +.dropup .btn-warning .caret, +.dropup .btn-danger .caret, +.dropup .btn-info .caret { + border-bottom-color: #fff; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} + +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} + +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} + +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus { + outline: none; +} + +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} + +.btn-toolbar:before, +.btn-toolbar:after { + display: table; + content: " "; +} + +.btn-toolbar:after { + clear: both; +} + +.btn-toolbar:before, +.btn-toolbar:after { + display: table; + content: " "; +} + +.btn-toolbar:after { + clear: both; +} + +.btn-toolbar .btn-group { + float: left; +} + +.btn-toolbar > .btn + .btn, +.btn-toolbar > .btn-group + .btn, +.btn-toolbar > .btn + .btn-group, +.btn-toolbar > .btn-group + .btn-group { + margin-left: 5px; +} + +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} + +.btn-group > .btn:first-child { + margin-left: 0; +} + +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.btn-group > .btn-group { + float: left; +} + +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} + +.btn-group > .btn-group:first-child > .btn:last-child, +.btn-group > .btn-group:first-child > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.btn-group > .btn-group:last-child > .btn:first-child { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} + +.btn-group-xs > .btn { + padding: 5px 10px; + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} + +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} + +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} + +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} + +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} + +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); +} + +.btn .caret { + margin-left: 0; +} + +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} + +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} + +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group { + display: block; + float: none; + width: 100%; + max-width: 100%; +} + +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after { + display: table; + content: " "; +} + +.btn-group-vertical > .btn-group:after { + clear: both; +} + +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after { + display: table; + content: " "; +} + +.btn-group-vertical > .btn-group:after { + clear: both; +} + +.btn-group-vertical > .btn-group > .btn { + float: none; +} + +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} + +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} + +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-right-radius: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 0; +} + +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} + +.btn-group-vertical > .btn-group:first-child > .btn:last-child, +.btn-group-vertical > .btn-group:first-child > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.btn-group-vertical > .btn-group:last-child > .btn:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.btn-group-justified { + display: table; + width: 100%; + border-collapse: separate; + table-layout: fixed; +} + +.btn-group-justified .btn { + display: table-cell; + float: none; + width: 1%; +} + +[data-toggle="buttons"] > .btn > input[type="radio"], +[data-toggle="buttons"] > .btn > input[type="checkbox"] { + display: none; +} + +.input-group { + position: relative; + display: table; + border-collapse: separate; +} + +.input-group.col { + float: none; + padding-right: 0; + padding-left: 0; +} + +.input-group .form-control { + width: 100%; + margin-bottom: 0; +} + +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 45px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.33; + border-radius: 6px; +} + +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 45px; + line-height: 45px; +} + +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn { + height: auto; +} + +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} + +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} + +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn { + height: auto; +} + +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} + +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} + +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} + +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + text-align: center; + background-color: #eeeeee; + border: 1px solid #cccccc; + border-radius: 4px; +} + +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} + +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} + +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} + +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.input-group-addon:first-child { + border-right: 0; +} + +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child) { + border-bottom-left-radius: 0; + border-top-left-radius: 0; +} + +.input-group-addon:last-child { + border-left: 0; +} + +.input-group-btn { + position: relative; + white-space: nowrap; +} + +.input-group-btn > .btn { + position: relative; +} + +.input-group-btn > .btn + .btn { + margin-left: -4px; +} + +.input-group-btn > .btn:hover, +.input-group-btn > .btn:active { + z-index: 2; +} + +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav:before, +.nav:after { + display: table; + content: " "; +} + +.nav:after { + clear: both; +} + +.nav:before, +.nav:after { + display: table; + content: " "; +} + +.nav:after { + clear: both; +} + +.nav > li { + position: relative; + display: block; +} + +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} + +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} + +.nav > li.disabled > a { + color: #999999; +} + +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #999999; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} + +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eeeeee; + border-color: #428bca; +} + +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} + +.nav > li > a > img { + max-width: none; +} + +.nav-tabs { + border-bottom: 1px solid #dddddd; +} + +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} + +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.428571429; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} + +.nav-tabs > li > a:hover { + border-color: #eeeeee #eeeeee #dddddd; +} + +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555555; + cursor: default; + background-color: #ffffff; + border: 1px solid #dddddd; + border-bottom-color: transparent; +} + +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} + +.nav-tabs.nav-justified > li { + float: none; +} + +.nav-tabs.nav-justified > li > a { + text-align: center; +} + +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } +} + +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-bottom: 1px solid #dddddd; +} + +.nav-tabs.nav-justified > .active > a { + border-bottom-color: #ffffff; +} + +.nav-pills > li { + float: left; +} + +.nav-pills > li > a { + border-radius: 5px; +} + +.nav-pills > li + li { + margin-left: 2px; +} + +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #ffffff; + background-color: #428bca; +} + +.nav-stacked > li { + float: none; +} + +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} + +.nav-justified { + width: 100%; +} + +.nav-justified > li { + float: none; +} + +.nav-justified > li > a { + text-align: center; +} + +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } +} + +.nav-tabs-justified { + border-bottom: 0; +} + +.nav-tabs-justified > li > a { + margin-right: 0; + border-bottom: 1px solid #dddddd; +} + +.nav-tabs-justified > .active > a { + border-bottom-color: #ffffff; +} + +.tabbable:before, +.tabbable:after { + display: table; + content: " "; +} + +.tabbable:after { + clear: both; +} + +.tabbable:before, +.tabbable:after { + display: table; + content: " "; +} + +.tabbable:after { + clear: both; +} + +.tab-content > .tab-pane, +.pill-content > .pill-pane { + display: none; +} + +.tab-content > .active, +.pill-content > .active { + display: block; +} + +.nav .caret { + border-top-color: #428bca; + border-bottom-color: #428bca; +} + +.nav a:hover .caret { + border-top-color: #2a6496; + border-bottom-color: #2a6496; +} + +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.navbar { + position: relative; + z-index: 1000; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} + +.navbar:before, +.navbar:after { + display: table; + content: " "; +} + +.navbar:after { + clear: both; +} + +.navbar:before, +.navbar:after { + display: table; + content: " "; +} + +.navbar:after { + clear: both; +} + +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} + +.navbar-header:before, +.navbar-header:after { + display: table; + content: " "; +} + +.navbar-header:after { + clear: both; +} + +.navbar-header:before, +.navbar-header:after { + display: table; + content: " "; +} + +.navbar-header:after { + clear: both; +} + +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} + +.navbar-collapse { + max-height: 340px; + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + border-top: 1px solid transparent; + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1); + -webkit-overflow-scrolling: touch; +} + +.navbar-collapse:before, +.navbar-collapse:after { + display: table; + content: " "; +} + +.navbar-collapse:after { + clear: both; +} + +.navbar-collapse:before, +.navbar-collapse:after { + display: table; + content: " "; +} + +.navbar-collapse:after { + clear: both; +} + +.navbar-collapse.in { + overflow-y: auto; +} + +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-collapse .navbar-nav.navbar-left:first-child { + margin-left: -15px; + } + .navbar-collapse .navbar-nav.navbar-right:last-child { + margin-right: -15px; + } + .navbar-collapse .navbar-text:last-child { + margin-right: 0; + } +} + +.container > .navbar-header, +.container > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} + +@media (min-width: 768px) { + .container > .navbar-header, + .container > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} + +.navbar-static-top { + border-width: 0 0 1px; +} + +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} + +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + border-width: 0 0 1px; +} + +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} + +.navbar-fixed-top { + top: 0; + z-index: 1030; +} + +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; +} + +.navbar-brand { + float: left; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} + +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} + +@media (min-width: 768px) { + .navbar > .container .navbar-brand { + margin-left: -15px; + } +} + +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + border: 1px solid transparent; + border-radius: 4px; +} + +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} + +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} + +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} + +.navbar-nav { + margin: 7.5px -15px; +} + +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} + +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} + +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} + +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + } +} + +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1); +} + +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + padding-left: 0; + margin-top: 0; + margin-bottom: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + float: none; + margin-left: 0; + } +} + +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } +} + +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} + +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.navbar-nav.pull-right > li > .dropdown-menu, +.navbar-nav > li > .dropdown-menu.pull-right { + right: 0; + left: auto; +} + +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} + +.navbar-text { + float: left; + margin-top: 15px; + margin-bottom: 15px; +} + +@media (min-width: 768px) { + .navbar-text { + margin-right: 15px; + margin-left: 15px; + } +} + +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} + +.navbar-default .navbar-brand { + color: #777777; +} + +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} + +.navbar-default .navbar-text { + color: #777777; +} + +.navbar-default .navbar-nav > li > a { + color: #777777; +} + +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333333; + background-color: transparent; +} + +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555555; + background-color: #e7e7e7; +} + +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #cccccc; + background-color: transparent; +} + +.navbar-default .navbar-toggle { + border-color: #dddddd; +} + +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #dddddd; +} + +.navbar-default .navbar-toggle .icon-bar { + background-color: #cccccc; +} + +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e6e6e6; +} + +.navbar-default .navbar-nav > .dropdown > a:hover .caret, +.navbar-default .navbar-nav > .dropdown > a:focus .caret { + border-top-color: #333333; + border-bottom-color: #333333; +} + +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555555; + background-color: #e7e7e7; +} + +.navbar-default .navbar-nav > .open > a .caret, +.navbar-default .navbar-nav > .open > a:hover .caret, +.navbar-default .navbar-nav > .open > a:focus .caret { + border-top-color: #555555; + border-bottom-color: #555555; +} + +.navbar-default .navbar-nav > .dropdown > a .caret { + border-top-color: #777777; + border-bottom-color: #777777; +} + +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #cccccc; + background-color: transparent; + } +} + +.navbar-default .navbar-link { + color: #777777; +} + +.navbar-default .navbar-link:hover { + color: #333333; +} + +.navbar-inverse { + background-color: #222222; + border-color: #080808; +} + +.navbar-inverse .navbar-brand { + color: #999999; +} + +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #ffffff; + background-color: transparent; +} + +.navbar-inverse .navbar-text { + color: #999999; +} + +.navbar-inverse .navbar-nav > li > a { + color: #999999; +} + +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #ffffff; + background-color: transparent; +} + +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #ffffff; + background-color: #080808; +} + +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444444; + background-color: transparent; +} + +.navbar-inverse .navbar-toggle { + border-color: #333333; +} + +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333333; +} + +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #ffffff; +} + +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} + +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #ffffff; + background-color: #080808; +} + +.navbar-inverse .navbar-nav > .dropdown > a:hover .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} + +.navbar-inverse .navbar-nav > .dropdown > a .caret { + border-top-color: #999999; + border-bottom-color: #999999; +} + +.navbar-inverse .navbar-nav > .open > a .caret, +.navbar-inverse .navbar-nav > .open > a:hover .caret, +.navbar-inverse .navbar-nav > .open > a:focus .caret { + border-top-color: #ffffff; + border-bottom-color: #ffffff; +} + +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #999999; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #ffffff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #ffffff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444444; + background-color: transparent; + } +} + +.navbar-inverse .navbar-link { + color: #999999; +} + +.navbar-inverse .navbar-link:hover { + color: #ffffff; +} + +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} + +.breadcrumb > li { + display: inline-block; +} + +.breadcrumb > li + li:before { + padding: 0 5px; + color: #cccccc; + content: "/\00a0"; +} + +.breadcrumb > .active { + color: #999999; +} + +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} + +.pagination > li { + display: inline; +} + +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.428571429; + text-decoration: none; + background-color: #ffffff; + border: 1px solid #dddddd; +} + +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-bottom-left-radius: 4px; + border-top-left-radius: 4px; +} + +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} + +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + background-color: #eeeeee; +} + +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 2; + color: #ffffff; + cursor: default; + background-color: #428bca; + border-color: #428bca; +} + +.pagination > .disabled > span, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #999999; + cursor: not-allowed; + background-color: #ffffff; + border-color: #dddddd; +} + +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; +} + +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-bottom-left-radius: 6px; + border-top-left-radius: 6px; +} + +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} + +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; +} + +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-bottom-left-radius: 3px; + border-top-left-radius: 3px; +} + +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} + +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} + +.pager:before, +.pager:after { + display: table; + content: " "; +} + +.pager:after { + clear: both; +} + +.pager:before, +.pager:after { + display: table; + content: " "; +} + +.pager:after { + clear: both; +} + +.pager li { + display: inline; +} + +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 15px; +} + +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eeeeee; +} + +.pager .next > a, +.pager .next > span { + float: right; +} + +.pager .previous > a, +.pager .previous > span { + float: left; +} + +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #999999; + cursor: not-allowed; + background-color: #ffffff; +} + +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} + +.label[href]:hover, +.label[href]:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} + +.label:empty { + display: none; +} + +.label-default { + background-color: #999999; +} + +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #808080; +} + +.label-primary { + background-color: #428bca; +} + +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #3071a9; +} + +.label-success { + background-color: #5cb85c; +} + +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} + +.label-info { + background-color: #5bc0de; +} + +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} + +.label-warning { + background-color: #f0ad4e; +} + +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} + +.label-danger { + background-color: #d9534f; +} + +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} + +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #ffffff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + background-color: #999999; + border-radius: 10px; +} + +.badge:empty { + display: none; +} + +a.badge:hover, +a.badge:focus { + color: #ffffff; + text-decoration: none; + cursor: pointer; +} + +.btn .badge { + position: relative; + top: -1px; +} + +a.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #428bca; + background-color: #ffffff; +} + +.nav-pills > li > a > .badge { + margin-left: 3px; +} + +.jumbotron { + padding: 30px; + margin-bottom: 30px; + font-size: 21px; + font-weight: 200; + line-height: 2.1428571435; + color: inherit; + background-color: #eeeeee; +} + +.jumbotron h1 { + line-height: 1; + color: inherit; +} + +.jumbotron p { + line-height: 1.4; +} + +.container .jumbotron { + border-radius: 6px; +} + +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1 { + font-size: 63px; + } +} + +.thumbnail { + display: inline-block; + display: block; + height: auto; + max-width: 100%; + padding: 4px; + line-height: 1.428571429; + background-color: #ffffff; + border: 1px solid #dddddd; + border-radius: 4px; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} + +.thumbnail > img { + display: block; + height: auto; + max-width: 100%; +} + +a.thumbnail:hover, +a.thumbnail:focus { + border-color: #428bca; +} + +.thumbnail > img { + margin-right: auto; + margin-left: auto; +} + +.thumbnail .caption { + padding: 9px; + color: #333333; +} + +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} + +.alert h4 { + margin-top: 0; + color: inherit; +} + +.alert .alert-link { + font-weight: bold; +} + +.alert > p, +.alert > ul { + margin-bottom: 0; +} + +.alert > p + p { + margin-top: 5px; +} + +.alert-dismissable { + padding-right: 35px; +} + +.alert-dismissable .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} + +.alert-success { + color: #468847; + background-color: #dff0d8; + border-color: #d6e9c6; +} + +.alert-success hr { + border-top-color: #c9e2b3; +} + +.alert-success .alert-link { + color: #356635; +} + +.alert-info { + color: #3a87ad; + background-color: #d9edf7; + border-color: #bce8f1; +} + +.alert-info hr { + border-top-color: #a6e1ec; +} + +.alert-info .alert-link { + color: #2d6987; +} + +.alert-warning { + color: #c09853; + background-color: #fcf8e3; + border-color: #fbeed5; +} + +.alert-warning hr { + border-top-color: #f8e5be; +} + +.alert-warning .alert-link { + color: #a47e3c; +} + +.alert-danger { + color: #b94a48; + background-color: #f2dede; + border-color: #eed3d7; +} + +.alert-danger hr { + border-top-color: #e6c1c7; +} + +.alert-danger .alert-link { + color: #953b39; +} + +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +@-moz-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +@-o-keyframes progress-bar-stripes { + from { + background-position: 0 0; + } + to { + background-position: 40px 0; + } +} + +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} + +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); +} + +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + color: #ffffff; + text-align: center; + background-color: #428bca; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15); + -webkit-transition: width 0.6s ease; + transition: width 0.6s ease; +} + +.progress-striped .progress-bar { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 40px 40px; +} + +.progress.active .progress-bar { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -moz-animation: progress-bar-stripes 2s linear infinite; + -ms-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} + +.progress-bar-success { + background-color: #5cb85c; +} + +.progress-striped .progress-bar-success { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-bar-info { + background-color: #5bc0de; +} + +.progress-striped .progress-bar-info { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-bar-warning { + background-color: #f0ad4e; +} + +.progress-striped .progress-bar-warning { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.progress-bar-danger { + background-color: #d9534f; +} + +.progress-striped .progress-bar-danger { + background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent)); + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); +} + +.media, +.media-body { + overflow: hidden; + zoom: 1; +} + +.media, +.media .media { + margin-top: 15px; +} + +.media:first-child { + margin-top: 0; +} + +.media-object { + display: block; +} + +.media-heading { + margin: 0 0 5px; +} + +.media > .pull-left { + margin-right: 10px; +} + +.media > .pull-right { + margin-left: 10px; +} + +.media-list { + padding-left: 0; + list-style: none; +} + +.list-group { + padding-left: 0; + margin-bottom: 20px; +} + +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #ffffff; + border: 1px solid #dddddd; +} + +.list-group-item:first-child { + border-top-right-radius: 4px; + border-top-left-radius: 4px; +} + +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} + +.list-group-item > .badge { + float: right; +} + +.list-group-item > .badge + .badge { + margin-right: 5px; +} + +a.list-group-item { + color: #555555; +} + +a.list-group-item .list-group-item-heading { + color: #333333; +} + +a.list-group-item:hover, +a.list-group-item:focus { + text-decoration: none; + background-color: #f5f5f5; +} + +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #ffffff; + background-color: #428bca; + border-color: #428bca; +} + +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading { + color: inherit; +} + +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #e1edf7; +} + +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} + +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} + +.panel { + margin-bottom: 20px; + background-color: #ffffff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); +} + +.panel-body { + padding: 15px; +} + +.panel-body:before, +.panel-body:after { + display: table; + content: " "; +} + +.panel-body:after { + clear: both; +} + +.panel-body:before, +.panel-body:after { + display: table; + content: " "; +} + +.panel-body:after { + clear: both; +} + +.panel > .list-group { + margin-bottom: 0; +} + +.panel > .list-group .list-group-item { + border-width: 1px 0; +} + +.panel > .list-group .list-group-item:first-child { + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.panel > .list-group .list-group-item:last-child { + border-bottom: 0; +} + +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} + +.panel > .table { + margin-bottom: 0; +} + +.panel > .panel-body + .table { + border-top: 1px solid #dddddd; +} + +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-right-radius: 3px; + border-top-left-radius: 3px; +} + +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; +} + +.panel-title > a { + color: inherit; +} + +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #dddddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} + +.panel-group .panel { + margin-bottom: 0; + overflow: hidden; + border-radius: 4px; +} + +.panel-group .panel + .panel { + margin-top: 5px; +} + +.panel-group .panel-heading { + border-bottom: 0; +} + +.panel-group .panel-heading + .panel-collapse .panel-body { + border-top: 1px solid #dddddd; +} + +.panel-group .panel-footer { + border-top: 0; +} + +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #dddddd; +} + +.panel-default { + border-color: #dddddd; +} + +.panel-default > .panel-heading { + color: #333333; + background-color: #f5f5f5; + border-color: #dddddd; +} + +.panel-default > .panel-heading + .panel-collapse .panel-body { + border-top-color: #dddddd; +} + +.panel-default > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #dddddd; +} + +.panel-primary { + border-color: #428bca; +} + +.panel-primary > .panel-heading { + color: #ffffff; + background-color: #428bca; + border-color: #428bca; +} + +.panel-primary > .panel-heading + .panel-collapse .panel-body { + border-top-color: #428bca; +} + +.panel-primary > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #428bca; +} + +.panel-success { + border-color: #d6e9c6; +} + +.panel-success > .panel-heading { + color: #468847; + background-color: #dff0d8; + border-color: #d6e9c6; +} + +.panel-success > .panel-heading + .panel-collapse .panel-body { + border-top-color: #d6e9c6; +} + +.panel-success > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #d6e9c6; +} + +.panel-warning { + border-color: #fbeed5; +} + +.panel-warning > .panel-heading { + color: #c09853; + background-color: #fcf8e3; + border-color: #fbeed5; +} + +.panel-warning > .panel-heading + .panel-collapse .panel-body { + border-top-color: #fbeed5; +} + +.panel-warning > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #fbeed5; +} + +.panel-danger { + border-color: #eed3d7; +} + +.panel-danger > .panel-heading { + color: #b94a48; + background-color: #f2dede; + border-color: #eed3d7; +} + +.panel-danger > .panel-heading + .panel-collapse .panel-body { + border-top-color: #eed3d7; +} + +.panel-danger > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #eed3d7; +} + +.panel-info { + border-color: #bce8f1; +} + +.panel-info > .panel-heading { + color: #3a87ad; + background-color: #d9edf7; + border-color: #bce8f1; +} + +.panel-info > .panel-heading + .panel-collapse .panel-body { + border-top-color: #bce8f1; +} + +.panel-info > .panel-footer + .panel-collapse .panel-body { + border-bottom-color: #bce8f1; +} + +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); +} + +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, 0.15); +} + +.well-lg { + padding: 24px; + border-radius: 6px; +} + +.well-sm { + padding: 9px; + border-radius: 3px; +} + +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000000; + text-shadow: 0 1px 0 #ffffff; + opacity: 0.2; + filter: alpha(opacity=20); +} + +.close:hover, +.close:focus { + color: #000000; + text-decoration: none; + cursor: pointer; + opacity: 0.5; + filter: alpha(opacity=50); +} + +button.close { + padding: 0; + cursor: pointer; + background: transparent; + border: 0; + -webkit-appearance: none; +} + +.modal-open { + overflow: hidden; +} + +body.modal-open, +.modal-open .navbar-fixed-top, +.modal-open .navbar-fixed-bottom { + margin-right: 15px; +} + +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + display: none; + overflow: auto; + overflow-y: scroll; +} + +.modal.fade .modal-dialog { + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + transform: translate(0, -25%); + -webkit-transition: -webkit-transform 0.3s ease-out; + -moz-transition: -moz-transform 0.3s ease-out; + -o-transition: -o-transform 0.3s ease-out; + transition: transform 0.3s ease-out; +} + +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + transform: translate(0, 0); +} + +.modal-dialog { + z-index: 1050; + width: auto; + padding: 10px; + margin-right: auto; + margin-left: auto; +} + +.modal-content { + position: relative; + background-color: #ffffff; + border: 1px solid #999999; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + outline: none; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5); + background-clip: padding-box; +} + +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; + background-color: #000000; +} + +.modal-backdrop.fade { + opacity: 0; + filter: alpha(opacity=0); +} + +.modal-backdrop.in { + opacity: 0.5; + filter: alpha(opacity=50); +} + +.modal-header { + min-height: 16.428571429px; + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} + +.modal-header .close { + margin-top: -2px; +} + +.modal-title { + margin: 0; + line-height: 1.428571429; +} + +.modal-body { + position: relative; + padding: 20px; +} + +.modal-footer { + padding: 19px 20px 20px; + margin-top: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} + +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} + +.modal-footer:after { + clear: both; +} + +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} + +.modal-footer:after { + clear: both; +} + +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} + +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} + +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} + +@media screen and (min-width: 768px) { + .modal-dialog { + right: auto; + left: 50%; + width: 600px; + padding-top: 30px; + padding-bottom: 30px; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); + } +} + +.tooltip { + position: absolute; + z-index: 1030; + display: block; + font-size: 12px; + line-height: 1.4; + opacity: 0; + filter: alpha(opacity=0); + visibility: visible; +} + +.tooltip.in { + opacity: 0.9; + filter: alpha(opacity=90); +} + +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} + +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} + +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} + +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} + +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #ffffff; + text-align: center; + text-decoration: none; + background-color: #000000; + border-radius: 4px; +} + +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-top-color: #000000; + border-width: 5px 5px 0; +} + +.tooltip.top-left .tooltip-arrow { + bottom: 0; + left: 5px; + border-top-color: #000000; + border-width: 5px 5px 0; +} + +.tooltip.top-right .tooltip-arrow { + right: 5px; + bottom: 0; + border-top-color: #000000; + border-width: 5px 5px 0; +} + +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-right-color: #000000; + border-width: 5px 5px 5px 0; +} + +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-left-color: #000000; + border-width: 5px 0 5px 5px; +} + +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-bottom-color: #000000; + border-width: 0 5px 5px; +} + +.tooltip.bottom-left .tooltip-arrow { + top: 0; + left: 5px; + border-bottom-color: #000000; + border-width: 0 5px 5px; +} + +.tooltip.bottom-right .tooltip-arrow { + top: 0; + right: 5px; + border-bottom-color: #000000; + border-width: 0 5px 5px; +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1010; + display: none; + max-width: 276px; + padding: 1px; + text-align: left; + white-space: normal; + background-color: #ffffff; + border: 1px solid #cccccc; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); + background-clip: padding-box; +} + +.popover.top { + margin-top: -10px; +} + +.popover.right { + margin-left: 10px; +} + +.popover.bottom { + margin-top: 10px; +} + +.popover.left { + margin-left: -10px; +} + +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + font-weight: normal; + line-height: 18px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} + +.popover-content { + padding: 9px 14px; +} + +.popover .arrow, +.popover .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} + +.popover .arrow { + border-width: 11px; +} + +.popover .arrow:after { + border-width: 10px; + content: ""; +} + +.popover.top .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999999; + border-top-color: rgba(0, 0, 0, 0.25); + border-bottom-width: 0; +} + +.popover.top .arrow:after { + bottom: 1px; + margin-left: -10px; + border-top-color: #ffffff; + border-bottom-width: 0; + content: " "; +} + +.popover.right .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999999; + border-right-color: rgba(0, 0, 0, 0.25); + border-left-width: 0; +} + +.popover.right .arrow:after { + bottom: -10px; + left: 1px; + border-right-color: #ffffff; + border-left-width: 0; + content: " "; +} + +.popover.bottom .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-bottom-color: #999999; + border-bottom-color: rgba(0, 0, 0, 0.25); + border-top-width: 0; +} + +.popover.bottom .arrow:after { + top: 1px; + margin-left: -10px; + border-bottom-color: #ffffff; + border-top-width: 0; + content: " "; +} + +.popover.left .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-left-color: #999999; + border-left-color: rgba(0, 0, 0, 0.25); + border-right-width: 0; +} + +.popover.left .arrow:after { + right: 1px; + bottom: -10px; + border-left-color: #ffffff; + border-right-width: 0; + content: " "; +} + +.carousel { + position: relative; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} + +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: 0.6s ease-in-out left; + transition: 0.6s ease-in-out left; +} + +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + height: auto; + max-width: 100%; + line-height: 1; +} + +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} + +.carousel-inner > .active { + left: 0; +} + +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} + +.carousel-inner > .next { + left: 100%; +} + +.carousel-inner > .prev { + left: -100%; +} + +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} + +.carousel-inner > .active.left { + left: -100%; +} + +.carousel-inner > .active.right { + left: 100%; +} + +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); + opacity: 0.5; + filter: alpha(opacity=50); +} + +.carousel-control.left { + background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0.0001))); + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.5) 0), color-stop(rgba(0, 0, 0, 0.0001) 100%)); + background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0, rgba(0, 0, 0, 0.0001) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); +} + +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-gradient(linear, 0 top, 100% top, from(rgba(0, 0, 0, 0.0001)), to(rgba(0, 0, 0, 0.5))); + background-image: -webkit-linear-gradient(left, color-stop(rgba(0, 0, 0, 0.0001) 0), color-stop(rgba(0, 0, 0, 0.5) 100%)); + background-image: -moz-linear-gradient(left, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); + background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0, rgba(0, 0, 0, 0.5) 100%); + background-repeat: repeat-x; + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); +} + +.carousel-control:hover, +.carousel-control:focus { + color: #ffffff; + text-decoration: none; + opacity: 0.9; + filter: alpha(opacity=90); +} + +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + left: 50%; + z-index: 5; + display: inline-block; +} + +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + margin-top: -10px; + margin-left: -10px; + font-family: serif; +} + +.carousel-control .icon-prev:before { + content: '\2039'; +} + +.carousel-control .icon-next:before { + content: '\203a'; +} + +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} + +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + border: 1px solid #ffffff; + border-radius: 10px; +} + +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #ffffff; +} + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #ffffff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); +} + +.carousel-caption .btn { + text-shadow: none; +} + +@media screen and (min-width: 768px) { + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -15px; + margin-left: -15px; + font-size: 30px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} + +.clearfix:before, +.clearfix:after { + display: table; + content: " "; +} + +.clearfix:after { + clear: both; +} + +.pull-right { + float: right !important; +} + +.pull-left { + float: left !important; +} + +.hide { + display: none !important; +} + +.show { + display: block !important; +} + +.invisible { + visibility: hidden; +} + +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} + +.affix { + position: fixed; +} + +@-ms-viewport { + width: device-width; +} + +@media screen and (max-width: 400px) { + @-ms-viewport { + width: 320px; + } +} + +.hidden { + display: none !important; + visibility: hidden !important; +} + +.visible-xs { + display: none !important; +} + +tr.visible-xs { + display: none !important; +} + +th.visible-xs, +td.visible-xs { + display: none !important; +} + +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-xs.visible-sm { + display: block !important; + } + tr.visible-xs.visible-sm { + display: table-row !important; + } + th.visible-xs.visible-sm, + td.visible-xs.visible-sm { + display: table-cell !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-xs.visible-md { + display: block !important; + } + tr.visible-xs.visible-md { + display: table-row !important; + } + th.visible-xs.visible-md, + td.visible-xs.visible-md { + display: table-cell !important; + } +} + +@media (min-width: 1200px) { + .visible-xs.visible-lg { + display: block !important; + } + tr.visible-xs.visible-lg { + display: table-row !important; + } + th.visible-xs.visible-lg, + td.visible-xs.visible-lg { + display: table-cell !important; + } +} + +.visible-sm { + display: none !important; +} + +tr.visible-sm { + display: none !important; +} + +th.visible-sm, +td.visible-sm { + display: none !important; +} + +@media (max-width: 767px) { + .visible-sm.visible-xs { + display: block !important; + } + tr.visible-sm.visible-xs { + display: table-row !important; + } + th.visible-sm.visible-xs, + td.visible-sm.visible-xs { + display: table-cell !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-sm.visible-md { + display: block !important; + } + tr.visible-sm.visible-md { + display: table-row !important; + } + th.visible-sm.visible-md, + td.visible-sm.visible-md { + display: table-cell !important; + } +} + +@media (min-width: 1200px) { + .visible-sm.visible-lg { + display: block !important; + } + tr.visible-sm.visible-lg { + display: table-row !important; + } + th.visible-sm.visible-lg, + td.visible-sm.visible-lg { + display: table-cell !important; + } +} + +.visible-md { + display: none !important; +} + +tr.visible-md { + display: none !important; +} + +th.visible-md, +td.visible-md { + display: none !important; +} + +@media (max-width: 767px) { + .visible-md.visible-xs { + display: block !important; + } + tr.visible-md.visible-xs { + display: table-row !important; + } + th.visible-md.visible-xs, + td.visible-md.visible-xs { + display: table-cell !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-md.visible-sm { + display: block !important; + } + tr.visible-md.visible-sm { + display: table-row !important; + } + th.visible-md.visible-sm, + td.visible-md.visible-sm { + display: table-cell !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} + +@media (min-width: 1200px) { + .visible-md.visible-lg { + display: block !important; + } + tr.visible-md.visible-lg { + display: table-row !important; + } + th.visible-md.visible-lg, + td.visible-md.visible-lg { + display: table-cell !important; + } +} + +.visible-lg { + display: none !important; +} + +tr.visible-lg { + display: none !important; +} + +th.visible-lg, +td.visible-lg { + display: none !important; +} + +@media (max-width: 767px) { + .visible-lg.visible-xs { + display: block !important; + } + tr.visible-lg.visible-xs { + display: table-row !important; + } + th.visible-lg.visible-xs, + td.visible-lg.visible-xs { + display: table-cell !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .visible-lg.visible-sm { + display: block !important; + } + tr.visible-lg.visible-sm { + display: table-row !important; + } + th.visible-lg.visible-sm, + td.visible-lg.visible-sm { + display: table-cell !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .visible-lg.visible-md { + display: block !important; + } + tr.visible-lg.visible-md { + display: table-row !important; + } + th.visible-lg.visible-md, + td.visible-lg.visible-md { + display: table-cell !important; + } +} + +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} + +.hidden-xs { + display: block !important; +} + +tr.hidden-xs { + display: table-row !important; +} + +th.hidden-xs, +td.hidden-xs { + display: table-cell !important; +} + +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } + tr.hidden-xs { + display: none !important; + } + th.hidden-xs, + td.hidden-xs { + display: none !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .hidden-xs.hidden-sm { + display: none !important; + } + tr.hidden-xs.hidden-sm { + display: none !important; + } + th.hidden-xs.hidden-sm, + td.hidden-xs.hidden-sm { + display: none !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-xs.hidden-md { + display: none !important; + } + tr.hidden-xs.hidden-md { + display: none !important; + } + th.hidden-xs.hidden-md, + td.hidden-xs.hidden-md { + display: none !important; + } +} + +@media (min-width: 1200px) { + .hidden-xs.hidden-lg { + display: none !important; + } + tr.hidden-xs.hidden-lg { + display: none !important; + } + th.hidden-xs.hidden-lg, + td.hidden-xs.hidden-lg { + display: none !important; + } +} + +.hidden-sm { + display: block !important; +} + +tr.hidden-sm { + display: table-row !important; +} + +th.hidden-sm, +td.hidden-sm { + display: table-cell !important; +} + +@media (max-width: 767px) { + .hidden-sm.hidden-xs { + display: none !important; + } + tr.hidden-sm.hidden-xs { + display: none !important; + } + th.hidden-sm.hidden-xs, + td.hidden-sm.hidden-xs { + display: none !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } + tr.hidden-sm { + display: none !important; + } + th.hidden-sm, + td.hidden-sm { + display: none !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-sm.hidden-md { + display: none !important; + } + tr.hidden-sm.hidden-md { + display: none !important; + } + th.hidden-sm.hidden-md, + td.hidden-sm.hidden-md { + display: none !important; + } +} + +@media (min-width: 1200px) { + .hidden-sm.hidden-lg { + display: none !important; + } + tr.hidden-sm.hidden-lg { + display: none !important; + } + th.hidden-sm.hidden-lg, + td.hidden-sm.hidden-lg { + display: none !important; + } +} + +.hidden-md { + display: block !important; +} + +tr.hidden-md { + display: table-row !important; +} + +th.hidden-md, +td.hidden-md { + display: table-cell !important; +} + +@media (max-width: 767px) { + .hidden-md.hidden-xs { + display: none !important; + } + tr.hidden-md.hidden-xs { + display: none !important; + } + th.hidden-md.hidden-xs, + td.hidden-md.hidden-xs { + display: none !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .hidden-md.hidden-sm { + display: none !important; + } + tr.hidden-md.hidden-sm { + display: none !important; + } + th.hidden-md.hidden-sm, + td.hidden-md.hidden-sm { + display: none !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } + tr.hidden-md { + display: none !important; + } + th.hidden-md, + td.hidden-md { + display: none !important; + } +} + +@media (min-width: 1200px) { + .hidden-md.hidden-lg { + display: none !important; + } + tr.hidden-md.hidden-lg { + display: none !important; + } + th.hidden-md.hidden-lg, + td.hidden-md.hidden-lg { + display: none !important; + } +} + +.hidden-lg { + display: block !important; +} + +tr.hidden-lg { + display: table-row !important; +} + +th.hidden-lg, +td.hidden-lg { + display: table-cell !important; +} + +@media (max-width: 767px) { + .hidden-lg.hidden-xs { + display: none !important; + } + tr.hidden-lg.hidden-xs { + display: none !important; + } + th.hidden-lg.hidden-xs, + td.hidden-lg.hidden-xs { + display: none !important; + } +} + +@media (min-width: 768px) and (max-width: 991px) { + .hidden-lg.hidden-sm { + display: none !important; + } + tr.hidden-lg.hidden-sm { + display: none !important; + } + th.hidden-lg.hidden-sm, + td.hidden-lg.hidden-sm { + display: none !important; + } +} + +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-lg.hidden-md { + display: none !important; + } + tr.hidden-lg.hidden-md { + display: none !important; + } + th.hidden-lg.hidden-md, + td.hidden-lg.hidden-md { + display: none !important; + } +} + +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } + tr.hidden-lg { + display: none !important; + } + th.hidden-lg, + td.hidden-lg { + display: none !important; + } +} + +.visible-print { + display: none !important; +} + +tr.visible-print { + display: none !important; +} + +th.visible-print, +td.visible-print { + display: none !important; +} + +@media print { + .visible-print { + display: block !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } + .hidden-print { + display: none !important; + } + tr.hidden-print { + display: none !important; + } + th.hidden-print, + td.hidden-print { + display: none !important; + } +} \ No newline at end of file diff --git a/Project-Unite/Content/bootstrap.min.css b/Project-Unite/Content/bootstrap.min.css new file mode 100644 index 0000000..df89a50 --- /dev/null +++ b/Project-Unite/Content/bootstrap.min.css @@ -0,0 +1,20 @@ +/* NUGET: BEGIN LICENSE TEXT + * + * Microsoft grants you the right to use these script files for the sole + * purpose of either: (i) interacting through your browser with the Microsoft + * website or online service, subject to the applicable licensing or use + * terms; or (ii) using the files as included with a Microsoft product subject + * to that product's license terms. Microsoft reserves all other rights to the + * files not expressly granted by Microsoft, whether by implication, estoppel + * or otherwise. The notices and licenses below are for informational purposes only. + * + * NUGET: END LICENSE TEXT */ +/*! + * Bootstrap v3.0.0 + * + * Copyright 2013 Twitter, Inc + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Designed and built with all the love in the world by @mdo and @fat. + *//*! normalize.css v2.1.0 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}a:focus{outline:thin dotted}a:active,a:hover{outline:0}h1{margin:.67em 0;font-size:2em}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}hr{height:0;-moz-box-sizing:content-box;box-sizing:content-box}mark{color:#000;background:#ff0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre-wrap}q{quotes:"\201C" "\201D" "\2018" "\2019"}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:0}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid #c0c0c0}legend{padding:0;border:0}button,input,select,textarea{margin:0;font-family:inherit;font-size:100%}button,input{line-height:normal}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}button[disabled],html input[disabled]{cursor:default}input[type="checkbox"],input[type="radio"]{padding:0;box-sizing:border-box}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}@media print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}.ir a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}@page{margin:2cm .5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.table td,.table th{background-color:#fff!important}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table-bordered th,.table-bordered td{border:1px solid #ddd!important}}*,*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:62.5%;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.428571429;color:#333;background-color:#fff}input,button,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}button,input,select[multiple],textarea{background-image:none}a{color:#428bca;text-decoration:none}a:hover,a:focus{color:#2a6496;text-decoration:underline}a:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}img{vertical-align:middle}.img-responsive{display:block;height:auto;max-width:100%}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);border:0}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16.099999999999998px;font-weight:200;line-height:1.4}@media(min-width:768px){.lead{font-size:21px}}small{font-size:85%}cite{font-style:normal}.text-muted{color:#999}.text-primary{color:#428bca}.text-warning{color:#c09853}.text-danger{color:#b94a48}.text-success{color:#468847}.text-info{color:#3a87ad}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:500;line-height:1.1}h1 small,h2 small,h3 small,h4 small,h5 small,h6 small,.h1 small,.h2 small,.h3 small,.h4 small,.h5 small,.h6 small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{margin-top:20px;margin-bottom:10px}h4,h5,h6{margin-top:10px;margin-bottom:10px}h1,.h1{font-size:36px}h2,.h2{font-size:30px}h3,.h3{font-size:24px}h4,.h4{font-size:18px}h5,.h5{font-size:14px}h6,.h6{font-size:12px}h1 small,.h1 small{font-size:24px}h2 small,.h2 small{font-size:18px}h3 small,.h3 small,h4 small,.h4 small{font-size:14px}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ul,ol{margin-top:0;margin-bottom:10px}ul ul,ol ul,ul ol,ol ol{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-bottom:20px}dt,dd{line-height:1.428571429}dt{font-weight:bold}dd{margin-left:0}@media(min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}.dl-horizontal dd:before,.dl-horizontal dd:after{display:table;content:" "}.dl-horizontal dd:after{clear:both}}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted #999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;border-left:5px solid #eee}blockquote p{font-size:17.5px;font-weight:300;line-height:1.25}blockquote p:last-child{margin-bottom:0}blockquote small{display:block;line-height:1.428571429;color:#999}blockquote small:before{content:'\2014 \00A0'}blockquote.pull-right{padding-right:15px;padding-left:0;border-right:5px solid #eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right small:before{content:''}blockquote.pull-right small:after{content:'\00A0 \2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:1.428571429}code,pre{font-family:Monaco,Menlo,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;white-space:nowrap;background-color:#f9f2f4;border-radius:4px}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.428571429;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.container:before,.container:after{display:table;content:" "}.container:after{clear:both}.row{margin-right:-15px;margin-left:-15px}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.row:before,.row:after{display:table;content:" "}.row:after{clear:both}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12,.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12,.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12,.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11{float:left}.col-xs-1{width:8.333333333333332%}.col-xs-2{width:16.666666666666664%}.col-xs-3{width:25%}.col-xs-4{width:33.33333333333333%}.col-xs-5{width:41.66666666666667%}.col-xs-6{width:50%}.col-xs-7{width:58.333333333333336%}.col-xs-8{width:66.66666666666666%}.col-xs-9{width:75%}.col-xs-10{width:83.33333333333334%}.col-xs-11{width:91.66666666666666%}.col-xs-12{width:100%}@media(min-width:768px){.container{max-width:750px}.col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11{float:left}.col-sm-1{width:8.333333333333332%}.col-sm-2{width:16.666666666666664%}.col-sm-3{width:25%}.col-sm-4{width:33.33333333333333%}.col-sm-5{width:41.66666666666667%}.col-sm-6{width:50%}.col-sm-7{width:58.333333333333336%}.col-sm-8{width:66.66666666666666%}.col-sm-9{width:75%}.col-sm-10{width:83.33333333333334%}.col-sm-11{width:91.66666666666666%}.col-sm-12{width:100%}.col-sm-push-1{left:8.333333333333332%}.col-sm-push-2{left:16.666666666666664%}.col-sm-push-3{left:25%}.col-sm-push-4{left:33.33333333333333%}.col-sm-push-5{left:41.66666666666667%}.col-sm-push-6{left:50%}.col-sm-push-7{left:58.333333333333336%}.col-sm-push-8{left:66.66666666666666%}.col-sm-push-9{left:75%}.col-sm-push-10{left:83.33333333333334%}.col-sm-push-11{left:91.66666666666666%}.col-sm-pull-1{right:8.333333333333332%}.col-sm-pull-2{right:16.666666666666664%}.col-sm-pull-3{right:25%}.col-sm-pull-4{right:33.33333333333333%}.col-sm-pull-5{right:41.66666666666667%}.col-sm-pull-6{right:50%}.col-sm-pull-7{right:58.333333333333336%}.col-sm-pull-8{right:66.66666666666666%}.col-sm-pull-9{right:75%}.col-sm-pull-10{right:83.33333333333334%}.col-sm-pull-11{right:91.66666666666666%}.col-sm-offset-1{margin-left:8.333333333333332%}.col-sm-offset-2{margin-left:16.666666666666664%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-4{margin-left:33.33333333333333%}.col-sm-offset-5{margin-left:41.66666666666667%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-7{margin-left:58.333333333333336%}.col-sm-offset-8{margin-left:66.66666666666666%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-10{margin-left:83.33333333333334%}.col-sm-offset-11{margin-left:91.66666666666666%}}@media(min-width:992px){.container{max-width:970px}.col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11{float:left}.col-md-1{width:8.333333333333332%}.col-md-2{width:16.666666666666664%}.col-md-3{width:25%}.col-md-4{width:33.33333333333333%}.col-md-5{width:41.66666666666667%}.col-md-6{width:50%}.col-md-7{width:58.333333333333336%}.col-md-8{width:66.66666666666666%}.col-md-9{width:75%}.col-md-10{width:83.33333333333334%}.col-md-11{width:91.66666666666666%}.col-md-12{width:100%}.col-md-push-0{left:auto}.col-md-push-1{left:8.333333333333332%}.col-md-push-2{left:16.666666666666664%}.col-md-push-3{left:25%}.col-md-push-4{left:33.33333333333333%}.col-md-push-5{left:41.66666666666667%}.col-md-push-6{left:50%}.col-md-push-7{left:58.333333333333336%}.col-md-push-8{left:66.66666666666666%}.col-md-push-9{left:75%}.col-md-push-10{left:83.33333333333334%}.col-md-push-11{left:91.66666666666666%}.col-md-pull-0{right:auto}.col-md-pull-1{right:8.333333333333332%}.col-md-pull-2{right:16.666666666666664%}.col-md-pull-3{right:25%}.col-md-pull-4{right:33.33333333333333%}.col-md-pull-5{right:41.66666666666667%}.col-md-pull-6{right:50%}.col-md-pull-7{right:58.333333333333336%}.col-md-pull-8{right:66.66666666666666%}.col-md-pull-9{right:75%}.col-md-pull-10{right:83.33333333333334%}.col-md-pull-11{right:91.66666666666666%}.col-md-offset-0{margin-left:0}.col-md-offset-1{margin-left:8.333333333333332%}.col-md-offset-2{margin-left:16.666666666666664%}.col-md-offset-3{margin-left:25%}.col-md-offset-4{margin-left:33.33333333333333%}.col-md-offset-5{margin-left:41.66666666666667%}.col-md-offset-6{margin-left:50%}.col-md-offset-7{margin-left:58.333333333333336%}.col-md-offset-8{margin-left:66.66666666666666%}.col-md-offset-9{margin-left:75%}.col-md-offset-10{margin-left:83.33333333333334%}.col-md-offset-11{margin-left:91.66666666666666%}}@media(min-width:1200px){.container{max-width:1170px}.col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11{float:left}.col-lg-1{width:8.333333333333332%}.col-lg-2{width:16.666666666666664%}.col-lg-3{width:25%}.col-lg-4{width:33.33333333333333%}.col-lg-5{width:41.66666666666667%}.col-lg-6{width:50%}.col-lg-7{width:58.333333333333336%}.col-lg-8{width:66.66666666666666%}.col-lg-9{width:75%}.col-lg-10{width:83.33333333333334%}.col-lg-11{width:91.66666666666666%}.col-lg-12{width:100%}.col-lg-push-0{left:auto}.col-lg-push-1{left:8.333333333333332%}.col-lg-push-2{left:16.666666666666664%}.col-lg-push-3{left:25%}.col-lg-push-4{left:33.33333333333333%}.col-lg-push-5{left:41.66666666666667%}.col-lg-push-6{left:50%}.col-lg-push-7{left:58.333333333333336%}.col-lg-push-8{left:66.66666666666666%}.col-lg-push-9{left:75%}.col-lg-push-10{left:83.33333333333334%}.col-lg-push-11{left:91.66666666666666%}.col-lg-pull-0{right:auto}.col-lg-pull-1{right:8.333333333333332%}.col-lg-pull-2{right:16.666666666666664%}.col-lg-pull-3{right:25%}.col-lg-pull-4{right:33.33333333333333%}.col-lg-pull-5{right:41.66666666666667%}.col-lg-pull-6{right:50%}.col-lg-pull-7{right:58.333333333333336%}.col-lg-pull-8{right:66.66666666666666%}.col-lg-pull-9{right:75%}.col-lg-pull-10{right:83.33333333333334%}.col-lg-pull-11{right:91.66666666666666%}.col-lg-offset-0{margin-left:0}.col-lg-offset-1{margin-left:8.333333333333332%}.col-lg-offset-2{margin-left:16.666666666666664%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-4{margin-left:33.33333333333333%}.col-lg-offset-5{margin-left:41.66666666666667%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-7{margin-left:58.333333333333336%}.col-lg-offset-8{margin-left:66.66666666666666%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-10{margin-left:83.33333333333334%}.col-lg-offset-11{margin-left:91.66666666666666%}}table{max-width:100%;background-color:transparent}th{text-align:left}.table{width:100%;margin-bottom:20px}.table thead>tr>th,.table tbody>tr>th,.table tfoot>tr>th,.table thead>tr>td,.table tbody>tr>td,.table tfoot>tr>td{padding:8px;line-height:1.428571429;vertical-align:top;border-top:1px solid #ddd}.table thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table caption+thead tr:first-child th,.table colgroup+thead tr:first-child th,.table thead:first-child tr:first-child th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child td,.table thead:first-child tr:first-child td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed thead>tr>th,.table-condensed tbody>tr>th,.table-condensed tfoot>tr>th,.table-condensed thead>tr>td,.table-condensed tbody>tr>td,.table-condensed tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-child(odd)>td,.table-striped>tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover>tbody>tr:hover>td,.table-hover>tbody>tr:hover>th{background-color:#f5f5f5}table col[class*="col-"]{display:table-column;float:none}table td[class*="col-"],table th[class*="col-"]{display:table-cell;float:none}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8;border-color:#d6e9c6}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td{background-color:#d0e9c6;border-color:#c9e2b3}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede;border-color:#eed3d7}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td{background-color:#ebcccc;border-color:#e6c1c7}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3;border-color:#fbeed5}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td{background-color:#faf2cc;border-color:#f8e5be}@media(max-width:768px){.table-responsive{width:100%;margin-bottom:15px;overflow-x:scroll;overflow-y:hidden;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0;background-color:#fff}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>thead>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>thead>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;margin-bottom:5px;font-weight:bold}input[type="search"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px \9;line-height:normal}input[type="file"]{display:block}select[multiple],select[size]{height:auto}select optgroup{font-family:inherit;font-size:inherit;font-style:inherit}input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}input[type="number"]::-webkit-outer-spin-button,input[type="number"]::-webkit-inner-spin-button{height:auto}.form-control:-moz-placeholder{color:#999}.form-control::-moz-placeholder{color:#999}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.428571429;color:#555;vertical-align:middle;background-color:#fff;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px rgba(102,175,233,0.6)}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{cursor:not-allowed;background-color:#eee}textarea.form-control{height:auto}.form-group{margin-bottom:15px}.radio,.checkbox{display:block;min-height:20px;padding-left:20px;margin-top:10px;margin-bottom:10px;vertical-align:middle}.radio label,.checkbox label{display:inline;margin-bottom:0;font-weight:normal;cursor:pointer}.radio input[type="radio"],.radio-inline input[type="radio"],.checkbox input[type="checkbox"],.checkbox-inline input[type="checkbox"]{float:left;margin-left:-20px}.radio+.radio,.checkbox+.checkbox{margin-top:-5px}.radio-inline,.checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;font-weight:normal;vertical-align:middle;cursor:pointer}.radio-inline+.radio-inline,.checkbox-inline+.checkbox-inline{margin-top:0;margin-left:10px}input[type="radio"][disabled],input[type="checkbox"][disabled],.radio[disabled],.radio-inline[disabled],.checkbox[disabled],.checkbox-inline[disabled],fieldset[disabled] input[type="radio"],fieldset[disabled] input[type="checkbox"],fieldset[disabled] .radio,fieldset[disabled] .radio-inline,fieldset[disabled] .checkbox,fieldset[disabled] .checkbox-inline{cursor:not-allowed}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}textarea.input-sm{height:auto}.input-lg{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-lg{height:45px;line-height:45px}textarea.input-lg{height:auto}.has-warning .help-block,.has-warning .control-label{color:#c09853}.has-warning .form-control{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-warning .form-control:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.has-warning .input-group-addon{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.has-error .help-block,.has-error .control-label{color:#b94a48}.has-error .form-control{border-color:#b94a48;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-error .form-control:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392}.has-error .input-group-addon{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.has-success .help-block,.has-success .control-label{color:#468847}.has-success .form-control{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.has-success .form-control:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b}.has-success .input-group-addon{color:#468847;background-color:#dff0d8;border-color:#468847}.form-control-static{padding-top:7px;margin-bottom:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block}.form-inline .radio,.form-inline .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.form-inline .radio input[type="radio"],.form-inline .checkbox input[type="checkbox"]{float:none;margin-left:0}}.form-horizontal .control-label,.form-horizontal .radio,.form-horizontal .checkbox,.form-horizontal .radio-inline,.form-horizontal .checkbox-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}.form-horizontal .form-group:before,.form-horizontal .form-group:after{display:table;content:" "}.form-horizontal .form-group:after{clear:both}@media(min-width:768px){.form-horizontal .control-label{text-align:right}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:normal;line-height:1.428571429;text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;border:1px solid transparent;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.btn:focus{outline:thin dotted #333;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn:hover,.btn:focus{color:#333;text-decoration:none}.btn:active,.btn.active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{pointer-events:none;cursor:not-allowed;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default:hover,.btn-default:focus,.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.btn-default:active,.btn-default.active,.open .dropdown-toggle.btn-default{background-image:none}.btn-default.disabled,.btn-default[disabled],fieldset[disabled] .btn-default,.btn-default.disabled:hover,.btn-default[disabled]:hover,fieldset[disabled] .btn-default:hover,.btn-default.disabled:focus,.btn-default[disabled]:focus,fieldset[disabled] .btn-default:focus,.btn-default.disabled:active,.btn-default[disabled]:active,fieldset[disabled] .btn-default:active,.btn-default.disabled.active,.btn-default[disabled].active,fieldset[disabled] .btn-default.active{background-color:#fff;border-color:#ccc}.btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.btn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.btn-primary:active,.btn-primary.active,.open .dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled,.btn-primary[disabled],fieldset[disabled] .btn-primary,.btn-primary.disabled:hover,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary:hover,.btn-primary.disabled:focus,.btn-primary[disabled]:focus,fieldset[disabled] .btn-primary:focus,.btn-primary.disabled:active,.btn-primary[disabled]:active,fieldset[disabled] .btn-primary:active,.btn-primary.disabled.active,.btn-primary[disabled].active,fieldset[disabled] .btn-primary.active{background-color:#428bca;border-color:#357ebd}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.btn-warning:active,.btn-warning.active,.open .dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled,.btn-warning[disabled],fieldset[disabled] .btn-warning,.btn-warning.disabled:hover,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning:hover,.btn-warning.disabled:focus,.btn-warning[disabled]:focus,fieldset[disabled] .btn-warning:focus,.btn-warning.disabled:active,.btn-warning[disabled]:active,fieldset[disabled] .btn-warning:active,.btn-warning.disabled.active,.btn-warning[disabled].active,fieldset[disabled] .btn-warning.active{background-color:#f0ad4e;border-color:#eea236}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.btn-danger:active,.btn-danger.active,.open .dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled,.btn-danger[disabled],fieldset[disabled] .btn-danger,.btn-danger.disabled:hover,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger:hover,.btn-danger.disabled:focus,.btn-danger[disabled]:focus,fieldset[disabled] .btn-danger:focus,.btn-danger.disabled:active,.btn-danger[disabled]:active,fieldset[disabled] .btn-danger:active,.btn-danger.disabled.active,.btn-danger[disabled].active,fieldset[disabled] .btn-danger.active{background-color:#d9534f;border-color:#d43f3a}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success:hover,.btn-success:focus,.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{color:#fff;background-color:#47a447;border-color:#398439}.btn-success:active,.btn-success.active,.open .dropdown-toggle.btn-success{background-image:none}.btn-success.disabled,.btn-success[disabled],fieldset[disabled] .btn-success,.btn-success.disabled:hover,.btn-success[disabled]:hover,fieldset[disabled] .btn-success:hover,.btn-success.disabled:focus,.btn-success[disabled]:focus,fieldset[disabled] .btn-success:focus,.btn-success.disabled:active,.btn-success[disabled]:active,fieldset[disabled] .btn-success:active,.btn-success.disabled.active,.btn-success[disabled].active,fieldset[disabled] .btn-success.active{background-color:#5cb85c;border-color:#4cae4c}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info:hover,.btn-info:focus,.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.btn-info:active,.btn-info.active,.open .dropdown-toggle.btn-info{background-image:none}.btn-info.disabled,.btn-info[disabled],fieldset[disabled] .btn-info,.btn-info.disabled:hover,.btn-info[disabled]:hover,fieldset[disabled] .btn-info:hover,.btn-info.disabled:focus,.btn-info[disabled]:focus,fieldset[disabled] .btn-info:focus,.btn-info.disabled:active,.btn-info[disabled]:active,fieldset[disabled] .btn-info:active,.btn-info.disabled.active,.btn-info[disabled].active,fieldset[disabled] .btn-info.active{background-color:#5bc0de;border-color:#46b8da}.btn-link{font-weight:normal;color:#428bca;cursor:pointer;border-radius:0}.btn-link,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:hover,.btn-link:focus,.btn-link:active{border-color:transparent}.btn-link:hover,.btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.btn-link[disabled]:hover,fieldset[disabled] .btn-link:hover,.btn-link[disabled]:focus,fieldset[disabled] .btn-link:focus{color:#999;text-decoration:none}.btn-lg{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-sm,.btn-xs{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-xs{padding:1px 5px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@font-face{font-family:'Glyphicons Halflings';src:url('../fonts/glyphicons-halflings-regular.eot');src:url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'),url('../fonts/glyphicons-halflings-regular.woff') format('woff'),url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'),url('../fonts/glyphicons-halflings-regular.svg#glyphicons-halflingsregular') format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';-webkit-font-smoothing:antialiased;font-style:normal;font-weight:normal;line-height:1}.glyphicon-asterisk:before{content:"\2a"}.glyphicon-plus:before{content:"\2b"}.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-print:before{content:"\e045"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-briefcase:before{content:"\1f4bc"}.glyphicon-calendar:before{content:"\1f4c5"}.glyphicon-pushpin:before{content:"\1f4cc"}.glyphicon-paperclip:before{content:"\1f4ce"}.glyphicon-camera:before{content:"\1f4f7"}.glyphicon-lock:before{content:"\1f512"}.glyphicon-bell:before{content:"\1f514"}.glyphicon-bookmark:before{content:"\1f516"}.glyphicon-fire:before{content:"\1f525"}.glyphicon-wrench:before{content:"\1f527"}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid #000;border-right:4px solid transparent;border-bottom:0 dotted;border-left:4px solid transparent;content:""}.dropdown{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.428571429;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus{color:#fff;text-decoration:none;background-color:#428bca}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#428bca;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.428571429;color:#999}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0 dotted;border-bottom:4px solid #000;content:""}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}}.btn-default .caret{border-top-color:#333}.btn-primary .caret,.btn-success .caret,.btn-warning .caret,.btn-danger .caret,.btn-info .caret{border-top-color:#fff}.dropup .btn-default .caret{border-bottom-color:#333}.dropup .btn-primary .caret,.dropup .btn-success .caret,.dropup .btn-warning .caret,.dropup .btn-danger .caret,.dropup .btn-info .caret{border-bottom-color:#fff}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group>.btn,.btn-group-vertical>.btn{position:relative;float:left}.btn-group>.btn:hover,.btn-group-vertical>.btn:hover,.btn-group>.btn:focus,.btn-group-vertical>.btn:focus,.btn-group>.btn:active,.btn-group-vertical>.btn:active,.btn-group>.btn.active,.btn-group-vertical>.btn.active{z-index:2}.btn-group>.btn:focus,.btn-group-vertical>.btn:focus{outline:0}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar:before,.btn-toolbar:after{display:table;content:" "}.btn-toolbar:after{clear:both}.btn-toolbar .btn-group{float:left}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group,.btn-toolbar>.btn-group+.btn-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child>.btn:last-child,.btn-group>.btn-group:first-child>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child>.btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group-xs>.btn{padding:5px 10px;padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-sm>.btn{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-lg>.btn{padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group:before,.btn-group-vertical>.btn-group:after{display:table;content:" "}.btn-group-vertical>.btn-group:after{clear:both}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-right-radius:0;border-bottom-left-radius:4px;border-top-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child>.btn:last-child,.btn-group-vertical>.btn-group:first-child>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child>.btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.btn-group-justified{display:table;width:100%;border-collapse:separate;table-layout:fixed}.btn-group-justified .btn{display:table-cell;float:none;width:1%}[data-toggle="buttons"]>.btn>input[type="radio"],[data-toggle="buttons"]>.btn>input[type="checkbox"]{display:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group.col{float:none;padding-right:0;padding-left:0}.input-group .form-control{width:100%;margin-bottom:0}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:45px;padding:10px 16px;font-size:18px;line-height:1.33;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:45px;line-height:45px}textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group-addon,.input-group-btn,.input-group .form-control{display:table-cell}.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child),.input-group .form-control:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:normal;line-height:1;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type="radio"],.input-group-addon input[type="checkbox"]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:last-child>.btn,.input-group-btn:last-child>.dropdown-toggle,.input-group-btn:first-child>.btn:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-4px}.input-group-btn>.btn:hover,.input-group-btn>.btn:active{z-index:2}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav:before,.nav:after{display:table;content:" "}.nav:after{clear:both}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#999}.nav>li.disabled>a:hover,.nav>li.disabled>a:focus{color:#999;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:hover,.nav .open>a:focus{background-color:#eee;border-color:#428bca}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.428571429;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:hover,.nav-tabs>li.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}}.nav-tabs.nav-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs.nav-justified>.active>a{border-bottom-color:#fff}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:5px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:hover,.nav-pills>li.active>a:focus{color:#fff;background-color:#428bca}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{text-align:center}@media(min-width:768px){.nav-justified>li{display:table-cell;width:1%}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-bottom:1px solid #ddd}.nav-tabs-justified>.active>a{border-bottom-color:#fff}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tabbable:before,.tabbable:after{display:table;content:" "}.tabbable:after{clear:both}.tab-content>.tab-pane,.pill-content>.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.nav .caret{border-top-color:#428bca;border-bottom-color:#428bca}.nav a:hover .caret{border-top-color:#2a6496;border-bottom-color:#2a6496}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-right-radius:0;border-top-left-radius:0}.navbar{position:relative;z-index:1000;min-height:50px;margin-bottom:20px;border:1px solid transparent}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}.navbar:before,.navbar:after{display:table;content:" "}.navbar:after{clear:both}@media(min-width:768px){.navbar{border-radius:4px}}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}.navbar-header:before,.navbar-header:after{display:table;content:" "}.navbar-header:after{clear:both}@media(min-width:768px){.navbar-header{float:left}}.navbar-collapse{max-height:340px;padding-right:15px;padding-left:15px;overflow-x:visible;border-top:1px solid transparent;box-shadow:inset 0 1px 0 rgba(255,255,255,0.1);-webkit-overflow-scrolling:touch}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse:before,.navbar-collapse:after{display:table;content:" "}.navbar-collapse:after{clear:both}.navbar-collapse.in{overflow-y:auto}@media(min-width:768px){.navbar-collapse{width:auto;border-top:0;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-collapse .navbar-nav.navbar-left:first-child{margin-left:-15px}.navbar-collapse .navbar-nav.navbar-right:last-child{margin-right:-15px}.navbar-collapse .navbar-text:last-child{margin-right:0}}.container>.navbar-header,.container>.navbar-collapse{margin-right:-15px;margin-left:-15px}@media(min-width:768px){.container>.navbar-header,.container>.navbar-collapse{margin-right:0;margin-left:0}}.navbar-static-top{border-width:0 0 1px}@media(min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;border-width:0 0 1px}@media(min-width:768px){.navbar-fixed-top,.navbar-fixed-bottom{border-radius:0}}.navbar-fixed-top{top:0;z-index:1030}.navbar-fixed-bottom{bottom:0;margin-bottom:0}.navbar-brand{float:left;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:hover,.navbar-brand:focus{text-decoration:none}@media(min-width:768px){.navbar>.container .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;border:1px solid transparent;border-radius:4px}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media(min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media(max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;box-shadow:none}.navbar-nav .open .dropdown-menu>li>a,.navbar-nav .open .dropdown-menu .dropdown-header{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:hover,.navbar-nav .open .dropdown-menu>li>a:focus{background-image:none}}@media(min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}@media(min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.1)}@media(min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block}.navbar-form .radio,.navbar-form .checkbox{display:inline-block;padding-left:0;margin-top:0;margin-bottom:0}.navbar-form .radio input[type="radio"],.navbar-form .checkbox input[type="checkbox"]{float:none;margin-left:0}}@media(max-width:767px){.navbar-form .form-group{margin-bottom:5px}}@media(min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-right-radius:0;border-top-left-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-nav.pull-right>li>.dropdown-menu,.navbar-nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-text{float:left;margin-top:15px;margin-bottom:15px}@media(min-width:768px){.navbar-text{margin-right:15px;margin-left:15px}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:hover,.navbar-default .navbar-brand:focus{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:hover,.navbar-default .navbar-nav>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:hover,.navbar-default .navbar-nav>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:hover,.navbar-default .navbar-nav>.disabled>a:focus{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:hover,.navbar-default .navbar-toggle:focus{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#ccc}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e6e6e6}.navbar-default .navbar-nav>.dropdown>a:hover .caret,.navbar-default .navbar-nav>.dropdown>a:focus .caret{border-top-color:#333;border-bottom-color:#333}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:hover,.navbar-default .navbar-nav>.open>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.open>a .caret,.navbar-default .navbar-nav>.open>a:hover .caret,.navbar-default .navbar-nav>.open>a:focus .caret{border-top-color:#555;border-bottom-color:#555}.navbar-default .navbar-nav>.dropdown>a .caret{border-top-color:#777;border-bottom-color:#777}@media(max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#999}.navbar-inverse .navbar-brand:hover,.navbar-inverse .navbar-brand:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#999}.navbar-inverse .navbar-nav>li>a{color:#999}.navbar-inverse .navbar-nav>li>a:hover,.navbar-inverse .navbar-nav>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:hover,.navbar-inverse .navbar-nav>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:hover,.navbar-inverse .navbar-nav>.disabled>a:focus{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:hover,.navbar-inverse .navbar-toggle:focus{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:hover,.navbar-inverse .navbar-nav>.open>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.dropdown>a:hover .caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-nav>.dropdown>a .caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .navbar-nav>.open>a .caret,.navbar-inverse .navbar-nav>.open>a:hover .caret,.navbar-inverse .navbar-nav>.open>a:focus .caret{border-top-color:#fff;border-bottom-color:#fff}@media(max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#999}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#999}.navbar-inverse .navbar-link:hover{color:#fff}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#999}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.428571429;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-bottom-left-radius:4px;border-top-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:hover,.pagination>li>span:hover,.pagination>li>a:focus,.pagination>li>span:focus{background-color:#eee}.pagination>.active>a,.pagination>.active>span,.pagination>.active>a:hover,.pagination>.active>span:hover,.pagination>.active>a:focus,.pagination>.active>span:focus{z-index:2;color:#fff;cursor:default;background-color:#428bca;border-color:#428bca}.pagination>.disabled>span,.pagination>.disabled>a,.pagination>.disabled>a:hover,.pagination>.disabled>a:focus{color:#999;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-bottom-left-radius:6px;border-top-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-bottom-left-radius:3px;border-top-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager:before,.pager:after{display:table;content:" "}.pager:after{clear:both}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:hover,.pager li>a:focus{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager .disabled>span{color:#999;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}.label[href]:hover,.label[href]:focus{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.label-default{background-color:#999}.label-default[href]:hover,.label-default[href]:focus{background-color:#808080}.label-primary{background-color:#428bca}.label-primary[href]:hover,.label-primary[href]:focus{background-color:#3071a9}.label-success{background-color:#5cb85c}.label-success[href]:hover,.label-success[href]:focus{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:hover,.label-info[href]:focus{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:hover,.label-warning[href]:focus{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:hover,.label-danger[href]:focus{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:bold;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;background-color:#999;border-radius:10px}.badge:empty{display:none}a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.btn .badge{position:relative;top:-1px}a.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#428bca;background-color:#fff}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding:30px;margin-bottom:30px;font-size:21px;font-weight:200;line-height:2.1428571435;color:inherit;background-color:#eee}.jumbotron h1{line-height:1;color:inherit}.jumbotron p{line-height:1.4}.container .jumbotron{border-radius:6px}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron{padding-right:60px;padding-left:60px}.jumbotron h1{font-size:63px}}.thumbnail{display:inline-block;display:block;height:auto;max-width:100%;padding:4px;line-height:1.428571429;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.thumbnail>img{display:block;height:auto;max-width:100%}a.thumbnail:hover,a.thumbnail:focus{border-color:#428bca}.thumbnail>img{margin-right:auto;margin-left:auto}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:bold}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable{padding-right:35px}.alert-dismissable .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#356635}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#2d6987}.alert-warning{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.alert-warning hr{border-top-color:#f8e5be}.alert-warning .alert-link{color:#a47e3c}.alert-danger{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger hr{border-top-color:#e6c1c7}.alert-danger .alert-link{color:#953b39}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-moz-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:0 0}to{background-position:40px 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;background-color:#428bca;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);-webkit-transition:width .6s ease;transition:width .6s ease}.progress-striped .progress-bar{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-size:40px 40px}.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-gradient(linear,0 100%,100% 0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 75%,transparent)}.media,.media-body{overflow:hidden;zoom:1}.media,.media .media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-right-radius:4px;border-top-left-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}a.list-group-item{color:#555}a.list-group-item .list-group-item-heading{color:#333}a.list-group-item:hover,a.list-group-item:focus{text-decoration:none;background-color:#f5f5f5}.list-group-item.active,.list-group-item.active:hover,.list-group-item.active:focus{z-index:2;color:#fff;background-color:#428bca;border-color:#428bca}.list-group-item.active .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:hover .list-group-item-text,.list-group-item.active:focus .list-group-item-text{color:#e1edf7}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,0.05);box-shadow:0 1px 1px rgba(0,0,0,0.05)}.panel-body{padding:15px}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel-body:before,.panel-body:after{display:table;content:" "}.panel-body:after{clear:both}.panel>.list-group{margin-bottom:0}.panel>.list-group .list-group-item{border-width:1px 0}.panel>.list-group .list-group-item:first-child{border-top-right-radius:0;border-top-left-radius:0}.panel>.list-group .list-group-item:last-child{border-bottom:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.panel>.table{margin-bottom:0}.panel>.panel-body+.table{border-top:1px solid #ddd}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-right-radius:3px;border-top-left-radius:3px}.panel-title{margin-top:0;margin-bottom:0;font-size:16px}.panel-title>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel-group .panel{margin-bottom:0;overflow:hidden;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse .panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse .panel-body{border-top-color:#ddd}.panel-default>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#428bca}.panel-primary>.panel-heading{color:#fff;background-color:#428bca;border-color:#428bca}.panel-primary>.panel-heading+.panel-collapse .panel-body{border-top-color:#428bca}.panel-primary>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#428bca}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse .panel-body{border-top-color:#d6e9c6}.panel-success>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#d6e9c6}.panel-warning{border-color:#fbeed5}.panel-warning>.panel-heading{color:#c09853;background-color:#fcf8e3;border-color:#fbeed5}.panel-warning>.panel-heading+.panel-collapse .panel-body{border-top-color:#fbeed5}.panel-warning>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#fbeed5}.panel-danger{border-color:#eed3d7}.panel-danger>.panel-heading{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.panel-danger>.panel-heading+.panel-collapse .panel-body{border-top-color:#eed3d7}.panel-danger>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#eed3d7}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse .panel-body{border-top-color:#bce8f1}.panel-info>.panel-footer+.panel-collapse .panel-body{border-bottom-color:#bce8f1}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px rgba(0,0,0,0.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:bold;line-height:1;color:#000;text-shadow:0 1px 0 #fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.5;filter:alpha(opacity=50)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.modal-open{overflow:hidden}body.modal-open,.modal-open .navbar-fixed-top,.modal-open .navbar-fixed-bottom{margin-right:15px}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;display:none;overflow:auto;overflow-y:scroll}.modal.fade .modal-dialog{-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);transform:translate(0,-25%);-webkit-transition:-webkit-transform .3s ease-out;-moz-transition:-moz-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);transform:translate(0,0)}.modal-dialog{z-index:1050;width:auto;padding:10px;margin-right:auto;margin-left:auto}.modal-content{position:relative;background-color:#fff;border:1px solid #999;border:1px solid rgba(0,0,0,0.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,0.5);box-shadow:0 3px 9px rgba(0,0,0,0.5);background-clip:padding-box}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1030;background-color:#000}.modal-backdrop.fade{opacity:0;filter:alpha(opacity=0)}.modal-backdrop.in{opacity:.5;filter:alpha(opacity=50)}.modal-header{min-height:16.428571429px;padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.428571429}.modal-body{position:relative;padding:20px}.modal-footer{padding:19px 20px 20px;margin-top:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer:before,.modal-footer:after{display:table;content:" "}.modal-footer:after{clear:both}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}@media screen and (min-width:768px){.modal-dialog{right:auto;left:50%;width:600px;padding-top:30px;padding-bottom:30px}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,0.5);box-shadow:0 5px 15px rgba(0,0,0,0.5)}}.tooltip{position:absolute;z-index:1030;display:block;font-size:12px;line-height:1.4;opacity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-left .tooltip-arrow{bottom:0;left:5px;border-top-color:#000;border-width:5px 5px 0}.tooltip.top-right .tooltip-arrow{right:5px;bottom:0;border-top-color:#000;border-width:5px 5px 0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 5px 5px}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-left .tooltip-arrow{top:0;left:5px;border-bottom-color:#000;border-width:0 5px 5px}.tooltip.bottom-right .tooltip-arrow{top:0;right:5px;border-bottom-color:#000;border-width:0 5px 5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2);background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover .arrow,.popover .arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover .arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top .arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0;content:" "}.popover.right .arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0;content:" "}.popover.bottom .arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0;content:" "}.popover.left .arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border-right-width:0}.popover.left .arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0;content:" "}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display:block;height:auto;max-width:100%;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6);opacity:.5;filter:alpha(opacity=50)}.carousel-control.left{background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0001)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.5) 0),color-stop(rgba(0,0,0,0.0001) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.5) 0,rgba(0,0,0,0.0001) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000',endColorstr='#00000000',GradientType=1)}.carousel-control.right{right:0;left:auto;background-image:-webkit-gradient(linear,0 top,100% top,from(rgba(0,0,0,0.0001)),to(rgba(0,0,0,0.5)));background-image:-webkit-linear-gradient(left,color-stop(rgba(0,0,0,0.0001) 0),color-stop(rgba(0,0,0,0.5) 100%));background-image:-moz-linear-gradient(left,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-image:linear-gradient(to right,rgba(0,0,0,0.0001) 0,rgba(0,0,0,0.5) 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000',endColorstr='#80000000',GradientType=1)}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-control .icon-prev,.carousel-control .icon-next,.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right{position:absolute;top:50%;left:50%;z-index:5;display:inline-block}.carousel-control .icon-prev,.carousel-control .icon-next{width:20px;height:20px;margin-top:-10px;margin-left:-10px;font-family:serif}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,0.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .icon-prev,.carousel-control .icon-next{width:30px;height:30px;margin-top:-15px;margin-left:-15px;font-size:30px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.clearfix:before,.clearfix:after{display:table;content:" "}.clearfix:after{clear:both}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.affix{position:fixed}@-ms-viewport{width:device-width}@media screen and (max-width:400px){@-ms-viewport{width:320px}}.hidden{display:none!important;visibility:hidden!important}.visible-xs{display:none!important}tr.visible-xs{display:none!important}th.visible-xs,td.visible-xs{display:none!important}@media(max-width:767px){.visible-xs{display:block!important}tr.visible-xs{display:table-row!important}th.visible-xs,td.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-xs.visible-sm{display:block!important}tr.visible-xs.visible-sm{display:table-row!important}th.visible-xs.visible-sm,td.visible-xs.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-xs.visible-md{display:block!important}tr.visible-xs.visible-md{display:table-row!important}th.visible-xs.visible-md,td.visible-xs.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-xs.visible-lg{display:block!important}tr.visible-xs.visible-lg{display:table-row!important}th.visible-xs.visible-lg,td.visible-xs.visible-lg{display:table-cell!important}}.visible-sm{display:none!important}tr.visible-sm{display:none!important}th.visible-sm,td.visible-sm{display:none!important}@media(max-width:767px){.visible-sm.visible-xs{display:block!important}tr.visible-sm.visible-xs{display:table-row!important}th.visible-sm.visible-xs,td.visible-sm.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-sm{display:block!important}tr.visible-sm{display:table-row!important}th.visible-sm,td.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-sm.visible-md{display:block!important}tr.visible-sm.visible-md{display:table-row!important}th.visible-sm.visible-md,td.visible-sm.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-sm.visible-lg{display:block!important}tr.visible-sm.visible-lg{display:table-row!important}th.visible-sm.visible-lg,td.visible-sm.visible-lg{display:table-cell!important}}.visible-md{display:none!important}tr.visible-md{display:none!important}th.visible-md,td.visible-md{display:none!important}@media(max-width:767px){.visible-md.visible-xs{display:block!important}tr.visible-md.visible-xs{display:table-row!important}th.visible-md.visible-xs,td.visible-md.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-md.visible-sm{display:block!important}tr.visible-md.visible-sm{display:table-row!important}th.visible-md.visible-sm,td.visible-md.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-md{display:block!important}tr.visible-md{display:table-row!important}th.visible-md,td.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-md.visible-lg{display:block!important}tr.visible-md.visible-lg{display:table-row!important}th.visible-md.visible-lg,td.visible-md.visible-lg{display:table-cell!important}}.visible-lg{display:none!important}tr.visible-lg{display:none!important}th.visible-lg,td.visible-lg{display:none!important}@media(max-width:767px){.visible-lg.visible-xs{display:block!important}tr.visible-lg.visible-xs{display:table-row!important}th.visible-lg.visible-xs,td.visible-lg.visible-xs{display:table-cell!important}}@media(min-width:768px) and (max-width:991px){.visible-lg.visible-sm{display:block!important}tr.visible-lg.visible-sm{display:table-row!important}th.visible-lg.visible-sm,td.visible-lg.visible-sm{display:table-cell!important}}@media(min-width:992px) and (max-width:1199px){.visible-lg.visible-md{display:block!important}tr.visible-lg.visible-md{display:table-row!important}th.visible-lg.visible-md,td.visible-lg.visible-md{display:table-cell!important}}@media(min-width:1200px){.visible-lg{display:block!important}tr.visible-lg{display:table-row!important}th.visible-lg,td.visible-lg{display:table-cell!important}}.hidden-xs{display:block!important}tr.hidden-xs{display:table-row!important}th.hidden-xs,td.hidden-xs{display:table-cell!important}@media(max-width:767px){.hidden-xs{display:none!important}tr.hidden-xs{display:none!important}th.hidden-xs,td.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-xs.hidden-sm{display:none!important}tr.hidden-xs.hidden-sm{display:none!important}th.hidden-xs.hidden-sm,td.hidden-xs.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-xs.hidden-md{display:none!important}tr.hidden-xs.hidden-md{display:none!important}th.hidden-xs.hidden-md,td.hidden-xs.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-xs.hidden-lg{display:none!important}tr.hidden-xs.hidden-lg{display:none!important}th.hidden-xs.hidden-lg,td.hidden-xs.hidden-lg{display:none!important}}.hidden-sm{display:block!important}tr.hidden-sm{display:table-row!important}th.hidden-sm,td.hidden-sm{display:table-cell!important}@media(max-width:767px){.hidden-sm.hidden-xs{display:none!important}tr.hidden-sm.hidden-xs{display:none!important}th.hidden-sm.hidden-xs,td.hidden-sm.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}tr.hidden-sm{display:none!important}th.hidden-sm,td.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-sm.hidden-md{display:none!important}tr.hidden-sm.hidden-md{display:none!important}th.hidden-sm.hidden-md,td.hidden-sm.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-sm.hidden-lg{display:none!important}tr.hidden-sm.hidden-lg{display:none!important}th.hidden-sm.hidden-lg,td.hidden-sm.hidden-lg{display:none!important}}.hidden-md{display:block!important}tr.hidden-md{display:table-row!important}th.hidden-md,td.hidden-md{display:table-cell!important}@media(max-width:767px){.hidden-md.hidden-xs{display:none!important}tr.hidden-md.hidden-xs{display:none!important}th.hidden-md.hidden-xs,td.hidden-md.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-md.hidden-sm{display:none!important}tr.hidden-md.hidden-sm{display:none!important}th.hidden-md.hidden-sm,td.hidden-md.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}tr.hidden-md{display:none!important}th.hidden-md,td.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-md.hidden-lg{display:none!important}tr.hidden-md.hidden-lg{display:none!important}th.hidden-md.hidden-lg,td.hidden-md.hidden-lg{display:none!important}}.hidden-lg{display:block!important}tr.hidden-lg{display:table-row!important}th.hidden-lg,td.hidden-lg{display:table-cell!important}@media(max-width:767px){.hidden-lg.hidden-xs{display:none!important}tr.hidden-lg.hidden-xs{display:none!important}th.hidden-lg.hidden-xs,td.hidden-lg.hidden-xs{display:none!important}}@media(min-width:768px) and (max-width:991px){.hidden-lg.hidden-sm{display:none!important}tr.hidden-lg.hidden-sm{display:none!important}th.hidden-lg.hidden-sm,td.hidden-lg.hidden-sm{display:none!important}}@media(min-width:992px) and (max-width:1199px){.hidden-lg.hidden-md{display:none!important}tr.hidden-lg.hidden-md{display:none!important}th.hidden-lg.hidden-md,td.hidden-lg.hidden-md{display:none!important}}@media(min-width:1200px){.hidden-lg{display:none!important}tr.hidden-lg{display:none!important}th.hidden-lg,td.hidden-lg{display:none!important}}.visible-print{display:none!important}tr.visible-print{display:none!important}th.visible-print,td.visible-print{display:none!important}@media print{.visible-print{display:block!important}tr.visible-print{display:table-row!important}th.visible-print,td.visible-print{display:table-cell!important}.hidden-print{display:none!important}tr.hidden-print{display:none!important}th.hidden-print,td.hidden-print{display:none!important}} \ No newline at end of file diff --git a/Project-Unite/Controllers/AccountController.cs b/Project-Unite/Controllers/AccountController.cs new file mode 100644 index 0000000..d742484 --- /dev/null +++ b/Project-Unite/Controllers/AccountController.cs @@ -0,0 +1,513 @@ +using System; +using System.Globalization; +using System.Linq; +using System.Security.Claims; +using System.Threading.Tasks; +using System.Web; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.Owin; +using Microsoft.Owin.Security; +using Project_Unite.Models; + +namespace Project_Unite.Controllers +{ + [Authorize] + public class AccountController : Controller + { + private ApplicationSignInManager _signInManager; + private ApplicationUserManager _userManager; + + public AccountController() + { + } + + public AccountController(ApplicationUserManager userManager, ApplicationSignInManager signInManager ) + { + UserManager = userManager; + SignInManager = signInManager; + } + + public ApplicationSignInManager SignInManager + { + get + { + return _signInManager ?? HttpContext.GetOwinContext().Get(); + } + private set + { + _signInManager = value; + } + } + + public ApplicationUserManager UserManager + { + get + { + return _userManager ?? HttpContext.GetOwinContext().GetUserManager(); + } + private set + { + _userManager = value; + } + } + + public async Task ResendConf() + { + var uid = User.Identity.GetUserId(); + var usr = new ApplicationDbContext().Users.FirstOrDefault(x => x.Id == uid); + if (usr == null) + return new HttpStatusCodeResult(404); + if (usr.EmailConfirmed == true) + { + ViewBag.IsConfirmed = true; + return View(); + } + string code = await UserManager.GenerateEmailConfirmationTokenAsync(uid); + var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = uid, code = code }, protocol: Request.Url.Scheme); + await UserManager.SendEmailAsync(uid, "Confirm your account", $@"### Please confirm your account. + +A user has registered to the ShiftOS website using this email address as a sign-in address. If this was you, please click [this link]({callbackUrl}). + +**If this was not you**: + +The addressed used to send this message is not a no-reply address. In fact, my name is Michael, admin of the site. We may have a bit of an identity theft issue, or something, going on here, but there's something I can do to help - all you have to do is reply to this email. I have the IP address, display name and ID of the user who triggered this email - just let me know and I can purge the account for you and ban the user's IP address and you won't have issues anymore. Thanks! + +**User ID:** {uid} +**Display name:** {usr.DisplayName} +**Last known IP address:** {usr.LastKnownIPAddress}"); + + return View(); + } + + // + // GET: /Account/Login + [AllowAnonymous] + public ActionResult Login(string returnUrl) + { + ViewBag.ReturnUrl = returnUrl; + return View(); + } + + // + // POST: /Account/Login + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task Login(LoginViewModel model, string returnUrl) + { + if (!ModelState.IsValid) + { + return View(model); + } + + // This doesn't count login failures towards account lockout + // To enable password failures to trigger account lockout, change to shouldLockout: true + var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false); + switch (result) + { + case SignInStatus.Success: + return RedirectToLocal(returnUrl); + case SignInStatus.LockedOut: + return View("Lockout"); + case SignInStatus.RequiresVerification: + return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = model.RememberMe }); + case SignInStatus.Failure: + default: + ModelState.AddModelError("", "Invalid login attempt."); + return View(model); + } + } + + // + // GET: /Account/VerifyCode + [AllowAnonymous] + public async Task VerifyCode(string provider, string returnUrl, bool rememberMe) + { + // Require that the user has already logged in via username/password or external login + if (!await SignInManager.HasBeenVerifiedAsync()) + { + return View("Error"); + } + return View(new VerifyCodeViewModel { Provider = provider, ReturnUrl = returnUrl, RememberMe = rememberMe }); + } + + // + // POST: /Account/VerifyCode + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task VerifyCode(VerifyCodeViewModel model) + { + if (!ModelState.IsValid) + { + return View(model); + } + + // The following code protects for brute force attacks against the two factor codes. + // If a user enters incorrect codes for a specified amount of time then the user account + // will be locked out for a specified amount of time. + // You can configure the account lockout settings in IdentityConfig + var result = await SignInManager.TwoFactorSignInAsync(model.Provider, model.Code, isPersistent: model.RememberMe, rememberBrowser: model.RememberBrowser); + switch (result) + { + case SignInStatus.Success: + return RedirectToLocal(model.ReturnUrl); + case SignInStatus.LockedOut: + return View("Lockout"); + case SignInStatus.Failure: + default: + ModelState.AddModelError("", "Invalid code."); + return View(model); + } + } + + // + // GET: /Account/Register + [AllowAnonymous] + public ActionResult Register() + { + return View(); + } + + // + // POST: /Account/Register + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task Register(RegisterViewModel model) + { + if (ModelState.IsValid) + { + var user = new ApplicationUser { UserName = model.Email, Email = model.Email, DisplayName = model.Username, Codepoints = 0, JoinedAt = DateTime.Now, MutedAt = DateTime.Now, BannedAt = DateTime.Now, LastLogin = DateTime.Now }; + var result = await UserManager.CreateAsync(user, model.Password); + if (result.Succeeded) + { + await SignInManager.SignInAsync(user, isPersistent:false, rememberBrowser:false); + + // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 + // Send an email with this link + string code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id); + var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); + await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking here"); + UserManager.AddToRole(user.Id, ACL.LowestPriorityRole().Id); + return RedirectToAction("Index", "Home"); + } + AddErrors(result); + } + + // If we got this far, something failed, redisplay form + return View(model); + } + + // + // GET: /Account/ConfirmEmail + [AllowAnonymous] + public async Task ConfirmEmail(string userId, string code) + { + if (userId == null || code == null) + { + return View("Error"); + } + var result = await UserManager.ConfirmEmailAsync(userId, code); + return View(result.Succeeded ? "ConfirmEmail" : "Error"); + } + + // + // GET: /Account/ForgotPassword + [AllowAnonymous] + public ActionResult ForgotPassword() + { + return View(); + } + + // + // POST: /Account/ForgotPassword + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task ForgotPassword(ForgotPasswordViewModel model) + { + if (ModelState.IsValid) + { + var user = await UserManager.FindByNameAsync(model.Email); + if (user == null || !(await UserManager.IsEmailConfirmedAsync(user.Id))) + { + // Don't reveal that the user does not exist or is not confirmed + return View("ForgotPasswordConfirmation"); + } + + // For more information on how to enable account confirmation and password reset please visit http://go.microsoft.com/fwlink/?LinkID=320771 + // Send an email with this link + string code = await UserManager.GeneratePasswordResetTokenAsync(user.Id); + var callbackUrl = Url.Action("ResetPassword", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme); + await UserManager.SendEmailAsync(user.Id, "Reset Password", "Please reset your password by clicking here"); + return RedirectToAction("ForgotPasswordConfirmation", "Account"); + } + + // If we got this far, something failed, redisplay form + return View(model); + } + + // + // GET: /Account/ForgotPasswordConfirmation + [AllowAnonymous] + public ActionResult ForgotPasswordConfirmation() + { + return View(); + } + + // + // GET: /Account/ResetPassword + [AllowAnonymous] + public ActionResult ResetPassword(string code) + { + return code == null ? View("Error") : View(); + } + + // + // POST: /Account/ResetPassword + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task ResetPassword(ResetPasswordViewModel model) + { + if (!ModelState.IsValid) + { + return View(model); + } + var user = await UserManager.FindByNameAsync(model.Email); + if (user == null) + { + // Don't reveal that the user does not exist + return RedirectToAction("ResetPasswordConfirmation", "Account"); + } + var result = await UserManager.ResetPasswordAsync(user.Id, model.Code, model.Password); + if (result.Succeeded) + { + return RedirectToAction("ResetPasswordConfirmation", "Account"); + } + AddErrors(result); + return View(); + } + + // + // GET: /Account/ResetPasswordConfirmation + [AllowAnonymous] + public ActionResult ResetPasswordConfirmation() + { + return View(); + } + + // + // POST: /Account/ExternalLogin + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public ActionResult ExternalLogin(string provider, string returnUrl) + { + // Request a redirect to the external login provider + return new ChallengeResult(provider, Url.Action("ExternalLoginCallback", "Account", new { ReturnUrl = returnUrl })); + } + + // + // GET: /Account/SendCode + [AllowAnonymous] + public async Task SendCode(string returnUrl, bool rememberMe) + { + var userId = await SignInManager.GetVerifiedUserIdAsync(); + if (userId == null) + { + return View("Error"); + } + var userFactors = await UserManager.GetValidTwoFactorProvidersAsync(userId); + var factorOptions = userFactors.Select(purpose => new SelectListItem { Text = purpose, Value = purpose }).ToList(); + return View(new SendCodeViewModel { Providers = factorOptions, ReturnUrl = returnUrl, RememberMe = rememberMe }); + } + + // + // POST: /Account/SendCode + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task SendCode(SendCodeViewModel model) + { + if (!ModelState.IsValid) + { + return View(); + } + + // Generate the token and send it + if (!await SignInManager.SendTwoFactorCodeAsync(model.SelectedProvider)) + { + return View("Error"); + } + return RedirectToAction("VerifyCode", new { Provider = model.SelectedProvider, ReturnUrl = model.ReturnUrl, RememberMe = model.RememberMe }); + } + + // + // GET: /Account/ExternalLoginCallback + [AllowAnonymous] + public async Task ExternalLoginCallback(string returnUrl) + { + var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(); + if (loginInfo == null) + { + return RedirectToAction("Login"); + } + + // Sign in the user with this external login provider if the user already has a login + var result = await SignInManager.ExternalSignInAsync(loginInfo, isPersistent: false); + switch (result) + { + case SignInStatus.Success: + return RedirectToLocal(returnUrl); + case SignInStatus.LockedOut: + return View("Lockout"); + case SignInStatus.RequiresVerification: + return RedirectToAction("SendCode", new { ReturnUrl = returnUrl, RememberMe = false }); + case SignInStatus.Failure: + default: + // If the user does not have an account, then prompt the user to create an account + ViewBag.ReturnUrl = returnUrl; + ViewBag.LoginProvider = loginInfo.Login.LoginProvider; + return View("ExternalLoginConfirmation", new ExternalLoginConfirmationViewModel { Email = loginInfo.Email }); + } + } + + // + // POST: /Account/ExternalLoginConfirmation + [HttpPost] + [AllowAnonymous] + [ValidateAntiForgeryToken] + public async Task ExternalLoginConfirmation(ExternalLoginConfirmationViewModel model, string returnUrl) + { + if (User.Identity.IsAuthenticated) + { + return RedirectToAction("Index", "Manage"); + } + + if (ModelState.IsValid) + { + // Get the information about the user from the external login provider + var info = await AuthenticationManager.GetExternalLoginInfoAsync(); + if (info == null) + { + return View("ExternalLoginFailure"); + } + var user = new ApplicationUser { UserName = model.Email, Email = model.Email }; + var result = await UserManager.CreateAsync(user); + if (result.Succeeded) + { + result = await UserManager.AddLoginAsync(user.Id, info.Login); + if (result.Succeeded) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + return RedirectToLocal(returnUrl); + } + } + AddErrors(result); + } + + ViewBag.ReturnUrl = returnUrl; + return View(model); + } + + // + // POST: /Account/LogOff + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult LogOff() + { + AuthenticationManager.SignOut(DefaultAuthenticationTypes.ApplicationCookie); + return RedirectToAction("Index", "Home"); + } + + // + // GET: /Account/ExternalLoginFailure + [AllowAnonymous] + public ActionResult ExternalLoginFailure() + { + return View(); + } + + protected override void Dispose(bool disposing) + { + if (disposing) + { + if (_userManager != null) + { + _userManager.Dispose(); + _userManager = null; + } + + if (_signInManager != null) + { + _signInManager.Dispose(); + _signInManager = null; + } + } + + base.Dispose(disposing); + } + + #region Helpers + // Used for XSRF protection when adding external logins + private const string XsrfKey = "XsrfId"; + + private IAuthenticationManager AuthenticationManager + { + get + { + return HttpContext.GetOwinContext().Authentication; + } + } + + private void AddErrors(IdentityResult result) + { + foreach (var error in result.Errors) + { + ModelState.AddModelError("", error); + } + } + + private ActionResult RedirectToLocal(string returnUrl) + { + if (Url.IsLocalUrl(returnUrl)) + { + return Redirect(returnUrl); + } + return RedirectToAction("Index", "Home"); + } + + internal class ChallengeResult : HttpUnauthorizedResult + { + public ChallengeResult(string provider, string redirectUri) + : this(provider, redirectUri, null) + { + } + + public ChallengeResult(string provider, string redirectUri, string userId) + { + LoginProvider = provider; + RedirectUri = redirectUri; + UserId = userId; + } + + public string LoginProvider { get; set; } + public string RedirectUri { get; set; } + public string UserId { get; set; } + + public override void ExecuteResult(ControllerContext context) + { + var properties = new AuthenticationProperties { RedirectUri = RedirectUri }; + if (UserId != null) + { + properties.Dictionary[XsrfKey] = UserId; + } + context.HttpContext.GetOwinContext().Authentication.Challenge(properties, LoginProvider); + } + } + #endregion + } +} \ No newline at end of file diff --git a/Project-Unite/Controllers/AdminController.cs b/Project-Unite/Controllers/AdminController.cs new file mode 100644 index 0000000..f8983d2 --- /dev/null +++ b/Project-Unite/Controllers/AdminController.cs @@ -0,0 +1,567 @@ +using System; +using System.Collections.Generic; +using System.Data; +using System.Data.Entity; +using System.Linq; +using System.Net; +using System.Threading.Tasks; +using System.Web; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.Owin; +using Project_Unite.Models; + +namespace Project_Unite.Controllers +{ + //We have a custom ACL implementation so we do not need to use the ASP.NET role system to check if a user has an ACL rule. + [Authorize] + public class AdminController : Controller + { + private ApplicationDbContext db = new ApplicationDbContext(); + + public ActionResult Index() + { + ViewBag.Admin = true; + return View(); + } + + + public ActionResult DeleteForum(string id) + { + var frm = db.ForumCategories.FirstOrDefault(x => x.Id == id); + if (frm == null) + return new HttpStatusCodeResult(404); + + //Purge ALL DATA RELATED TO THIS CATEGORY. + DeleteCategoryRecursive(frm); + db.SaveChanges(); + + return RedirectToAction("Forums"); + } + + + public void DeleteCategoryRecursive(ForumCategory start) + { + foreach (var c in start.Children.ToArray()) + { + DeleteCategoryRecursive(c); + } + + foreach (var topic in start.Topics.ToArray()) + { + DeleteTopic(topic); + } + db.ForumCategories.Remove(db.ForumCategories.FirstOrDefault(x => x.Id == start.Id)); + + } + + public void DeleteTopic(ForumTopic topic) + { + foreach(var post in topic.Posts.ToArray()) + { + DeletePost(post); + } + db.ForumTopics.Remove(topic); + } + + public ActionResult AccessControl() + { + var model = new Dictionary(); + var db = new ApplicationDbContext(); + var forums = db.ForumCategories.ToArray(); + foreach(var forum in forums) + { + ACL.UpdateACLDefinitions(forum.Id); + if(forum.Id != "root") + { + if (!model.ContainsKey(forum.Id)) + { + model.Add(forum.Id, forum.Permissions); + } + } + } + return View(new AdminAccessControlViewModel(model)); + } + + public ActionResult SetPermission(string id, string role, string permission) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessAdminCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanEditRoles")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanEditForumCategories")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var frm = db.ForumCategories.FirstOrDefault(x => x.Id == id); + if (frm == null) + return new HttpStatusCodeResult(403); + var rolePerm = db.ForumPermissions.Where(x => x.CategoryId == frm.Id).FirstOrDefault(x => x.RoleId == role); + if (rolePerm == null) + return new HttpStatusCodeResult(404); + + rolePerm.Permissions = (PermissionPreset)Enum.Parse(typeof(PermissionPreset), permission); + + db.AuditLogs.Add(new Models.AuditLog(User.Identity.GetUserId(), AuditLogLevel.Admin, "User altered the ACL definition for forum ID " + id + ", role ID " + role + ", to permission \"" + permission + "\".")); + db.SaveChanges(); + + return RedirectToAction("AccessControl"); + + } + + public void DeletePost(ForumPost post) + { + db.ForumPosts.Remove(post); + } + + + // GET: Admin/Forums + public ActionResult Forums() + { + ViewBag.Admin = true; + var cats = db.ForumCategories.First(x => x.Id == "root").Children.Where(x=>x.Id != "root"); + return View(cats); + } + + + + public ActionResult AddForumCategory(string parentId) + { + ViewBag.Admin = true; + if (parentId == null) + parentId = "root"; + + var model = new AddForumCategoryViewModel(); + model.PossibleParents = GetForumCategories(); + model.Parent = (parentId); + return View(model); + } + + public ActionResult RaisePriority(string id) + { + var uid = User.Identity.Name; + if(ACL.Granted(uid, "CanEditRoles")) + { + var db = new ApplicationDbContext(); + var role = db.Roles.FirstOrDefault(x => x.Id == id) as Role; + if (role == null) + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + if (role.Priority == db.Roles.Count() - 1) + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + Role higherUp = null; + foreach(var r in db.Roles) + { + if ((r as Role).Priority == role.Priority + 1) + higherUp = r as Role; + } + + higherUp.Priority--; + role.Priority++; + db.SaveChanges(); + + return RedirectToAction("Roles"); + } + else + { + return new HttpStatusCodeResult(403); + } + } + + public async Task RemoveUserFromRole(string id, string usr) + { + if(ACL.CanManageRole(User.Identity.Name, id)) + { + var uman = HttpContext.GetOwinContext().GetUserManager(); + await uman.RemoveFromRoleAsync(usr, id); + return RedirectToAction("RoleDetails", new { @id = id }); + } + else + { + return new HttpStatusCodeResult(403); + } + } + + public ActionResult LowerPriority(string id) + { + var uid = User.Identity.Name; + if (ACL.Granted(uid, "CanEditRoles")) + { + var db = new ApplicationDbContext(); + var role = db.Roles.FirstOrDefault(x => x.Id == id) as Role; + if (role == null) + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + if (role.Priority == 0) + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + Role higherUp = null; + foreach (var r in db.Roles) + { + if ((r as Role).Priority == role.Priority - 1) + higherUp = r as Role; + } + + if(higherUp != null) + higherUp.Priority++; + role.Priority--; + db.SaveChanges(); + + return RedirectToAction("Roles"); + } + else + { + return new HttpStatusCodeResult(403); + } + } + + + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult AddForumCategory(AddForumCategoryViewModel model) + { + try + { + if (model == null) + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + if (string.IsNullOrWhiteSpace(model.Name)) + { + ViewBag.Error = "Please specify a name for this forum category."; + return View(model); + } + + string DisallowedChars = "/.,\\][;':\"|?> x.Id == model.Parent).Id; + db.ForumCategories.Add(frm); + + db.SaveChanges(); + if (model.StealPermissionsFrom != "root") + { + var frmToSteal = db.ForumCategories.FirstOrDefault(x => x.Id == model.StealPermissionsFrom); + ACL.UpdateACLDefinitions(frmToSteal.Id); //Just to be sure.. + foreach(var perm in frmToSteal.Permissions) + { + var aclEntry = new ForumPermission(); + aclEntry.CategoryId = frm.Id; + aclEntry.RoleId = perm.RoleId; + aclEntry.Permissions = perm.Permissions; + aclEntry.Id = Guid.NewGuid().ToString(); + db.ForumPermissions.Add(aclEntry); + } + db.SaveChanges(); + } + else + { + ACL.UpdateACLDefinitions(frm.Id); + //This sets the permission data to the default values. + } + + + + return RedirectToAction("Forums"); + } + catch (Exception ex) + { + ViewBag.Error = ex.ToString(); + return View(model); + } + } + + public ActionResult AnonymizeUser(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAcessAdminCP")) + return new HttpStatusCodeResult(HttpStatusCode.Forbidden); + if (!ACL.Granted(User.Identity.Name, "CanAnonymizeUser")) + return new HttpStatusCodeResult(HttpStatusCode.Forbidden); + var db = new ApplicationDbContext(); + var user = db.Users.FirstOrDefault(x => x.Id == id); + if (user == null) + return new HttpStatusCodeResult(404); + + user.UserName = Guid.NewGuid().ToString() + "@system"; + user.Email = Guid.NewGuid().ToString() + "@system"; + user.PasswordHash = Guid.NewGuid().ToString(); + user.EmailConfirmed = false; + user.Hobbies = ""; + user.Interests = ""; + user.Bio = @"# User anonymized. + +This user has been anonymized by an administrator."; + user.AvatarUrl = ""; + user.BannerUrl = ""; + var uman = HttpContext.GetOwinContext().GetUserManager(); + foreach(var role in user.Roles) + { + uman.RemoveFromRole(user.Id, role.RoleId); + } + uman.AddToRole(user.Id, ACL.LowestPriorityRole().Id); + db.SaveChanges(); + return RedirectToAction("Users"); + } + + + public ActionResult Logs() + { + if (!ACL.Granted(User.Identity.Name, "CanAccessAdminCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + + return View(db.AuditLogs); + } + + + public ActionResult Users() + { + return View(new ApplicationDbContext().Users); + } + + public ActionResult EditForum(string id) + { + ViewBag.Admin = true; + var frm = db.ForumCategories.FirstOrDefault(x => x.Id == id); + if (frm == null) + return new HttpStatusCodeResult(404); + + var m = new AddForumCategoryViewModel(); + m.Id = frm.Id; + m.Parent = frm.Parent; + m.Description = frm.Description; + m.Name = frm.Name; + m.PossibleParents = GetForumCategories(); + return View(m); + } + + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult EditForum(string id, AddForumCategoryViewModel m) + { + try + { + m.Id = id; + var frm = db.ForumCategories.FirstOrDefault(x => x.Id == id); + + frm.Name = m.Name; + frm.Description = m.Description; + + + + frm.Parent = m.Parent; + db.SaveChanges(); + + return RedirectToAction("Forums"); + } + catch (Exception ex) + { + ViewBag.Error = ex.ToString(); + return View(m); + } + } + + + + + + + // GET: Admin + public ActionResult Roles() + { + ViewBag.Admin = true; + return View(db.IdentityRoles.ToList()); + } + + // GET: Admin/RoleDetails/5 + public ActionResult RoleDetails(string id) + { + ViewBag.Admin = true; + if (id == null) + { + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + } + Role role = db.IdentityRoles.Find(id); + if (role == null) + { + return HttpNotFound(); + } + return View(role); + } + + // GET: Admin/Create + public ActionResult CreateRole() + { + ViewBag.Admin = true; + return View(); + } + + // POST: Admin/Create + // To protect from overposting attacks, please enable the specific properties you want to bind to, for + // more details see http://go.microsoft.com/fwlink/?LinkId=317598. + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult CreateRole(Role role) + { + if (ModelState.IsValid) + { + db.IdentityRoles.Add(role); + db.SaveChanges(); + return RedirectToAction("Roles"); + } + + return View(role); + } + + // GET: Admin/AddUserToRole + public ActionResult AddUserToRole() + { + ViewBag.Admin = true; + return View(new AddUserToRoleViewModel()); + } + + // POST: Admin/AddUserToRole + [HttpPost] + public async Task AddUserToRole(AddUserToRoleViewModel model) + { + var r = db.Roles.FirstOrDefault(role => role.Name == model.RoleId); + var user = db.Users.FirstOrDefault(u => u.DisplayName == model.Username); + var uMan = HttpContext.GetOwinContext().GetUserManager(); + + var isInRole = await uMan.IsInRoleAsync(user.Id, r.Id); + + if(isInRole) + { + ViewBag.Error = $"{model.Username} is already in the {r.Name} role."; + return View(model); + } + else + { + await uMan.AddToRoleAsync(user.Id, r.Name); + return RedirectToAction("Roles"); + } + + + } + + // GET: Admin/Edit/5 + public ActionResult EditRole(string id) + { + ViewBag.Admin = true; + if (id == null) + { + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + } + Role role = db.IdentityRoles.Find(id); + if (role == null) + { + return HttpNotFound(); + } + return View(role); + } + + // POST: Admin/Edit/5 + // To protect from overposting attacks, please enable the specific properties you want to bind to, for + // more details see http://go.microsoft.com/fwlink/?LinkId=317598. + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult EditRole(Role role) + { + if (ModelState.IsValid) + { + db.Entry(role).State = EntityState.Modified; + db.SaveChanges(); + return RedirectToAction("Index"); + } + return View(role); + } + + // GET: Admin/Delete/5 + public ActionResult DeleteRole(string id) + { + ViewBag.Admin = true; + if (id == null) + { + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + } + Role role = db.IdentityRoles.Find(id); + if (role == null) + { + return HttpNotFound(); + } + return View(role); + } + + // POST: Admin/Delete/5 + [HttpPost, ActionName("Delete")] + [ValidateAntiForgeryToken] + public ActionResult DeleteRoleConfirmed(string id) + { + Role role = db.IdentityRoles.Find(id); + db.IdentityRoles.Remove(role); + db.SaveChanges(); + return RedirectToAction("Index"); + } + + protected override void Dispose(bool disposing) + { + if (disposing) + { + db.Dispose(); + } + base.Dispose(disposing); + } + + public List GetForumCategories() + { + var items = new List(); + items.Add(new SelectListItem + { + Value = "root", + Text = "Top Level" + }); + + foreach(var cat in getChildren("root", 1)) + { + items.Add(cat); + } + + return items; + + } + + private IEnumerable getChildren(string id, int dashcount) + { + var lst = new List(); + db = new ApplicationDbContext(); + foreach (var cat in db.ForumCategories.FirstOrDefault(c => c.Id == id).Children.Where(x=>x.Id != "root")) + { + string dashes = ""; + for (int i = 0; i <= dashcount; i++) + dashes += "-"; + lst.Add(new SelectListItem + { + Text = dashes + " " + cat.Name, + Value = cat.Id, + }); + lst.AddRange(getChildren(cat.Id, dashcount + 1)); + } + return lst; + } + } +} diff --git a/Project-Unite/Controllers/ForumController.cs b/Project-Unite/Controllers/ForumController.cs new file mode 100644 index 0000000..9ac2685 --- /dev/null +++ b/Project-Unite/Controllers/ForumController.cs @@ -0,0 +1,305 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Project_Unite.Models; + +namespace Project_Unite.Controllers +{ + public class ForumController : Controller + { + public ApplicationDbContext db = new ApplicationDbContext(); + + // GET: Forum + public ActionResult Index() + { + var toplevels = (db.ForumCategories.FirstOrDefault(x => x.Id == "root").Children); + + + return View(toplevels); + } + + //GET: ViewForum + public ActionResult ViewForum(string id) + { + try + { + var cat = db.ForumCategories.FirstOrDefault(m => m.Id == id); + if (!ACL.CanSee(User.Identity.Name, id)) + return new HttpStatusCodeResult(403); + + return View(cat); + } + catch + { + return new HttpStatusCodeResult(404); + } + } + + public const string BadIdChars = "~`!@#$%^&*()-+={}[]|\\:;'\"<,>.?/"; + + public ActionResult PostReply(string id, string fid) + { + if (!ACL.CanReply(User.Identity.Name, fid)) + return new HttpStatusCodeResult(403); + + var model = new CreateTopicViewModel(); + model.Category = id; + return View(model); + } + + [Authorize] + public ActionResult Dislike(string id) + { + var db = new ApplicationDbContext(); + var topic = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + var uid = User.Identity.GetUserId(); + if (topic == null) + return new HttpStatusCodeResult(404); + if (topic.AuthorId == User.Identity.GetUserId()) + return RedirectToAction("ViewTopic", new { id = id, triedtolikeowntopic = true }); + var like = db.Likes.Where(x => x.Topic == topic.Id).FirstOrDefault(x => x.User == uid); + if (like != null) + { + if (like.IsDislike == false) + { + like.IsDislike = true; + } + else + { + db.Likes.Remove(like); + } + } + else + { + like = new Models.Like(); + like.Id = Guid.NewGuid().ToString(); + like.User = User.Identity.GetUserId(); + like.Topic = topic.Id; + like.LikedAt = DateTime.Now; + like.IsDislike = true; + db.Likes.Add(like); + } + db.SaveChanges(); + return RedirectToAction("ViewTopic", new { id = id }); + } + + [Authorize] + public ActionResult Like(string id) + { + var db = new ApplicationDbContext(); + var topic = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + var uid = User.Identity.GetUserId(); + if (topic == null) + return new HttpStatusCodeResult(404); + if (topic.AuthorId == User.Identity.GetUserId()) + return RedirectToAction("ViewTopic", new { id = id, triedtolikeowntopic = true }); + var like = db.Likes.Where(x=>x.Topic==topic.Id).FirstOrDefault(x => x.User == uid); + if (like != null) + { + if (like.IsDislike == true) + { + like.IsDislike = false; + } + else + { + db.Likes.Remove(like); + } + } + else + { + like = new Models.Like(); + like.Id = Guid.NewGuid().ToString(); + like.User = User.Identity.GetUserId(); + like.Topic = topic.Id; + like.LikedAt = DateTime.Now; + like.IsDislike = false; + db.Likes.Add(like); + } + db.SaveChanges(); + return RedirectToAction("ViewTopic", new { id = id }); + } + + [Authorize] + public ActionResult EditPost(string id) + { + var db = new ApplicationDbContext(); + var topic = db.ForumPosts.FirstOrDefault(x => x.Id == id); + var uid = User.Identity.GetUserId(); + string acl_perm = "CanEditPosts"; + if (topic == null) + return new HttpStatusCodeResult(404); + if (topic.AuthorId == User.Identity.GetUserId()) + acl_perm = "CanEditOwnPosts"; + if (!ACL.Granted(User.Identity.Name, acl_perm)) + return new HttpStatusCodeResult(403); + var model = new EditPostViewModel(); + model.Id = topic.Id; + model.Contents = topic.Body; + return View(model); + } + + [Authorize] + public ActionResult DeletePost(string id) + { + var db = new ApplicationDbContext(); + var topic = db.ForumPosts.FirstOrDefault(x => x.Id == id); + var uid = User.Identity.GetUserId(); + string acl_perm = "CanDeletePosts"; + if (topic == null) + return new HttpStatusCodeResult(404); + if (topic.AuthorId == User.Identity.GetUserId()) + acl_perm = "CanDeleteOwnPosts"; + if (!ACL.Granted(User.Identity.Name, acl_perm)) + return new HttpStatusCodeResult(403); + db.ForumPosts.Remove(topic); + var parent = db.ForumTopics.FirstOrDefault(x => x.Id == topic.Parent); + db.SaveChanges(); + if (parent.Posts.Length == 0) + { + string cat = parent.Parent; + db.ForumTopics.Remove(parent); + db.SaveChanges(); + RedirectToAction("ViewForum", new { id = cat }); + } + return RedirectToAction("ViewTopic", new { id = db.ForumTopics.FirstOrDefault(x => x.Id == topic.Parent).Discriminator}); + } + + + [HttpPost] + [ValidateAntiForgeryToken] + [Authorize] + public ActionResult EditPost(EditPostViewModel model) + { + var db = new ApplicationDbContext(); + var topic = db.ForumPosts.FirstOrDefault(x => x.Id == model.Id); + var uid = User.Identity.GetUserId(); + string acl_perm = "CanEditPosts"; + if (topic == null) + return new HttpStatusCodeResult(404); + if (topic.AuthorId == User.Identity.GetUserId()) + acl_perm = "CanEditOwnPosts"; + if (!ACL.Granted(User.Identity.Name, acl_perm)) + return new HttpStatusCodeResult(403); + var edit = new ForumPostEdit(); + edit.EditedAt = DateTime.Now; + edit.EditReason = model.EditReason; + edit.Id = Guid.NewGuid().ToString(); + edit.Parent = topic.Id; + edit.PreviousState = topic.Body; + edit.UserId = uid; + db.ForumPostEdits.Add(edit); + topic.Body = model.Contents; + db.SaveChanges(); + return RedirectToAction("ViewTopic", new { id = db.ForumTopics.FirstOrDefault(x => x.Id == topic.Parent).Discriminator }); + } + + [HttpPost] + [ValidateAntiForgeryToken] + [Authorize] + public ActionResult PostReply(CreateTopicViewModel model) + { + + + var db = new ApplicationDbContext(); + var topic = db.ForumTopics.FirstOrDefault(x => x.Discriminator == model.Category); + if (topic == null) + return new HttpStatusCodeResult(404); + if (!ACL.CanReply(User.Identity.Name, topic.Parent)) + return new HttpStatusCodeResult(403); + + var post = new ForumPost(); + post.AuthorId = User.Identity.GetUserId(); + post.Body = model.Body; + post.Id = Guid.NewGuid().ToString(); + post.Parent = topic.Id; + post.PostedAt = DateTime.Now; + db.ForumPosts.Add(post); + db.SaveChanges(); + + return RedirectToAction("ViewTopic", new { id = topic.Discriminator }); + + } + + + public ActionResult CreateTopic(string id) + { + if (!ACL.CanPost(User.Identity.Name, id)) + return new HttpStatusCodeResult(403); + + var model = new CreateTopicViewModel(); + model.Category = id; + return View(model); + } + + [HttpPost] + [ValidateAntiForgeryToken] + [Authorize] + public ActionResult CreateTopic(CreateTopicViewModel model) + { + if (!ACL.CanPost(User.Identity.Name, model.Category)) + return new HttpStatusCodeResult(403); + + + var db = new ApplicationDbContext(); + var forum = db.ForumCategories.FirstOrDefault(x => x.Id == model.Category); + if (forum == null) + return new HttpStatusCodeResult(404); + + string subjectId = model.Subject; + char[] badChars = subjectId.Where(x => !AllowedChars.Contains(x)).ToArray(); + + foreach(var c in badChars) + { + subjectId = subjectId.Replace(c, '_'); + } + + while (subjectId.Contains("__")) + { + subjectId = subjectId.Replace("__", "_"); + } + + var topic = new ForumTopic(); + topic.AuthorId = User.Identity.GetUserId(); + topic.Id = Guid.NewGuid().ToString(); + topic.Discriminator = subjectId + "_" + db.ForumTopics.Count().ToString(); + topic.StartedAt = DateTime.Now; + topic.Parent = forum.Id; + topic.IsAnnounce = model.IsAnnounce; + topic.IsSticky = model.IsSticky; + topic.IsGlobal = model.IsGlobal; + topic.Subject = model.Subject; + var post = new ForumPost(); + post.AuthorId = topic.AuthorId; + post.Body = model.Body; + post.Id = Guid.NewGuid().ToString(); + post.Parent = topic.Id; + post.PostedAt = topic.StartedAt; + db.ForumTopics.Add(topic); + db.ForumPosts.Add(post); + db.SaveChanges(); + + return RedirectToAction("ViewTopic", new { id = topic.Discriminator }); + + } + + const string AllowedChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890abcdefghijklmnopqrstuvwxyz"; + + [Authorize] + public ActionResult ViewTopic(string id, bool triedtolikeowntopic = false) + { + if (triedtolikeowntopic) + ViewBag.Error = "You cannot like or dislike your own topic!"; + var db = new ApplicationDbContext(); + var topic = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + if (topic == null) + return new HttpStatusCodeResult(404); + if (!ACL.CanSee(User.Identity.Name, topic.Parent)) + return new HttpStatusCodeResult(403); + + return View(topic); + } + } +} \ No newline at end of file diff --git a/Project-Unite/Controllers/HomeController.cs b/Project-Unite/Controllers/HomeController.cs new file mode 100644 index 0000000..a3a8f7f --- /dev/null +++ b/Project-Unite/Controllers/HomeController.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite.Controllers +{ + public class HomeController : Controller + { + public ActionResult Index() + { + return View(); + } + + public ActionResult About() + { + ViewBag.Message = "Your application description page."; + + return View(); + } + + public ActionResult Contact() + { + ViewBag.Message = "Your contact page."; + + return View(); + } + } +} \ No newline at end of file diff --git a/Project-Unite/Controllers/LegalController.cs b/Project-Unite/Controllers/LegalController.cs new file mode 100644 index 0000000..9eef768 --- /dev/null +++ b/Project-Unite/Controllers/LegalController.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite.Controllers +{ + public class LegalController : Controller + { + // GET: Legal/TOS + public ActionResult TOS() + { + return View(); + } + + // GET: Legal/Privacy + public ActionResult Privacy() + { + return View(); + } + } +} \ No newline at end of file diff --git a/Project-Unite/Controllers/ManageController.cs b/Project-Unite/Controllers/ManageController.cs new file mode 100644 index 0000000..5c3a3e7 --- /dev/null +++ b/Project-Unite/Controllers/ManageController.cs @@ -0,0 +1,382 @@ +using System; +using System.Linq; +using System.Threading.Tasks; +using System.Web; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.Owin; +using Microsoft.Owin.Security; +using Project_Unite.Models; + +namespace Project_Unite.Controllers +{ + [Authorize] + public class ManageController : Controller + { + private ApplicationSignInManager _signInManager; + private ApplicationUserManager _userManager; + + public ManageController() + { + } + + public ManageController(ApplicationUserManager userManager, ApplicationSignInManager signInManager) + { + UserManager = userManager; + SignInManager = signInManager; + } + + public ApplicationSignInManager SignInManager + { + get + { + return _signInManager ?? HttpContext.GetOwinContext().Get(); + } + private set + { + _signInManager = value; + } + } + + public ApplicationUserManager UserManager + { + get + { + return _userManager ?? HttpContext.GetOwinContext().GetUserManager(); + } + private set + { + _userManager = value; + } + } + + // + // GET: /Manage/Index + public async Task Index(ManageMessageId? message) + { + ViewBag.StatusMessage = + message == ManageMessageId.ChangePasswordSuccess ? "Your password has been changed." + : message == ManageMessageId.SetPasswordSuccess ? "Your password has been set." + : message == ManageMessageId.SetTwoFactorSuccess ? "Your two-factor authentication provider has been set." + : message == ManageMessageId.Error ? "An error has occurred." + : message == ManageMessageId.AddPhoneSuccess ? "Your phone number was added." + : message == ManageMessageId.RemovePhoneSuccess ? "Your phone number was removed." + : ""; + + var userId = User.Identity.GetUserId(); + var usr = UserManager.FindById(userId); + return View(usr); + } + + // + // POST: /Manage/RemoveLogin + [HttpPost] + [ValidateAntiForgeryToken] + public async Task RemoveLogin(string loginProvider, string providerKey) + { + ManageMessageId? message; + var result = await UserManager.RemoveLoginAsync(User.Identity.GetUserId(), new UserLoginInfo(loginProvider, providerKey)); + if (result.Succeeded) + { + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + message = ManageMessageId.RemoveLoginSuccess; + } + else + { + message = ManageMessageId.Error; + } + return RedirectToAction("ManageLogins", new { Message = message }); + } + + // + // GET: /Manage/AddPhoneNumber + public ActionResult AddPhoneNumber() + { + return View(); + } + + // + // POST: /Manage/AddPhoneNumber + [HttpPost] + [ValidateAntiForgeryToken] + public async Task AddPhoneNumber(AddPhoneNumberViewModel model) + { + if (!ModelState.IsValid) + { + return View(model); + } + // Generate the token and send it + var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), model.Number); + if (UserManager.SmsService != null) + { + var message = new IdentityMessage + { + Destination = model.Number, + Body = "Your security code is: " + code + }; + await UserManager.SmsService.SendAsync(message); + } + return RedirectToAction("VerifyPhoneNumber", new { PhoneNumber = model.Number }); + } + + // + // POST: /Manage/EnableTwoFactorAuthentication + [HttpPost] + [ValidateAntiForgeryToken] + public async Task EnableTwoFactorAuthentication() + { + await UserManager.SetTwoFactorEnabledAsync(User.Identity.GetUserId(), true); + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", "Manage"); + } + + // + // POST: /Manage/DisableTwoFactorAuthentication + [HttpPost] + [ValidateAntiForgeryToken] + public async Task DisableTwoFactorAuthentication() + { + await UserManager.SetTwoFactorEnabledAsync(User.Identity.GetUserId(), false); + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", "Manage"); + } + + // + // GET: /Manage/VerifyPhoneNumber + public async Task VerifyPhoneNumber(string phoneNumber) + { + var code = await UserManager.GenerateChangePhoneNumberTokenAsync(User.Identity.GetUserId(), phoneNumber); + // Send an SMS through the SMS provider to verify the phone number + return phoneNumber == null ? View("Error") : View(new VerifyPhoneNumberViewModel { PhoneNumber = phoneNumber }); + } + + // + // POST: /Manage/VerifyPhoneNumber + [HttpPost] + [ValidateAntiForgeryToken] + public async Task VerifyPhoneNumber(VerifyPhoneNumberViewModel model) + { + if (!ModelState.IsValid) + { + return View(model); + } + var result = await UserManager.ChangePhoneNumberAsync(User.Identity.GetUserId(), model.PhoneNumber, model.Code); + if (result.Succeeded) + { + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", new { Message = ManageMessageId.AddPhoneSuccess }); + } + // If we got this far, something failed, redisplay form + ModelState.AddModelError("", "Failed to verify phone"); + return View(model); + } + + // + // POST: /Manage/RemovePhoneNumber + [HttpPost] + [ValidateAntiForgeryToken] + public async Task RemovePhoneNumber() + { + var result = await UserManager.SetPhoneNumberAsync(User.Identity.GetUserId(), null); + if (!result.Succeeded) + { + return RedirectToAction("Index", new { Message = ManageMessageId.Error }); + } + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", new { Message = ManageMessageId.RemovePhoneSuccess }); + } + + // + // GET: /Manage/ChangePassword + public ActionResult ChangePassword() + { + return View(); + } + + // + // POST: /Manage/ChangePassword + [HttpPost] + [ValidateAntiForgeryToken] + public async Task ChangePassword(ChangePasswordViewModel model) + { + if (!ModelState.IsValid) + { + return View(model); + } + var result = await UserManager.ChangePasswordAsync(User.Identity.GetUserId(), model.OldPassword, model.NewPassword); + if (result.Succeeded) + { + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", new { Message = ManageMessageId.ChangePasswordSuccess }); + } + AddErrors(result); + return View(model); + } + + // + // GET: /Manage/SetPassword + public ActionResult SetPassword() + { + return View(); + } + + // + // POST: /Manage/SetPassword + [HttpPost] + [ValidateAntiForgeryToken] + public async Task SetPassword(SetPasswordViewModel model) + { + if (ModelState.IsValid) + { + var result = await UserManager.AddPasswordAsync(User.Identity.GetUserId(), model.NewPassword); + if (result.Succeeded) + { + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user != null) + { + await SignInManager.SignInAsync(user, isPersistent: false, rememberBrowser: false); + } + return RedirectToAction("Index", new { Message = ManageMessageId.SetPasswordSuccess }); + } + AddErrors(result); + } + + // If we got this far, something failed, redisplay form + return View(model); + } + + // + // GET: /Manage/ManageLogins + public async Task ManageLogins(ManageMessageId? message) + { + ViewBag.StatusMessage = + message == ManageMessageId.RemoveLoginSuccess ? "The external login was removed." + : message == ManageMessageId.Error ? "An error has occurred." + : ""; + var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); + if (user == null) + { + return View("Error"); + } + var userLogins = await UserManager.GetLoginsAsync(User.Identity.GetUserId()); + var otherLogins = AuthenticationManager.GetExternalAuthenticationTypes().Where(auth => userLogins.All(ul => auth.AuthenticationType != ul.LoginProvider)).ToList(); + ViewBag.ShowRemoveButton = user.PasswordHash != null || userLogins.Count > 1; + return View(new ManageLoginsViewModel + { + CurrentLogins = userLogins, + OtherLogins = otherLogins + }); + } + + // + // POST: /Manage/LinkLogin + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult LinkLogin(string provider) + { + // Request a redirect to the external login provider to link a login for the current user + return new AccountController.ChallengeResult(provider, Url.Action("LinkLoginCallback", "Manage"), User.Identity.GetUserId()); + } + + // + // GET: /Manage/LinkLoginCallback + public async Task LinkLoginCallback() + { + var loginInfo = await AuthenticationManager.GetExternalLoginInfoAsync(XsrfKey, User.Identity.GetUserId()); + if (loginInfo == null) + { + return RedirectToAction("ManageLogins", new { Message = ManageMessageId.Error }); + } + var result = await UserManager.AddLoginAsync(User.Identity.GetUserId(), loginInfo.Login); + return result.Succeeded ? RedirectToAction("ManageLogins") : RedirectToAction("ManageLogins", new { Message = ManageMessageId.Error }); + } + + protected override void Dispose(bool disposing) + { + if (disposing && _userManager != null) + { + _userManager.Dispose(); + _userManager = null; + } + + base.Dispose(disposing); + } + +#region Helpers + // Used for XSRF protection when adding external logins + private const string XsrfKey = "XsrfId"; + + private IAuthenticationManager AuthenticationManager + { + get + { + return HttpContext.GetOwinContext().Authentication; + } + } + + private void AddErrors(IdentityResult result) + { + foreach (var error in result.Errors) + { + ModelState.AddModelError("", error); + } + } + + private bool HasPassword() + { + var user = UserManager.FindById(User.Identity.GetUserId()); + if (user != null) + { + return user.PasswordHash != null; + } + return false; + } + + private bool HasPhoneNumber() + { + var user = UserManager.FindById(User.Identity.GetUserId()); + if (user != null) + { + return user.PhoneNumber != null; + } + return false; + } + + public enum ManageMessageId + { + AddPhoneSuccess, + ChangePasswordSuccess, + SetTwoFactorSuccess, + SetPasswordSuccess, + RemoveLoginSuccess, + RemovePhoneSuccess, + Error + } + +#endregion + } +} \ No newline at end of file diff --git a/Project-Unite/Controllers/ModeratorController.cs b/Project-Unite/Controllers/ModeratorController.cs new file mode 100644 index 0000000..7872112 --- /dev/null +++ b/Project-Unite/Controllers/ModeratorController.cs @@ -0,0 +1,320 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Net; +using System.Web; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Project_Unite.Models; + +namespace Project_Unite.Controllers +{ + [Authorize] + public class ModeratorController : Controller + { + // GET: Moderator + public ActionResult Index() + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + ViewBag.Moderator = true; + return View(); + } + + public ActionResult UserDetails(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var usr = db.Users.FirstOrDefault(x => x.DisplayName == id); + if (usr == null || !ACL.Granted(User.Identity.Name, "CanViewUserInfo")) + return new HttpStatusCodeResult(403); + return View(usr); + } + + public ActionResult Users() + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanViewUserInfo")) + return new HttpStatusCodeResult(403); + + return View(new ApplicationDbContext().Users); + } + + public ActionResult Unban(string id, string returnUrl = "") + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanIssueBan")) + return new HttpStatusCodeResult(403); + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(x => x.Id == id); + if (usr == null) + return new HttpStatusCodeResult(404); + if (usr.IsBanned == false) //we don't need to re-unban the user... save the SQL queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + usr.IsBanned = false; + + db.AuditLogs.Add(new Models.AuditLog(User.Identity.GetUserId(), AuditLogLevel.Moderator, $@"Moderator has unbanned {ACL.UserNameRaw(id)}.")); + + db.SaveChanges(); + + if (string.IsNullOrWhiteSpace(returnUrl)) + return RedirectToAction("Users"); + else + return Redirect(returnUrl); + } + + + public ActionResult Ban(string id, string returnUrl = "") + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanIssueBan")) + return new HttpStatusCodeResult(403); + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(x => x.Id == id); + if (usr == null) + return new HttpStatusCodeResult(404); + if (usr.IsBanned == true) //we don't need to re-ban the user... save the SQL queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + usr.IsBanned = true; + usr.BannedAt = DateTime.Now; + usr.BannedBy = User.Identity.GetUserId(); + + db.AuditLogs.Add(new Models.AuditLog(User.Identity.GetUserId(), AuditLogLevel.Moderator, $@"Moderator has banned {ACL.UserNameRaw(id)}.")); + + db.SaveChanges(); + + if (string.IsNullOrWhiteSpace(returnUrl)) + return RedirectToAction("Users"); + else + return Redirect(returnUrl); + } + + + public ActionResult Unmute(string id, string returnUrl = "") + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanIssueMute")) + return new HttpStatusCodeResult(403); + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(x => x.Id == id); + if (usr == null) + return new HttpStatusCodeResult(404); + if (usr.IsMuted == false) //we don't need to re-unmute the user... save the SQL queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + usr.IsMuted = false; + + db.AuditLogs.Add(new Models.AuditLog(User.Identity.GetUserId(), AuditLogLevel.Moderator, $@"Moderator has un-muted {ACL.UserNameRaw(id)}.")); + + db.SaveChanges(); + + if (string.IsNullOrWhiteSpace(returnUrl)) + return RedirectToAction("Users"); + else + return Redirect(returnUrl); + } + + [HttpPost] + [ValidateAntiForgeryToken] + public ActionResult ChangeUserName(string id, ApplicationUser model, string returnUrl = "") + { + string acl_r = "CanEditUsernames"; + if (id == User.Identity.GetUserId()) + acl_r = "CanEditUsername"; + + if (!ACL.Granted(User.Identity.Name, acl_r)) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var usr = db.Users.FirstOrDefault(x => x.Id == id); + if (usr == null) + return new HttpStatusCodeResult(404); + + usr.DisplayName = model.DisplayName; + + db.SaveChanges(); + + if (string.IsNullOrWhiteSpace(returnUrl)) + return RedirectToAction("Users"); + else + return Redirect(returnUrl); + + } + + public ActionResult Lock(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var forum = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + if (forum == null) + return new HttpStatusCodeResult(404); + string perm = "CanLockTopics"; + var uid = User.Identity.GetUserId(); + if (forum.AuthorId == uid) + perm = "CanLockOwnTopics"; + + if (!ACL.Granted(User.Identity.Name, perm)) + return new HttpStatusCodeResult(403); + + if (forum.IsLocked == true) //Save the DB queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + forum.IsLocked = true; + + db.AuditLogs.Add(new AuditLog(uid, AuditLogLevel.Moderator, $"User has locked topic \"{forum.Subject}\" by {ACL.UserNameRaw(forum.AuthorId)}.")); + db.SaveChanges(); + + return RedirectToAction("ViewTopic", "Forum", new { id = id }); + } + + public ActionResult Unlock(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var forum = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + if (forum == null) + return new HttpStatusCodeResult(404); + string perm = "CanUnlockTopics"; + var uid = User.Identity.GetUserId(); + if (forum.AuthorId == uid) + perm = "CanUnlockOwnTopics"; + + if (!ACL.Granted(User.Identity.Name, perm)) + return new HttpStatusCodeResult(403); + + if (forum.IsLocked == false) //Save the DB queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + forum.IsLocked = false; + + db.AuditLogs.Add(new AuditLog(uid, AuditLogLevel.Moderator, $"User has unlocked topic \"{forum.Subject}\" by {ACL.UserNameRaw(forum.AuthorId)}.")); + + db.SaveChanges(); + + return RedirectToAction("ViewTopic", "Forum", new { id = id }); + } + + public ActionResult List(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var forum = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + if (forum == null) + return new HttpStatusCodeResult(404); + string perm = "CanUnlistTopics"; + var uid = User.Identity.GetUserId(); + if (forum.AuthorId == uid) + perm = "CanUnlistOwnTopics"; + + if (!ACL.Granted(User.Identity.Name, perm)) + return new HttpStatusCodeResult(403); + + if (forum.IsUnlisted == false) //Save the DB queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + forum.IsUnlisted = false; + + + db.SaveChanges(); + db.AuditLogs.Add(new AuditLog(uid, AuditLogLevel.Moderator, $"User has listed topic \"{forum.Subject}\" by {ACL.UserNameRaw(forum.AuthorId)}.")); + return RedirectToAction("ViewTopic", "Forum", new { id = id }); + } + + public ActionResult Unlist(string id) + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + var forum = db.ForumTopics.FirstOrDefault(x => x.Discriminator == id); + if (forum == null) + return new HttpStatusCodeResult(404); + string perm = "CanUnlistTopics"; + var uid = User.Identity.GetUserId(); + if (forum.AuthorId == uid) + perm = "CanUnlistOwnTopics"; + + if (!ACL.Granted(User.Identity.Name, perm)) + return new HttpStatusCodeResult(403); + + if (forum.IsUnlisted == true) //Save the DB queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + forum.IsUnlisted = true; + + db.AuditLogs.Add(new AuditLog(uid, AuditLogLevel.Moderator, $"User has unlisted topic \"{forum.Subject}\" by {ACL.UserNameRaw(forum.AuthorId)}.")); + db.SaveChanges(); + + return RedirectToAction("ViewTopic", "Forum", new { id = id }); + } + + + public ActionResult Bans() + { + var model = new ModeratorBanListViewModel(); + var db = new ApplicationDbContext(); + + model.UserBans = db.Users.Where(x => x.IsBanned == true); + model.IPBans = db.BannedIPs; + + return View(model); + } + + public ActionResult Logs() + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + + var db = new ApplicationDbContext(); + + return View(db.AuditLogs.Where(x => x.Level != AuditLogLevel.Admin)); + } + + public ActionResult Mute(string id, string returnUrl = "") + { + if (!ACL.Granted(User.Identity.Name, "CanAccessModCP")) + return new HttpStatusCodeResult(403); + if (!ACL.Granted(User.Identity.Name, "CanIssueMute")) + return new HttpStatusCodeResult(403); + var db = new ApplicationDbContext(); + + var usr = db.Users.FirstOrDefault(x => x.Id == id); + if (usr == null) + return new HttpStatusCodeResult(404); + if (usr.IsMuted == true) //we don't need to re-mute the user... save the SQL queries... + return new HttpStatusCodeResult(HttpStatusCode.BadRequest); + + usr.IsMuted = true; + usr.MutedAt = DateTime.Now; + usr.MutedBy = User.Identity.GetUserId(); + + db.AuditLogs.Add(new Models.AuditLog(User.Identity.GetUserId(), AuditLogLevel.Moderator, $@"Moderator has muted {ACL.UserNameRaw(id)}.")); + + db.SaveChanges(); + + if (string.IsNullOrWhiteSpace(returnUrl)) + return RedirectToAction("Users"); + else + return Redirect(returnUrl); + } + + } +} \ No newline at end of file diff --git a/Project-Unite/Global.asax b/Project-Unite/Global.asax new file mode 100644 index 0000000..a925d96 --- /dev/null +++ b/Project-Unite/Global.asax @@ -0,0 +1 @@ +<%@ Application Codebehind="Global.asax.cs" Inherits="Project_Unite.MvcApplication" Language="C#" %> diff --git a/Project-Unite/Global.asax.cs b/Project-Unite/Global.asax.cs new file mode 100644 index 0000000..198560c --- /dev/null +++ b/Project-Unite/Global.asax.cs @@ -0,0 +1,98 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Web; +using System.Web.Mvc; +using System.Web.Optimization; +using System.Web.Routing; +using Microsoft.AspNet.Identity; +using Project_Unite.Models; + +namespace Project_Unite +{ + public class MvcApplication : System.Web.HttpApplication + { + protected void Application_Start() + { + AreaRegistration.RegisterAllAreas(); + FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); + RouteConfig.RegisterRoutes(RouteTable.Routes); + BundleConfig.RegisterBundles(BundleTable.Bundles); + } + + protected void Application_BeginRequest(object sender, EventArgs e) + { + + var addr = HttpContext.Current.Request.UserHostAddress; + var db = new ApplicationDbContext(); + var ip = db.BannedIPs.FirstOrDefault(i => i.Address == addr); + if (ip != null) + { + //The user is banned. Anally rape their ability to get on here. + this.Response.StatusCode = 403; + this.CompleteRequest(); + return; + } + } + + protected void Application_EndRequest(object s, EventArgs e) + { + var db = new ApplicationDbContext(); + if (!string.IsNullOrEmpty(User.Identity.Name)) + { + //Check for a username ban. + var usr = db.Users.First(x => x.UserName == User.Identity.Name); + var banned = usr.IsBanned; + if (banned == true) + { + //The user is banned. Anally rape their ability to get on here. + this.Response.StatusCode = 200; + this.Response.ContentType = "plaintext"; + this.Response.ClearContent(); + this.Response.Output.Write($@"Greetings from the ShiftOS administration team, {ACL.UserNameRaw(User.Identity.GetUserId())}. + +If you are seeing this page, it means two things: + +1. I, Michael, am an awesome programmer and managed to get this ban system fully working. +2. You've been banned. + +If you would like to appeal the ban, contact me through my email address: michaelshiftos@gmail.com + +Ban information: + +Bannee: {ACL.UserNameRaw(User.Identity.GetUserId())} +Banner: {ACL.UserNameRaw(usr.BannedBy)} +Timestamp: {usr.BannedAt} + +DISCLAIMER: +============= + +We reserve the right to disregard ban appeals if we see fit. Users other than myself or another Administrator +may administrate a ban appeal. Do not try to contact the banner. They will most likely not respond, and if they do, +it will most likely not end well for your status. + +Do not attempt to multi-account or perform any form of ban-evading. If you are detected ban-evading, +you will be IP-banned and this screen won't be as friendly to you. + +As it stands, this ban does not affect your ability to play ShiftOS. You can still connect to the multi-user domain, +however, if you do ban-evade, your IP ban CAN and WILL be extended to the multi-user domain. + +We also reserve the right to purge your data after 2 months of a permanent ban. This is to save space on our database, +so do not cry to us when you find out you can't log in because your account got anhilated by the automatic purge system. + + - Michael VanOverbeek, on behalf of the ShiftOS staff. Play fair."); + this.CompleteRequest(); + return; + + } + if (usr.LastKnownIPAddress != Request.UserHostAddress) + { + usr.LastKnownIPAddress = Request.UserHostAddress; + db.SaveChanges(); + } + } + + } + } +} diff --git a/Project-Unite/Migrations/201703151602344_InitialCreate.Designer.cs b/Project-Unite/Migrations/201703151602344_InitialCreate.Designer.cs new file mode 100644 index 0000000..189dbaf --- /dev/null +++ b/Project-Unite/Migrations/201703151602344_InitialCreate.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class InitialCreate : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(InitialCreate)); + + string IMigrationMetadata.Id + { + get { return "201703151602344_InitialCreate"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703151602344_InitialCreate.cs b/Project-Unite/Migrations/201703151602344_InitialCreate.cs new file mode 100644 index 0000000..4baa1ed --- /dev/null +++ b/Project-Unite/Migrations/201703151602344_InitialCreate.cs @@ -0,0 +1,108 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class InitialCreate : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.AspNetRoles", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Name = c.String(nullable: false, maxLength: 256), + }) + .PrimaryKey(t => t.Id) + .Index(t => t.Name, unique: true, name: "RoleNameIndex"); + + CreateTable( + "dbo.AspNetUserRoles", + c => new + { + UserId = c.String(nullable: false, maxLength: 128), + RoleId = c.String(nullable: false, maxLength: 128), + }) + .PrimaryKey(t => new { t.UserId, t.RoleId }) + .ForeignKey("dbo.AspNetRoles", t => t.RoleId, cascadeDelete: true) + .ForeignKey("dbo.AspNetUsers", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId) + .Index(t => t.RoleId); + + CreateTable( + "dbo.AspNetUsers", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Codepoints = c.Long(nullable: false), + Bio = c.String(), + BannerUrl = c.String(), + AvatarUrl = c.String(), + DisplayName = c.String(), + FullName = c.String(), + Website = c.String(), + YoutubeUrl = c.String(), + SystemName = c.String(), + Email = c.String(maxLength: 256), + EmailConfirmed = c.Boolean(nullable: false), + PasswordHash = c.String(), + SecurityStamp = c.String(), + PhoneNumber = c.String(), + PhoneNumberConfirmed = c.Boolean(nullable: false), + TwoFactorEnabled = c.Boolean(nullable: false), + LockoutEndDateUtc = c.DateTime(), + LockoutEnabled = c.Boolean(nullable: false), + AccessFailedCount = c.Int(nullable: false), + UserName = c.String(nullable: false, maxLength: 256), + }) + .PrimaryKey(t => t.Id) + .Index(t => t.UserName, unique: true, name: "UserNameIndex"); + + CreateTable( + "dbo.AspNetUserClaims", + c => new + { + Id = c.Int(nullable: false, identity: true), + UserId = c.String(nullable: false, maxLength: 128), + ClaimType = c.String(), + ClaimValue = c.String(), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.AspNetUsers", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId); + + CreateTable( + "dbo.AspNetUserLogins", + c => new + { + LoginProvider = c.String(nullable: false, maxLength: 128), + ProviderKey = c.String(nullable: false, maxLength: 128), + UserId = c.String(nullable: false, maxLength: 128), + }) + .PrimaryKey(t => new { t.LoginProvider, t.ProviderKey, t.UserId }) + .ForeignKey("dbo.AspNetUsers", t => t.UserId, cascadeDelete: true) + .Index(t => t.UserId); + + } + + public override void Down() + { + DropForeignKey("dbo.AspNetUserRoles", "UserId", "dbo.AspNetUsers"); + DropForeignKey("dbo.AspNetUserLogins", "UserId", "dbo.AspNetUsers"); + DropForeignKey("dbo.AspNetUserClaims", "UserId", "dbo.AspNetUsers"); + DropForeignKey("dbo.AspNetUserRoles", "RoleId", "dbo.AspNetRoles"); + DropIndex("dbo.AspNetUserLogins", new[] { "UserId" }); + DropIndex("dbo.AspNetUserClaims", new[] { "UserId" }); + DropIndex("dbo.AspNetUsers", "UserNameIndex"); + DropIndex("dbo.AspNetUserRoles", new[] { "RoleId" }); + DropIndex("dbo.AspNetUserRoles", new[] { "UserId" }); + DropIndex("dbo.AspNetRoles", "RoleNameIndex"); + DropTable("dbo.AspNetUserLogins"); + DropTable("dbo.AspNetUserClaims"); + DropTable("dbo.AspNetUsers"); + DropTable("dbo.AspNetUserRoles"); + DropTable("dbo.AspNetRoles"); + } + } +} diff --git a/Project-Unite/Migrations/201703151602344_InitialCreate.resx b/Project-Unite/Migrations/201703151602344_InitialCreate.resx new file mode 100644 index 0000000..4b2e761 --- /dev/null +++ b/Project-Unite/Migrations/201703151602344_InitialCreate.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703151901273_CustomRoleSystem.Designer.cs b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.Designer.cs new file mode 100644 index 0000000..b739135 --- /dev/null +++ b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class CustomRoleSystem : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(CustomRoleSystem)); + + string IMigrationMetadata.Id + { + get { return "201703151901273_CustomRoleSystem"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703151901273_CustomRoleSystem.cs b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.cs new file mode 100644 index 0000000..5f701b8 --- /dev/null +++ b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.cs @@ -0,0 +1,22 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class CustomRoleSystem : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetRoles", "Description", c => c.String()); + AddColumn("dbo.AspNetRoles", "ColorHex", c => c.String()); + AddColumn("dbo.AspNetRoles", "Discriminator", c => c.String(nullable: false, maxLength: 128)); + } + + public override void Down() + { + DropColumn("dbo.AspNetRoles", "Discriminator"); + DropColumn("dbo.AspNetRoles", "ColorHex"); + DropColumn("dbo.AspNetRoles", "Description"); + } + } +} diff --git a/Project-Unite/Migrations/201703151901273_CustomRoleSystem.resx b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.resx new file mode 100644 index 0000000..4b2e761 --- /dev/null +++ b/Project-Unite/Migrations/201703151901273_CustomRoleSystem.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAN1dbW/kthH+XqD/QdCnpPDt+iV3uBrrBL613Rg924dbX9p+MrgSd62eRCki5dgo+svyIT+pf6GkXim+SNRKq10fAgRevjwznBmSw9FM8r/f/5j99Bz41hOMsReiM/tocmhbEDmh66H1mZ2Q1Zv39k8//vlPs0s3eLZ+KcadsHF0JsJn9iMh0el0ip1HGAA8CTwnDnG4IhMnDKbADafHh4d/nR4dTSGFsCmWZc0+J4h4AUx/0J/zEDkwIgnwb0IX+jhvpz2LFNW6BQHEEXDgmf0pDv8NHfLwBXkETrLxtnXue4DysoD+yrYAQiEBhHJ6+gXDBYlDtF5EtAH49y8RpONWwMcwX8FpNdx0MYfHbDHTamIB5SSYhEFHwKOTXDpTcfpGMrZL6VH5XVI5kxe26lSGZ/bn0KcLFwmdzv2YDVKLd8ImHVh515u066A0Bmoz7J8Da574JInhGYIJiYFPJyRL33P+Dl/uw68QnaHE923rA8AwI8WUNbl2YcpiyhfHOeWd0otgTF5yzi8gdmIvyuSSI5CY2qlt3YDnjxCtyeOZTf+0rSvvGbpFS65ryjU1azqJxAn9OW2kNQ/9MP4ZPg9MaDat9NGopUIq1HzjNo3dlMZwjqNbSEqRTjLYq5hC/hbGXyci6oFlPLdS97Gpuk+OlquT92/fAffk3Q/w5K2gXTqu1sAp4TNc5XJgnF67oraUQ9mC5KGzqUhHVHVBQqvoo+P3Roq+peYNlj4s+5tNrOB3u3Q7W9zw1vY6LG0T09mF2bB/N1A9fvtuEKq34Mlbp6pXbBd6336GftqLH71IcZI/5MOu4jBgv+v2lfU+LMIkdthiQu2QexCvIdnQpM+jiFpJyiZD63zrCfMHugC/Yduc06lR6CGCC9rXiLz7oTPOBy/c+g3/gZoBjL/E/tYpnT8BAkahdOHhyAcvLUfEMLSuqEpHIfQPuMR0u22dzr/ChCRLOIaeFi+YwGAU6V0GwGtakOl9YUCFPuJWXhzA8uD5ENKDHKDO2/8TwJh6Au7PAD9uXxfQSWJ6bywICKKtU/v0GCJ4mwRLdh2NR2sw1dz/Fl4Bh4TxJWKzeuN9DJ2vdN9dIvcCEPiFOAUg+3nvBeYAg7Bz7jgQ4ytqzNCdhwki3D12ctwZjnkNu/bX5j7wArXDJvg3D8XQymlTj5AcN80wlfPWxOrHcO0hM1aLoXpWsxGtrObDurLKwMw4zUfqGU0HtPKZjerlDvOv/1RDwwcVUthv/a2nOws4MS7oCQn/BqmDSY8x9xMgBMao0oDJubET/52pjxHdfnyNUfoF+MnQpDbaDekhMPxuSGH3fzekbNLmJ89lXolBqK0YTOGNxqujeO17TuBs7O1QW+bYxMc5A3Tb5Rzj0PHSXaCID+bRnTr/1Iez2kM9msC/dUMN3WNXHm2ha7NFo7pDF9CHBFrnTvZdZQ6wA1xZjHRBbgfGihtVwVgVe68z9xeJJrV0GLNJgD2CMN2pHiLytvCQ40XAb5WSMNPwCmNrL2mIPRcwgogRbJWECXF1qJ0xUNIRlNImodmUs7hmQ9R4rTqdt7mwld6lcOEoNtniO2vsMvfftmKYzRIbwTibRWLCgPaz0S4MNH+rmBqA+HDZNwMVXkwaA81dqlEMtC6xHRhoXSSvzkCzJ6qp/oX36r6ZZ/2hPP613iiuHdhmTR57ZpqZ70nnEDoDxrJ5XixZJ3wmiscZ5TN/n+Hc1RVNhIEvINGkVGDbqnxfrY1Mm0HbgIxA8m+lEoi0oVpwJAehbYm5F9EBtoi7NcLmZ78Ay9mAjM1/M+YG6r8si8Zp9PooV1YqTjJyo8cCh6OwKvHwqi/cQCi6uKwsGBNfuIs3zC0sV0aDgFo8V42QisUMLqXCNNulpHLIurhkvaQkuE8aKRWLGVxKuY22C0nhFHRwC3qJqH6FD7TZikhHeduUfbNplmSaN8ymmmzU2Q2IIg+tuezUvMVaZKmp8zeL7hmbQYYxdbAicbPktqREwhisodCbpV5ceTEmF4CAJWBxnrkbSMOUd6vm+C9I8jedrMTiHihGs7/L8Jk6k1ThhuSzr+jaAubLpAF0hebV0y2WJwx8ECti9vPQTwKkd630s2v5pjxMrcMcr8op5cGqViUS1ZHrpb57Gi0v8ndr7HiMncBDgApNBTObCuKVPDtJjV30fI3Z33er75QK5zX3/SvRfPbNlp+ftYwu2laJ7p9AJYOtu8KjGm7RXx1mRkedfM0MprPyYbG53vQQOt0VLzpe9rpXnh6lCPryKLpA8M5Up3scdFSX+PLqrq1WhO2cXHwGZv2WqdrN0dI8TB4mbegwv8qxrKFUzeZYXBYlj8U1d7jZ+TxJ4USqOszxqlxIHqxqNUcqkx15oLLRHIdPZuSh+HZzND5fkUfj283R8pREHihv6ojBZbVJYFyfOWo98ZDHrPd0kFw9u7AmvHpXBy75HMIak3zHRngaiapHmFOQswZ5dLnXHFmRP8hDK7o3wFbwLPZ1OMfkFMPaeSZ3m2NX+YbiVb8t/3UAD0sbs+rhYmWBzX4+lgZjO/f2MC4al79Vu/yr5o5YeYaWBJa376U9aaN7Pewpi2j3sycNhv70qeU+1Q+fxoQtPWYtoal2wDcldOnxulntVm1DCu+JQ0rqZZhPCOfN8tBaewW6FGvLhthWIcbCM5qwAZPFr/7c9yA7yosBNwB5K4hJlsRnHx8eHQsl7PtTTj7F2PUVoUld7WhdZyPk46InEDuPIJaz43qUVlag0ofHa+TC5zP7P+ms0zSGzf5Kmw+sa0xPkV8T2nEfJ9D6r5zt35ErRdl7wdx3AXj+ngfcpLS9F5gQwumlkM2L4zcwudELy80N6vqfD9nUA+supofFqXUomNEmxl0vN+/ETTa1BzcbV+y+3rNELoVdevTWJn1qYXvtVKnetReaVNPa9xQR61Z74Ym1qb3AhPrTXlhyjWkvOLmOtBdcrVZUuROE+2vz0tCl130nqMpC+4lPVfrZC1FR3jkU3iAi1JVvboKlLd106U+Slm52W6y6lHMT1rRlnJscwGIRp/nVWcwcxjPsUec3+jWayrm1CK5XRcyu/SmpVq6fUy7Vw3WA61HztoFlvLJyscE8OkU12GDYuzTtrZeA7UvVV5XUu9tirzHruxryDb6psq49KERQJFbvvnhrbFvTfXjZ8wqYbiVae2Zsebr97guxxjY23VeZPTe2TuVWe2Zru7o/d2xpxlfozoun5DxwUa3q4p5Md5UnqHTXsu9c9IW/ZDHJzKPM/psW6mx8HbHKWLQEqyF6ovoyAJGwtHEkutKIZrLd1ppf+I2Lzcc0k9UUzzTRzs//Rtr5mGbampKUXZR1KYtCVKV2LedYU3btayrjqq2kpWqwzWdtzIZ5TVVbgwiltns0KR2vp0hrEJEMuXU6FGXJ2Rn07uT+LwL0/sbeuoJghQgIOrVbsxxzjVZhcXkLHBVDhAjNDSTApVfqeUy8FXAI7WYx5vQ/ypMXOlwGS+heo7uERAmhS4bB0q8FvJgT0EQ/rTyr8zy7Sz/84yGWQNn0WGz+Dn1IPN8t+b5SxIQ0EMy7yCO6TJeERXbXLyXSbYgMgXLxlU7RPQwin4LhO7QAT3AT3qj5fYRr4LxUEUAdSLsi6mKfXXhgHYMA5xjVfPqT2rAbPP/4f75AP/FMYwAA + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.Designer.cs b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.Designer.cs new file mode 100644 index 0000000..94f9b09 --- /dev/null +++ b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class acl_rsi_inducing_booleans_jesus_christ : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(acl_rsi_inducing_booleans_jesus_christ)); + + string IMigrationMetadata.Id + { + get { return "201703152047370_acl_rsi_inducing_booleans_jesus_christ"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.cs b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.cs new file mode 100644 index 0000000..b39c649 --- /dev/null +++ b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.cs @@ -0,0 +1,128 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class acl_rsi_inducing_booleans_jesus_christ : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetRoles", "CanViewProfiles", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditOwnProfile", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditProfiles", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditUsername", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditUsernames", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanIssueBan", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanIssueIPBan", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanIssueEmailBan", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanIssueMute", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanReleaseBuild", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanBlog", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAccessModCP", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAccessAdminCP", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAccessDevCP", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditForumCategories", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanPostTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanPostPolls", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanPostReplies", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanPostStatuses", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditRoles", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteRoles", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteOwnPosts", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeletePosts", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteOwnStatuses", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteStatuses", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditOwnPosts", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditPosts", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditOwnStatuses", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanVoteInPolls", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteUsers", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAnonymizeUsers", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanPostSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditOwnSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanEditSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteOwnSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDeleteSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanUpvoteSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanDownvoteSkins", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanStickyOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanStickyTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAnnounceOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanAnnounceTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanGlobalOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanGlobalTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanMoveOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanMoveTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanUnlistOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanUnlistTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanLockOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanUnlockOwnTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanLockTopics", c => c.Boolean()); + AddColumn("dbo.AspNetRoles", "CanUnlockTopics", c => c.Boolean()); + } + + public override void Down() + { + DropColumn("dbo.AspNetRoles", "CanUnlockTopics"); + DropColumn("dbo.AspNetRoles", "CanLockTopics"); + DropColumn("dbo.AspNetRoles", "CanUnlockOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanLockOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanUnlistTopics"); + DropColumn("dbo.AspNetRoles", "CanUnlistOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanMoveTopics"); + DropColumn("dbo.AspNetRoles", "CanMoveOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanGlobalTopics"); + DropColumn("dbo.AspNetRoles", "CanGlobalOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanAnnounceTopics"); + DropColumn("dbo.AspNetRoles", "CanAnnounceOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanStickyTopics"); + DropColumn("dbo.AspNetRoles", "CanStickyOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanDownvoteSkins"); + DropColumn("dbo.AspNetRoles", "CanUpvoteSkins"); + DropColumn("dbo.AspNetRoles", "CanDeleteSkins"); + DropColumn("dbo.AspNetRoles", "CanDeleteOwnSkins"); + DropColumn("dbo.AspNetRoles", "CanEditSkins"); + DropColumn("dbo.AspNetRoles", "CanEditOwnSkins"); + DropColumn("dbo.AspNetRoles", "CanPostSkins"); + DropColumn("dbo.AspNetRoles", "CanAnonymizeUsers"); + DropColumn("dbo.AspNetRoles", "CanDeleteUsers"); + DropColumn("dbo.AspNetRoles", "CanVoteInPolls"); + DropColumn("dbo.AspNetRoles", "CanEditOwnStatuses"); + DropColumn("dbo.AspNetRoles", "CanEditPosts"); + DropColumn("dbo.AspNetRoles", "CanEditOwnPosts"); + DropColumn("dbo.AspNetRoles", "CanEditTopics"); + DropColumn("dbo.AspNetRoles", "CanEditOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanDeleteStatuses"); + DropColumn("dbo.AspNetRoles", "CanDeleteOwnStatuses"); + DropColumn("dbo.AspNetRoles", "CanDeletePosts"); + DropColumn("dbo.AspNetRoles", "CanDeleteOwnPosts"); + DropColumn("dbo.AspNetRoles", "CanDeleteTopics"); + DropColumn("dbo.AspNetRoles", "CanDeleteOwnTopics"); + DropColumn("dbo.AspNetRoles", "CanDeleteRoles"); + DropColumn("dbo.AspNetRoles", "CanEditRoles"); + DropColumn("dbo.AspNetRoles", "CanPostStatuses"); + DropColumn("dbo.AspNetRoles", "CanPostReplies"); + DropColumn("dbo.AspNetRoles", "CanPostPolls"); + DropColumn("dbo.AspNetRoles", "CanPostTopics"); + DropColumn("dbo.AspNetRoles", "CanEditForumCategories"); + DropColumn("dbo.AspNetRoles", "CanAccessDevCP"); + DropColumn("dbo.AspNetRoles", "CanAccessAdminCP"); + DropColumn("dbo.AspNetRoles", "CanAccessModCP"); + DropColumn("dbo.AspNetRoles", "CanBlog"); + DropColumn("dbo.AspNetRoles", "CanReleaseBuild"); + DropColumn("dbo.AspNetRoles", "CanIssueMute"); + DropColumn("dbo.AspNetRoles", "CanIssueEmailBan"); + DropColumn("dbo.AspNetRoles", "CanIssueIPBan"); + DropColumn("dbo.AspNetRoles", "CanIssueBan"); + DropColumn("dbo.AspNetRoles", "CanEditUsernames"); + DropColumn("dbo.AspNetRoles", "CanEditUsername"); + DropColumn("dbo.AspNetRoles", "CanEditProfiles"); + DropColumn("dbo.AspNetRoles", "CanEditOwnProfile"); + DropColumn("dbo.AspNetRoles", "CanViewProfiles"); + } + } +} diff --git a/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.resx b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.resx new file mode 100644 index 0000000..dc2250f --- /dev/null +++ b/Project-Unite/Migrations/201703152047370_acl_rsi_inducing_booleans_jesus_christ.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703152115389_role-priority.Designer.cs b/Project-Unite/Migrations/201703152115389_role-priority.Designer.cs new file mode 100644 index 0000000..ad699d8 --- /dev/null +++ b/Project-Unite/Migrations/201703152115389_role-priority.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class rolepriority : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(rolepriority)); + + string IMigrationMetadata.Id + { + get { return "201703152115389_role-priority"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703152115389_role-priority.cs b/Project-Unite/Migrations/201703152115389_role-priority.cs new file mode 100644 index 0000000..0f14a50 --- /dev/null +++ b/Project-Unite/Migrations/201703152115389_role-priority.cs @@ -0,0 +1,18 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class rolepriority : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetRoles", "Priority", c => c.Int()); + } + + public override void Down() + { + DropColumn("dbo.AspNetRoles", "Priority"); + } + } +} diff --git a/Project-Unite/Migrations/201703152115389_role-priority.resx b/Project-Unite/Migrations/201703152115389_role-priority.resx new file mode 100644 index 0000000..ca0a2ed --- /dev/null +++ b/Project-Unite/Migrations/201703152115389_role-priority.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703160106134_forum_backend_base.Designer.cs b/Project-Unite/Migrations/201703160106134_forum_backend_base.Designer.cs new file mode 100644 index 0000000..3fbd209 --- /dev/null +++ b/Project-Unite/Migrations/201703160106134_forum_backend_base.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class forum_backend_base : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(forum_backend_base)); + + string IMigrationMetadata.Id + { + get { return "201703160106134_forum_backend_base"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703160106134_forum_backend_base.cs b/Project-Unite/Migrations/201703160106134_forum_backend_base.cs new file mode 100644 index 0000000..b73c87a --- /dev/null +++ b/Project-Unite/Migrations/201703160106134_forum_backend_base.cs @@ -0,0 +1,112 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class forum_backend_base : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.ForumCategories", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + ParentId = c.String(), + LinkUrl = c.String(), + ForumCategory_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumCategories", t => t.ForumCategory_Id) + .Index(t => t.ForumCategory_Id); + + CreateTable( + "dbo.ForumPollOptions", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + PollId = c.String(), + Name = c.String(), + ForumPoll_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumPolls", t => t.ForumPoll_Id) + .Index(t => t.ForumPoll_Id); + + CreateTable( + "dbo.ForumPollVotes", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + PollOptionId = c.String(), + UserId = c.String(), + ForumPollOption_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumPollOptions", t => t.ForumPollOption_Id) + .Index(t => t.ForumPollOption_Id); + + CreateTable( + "dbo.ForumPolls", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Description = c.String(), + TopicId = c.String(), + IsActive = c.Boolean(nullable: false), + AllowMultivote = c.Boolean(nullable: false), + AllowVoteChanges = c.Boolean(nullable: false), + }) + .PrimaryKey(t => t.Id); + + CreateTable( + "dbo.ForumPosts", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + AuthorId = c.String(), + TopicId = c.String(), + Body = c.String(), + ForumTopic_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumTopics", t => t.ForumTopic_Id) + .Index(t => t.ForumTopic_Id); + + CreateTable( + "dbo.ForumTopics", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Subject = c.String(), + AuthorId = c.String(), + CategoryId = c.String(), + IsSticky = c.Boolean(nullable: false), + IsAnnounce = c.Boolean(nullable: false), + IsUnlisted = c.Boolean(nullable: false), + IsGlobal = c.Boolean(nullable: false), + PollId = c.String(), + }) + .PrimaryKey(t => t.Id); + + } + + public override void Down() + { + DropForeignKey("dbo.ForumPosts", "ForumTopic_Id", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumPollOptions", "ForumPoll_Id", "dbo.ForumPolls"); + DropForeignKey("dbo.ForumPollVotes", "ForumPollOption_Id", "dbo.ForumPollOptions"); + DropForeignKey("dbo.ForumCategories", "ForumCategory_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumPosts", new[] { "ForumTopic_Id" }); + DropIndex("dbo.ForumPollVotes", new[] { "ForumPollOption_Id" }); + DropIndex("dbo.ForumPollOptions", new[] { "ForumPoll_Id" }); + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id" }); + DropTable("dbo.ForumTopics"); + DropTable("dbo.ForumPosts"); + DropTable("dbo.ForumPolls"); + DropTable("dbo.ForumPollVotes"); + DropTable("dbo.ForumPollOptions"); + DropTable("dbo.ForumCategories"); + } + } +} diff --git a/Project-Unite/Migrations/201703160106134_forum_backend_base.resx b/Project-Unite/Migrations/201703160106134_forum_backend_base.resx new file mode 100644 index 0000000..60cb0a3 --- /dev/null +++ b/Project-Unite/Migrations/201703160106134_forum_backend_base.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1d3W7cuBW+L9B3GMxVW2Q9cdJdbAO7hTOOt0bjH8TOtr0y5Bl6rEYjTSWNY7fok/Wij9RXKClR4j9FikfyuAgCBB6S+kgefvw75Dn877//c/CHx3UyeUB5EWfp4XR/7/V0gtJFtozT1eF0W9599+P0D7//5S8OPizXj5Ofm3RvSTr8ZVocTu/LcvNuNisW92gdFXvreJFnRXZX7i2y9SxaZrM3r1//bra/P0MYYoqxJpODT9u0jNeo+oF/zrN0gTblNkrOsiVKChqOY64q1Ml5tEbFJlqgw+llnv0NLcqbz2lcor06/XRylMQRLssVSu6mkyhNszIqcUnffS7QVZln6epqgwOi5Pppg3C6uygpEK3BO5bctTKv35DKzNiHDdRiW5TZ2hNw/y2Vzkz+vJeMp630sPw+YDmXT6TWlQwPpydZvl3PoxKtsvxpOpFzfDdPcpJaL+c94etXE5rmuyrNq5YemEXk36vJfJuU2xwdpmhb5lGCP9jeJvHiT+jpOvuC0sN0myR8cXGBcZwQgINwLhuUl0+f0B2txOlyOpmJ383kD9vPuG/qmmFCYHZPJ2fR40eUrsp7zPs3P04nJ/EjWjYhlCG4Zrgz4I/KfIt/nuMCR7cJauNn1jwvoxylpTVn/KdTzvaMPsbpl895Ap/PefQQrypmSDnO7+NkiWs3nXxCSZWguI83dQ8UaXLDkp7k2fpTlsg0bFPcXGXbfIFLcZ1Zk11H+QqVYmEPZozr3T3gMkuSi03dx/r0Afb9t17Q2QuwrEboA+T/ETvAz1mJCjP7GUFuaEqJ/HICPfeVVDDUJ1j9iU++/kZ7F9rXTTcC+fE6JwfPxp9X/Tn1jU9dTXyMikUe0zlrYDpdZ5t4MQJtT4ujRRk/tOP2+wwPfVHqLZujJMm+nmGCxA/VyAaARga5+X2UrsjY7YlnnDTq8aBj2rhpU2mmjCbSPF20KSCmiqLs26WL8luX7iTatrzP4Mft5+vP77Pl07NOQlVF+1G2+vQbZ7ua+Gp7S+QzOJVG6xvN9nKU6e6qjBdfnkInKDxtYmpv00XwVHdafE6TuCjRMhzppyS7jZJQnKF2i8Y5mUxVlhm5GhZuaCJpQubi9PMxnyBoOiaY3sMa+QhoQJu8jwpEm4SI5nSJqiJW5dqZZes8S7L8j+hx8Iwu8zjLcfWbjE7T8u0bb6rPo/TnGH3FoXdx0mOZqcJ9WMblxdeUIgIBApePbFVTTlcDBAdRvNOi2KL3UQoFdXoJCPZhHcUJIN7ZNnynhLHwuInw2PB+GyfBcwiGe59kKwCYo8UCFQUeB+eXYGhHy3WcAuIdowcQNNILeEV5DNIXyKRVTV9QYGRih8L6hDYJXDWv8Gy6LcAGODInQmAd455VIlg0PDmANWqNCAxHZq96rQUECIuGiwfIlhoTmH6QTUzwQMEAm7damgBiwTYtUR+eplBjXk0UstSBQDtKs/RpHf8DDLAaRL/EKWRTAMJBYbEhABQQCu3zhii/wcqWfU0h8WrNB+TgVCOCwTUqFcgiNphggLWOBbKINSIY3Fn2ACpBggcGVuu6IItXI4LBfcwWX4CLB4xISghcvD5wzoqzRlFFprouJdpZe63uqNico7LVcu3VsCc5hvya5V/2ZNRXE+dvmQbujasG7u3+7d3bH7//IVq+/eG36O33fY4XmgsCs+6kpEJ9TiM67yAMdCLRlHfYfL0ZB8+2l8G0l3KQ1XFf7M33P4Dkajx3oItvzbkD3943NBk7eVBjlbMHTZKg04ejzQazpComQfM+iJC+/3bI2n2QsUSbLE7Z5vY0LX/4rTfO+zgb/swf0wDlg9w+lo+EH6IyGiWn47jYJNHTMFdKpbxOcJOOktGf0W0Rl8Pn89dsW25v0RjtdPVUlGg9ivSq4xeA+cIhl3mW3sX5OvxM/jIqCrwSWP4xKu6Hbwu02JIz0asyWm+GP4G9z1J0vl3fkulovLzAmub6a3YSLcos/5CSr4LxyL4M97sP6fI4KtHnctEAkp/X8dodAKQ49QnXCSYzWs6zbVpy81iPk3Kyanju9do8ieK1fsEmrW9umqRs0aZPoSzcDMl0izdbUT9mq9hwy1TOoUlqLmqdorOoNJlvUenxlkNJaUpzQasEneWsUwUth/ndf9VC8EqFCvb/fa9nGgs4MV7hERL9hPACEw9jy8uoLFGeshYINosYav1Omo9kOvyVJ5LTz1Gyhc6qV2+oBgH43lDB7n5vqIqJgx/iJVmVOKjamsQY3im9XovX3eekko3dHYRqjp35OGOAqbscFUW2iKtewN9TV41jxTrgddzEzVKW3cmUTLsrcxgy9+FSHU5f7+3tK5LqzKWZJl1z+Y0sFK76DlJRjCatxTVbUEql5Y19/aViNMHUZVMbVoILpTUJ6iypah+kKWVfMSimRe6SDhQCfwvbWkztlWyplNRIxF8GuuvcqgiIzRRU5TWqYFMJbXphw8VtqZj7U3kGuqBXFCbETI+4s5hHxSJaqmMuHv2WHgXTCE89qLPKEOeAp0VE/CvEEdGYFHhaj9NSnUPjdBFvoqRTStKXjutdUvc2DznmGG1QSjLslIRL5vpzOVKANh+pUbok5EFEwxbX1OZd+13W7srZwiic7NhoG3hJN3uDENMusRHIaReJSwGMZ8zPQVCq2HAlgKzl2DWCSuoVA0Hp/msUgooSewaCiiJ5cQSt9Vmu7S8pt3aNnqJWbfxp3SquZ+CmII8do2a9UcXflPgLlKv0PL4lkehRZ/uPy0mVOQXdF8sUIeBXqNTsdiuLDbZN1m8olRW4Bo9tM4yA/E7EFZI66jED1rs7VzgrlCtMdb/dBFOoinYtTHPDTo9Dt0MdQHJH1sGpnb0DtAvICYTekFFAlJHRo4bNCY61inQ56AHbnLZYYekkLsFynVnfu3hHa1xiu0s2ebRx1ju1tdR0cWUMc9YzuaMKoxv+wFVYql8ug6zsuigPbZRcJ2Hw6hKVUfmkQ6UVghMU80RjEZJeN+WondJVw1EsijLKQ9B9hSI4AzDIxKiqclNWybVoxu4ukeh0U6pEqoIHy0J3QVGVRpfuylV7xdWCzhcWWViUTRyOZjILForpEoAqGBddio82hasYbQyLgDo0HwYhNZUBl1IzI3ZLSbeh99nSB0lJ2n4bpNRUBlxKlKPdQtJsKj22lUEiEreAQJ2tOVZrdytt3MGs9g1NAw5mBifSB2fRZhOnK86pNA2ZXNUepeffXfk7Wl7XGLOFIG15b9XmVGZ5tEJSbH3P9yTOi/I4KqPbiBwqzpdrJZl2b2ZYdTZZ6rdfanM2C9HmO/J3e2rb4QFas7OlMCe4umuyPa4ucBiWdZrvJ8Tld5REuebSyDxLtuvUvF03f838MPMYLNQdqXW0zAO1gSrOwUwSiLK9V1pAUcKIDeve7Pz6B6bduU11z5a3IQzU9tSflNDyNMwdpb58yGPUIbvX4qbNSt/2rnQeAa2t/364tmYud+UWZzHuiI1ajscyqeqev+0h2z2kzcdqb8G3GA8jRLjjtW4yeaw20B2HubUV6taGuiPJjm15PDnOE1VwcKvgCrG7xnT91rof0wudft6R6bpvh2E684YptFQbOj7Ha1evPEgdsltcodoTGLLUivKebDF8PAxdWietPEQb+By0472s8lh8uM8A2zhSFQfYJtRrqG5dqUqDdRvug8bcqYpoLNwHrXGpKmI1oUMtgp+pw5p0F55dVXVJWuF0dVKzR1NrE+3U+oX5PxW6WBvqQZjWwalAmTbUp+NLTk7F3i9FeuHK3k4lZDnaG9tYZjHSG5d5QNXgssjeuPoCc7FeyMwpqgTKIvzxqGdUHSKN8sdkDlJ1sCzWH7l2lapDrWO8EEWHqRKoGOmFW3tOlfDqQC8cwXWqBCfE9UBtXahqcdvYHsjUmaoWl8Z59yflCFrTqzoPv6258E5WJXA+yhuTHqNqIA0HrJ2IrcdVDWYb543KHC5qYFmkd8vRYwZNexlOEK2IgiNWCVOI64HK+ebSInPxPdCt0AG4zI2nqdDao2YnbBtwf1TBu6ep0D0ZJ7tx1cIHsNnMESnWG9kC2xvTyA0x0n81ZgTti2jjhBLvt+Llvb/KC14+rgfP6MmslmSGU1srquwNVp5CpWj/Mb52IKob4L9oTssd200LKkZ645pB+yDK3mKNg05vbBtwH1TBgayEKsT5lVV0JCuXVoz1QlZcykrYSnwPdCt0L1yNn1mlyykpeuXQAd8LW3FAK4Er8T3QrdC9cCWvtBKwFOuNbIHtham4qZX7ohzfA90K3QtX8l0rAUuxviW2Yivx3uW2FDqgxNbiWnHnWYpnHWI7VLn2aN5/ElSEMVER4g1zVGYaZxPhWtwO3etpQf6+uPuVVgnLa1N//UK0seeKSu7coIcbWLSdEt09gSqEFS04RiVuz+MH9ZoiWJu19jD9280MAXN1xYTSGJ3zKCZD9GdrOtPlcs/mkg2G/FurE2GYkYt3Fyue/LBwj5N94jRWONgnAR7fM4ewAgoL9jiAZi5fhRNoFuxx2sY7dZVGJBbhjscct/JgLNQdqfXMygO1ge44vOdVHooP97hEwDlXFe4RcOHuaNR/Kg9EgzwxOBecChgX53M7mPeSKt4Q5mM8JCe6QhWEJ0Z5lJJ3eCoUko/ohWeQqD6Fx00jxcWpcOVIifW4ha06OxXuY6vRPbA1ZZbjPMYx1R+qMJ6p0X53VNVeykJ3ZprWGBSBLrFqe9ywNZYBY5h5G2aJxjmbFCZ/FuyJRd1JKmA0fCf5ZLQOC+BTbYgdxicDhnn0ERw1ioOP1bukGfOS974oXuexeJ804+3WnXjRdMxs/cSbx/vYOHGfedkyEUs5ecFoNalXJec04oigehciXFF6l9Loy6T3uGgtF1MonBbE8WbrdNOn7rJhYT8CqS4D/Gylmq+8TGRMDWNyMxDCHg4Tij8mvwW7Rx9r5eEIxFwpuJKHfeFpSWdrE9kBQyhtQAkje3TYTbIMRhPBuYSzPULzgbOJiqkFNM4oQthRw0HRQ+PdYvfYYapyNz0UM3c5SbuKoiHt79bMnZqYC7bvlUyIJXsli4Kau8s253WS6aRZDjYanj2SYO/q78k8iRHZkjYJzqI0vkPkmJB4Tp++eb3/Zjo5SuKoqL0SUGv6d7LzMCfz+v23xLweLdcz+XN/I32CUhRLwR5RdWBvWcaN8QpC+hDli/soV32Se7/209izi8C/WkePv+bRXN4VaG3aAbDUZZpcc8XN3Gm6RI+H039WCO8mp3+5kUFeTS5yzMV3k9eTf9lEF/CygXWefVnUoLY+AI1Z65SgWNFOqH0ZQQHGZIO6XH9xXGCm8AANKT6wAMMJbkUewowWZkx+vGBuCHZnAO3Z2hUDYDHz+RrsNi79nyWTTOYDkQQjeVcsX0LJK/gXRShmKrxjbKqN1aGGLLby7ztaNQhjDVQac/QXRazWmB2gCUFJyhu0g4x6jU17/7GKt2UPQWE27CEojfV6f4zeq9l+b7i/3E6iW6t3D0mk0uSvKvjVhLR7/PctjrjGApVGperVzWdeZDD7dgAwZuJeg8Vp6T8CSEbtWqY7IslG7KFYcKVihupQSIGFYvbowSjUBj0YhxmdB0PVluYhMKJteQhSbVUegiAYkocDtZbj4VDUWDyU04pdeAggbwseikMND0NhWpvvUCBmYRkqcmqEHQIjWHOHA3EmKeFgcEjMCDccCwxIMLYNh4OjFVAj8jbVEAuCcLlzptMABYIRuGAcHc4CarMcNCtI9s/B411t6AohcRgkABjZlhmg+4YDCRbLQSUSTZRDoBSL5HAwCCSNwTEEHASWYk8cDgaBJJkMh0JB4ChWweFgEEiS4W9goeDAeNve8EIFI0lWkUGKIG81l9640E3VZXy4Tk2qtxvs1ozpDxiddOv1p65KdSf1VVOLHqWpPw0ojXPLWg0RX5QOk7dhbHrXStLKOQFVVowQJ0fMjhHi7IFZMgKgCZaMEIdbrTEjAFhr0AiAxVs0AsDxJo0AcNSw0dITJL25MyhniBdwfiKYNUKITzRqhFDD80aNsHggIlStF/tjacwVa7Al/lnGhJOed/ckM8WAWw6qXaL2WMQJjFkk+k6dzZcwJ1K9lkcau8AxptFKztXV7p8QnnUwIZaXUVmiPGXF69UQu7Oe4uwUIQ4DOUPF4c+HDRZ+bszoMOjTfHFpM9hzXpt3808qGfCKTqgFMPZzUtvEHvUpeJfHeE2P5jZ1072dLT6t/npvb1+RlwG1vrbvigz0aHvXW3Iug+nE55V2tcoumbpYWII/0m4gjf1VYvPrwWrb8nH+vGGvoetw65jhOGN9h24Y1lieQjMwptOqckzO6B9p1rWqvkX7csSffdA8GZUhHqTsMqEcix3G56q1D0yrLUmD+9CjKHXEIKHDUcL0htNQnNA+L2Zgg81kcgQ6dL3XbXhlW2hDMUJsxn3FEvWCnvZNyM1+Yh84j4pFtFRXecQ+s6ssrRJbVx4WOQi1OpwzgpPLwbGgq/p9JHK5vHluflxaaFMlbnSa1coAE89o7CBE63ZROCjXTB6WPI6FnoNsOudAL4ZstX7BRDYa+/9INpP7pR0nm8Z37Ivh2nPNn8/MNOcpdESiSQ4huNNQwXmDQjTqAESnu5hOmIJKr+apXUEcTpe35Ky01nR1vHClz5Lf3+kz5VMYs+WfsHfOt9Y+mHOt4615Uo9NrjnacuvIyTkXsi0y5ULiLLloXsfR50L3cvpsaKQxH71DeyUjcYegZCVG6zI7KjbnSP+OlzEzNnwZM2RJzJky1+BdGStDuZKvksKerV9d6RLUWlmaxp4tXab75E1XJNa8aRp73nTVJuct+tKxa9QnXGLdiGfQvdu070b/f+qkYNW1u+LIzoNchaH6nzPIwq5Stqv1LE7JOsUhD9Uan3iAomDe1Cxi0GtJTXpSXbHdqu0vvr5VF1yEGWpu1AAadYByuWlwd9XZJCb5KAuvrkZ7palwl47LouXiyi1GWKptmn/0TzuEC8GgZdEIwkUfY9+4cDVR4hxFIkxTBlfM8EJp5pVuoRidCg8pFGH+NPgThhcKXdZ0y8T0NMqQIoHsOoqrvTbuYFavR2gA/qm41MP7uW1KrmTVv45REa8YBHEVmKKFsJNr05ymd1mzoZRK1CSR7jKcoTJa4m3eUV7Gd9GCmG6T21hxupo2r+x8WN+i5Wl6sS032xJXGa1vE2EFQTamtvwPZkqZD+gkCFEFXMyY3GK7SKnVMS33ieb2hAGC7Hjp3SfSliW5A7V6apHOs9QRiIqv3ahfo/UmwWDFRXoVEbdC/mXD9PuIVtHiid2VMYF0N4Qo9oPjOFrl0bqgGOx7/BNzeLl+/P3/AM/SJhPA6wAA + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703160141526_forum_relations.Designer.cs b/Project-Unite/Migrations/201703160141526_forum_relations.Designer.cs new file mode 100644 index 0000000..58ee05d --- /dev/null +++ b/Project-Unite/Migrations/201703160141526_forum_relations.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class forum_relations : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(forum_relations)); + + string IMigrationMetadata.Id + { + get { return "201703160141526_forum_relations"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703160141526_forum_relations.cs b/Project-Unite/Migrations/201703160141526_forum_relations.cs new file mode 100644 index 0000000..7497b1d --- /dev/null +++ b/Project-Unite/Migrations/201703160141526_forum_relations.cs @@ -0,0 +1,26 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class forum_relations : DbMigration + { + public override void Up() + { + AddColumn("dbo.ForumCategories", "Name", c => c.String()); + AddColumn("dbo.ForumCategories", "Description", c => c.String()); + AddColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id"); + AddForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + } + + public override void Down() + { + DropForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id" }); + DropColumn("dbo.ForumTopics", "ForumCategory_Id"); + DropColumn("dbo.ForumCategories", "Description"); + DropColumn("dbo.ForumCategories", "Name"); + } + } +} diff --git a/Project-Unite/Migrations/201703160141526_forum_relations.resx b/Project-Unite/Migrations/201703160141526_forum_relations.resx new file mode 100644 index 0000000..668bc54 --- /dev/null +++ b/Project-Unite/Migrations/201703160141526_forum_relations.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161150361_voting-system-forums.Designer.cs b/Project-Unite/Migrations/201703161150361_voting-system-forums.Designer.cs new file mode 100644 index 0000000..759e235 --- /dev/null +++ b/Project-Unite/Migrations/201703161150361_voting-system-forums.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class votingsystemforums : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(votingsystemforums)); + + string IMigrationMetadata.Id + { + get { return "201703161150361_voting-system-forums"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161150361_voting-system-forums.cs b/Project-Unite/Migrations/201703161150361_voting-system-forums.cs new file mode 100644 index 0000000..62240fb --- /dev/null +++ b/Project-Unite/Migrations/201703161150361_voting-system-forums.cs @@ -0,0 +1,61 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class votingsystemforums : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.ForumPostEdits", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + UserId = c.String(), + EditReason = c.String(), + PreviousState = c.String(), + EditedAt = c.DateTime(nullable: false), + ForumPost_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumPosts", t => t.ForumPost_Id) + .Index(t => t.ForumPost_Id); + + CreateTable( + "dbo.Likes", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Post_Id = c.String(maxLength: 128), + User_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumPosts", t => t.Post_Id) + .ForeignKey("dbo.AspNetUsers", t => t.User_Id) + .Index(t => t.Post_Id) + .Index(t => t.User_Id); + + AddColumn("dbo.ForumTopics", "Votes", c => c.Int(nullable: false)); + AddColumn("dbo.ForumTopics", "StartedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.ForumPosts", "PostedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.AspNetRoles", "CanDeleteForumCategories", c => c.Boolean()); + } + + public override void Down() + { + DropForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers"); + DropForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts"); + DropForeignKey("dbo.ForumPostEdits", "ForumPost_Id", "dbo.ForumPosts"); + DropIndex("dbo.Likes", new[] { "User_Id" }); + DropIndex("dbo.Likes", new[] { "Post_Id" }); + DropIndex("dbo.ForumPostEdits", new[] { "ForumPost_Id" }); + DropColumn("dbo.AspNetRoles", "CanDeleteForumCategories"); + DropColumn("dbo.ForumPosts", "PostedAt"); + DropColumn("dbo.ForumTopics", "StartedAt"); + DropColumn("dbo.ForumTopics", "Votes"); + DropTable("dbo.Likes"); + DropTable("dbo.ForumPostEdits"); + } + } +} diff --git a/Project-Unite/Migrations/201703161150361_voting-system-forums.resx b/Project-Unite/Migrations/201703161150361_voting-system-forums.resx new file mode 100644 index 0000000..e4a408c --- /dev/null +++ b/Project-Unite/Migrations/201703161150361_voting-system-forums.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161217271_candeleteforumcategories.Designer.cs b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.Designer.cs new file mode 100644 index 0000000..fd0f2d0 --- /dev/null +++ b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class candeleteforumcategories : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(candeleteforumcategories)); + + string IMigrationMetadata.Id + { + get { return "201703161217271_candeleteforumcategories"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161217271_candeleteforumcategories.cs b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.cs new file mode 100644 index 0000000..f53ab67 --- /dev/null +++ b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class candeleteforumcategories : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161217271_candeleteforumcategories.resx b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.resx new file mode 100644 index 0000000..e4a408c --- /dev/null +++ b/Project-Unite/Migrations/201703161217271_candeleteforumcategories.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161328360_more-acl-stuff.Designer.cs b/Project-Unite/Migrations/201703161328360_more-acl-stuff.Designer.cs new file mode 100644 index 0000000..b225af9 --- /dev/null +++ b/Project-Unite/Migrations/201703161328360_more-acl-stuff.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class moreaclstuff : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(moreaclstuff)); + + string IMigrationMetadata.Id + { + get { return "201703161328360_more-acl-stuff"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161328360_more-acl-stuff.cs b/Project-Unite/Migrations/201703161328360_more-acl-stuff.cs new file mode 100644 index 0000000..51b335d --- /dev/null +++ b/Project-Unite/Migrations/201703161328360_more-acl-stuff.cs @@ -0,0 +1,34 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class moreaclstuff : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.ACLForumPermissions", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + RoleId = c.String(), + CanSee = c.Boolean(nullable: false), + CanReply = c.Boolean(nullable: false), + CanPost = c.Boolean(nullable: false), + ForumCategory_Id = c.String(maxLength: 128), + }) + .PrimaryKey(t => t.Id) + .ForeignKey("dbo.ForumCategories", t => t.ForumCategory_Id) + .Index(t => t.ForumCategory_Id); + + } + + public override void Down() + { + DropForeignKey("dbo.ACLForumPermissions", "ForumCategory_Id", "dbo.ForumCategories"); + DropIndex("dbo.ACLForumPermissions", new[] { "ForumCategory_Id" }); + DropTable("dbo.ACLForumPermissions"); + } + } +} diff --git a/Project-Unite/Migrations/201703161328360_more-acl-stuff.resx b/Project-Unite/Migrations/201703161328360_more-acl-stuff.resx new file mode 100644 index 0000000..821f4ce --- /dev/null +++ b/Project-Unite/Migrations/201703161328360_more-acl-stuff.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161505425_relationfix.Designer.cs b/Project-Unite/Migrations/201703161505425_relationfix.Designer.cs new file mode 100644 index 0000000..8b180e9 --- /dev/null +++ b/Project-Unite/Migrations/201703161505425_relationfix.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class relationfix : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(relationfix)); + + string IMigrationMetadata.Id + { + get { return "201703161505425_relationfix"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161505425_relationfix.cs b/Project-Unite/Migrations/201703161505425_relationfix.cs new file mode 100644 index 0000000..8786879 --- /dev/null +++ b/Project-Unite/Migrations/201703161505425_relationfix.cs @@ -0,0 +1,96 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class relationfix : DbMigration + { + public override void Up() + { + DropForeignKey("dbo.ForumCategories", "ForumCategory_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ForumPosts", "ForumTopic_Id", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumPollVotes", "ForumPollOption_Id", "dbo.ForumPollOptions"); + DropForeignKey("dbo.ForumPollOptions", "ForumPoll_Id", "dbo.ForumPolls"); + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id" }); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id" }); + DropIndex("dbo.ForumPosts", new[] { "ForumTopic_Id" }); + DropIndex("dbo.ForumPollOptions", new[] { "ForumPoll_Id" }); + DropIndex("dbo.ForumPollVotes", new[] { "ForumPollOption_Id" }); + RenameColumn(table: "dbo.Likes", name: "Post_Id", newName: "ForumPost_Id1"); + RenameIndex(table: "dbo.Likes", name: "IX_Post_Id", newName: "IX_ForumPost_Id1"); + AddColumn("dbo.ForumCategories", "ForumCategory_Id1", c => c.String(maxLength: 128)); + AddColumn("dbo.ForumTopics", "ForumCategory_Id1", c => c.String(maxLength: 128)); + AddColumn("dbo.ForumPosts", "ForumTopic_Id1", c => c.String(maxLength: 128)); + AddColumn("dbo.Likes", "ForumPost_Id", c => c.String()); + AddColumn("dbo.ForumPollOptions", "ForumPoll_Id1", c => c.String(maxLength: 128)); + AddColumn("dbo.ForumPollVotes", "ForumPollOption_Id1", c => c.String(maxLength: 128)); + AddColumn("dbo.ForumPolls", "ForumTopic_Id", c => c.String()); + AlterColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String()); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String()); + AlterColumn("dbo.ForumPosts", "ForumTopic_Id", c => c.String()); + AlterColumn("dbo.ForumPollOptions", "ForumPoll_Id", c => c.String()); + AlterColumn("dbo.ForumPollVotes", "ForumPollOption_Id", c => c.String()); + CreateIndex("dbo.ForumCategories", "ForumCategory_Id1"); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id1"); + CreateIndex("dbo.ForumPosts", "ForumTopic_Id1"); + CreateIndex("dbo.ForumPollOptions", "ForumPoll_Id1"); + CreateIndex("dbo.ForumPollVotes", "ForumPollOption_Id1"); + AddForeignKey("dbo.ForumCategories", "ForumCategory_Id1", "dbo.ForumCategories", "Id"); + AddForeignKey("dbo.ForumTopics", "ForumCategory_Id1", "dbo.ForumCategories", "Id"); + AddForeignKey("dbo.ForumPosts", "ForumTopic_Id1", "dbo.ForumTopics", "Id"); + AddForeignKey("dbo.ForumPollVotes", "ForumPollOption_Id1", "dbo.ForumPollOptions", "Id"); + AddForeignKey("dbo.ForumPollOptions", "ForumPoll_Id1", "dbo.ForumPolls", "Id"); + DropColumn("dbo.ForumCategories", "ParentId"); + DropColumn("dbo.ForumTopics", "CategoryId"); + DropColumn("dbo.ForumPosts", "TopicId"); + DropColumn("dbo.ForumPollOptions", "PollId"); + DropColumn("dbo.ForumPollVotes", "PollOptionId"); + DropColumn("dbo.ForumPolls", "TopicId"); + } + + public override void Down() + { + AddColumn("dbo.ForumPolls", "TopicId", c => c.String()); + AddColumn("dbo.ForumPollVotes", "PollOptionId", c => c.String()); + AddColumn("dbo.ForumPollOptions", "PollId", c => c.String()); + AddColumn("dbo.ForumPosts", "TopicId", c => c.String()); + AddColumn("dbo.ForumTopics", "CategoryId", c => c.String()); + AddColumn("dbo.ForumCategories", "ParentId", c => c.String()); + DropForeignKey("dbo.ForumPollOptions", "ForumPoll_Id1", "dbo.ForumPolls"); + DropForeignKey("dbo.ForumPollVotes", "ForumPollOption_Id1", "dbo.ForumPollOptions"); + DropForeignKey("dbo.ForumPosts", "ForumTopic_Id1", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumTopics", "ForumCategory_Id1", "dbo.ForumCategories"); + DropForeignKey("dbo.ForumCategories", "ForumCategory_Id1", "dbo.ForumCategories"); + DropIndex("dbo.ForumPollVotes", new[] { "ForumPollOption_Id1" }); + DropIndex("dbo.ForumPollOptions", new[] { "ForumPoll_Id1" }); + DropIndex("dbo.ForumPosts", new[] { "ForumTopic_Id1" }); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id1" }); + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id1" }); + AlterColumn("dbo.ForumPollVotes", "ForumPollOption_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPollOptions", "ForumPoll_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPosts", "ForumTopic_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String(maxLength: 128)); + DropColumn("dbo.ForumPolls", "ForumTopic_Id"); + DropColumn("dbo.ForumPollVotes", "ForumPollOption_Id1"); + DropColumn("dbo.ForumPollOptions", "ForumPoll_Id1"); + DropColumn("dbo.Likes", "ForumPost_Id"); + DropColumn("dbo.ForumPosts", "ForumTopic_Id1"); + DropColumn("dbo.ForumTopics", "ForumCategory_Id1"); + DropColumn("dbo.ForumCategories", "ForumCategory_Id1"); + RenameIndex(table: "dbo.Likes", name: "IX_ForumPost_Id1", newName: "IX_Post_Id"); + RenameColumn(table: "dbo.Likes", name: "ForumPost_Id1", newName: "Post_Id"); + CreateIndex("dbo.ForumPollVotes", "ForumPollOption_Id"); + CreateIndex("dbo.ForumPollOptions", "ForumPoll_Id"); + CreateIndex("dbo.ForumPosts", "ForumTopic_Id"); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id"); + CreateIndex("dbo.ForumCategories", "ForumCategory_Id"); + AddForeignKey("dbo.ForumPollOptions", "ForumPoll_Id", "dbo.ForumPolls", "Id"); + AddForeignKey("dbo.ForumPollVotes", "ForumPollOption_Id", "dbo.ForumPollOptions", "Id"); + AddForeignKey("dbo.ForumPosts", "ForumTopic_Id", "dbo.ForumTopics", "Id"); + AddForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + AddForeignKey("dbo.ForumCategories", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161505425_relationfix.resx b/Project-Unite/Migrations/201703161505425_relationfix.resx new file mode 100644 index 0000000..4fd05dd --- /dev/null +++ b/Project-Unite/Migrations/201703161505425_relationfix.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161515127_mistake.Designer.cs b/Project-Unite/Migrations/201703161515127_mistake.Designer.cs new file mode 100644 index 0000000..9bdbac3 --- /dev/null +++ b/Project-Unite/Migrations/201703161515127_mistake.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class mistake : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(mistake)); + + string IMigrationMetadata.Id + { + get { return "201703161515127_mistake"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161515127_mistake.cs b/Project-Unite/Migrations/201703161515127_mistake.cs new file mode 100644 index 0000000..898605f --- /dev/null +++ b/Project-Unite/Migrations/201703161515127_mistake.cs @@ -0,0 +1,78 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class mistake : DbMigration + { + public override void Up() + { + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id1" }); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id1" }); + DropIndex("dbo.ForumPosts", new[] { "ForumTopic_Id1" }); + DropIndex("dbo.Likes", new[] { "ForumPost_Id1" }); + DropIndex("dbo.ForumPollOptions", new[] { "ForumPoll_Id1" }); + DropIndex("dbo.ForumPollVotes", new[] { "ForumPollOption_Id1" }); + DropColumn("dbo.ForumCategories", "ForumCategory_Id"); + DropColumn("dbo.ForumTopics", "ForumCategory_Id"); + DropColumn("dbo.ForumPosts", "ForumTopic_Id"); + DropColumn("dbo.Likes", "ForumPost_Id"); + DropColumn("dbo.ForumPollOptions", "ForumPoll_Id"); + DropColumn("dbo.ForumPollVotes", "ForumPollOption_Id"); + RenameColumn(table: "dbo.ForumCategories", name: "ForumCategory_Id1", newName: "ForumCategory_Id"); + RenameColumn(table: "dbo.ForumTopics", name: "ForumCategory_Id1", newName: "ForumCategory_Id"); + RenameColumn(table: "dbo.ForumPosts", name: "ForumTopic_Id1", newName: "ForumTopic_Id"); + RenameColumn(table: "dbo.Likes", name: "ForumPost_Id1", newName: "ForumPost_Id"); + RenameColumn(table: "dbo.ForumPollVotes", name: "ForumPollOption_Id1", newName: "ForumPollOption_Id"); + RenameColumn(table: "dbo.ForumPollOptions", name: "ForumPoll_Id1", newName: "ForumPoll_Id"); + AlterColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPosts", "ForumTopic_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.Likes", "ForumPost_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPollOptions", "ForumPoll_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPollVotes", "ForumPollOption_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumCategories", "ForumCategory_Id"); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id"); + CreateIndex("dbo.ForumPosts", "ForumTopic_Id"); + CreateIndex("dbo.Likes", "ForumPost_Id"); + CreateIndex("dbo.ForumPollOptions", "ForumPoll_Id"); + CreateIndex("dbo.ForumPollVotes", "ForumPollOption_Id"); + DropColumn("dbo.ForumPolls", "ForumTopic_Id"); + } + + public override void Down() + { + AddColumn("dbo.ForumPolls", "ForumTopic_Id", c => c.String()); + DropIndex("dbo.ForumPollVotes", new[] { "ForumPollOption_Id" }); + DropIndex("dbo.ForumPollOptions", new[] { "ForumPoll_Id" }); + DropIndex("dbo.Likes", new[] { "ForumPost_Id" }); + DropIndex("dbo.ForumPosts", new[] { "ForumTopic_Id" }); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id" }); + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id" }); + AlterColumn("dbo.ForumPollVotes", "ForumPollOption_Id", c => c.String()); + AlterColumn("dbo.ForumPollOptions", "ForumPoll_Id", c => c.String()); + AlterColumn("dbo.Likes", "ForumPost_Id", c => c.String()); + AlterColumn("dbo.ForumPosts", "ForumTopic_Id", c => c.String()); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String()); + AlterColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String()); + RenameColumn(table: "dbo.ForumPollOptions", name: "ForumPoll_Id", newName: "ForumPoll_Id1"); + RenameColumn(table: "dbo.ForumPollVotes", name: "ForumPollOption_Id", newName: "ForumPollOption_Id1"); + RenameColumn(table: "dbo.Likes", name: "ForumPost_Id", newName: "ForumPost_Id1"); + RenameColumn(table: "dbo.ForumPosts", name: "ForumTopic_Id", newName: "ForumTopic_Id1"); + RenameColumn(table: "dbo.ForumTopics", name: "ForumCategory_Id", newName: "ForumCategory_Id1"); + RenameColumn(table: "dbo.ForumCategories", name: "ForumCategory_Id", newName: "ForumCategory_Id1"); + AddColumn("dbo.ForumPollVotes", "ForumPollOption_Id", c => c.String()); + AddColumn("dbo.ForumPollOptions", "ForumPoll_Id", c => c.String()); + AddColumn("dbo.Likes", "ForumPost_Id", c => c.String()); + AddColumn("dbo.ForumPosts", "ForumTopic_Id", c => c.String()); + AddColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String()); + AddColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String()); + CreateIndex("dbo.ForumPollVotes", "ForumPollOption_Id1"); + CreateIndex("dbo.ForumPollOptions", "ForumPoll_Id1"); + CreateIndex("dbo.Likes", "ForumPost_Id1"); + CreateIndex("dbo.ForumPosts", "ForumTopic_Id1"); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id1"); + CreateIndex("dbo.ForumCategories", "ForumCategory_Id1"); + } + } +} diff --git a/Project-Unite/Migrations/201703161515127_mistake.resx b/Project-Unite/Migrations/201703161515127_mistake.resx new file mode 100644 index 0000000..bbbf624 --- /dev/null +++ b/Project-Unite/Migrations/201703161515127_mistake.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161536324_morerelationfix.Designer.cs b/Project-Unite/Migrations/201703161536324_morerelationfix.Designer.cs new file mode 100644 index 0000000..9fc5508 --- /dev/null +++ b/Project-Unite/Migrations/201703161536324_morerelationfix.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class morerelationfix : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(morerelationfix)); + + string IMigrationMetadata.Id + { + get { return "201703161536324_morerelationfix"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161536324_morerelationfix.cs b/Project-Unite/Migrations/201703161536324_morerelationfix.cs new file mode 100644 index 0000000..611be32 --- /dev/null +++ b/Project-Unite/Migrations/201703161536324_morerelationfix.cs @@ -0,0 +1,54 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class morerelationfix : DbMigration + { + public override void Up() + { + RenameColumn(table: "dbo.ForumCategories", name: "ForumCategory_Id", newName: "Parent_Id"); + RenameColumn(table: "dbo.ACLForumPermissions", name: "ForumCategory_Id", newName: "Parent_Id"); + RenameColumn(table: "dbo.ForumTopics", name: "ForumCategory_Id", newName: "Parent_Id"); + RenameColumn(table: "dbo.ForumPosts", name: "ForumTopic_Id", newName: "Parent_Id"); + RenameColumn(table: "dbo.ForumPostEdits", name: "ForumPost_Id", newName: "Parent_Id"); + RenameColumn(table: "dbo.Likes", name: "ForumPost_Id", newName: "Post_Id"); + RenameColumn(table: "dbo.ForumPollVotes", name: "ForumPollOption_Id", newName: "Option_Id"); + RenameColumn(table: "dbo.ForumPollOptions", name: "ForumPoll_Id", newName: "Poll_Id"); + RenameIndex(table: "dbo.ForumCategories", name: "IX_ForumCategory_Id", newName: "IX_Parent_Id"); + RenameIndex(table: "dbo.ACLForumPermissions", name: "IX_ForumCategory_Id", newName: "IX_Parent_Id"); + RenameIndex(table: "dbo.ForumTopics", name: "IX_ForumCategory_Id", newName: "IX_Parent_Id"); + RenameIndex(table: "dbo.ForumPosts", name: "IX_ForumTopic_Id", newName: "IX_Parent_Id"); + RenameIndex(table: "dbo.ForumPostEdits", name: "IX_ForumPost_Id", newName: "IX_Parent_Id"); + RenameIndex(table: "dbo.Likes", name: "IX_ForumPost_Id", newName: "IX_Post_Id"); + RenameIndex(table: "dbo.ForumPollOptions", name: "IX_ForumPoll_Id", newName: "IX_Poll_Id"); + RenameIndex(table: "dbo.ForumPollVotes", name: "IX_ForumPollOption_Id", newName: "IX_Option_Id"); + AddColumn("dbo.ForumPolls", "Parent_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumPolls", "Parent_Id"); + AddForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics", "Id"); + } + + public override void Down() + { + DropForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics"); + DropIndex("dbo.ForumPolls", new[] { "Parent_Id" }); + DropColumn("dbo.ForumPolls", "Parent_Id"); + RenameIndex(table: "dbo.ForumPollVotes", name: "IX_Option_Id", newName: "IX_ForumPollOption_Id"); + RenameIndex(table: "dbo.ForumPollOptions", name: "IX_Poll_Id", newName: "IX_ForumPoll_Id"); + RenameIndex(table: "dbo.Likes", name: "IX_Post_Id", newName: "IX_ForumPost_Id"); + RenameIndex(table: "dbo.ForumPostEdits", name: "IX_Parent_Id", newName: "IX_ForumPost_Id"); + RenameIndex(table: "dbo.ForumPosts", name: "IX_Parent_Id", newName: "IX_ForumTopic_Id"); + RenameIndex(table: "dbo.ForumTopics", name: "IX_Parent_Id", newName: "IX_ForumCategory_Id"); + RenameIndex(table: "dbo.ACLForumPermissions", name: "IX_Parent_Id", newName: "IX_ForumCategory_Id"); + RenameIndex(table: "dbo.ForumCategories", name: "IX_Parent_Id", newName: "IX_ForumCategory_Id"); + RenameColumn(table: "dbo.ForumPollOptions", name: "Poll_Id", newName: "ForumPoll_Id"); + RenameColumn(table: "dbo.ForumPollVotes", name: "Option_Id", newName: "ForumPollOption_Id"); + RenameColumn(table: "dbo.Likes", name: "Post_Id", newName: "ForumPost_Id"); + RenameColumn(table: "dbo.ForumPostEdits", name: "Parent_Id", newName: "ForumPost_Id"); + RenameColumn(table: "dbo.ForumPosts", name: "Parent_Id", newName: "ForumTopic_Id"); + RenameColumn(table: "dbo.ForumTopics", name: "Parent_Id", newName: "ForumCategory_Id"); + RenameColumn(table: "dbo.ACLForumPermissions", name: "Parent_Id", newName: "ForumCategory_Id"); + RenameColumn(table: "dbo.ForumCategories", name: "Parent_Id", newName: "ForumCategory_Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161536324_morerelationfix.resx b/Project-Unite/Migrations/201703161536324_morerelationfix.resx new file mode 100644 index 0000000..34818ea --- /dev/null +++ b/Project-Unite/Migrations/201703161536324_morerelationfix.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161607158_cdelete.Designer.cs b/Project-Unite/Migrations/201703161607158_cdelete.Designer.cs new file mode 100644 index 0000000..faa88d6 --- /dev/null +++ b/Project-Unite/Migrations/201703161607158_cdelete.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class cdelete : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(cdelete)); + + string IMigrationMetadata.Id + { + get { return "201703161607158_cdelete"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161607158_cdelete.cs b/Project-Unite/Migrations/201703161607158_cdelete.cs new file mode 100644 index 0000000..506cb16 --- /dev/null +++ b/Project-Unite/Migrations/201703161607158_cdelete.cs @@ -0,0 +1,116 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class cdelete : DbMigration + { + public override void Up() + { + //Cannot insert the value NULL into column 'Parent_Id', table 'aspnet-Project-Unite-20170315114859.dbo.ForumCategories'; column does not allow nulls. UPDATE fails. + //The statement has been terminated. + + + DropForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ForumPosts", "Parent_Id", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumPostEdits", "Parent_Id", "dbo.ForumPosts"); + DropForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts"); + DropForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers"); + DropForeignKey("dbo.ForumPollOptions", "Poll_Id", "dbo.ForumPolls"); + DropForeignKey("dbo.ForumPollVotes", "Option_Id", "dbo.ForumPollOptions"); + DropForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics"); + DropIndex("dbo.ForumCategories", new[] { "Parent_Id" }); + DropIndex("dbo.ACLForumPermissions", new[] { "Parent_Id" }); + DropIndex("dbo.ForumTopics", new[] { "Parent_Id" }); + DropIndex("dbo.ForumPosts", new[] { "Parent_Id" }); + DropIndex("dbo.ForumPostEdits", new[] { "Parent_Id" }); + DropIndex("dbo.Likes", new[] { "Post_Id" }); + DropIndex("dbo.Likes", new[] { "User_Id" }); + DropIndex("dbo.ForumPollOptions", new[] { "Poll_Id" }); + DropIndex("dbo.ForumPolls", new[] { "Parent_Id" }); + DropIndex("dbo.ForumPollVotes", new[] { "Option_Id" }); + AlterColumn("dbo.ForumCategories", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ACLForumPermissions", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumTopics", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumPosts", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumPostEdits", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.Likes", "Post_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.Likes", "User_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumPollOptions", "Poll_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumPolls", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AlterColumn("dbo.ForumPollVotes", "Option_Id", c => c.String(nullable: false, maxLength: 128)); + CreateIndex("dbo.ForumCategories", "Parent_Id"); + CreateIndex("dbo.ACLForumPermissions", "Parent_Id"); + CreateIndex("dbo.ForumTopics", "Parent_Id"); + CreateIndex("dbo.ForumPosts", "Parent_Id"); + CreateIndex("dbo.ForumPostEdits", "Parent_Id"); + CreateIndex("dbo.Likes", "Post_Id"); + CreateIndex("dbo.Likes", "User_Id"); + CreateIndex("dbo.ForumPollOptions", "Poll_Id"); + CreateIndex("dbo.ForumPolls", "Parent_Id"); + CreateIndex("dbo.ForumPollVotes", "Option_Id"); + AddForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPosts", "Parent_Id", "dbo.ForumTopics", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPostEdits", "Parent_Id", "dbo.ForumPosts", "Id", cascadeDelete: true); + AddForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts", "Id", cascadeDelete: true); + AddForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPollOptions", "Poll_Id", "dbo.ForumPolls", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPollVotes", "Option_Id", "dbo.ForumPollOptions", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics", "Id", cascadeDelete: true); + } + + public override void Down() + { + DropForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumPollVotes", "Option_Id", "dbo.ForumPollOptions"); + DropForeignKey("dbo.ForumPollOptions", "Poll_Id", "dbo.ForumPolls"); + DropForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers"); + DropForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts"); + DropForeignKey("dbo.ForumPostEdits", "Parent_Id", "dbo.ForumPosts"); + DropForeignKey("dbo.ForumPosts", "Parent_Id", "dbo.ForumTopics"); + DropForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumPollVotes", new[] { "Option_Id" }); + DropIndex("dbo.ForumPolls", new[] { "Parent_Id" }); + DropIndex("dbo.ForumPollOptions", new[] { "Poll_Id" }); + DropIndex("dbo.Likes", new[] { "User_Id" }); + DropIndex("dbo.Likes", new[] { "Post_Id" }); + DropIndex("dbo.ForumPostEdits", new[] { "Parent_Id" }); + DropIndex("dbo.ForumPosts", new[] { "Parent_Id" }); + DropIndex("dbo.ForumTopics", new[] { "Parent_Id" }); + DropIndex("dbo.ACLForumPermissions", new[] { "Parent_Id" }); + DropIndex("dbo.ForumCategories", new[] { "Parent_Id" }); + AlterColumn("dbo.ForumPollVotes", "Option_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPolls", "Parent_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPollOptions", "Poll_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.Likes", "User_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.Likes", "Post_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPostEdits", "Parent_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumPosts", "Parent_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumTopics", "Parent_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ACLForumPermissions", "Parent_Id", c => c.String(maxLength: 128)); + AlterColumn("dbo.ForumCategories", "Parent_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumPollVotes", "Option_Id"); + CreateIndex("dbo.ForumPolls", "Parent_Id"); + CreateIndex("dbo.ForumPollOptions", "Poll_Id"); + CreateIndex("dbo.Likes", "User_Id"); + CreateIndex("dbo.Likes", "Post_Id"); + CreateIndex("dbo.ForumPostEdits", "Parent_Id"); + CreateIndex("dbo.ForumPosts", "Parent_Id"); + CreateIndex("dbo.ForumTopics", "Parent_Id"); + CreateIndex("dbo.ACLForumPermissions", "Parent_Id"); + CreateIndex("dbo.ForumCategories", "Parent_Id"); + AddForeignKey("dbo.ForumPolls", "Parent_Id", "dbo.ForumTopics", "Id"); + AddForeignKey("dbo.ForumPollVotes", "Option_Id", "dbo.ForumPollOptions", "Id"); + AddForeignKey("dbo.ForumPollOptions", "Poll_Id", "dbo.ForumPolls", "Id"); + AddForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers", "Id"); + AddForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts", "Id"); + AddForeignKey("dbo.ForumPostEdits", "Parent_Id", "dbo.ForumPosts", "Id"); + AddForeignKey("dbo.ForumPosts", "Parent_Id", "dbo.ForumTopics", "Id"); + AddForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories", "Id"); + AddForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories", "Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161607158_cdelete.resx b/Project-Unite/Migrations/201703161607158_cdelete.resx new file mode 100644 index 0000000..9576520 --- /dev/null +++ b/Project-Unite/Migrations/201703161607158_cdelete.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161645354_fuck..Designer.cs b/Project-Unite/Migrations/201703161645354_fuck..Designer.cs new file mode 100644 index 0000000..822901d --- /dev/null +++ b/Project-Unite/Migrations/201703161645354_fuck..Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class fuck : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(fuck)); + + string IMigrationMetadata.Id + { + get { return "201703161645354_fuck."; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161645354_fuck..cs b/Project-Unite/Migrations/201703161645354_fuck..cs new file mode 100644 index 0000000..289b9b5 --- /dev/null +++ b/Project-Unite/Migrations/201703161645354_fuck..cs @@ -0,0 +1,22 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class fuck : DbMigration + { + public override void Up() + { + DropIndex("dbo.ForumCategories", new[] { "Parent_Id" }); + AlterColumn("dbo.ForumCategories", "Parent_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumCategories", "Parent_Id"); + } + + public override void Down() + { + DropIndex("dbo.ForumCategories", new[] { "Parent_Id" }); + AlterColumn("dbo.ForumCategories", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + CreateIndex("dbo.ForumCategories", "Parent_Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161645354_fuck..resx b/Project-Unite/Migrations/201703161645354_fuck..resx new file mode 100644 index 0000000..55917ca --- /dev/null +++ b/Project-Unite/Migrations/201703161645354_fuck..resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1d3W7cOpK+X2DfodFXM4Mcd5zMCc4G9gycdnyOMUlsxMnZ3StD7qZtbdRSj6R24l3sk+3FPtK+wpIiJf4VKVJky92ZIEDg5s/HYrFIlopk1f/9z/8e/fXbKps8oLJKi/x4enjwfDpB+aJYpvnd8XRT3/70y/Svf/nnfzp6u1x9m/zelntJyuGaeXU8va/r9evZrFrco1VSHazSRVlUxW19sChWs2RZzF48f/4vs8PDGcIQU4w1mRx93OR1ukLND/xzXuQLtK43Sfa+WKKsYuk456pBnXxIVqhaJwt0PL0si/9Ai/r6c57W6ICWn05OsjTBtFyh7HY6SfK8qJMaU/r6c4Wu6rLI767WOCHJPj2uES53m2QVYj14zYu7dub5C9KZGa/YQi02VV2sPAEPXzLuzNTqg3g87biH+fcW87l+JL1ueHg8PSvKzWqe1OiuKB+nE7XF1/OsJKVhPh9ItZ9NWJmfmjLPOvHAUkT+PZvMN1m9KdFxjjZ1mWS4wuYmSxd/Q4+fii8oP843WSaSiwnGeVICTsKtrFFZP35Et6wT58vpZCbXm6kVu2pCHdozLBBYuqeT98m3dyi/q++x3L/4ZTo5S7+hZZvCJAT3DE8GXKkuN/jnB0xwcpOhLn9mbZP8b2kV/+nUqr2RU1QtynRN5WXLbb1L8y+fyyx+Ox+Sh/SukUClxfl9mi1LhLv2EWVNgeo+XdOZLovjNS96Vharj0WmintX4vqq2JQLMjSFtdinpLxDtTuxlwmuVccltaWhh9S2R86konKVVmS6ViC9J/N3TUu83HXbO06ysZBGtbmkL+GfinW6gGluWmjyAVq1TJizUgmItqMZX1OtK63eZe/lVof4seb2LVFkLK3txlkJ50l+hbrF/U2BW01yb2Ixyke0zh4j4FwWVe0NM2QlC1wZ1KW3fw0ZNPv4ZB6m5DRVf8y2PsH7vahR1TZ7ntcvX3hDXNVJWaPlSSe9p3hz+5Su/Im52tyQwdr63D/Z1PdFOcIic15d1eniS/DycF6dYOHf5IvgBeu8+pxnaYXHKxzp16y4SbJQnMsiy7YxFIOVPHcFBNRCQRXFmTa8CVh0I5JtokzIgzUjsUCQYtShDVuZSc0fC/POrFFviuXj1hshYz5sizBOlbfLtP4Nr2SNGcQ2YUhB26QR8s0TRyzk+8XzLv2C4ElNcq7pTOKEdYkaNTzH+2uxZ81zXVjAFQ9aecIWFsLt4YsLqf1jgembkp8rNMbyQgbjI0qqEYxblyV6SIsN1rnw6jJKxyIvaS6z1Gc1M85WaMkbNGPJiuQ9UUmlH/PTTykcsn2ow69vLK4UkLXCTAHNVSggiTAFTU6Q1J2s11gSGlpo275mObn+D1nsNU/hqusizWvRVPDqz944b9Ji+/osFgNUbuWQQ1XRH5I6GaWl07RaZ8njKMdRZ3hIR2noX9FNlY6wUf97sak3N2iMcbp6xJ85q1G493aVpLYOvfj5VaxW5kV+m5arcJPRZVJVX4ty+VtS3W9/LNBiU+J9A2uDq/X2dc/7IkcfNqsbsh2N11a0ofn0tThLFvhj+m1OagXjvSsWX/C8e5sviV78uV7oarIjQBRyThYLVFVnWJjRcl5s8lrYxwaYvInW0DPLXeffYK1wniXpynD2K+s3121R4XgHLKGf7cDFfNXHd8VdajqmVlpoi5pJpSV6SWXFfEklYG6UspJmQpsCvXTSUkHq8PkSNUkErxkhm0L8vrt6dFKtP6D6oK19QHHPSoyJF+kvBxrss4lzZa5Dv3DVoV8e3ty+/OXnV8ny5as/o5c/j69Pm9YCgY1XeIVEvyKsYOJlbHmZ1DUqcz4CwTaXbenvZPhIo9s/Vict/Z5km9hNDZoNzSIQfzY0sLs/GxoycfJDuiRayay/RlsYwzuVb+XZd84plI09HaRu7pzdNUq7g6YL2YvizxaCuvuTBRZlsGh7Q8lX6p9q9e+9UTWuxDErdJZdsDuvw8552vo/rHdPc4vZYq7G7LScYbQDd00LamcYUr7pDEMu5Kvls1tPNhpJketWQgEahXzTqbFcKMaVC8KvobPlxzzZpYv459XJok4fgu9znWRZ8fU9Hrj0oajjoBGhnd8n+R2/GBh+H5VOgp4557MuGOcctHjEO4DFoMbD1y7PvGjFvCZBl5fhCwKp/WNReKprEj0zJd7mZJRFaAcbJI99nw2gGNKvgijSN3mTVIiND2FT+2XR0LUzK/68yIryN/RthGswaVE2xqgQE/c8yX9P0VeceptmA3YCHY5cOrn4mjPESICR6SOzPRfU5UhwMcg7r6oNepPksaDOLyOCNeeEEfHeb8KVmeZtDq5ZoTebNAs+QsJwb7LiLgIMPYzC6+D8MhrayXKV5hHxTtFDFDQyC8QXj2mUuXCKx7VG8XHJ5aj2fWIUMLLPxsIiD83idZNcktxU0RZOdhoWaWTjouFNJ9qgUsTIcGRXpA8/IgHGRcPkRZQWihlZ/GIOMcGLChZxeBuVJyJW3KElXxTneaw1jwoKUaFioJ3kRf64Sv8zGmCziH5pLitEG4qIcLGw+BIQFTAW2uc1sXtFo634msfEo68/Yy5OFDEaXPusNCaJLWY0QPrONCaJFDEa3PviISoHCV40MPreNyZ5FDEaHLnpF5m8yIiEwsjkDYHzPtOPf56/H2f5+2JbfuorpEwVAizN4nhfs2LczqznalZmoIiPjfmkqopF2lAlHnro/pfknr7NlxM3v1HcWqw4VGvO0sgVTUzV8fT5wcGhxs/eVrqzKcdW/qQyRei+nStmXy4mkh0cu3CqIRdIVtIdm/Jl0OFUnfQXTI+ckGNU4qdvnlSLZKkLPxaw5TDe6s4grGIAe4ZQOsgc2rjz0OL1aud5pz5XtfbR+HZV6SZ/Hu7JRONTf6CBneAhf91p6hfw1JN3hj7NdWcS4HZgVzljeN9gXId6HjsI6536sHRbnXWhDxgG4KZ/3wBjrQgReU8T8o6rwjpXmte6CpXmi3SdZE4cU2o7qmCECV07as4pWqOcdM6JJS4EGO9zzrq2lBHq41SAgLJXLa4CoD5x2TUBVd7WGASUXb4fRUBljj2BgMos2TsBpQcuruOvvGzaNfGUn1QZpJN+G48inBK7nkA2JX7svGhylxJWTUX2LxGo9kguKZ5Cnoeo1s5qtYtKPUid7lOlwa+dp2Qav73Z0zfgKqfGNHLzzJtp+hXQPWCaeC+3t3/g5X2Aee31xQEsBO8BO4zP03JRvLTZ20XwBifQRXoFeAAPwfcLzsP0JJwEjJKmbtoslIaLouPoKha76PiKiplLI2gpZk64NA6/wduKikIt1LhOjWugUtegT29IJvoGuSzEHWPHLRUz16uSQcCvUA2YuZvLXtw+Dhv7tJku4+k2WAgTsvP2APO9ykgk28lcgNidFhiH6ieuMMTGZ4Wi1sMeOOazU0Oh6mVPZXZgorNZVSd7cDRzDwQK2IQ8YFt/G1ZY9iXvAcsu8FlR6cLmNqztPmQZWL5VuUJawdxh2GNCMxTdo3vg+jgGcktYseAlRIxUIhS2xzRRl1TnU7WuT8A6pi3Uzqdo7qjSEo4rODDLEgxB55fjaZvjIRjANXC1tnCu/4Rtq8wD3KUbhMx8jOZ4kKb2o915+sQKPDrbPlM0T60GvliPyNwPydQOCftgH4NMx2IQZAz2CD5LdZ4Yjrx6Dr0EUtm2bem0fsy1rZ6avHAB64rDeZbPiZbQI6aK2NYQ++mTgAWpI9G51Cok/VyCDlV8jlWCuKQcgRi41HYmOpeYttDPJMCw72HaD2KRbIY3cIh1JM6yQpVqw7Kim5R7jMr+y4pkRu7jXcjW4rKteGwpLtuJ41bSt43A+/ZwXgjv8Y28MFh93ey+Oi+aD4d+XuiW3u3zQnKgYOGH0aDrbtKF+NJ9o7lwBzLiOjE7hEHSw3kLg4y2WndrLdQX9qnowh7IPuvB8wFMgu586izqM8K6mmGFvoB7gKvVNNK+0l5E7cx8Xd7RjMYwZglHM0Ow46P3yXqd5ndC8GOWMrmikY/nP135BwReUYzZQuKzapTsWqqLMrlDSi514H6WllV9mtTJTUIuCc+XK60YaNQ02C3aJmG7pT6WrV2jrUf+bh0W9EUqBkzCDOYMd3dFjMqNZ07Dhx1Qf0JCUydZUgLXwOdFtlnlZiO3uTa90C3WpynuCJJHChFIynDH6wL+ilhdoo5zNFMYq9nXtZHUDj9kAXESH8jwESxCgFXbX45cQLYjTO0Rh4hgOvYwo7RxTkWUNs0LhcU5VXBYqhcS/fpXgCAjPxWoJxFIUUGLs5bR05CBC5mh8nYEj2kpIoBBcTFjCEFBRRwh2QOrDQsqIbWJ7jg8pJ4IxFPdkXhcT4nLXaoPEo/sKWPxdB80Ht1TRuPpPmhthE8Zq011R2pjfIo4bdpuTXn6qRtnxkOGTNcJD9fdznyPNy9oLEkRhab4SEoFLBs8dfekhdrZ40lMczwdIDVw/e1ITntRVEQwXR41o4ghAkUkMd1DguQogJIYyVl+FOpSyVN3RiqpoTJYGJtbDv4yCFcLE70nYqTJsuH7CaLc+Bjw/dGHsJ2ZLUZ8kzR1Id1jXyBx36RtgSR41Ocx3SQUnuyx2/GobdJ2x5M9vtbFuGzS17qY4Y7HY6+JYDzVHakLriYCdYnuOGLwNBFKTPfQ5IX4aJIyL6R7rMo0BJq0JNMkTwwhipYGJuR57EFSoDNpC5JyPDgnRzOTmCdneVApxiyTiBQzBuEZOAqXcG9Bj1Imouu5HnYyPV6ZZDHTswdgAzSreR7rmB7STFrP9Gw/vU6fpTx1Z7Zp4EpC8J6tX6j037UdMHZZIxfiRUmbP0/2xGIRoTQwlr6T8mS8XxIgT/QmbZg8GTDMq48Ua0lefKwBosyYl2IAJfkLyxJAyoznJ7U7IBumazUBoqF7K/eWDBhiu0uF3ynF0xpr+Gl5LHNNd+l8sMHGjPDUR5RPPVYxRylkfMYamdhHvzzEjHKwwFI9VE0lyIykZyp5nqhSsBkNV8rdPQmlp2LxpLR5KBIgqXD9XVA0n2ikIm3TgVuz37a8W4sIj1oiWwHbVB+dsQ1LIiuMbarXFQI5NIlylUDO9MJVY5QoyGq2N7aRZjnTG5fHLQFweeZgXJhgIdcLmYcyUUB5hj8ei2cCIbIsf0we1gSC5bn+yDTACYRKczyv5ohhTrQbOmKmFy6Nd6Lg0UQvHCngiQIn5Q1A7QKfgLhd7gBkFgIFxGV53vNJe24GzKrep5PWVgyhUZR2DKW8r3G1V9iBy1ymF3q9mOzSNwBpuHvfi9hFTgEwuzxvVB44AYDlmd4ywq4uA5JhuCjtIA8wppQ3AFXwsQ0iC/kD0K3QAbg8HIeJaMN7FwdsG/BwVClKh4nogRKnhmMB4QOk2SwjSq43sgV2MKZRNuRMf73PCDoU0SYTWr6fbi1GcVFVazFvgJyxZyWgkBleGFpR1agu6matZPuv8TQQCLTAfwFedjqOGwgqZ3rjmkGHIKpRX4yLzmBsG/AQVCkQjIIq5fnRKgeEUamVc/0u5auhYdQL+mr+AHQr9CBcIF6MNuW0EoNa6IEfhK0FklHAtfwB6FboQbhKdBkFWMn1RrbADsLUws2oc1HNH4BuhR6Eq8SgUYCVXF+KrdhavjfdFqIDKLaSa8WdFznedYjbvuZ0v40PrVyPW5Qp/jRP6gI8eA61F/dYec8r8vfF7R+sp7KE7j/uid33g2b8+2Cw+G2Ztb0c3T2GagIr+9waVXD7DjrkB8zmN7ii4y+fl7ZCNa8XteSxtnqZ1eosTOec0yAylwqw60eBhsHkGX1QDpYxK11c9s4rEsepi+Hk1Gn1Qbu3yFjcn3k/ru1q+j+hBYan17XZkwtQr2e3UWQoWAQAJ27Oz1mNQ25+tGqaiZCjticfYqM/uj0aWs0Vnc9DNPsAm56bmThp8DW3G8Ns8K23HyMteNVzeNrFSro83wK4pXnQGzp+BCLC6GkOAfdoyKjHMpchoyVDhkz0TjaQRQ1ErCETna3tx5Dp/tdc19L+ddRnDd3Z9XMv107dk5zrfb2+UYW9q8HM09zF7cqoai7x9mxUJZ94fre6WSXPm9s2VgJO7wbvnhgi5igDTv72bKQl534+d267Sl43a23MBLz3DWQmA4k50oC3wh0Zac0Ln1qkM6+xlO5354WPecCTXPM13SGO9ppuVMwbn+oSjxaZTi7ZG6b2WfIBKXBw9fdsnqXNat8WeJ/k6S0iJw4kcPn0xfPDF9PJSZYmFfWVyJz9vVaDgjh5/zt8Sbz/oeVqplb39yFIUKpqKe1GetR4i31vjLDr+UNSLu6TUg+8HhBVvQX9wyr59kcRiUZOtwNJV6Yj4HVu9yJgCdu8yj4tBs15vkTfjqf/1VR9PTn/t+uu9rPJRYkl+fXk+eS/bYzXSTJFbtfEqs/6t1ey1b5sizCCrRM+CnVDYtJ4EsPd7wVhcLPBMIiRRRGgyVkWTWbJvZJB5ouPoqa5/4AJTvgoyBIv+nVKVk1fpNYJX4T5wP2NRQDjrviGy7Xogi8EhbveC0Fpne4FzFPmcG//dp/gKa8bWPZqxkedGtQjXwwh6JzyBa4i+yhN+rHHXklU+1IzghiIXvpiSJXsoy8Sgf9ocqqfC+yVeHZHQ0P4TOsGcBmeLkPpYXXHGHWrr8C9EgDRzWCr8dwN0XUbR4Mxdk3uajCGrsudDcawU4jOBiPgcX+DEcA6n4MRsESngxHgRK+DMfYZ6nvQMhNe/PxqEKjgKy/kM130PBiDfbLfwRh7v+h3MC5eFBbqDgaHYwEeBc3qiZN1UfEkOJw0wHXgcGMDdxrou3e2NZvkZxPyIZ3+fYMzPmFuKJuoMrNCNtEe131jbKNpd6b8K8K7DhaI5WVS16jMOXmRVH5nFSayRiW4EoxhSxV8CXrDDZIMwAmfm2T0+NwDalzafOoB5WEvPP3yp1AWW6UXezHK1+w4oj1IevSHDG7CY3KwBBSFffD1S8FuLRPweYsTNbTqiEYh+D7IXn12RdOFu9spgz7gm7qjjtwej1nsU2ruIDBAg1ScAgYiSW4A/3EOKuGLR3slnBHtzMJFqAGj19Uec6sfus3vyOAN+2wjnY732bb99Y77MoxyetG6MwS/mB3vhcgODMEFzxFJdVgYihWPKu6UMBZSIFHc92AwCvM3GIzDHQwGQ1GvgiEwsh/BECTqQTAEQXIaGA7UeQkMh2KOAUNlWvPMFwJocPYXAik6+AvFYd6kQmE6R36hQNxtVugoMs964WMXDUjwMxIOFg+Je1YLx4oGJHlQC4eLJ1aRBlF0lBdDxwjnu+APLwJBcRguebwLlwLmiC5oo1Gc2gWvd9R7WQyOx0GKAKM6qIswfcOBJDd0QRTJfudCoDQ3c+FgMZAAL3Ix4GJgaU7iwsFiICl+4EKhYuBort7CwWIgKd7cAomKByY6bAsnKhhJcXUVZFsyWc6E94Ci4VN3RiVT+jZfNmYm9c0aI5K8vTtQchpjNLkdh6k4nj4/ODjU+m9ApS/5XJH/pMF+RLeIWI7ThNzjqeoySXWvYJdlmi/SdZKB/VJKO9oMCds7XDXnFK1RTsyUxi67NGp9bN41oVgy+xgiPRO1S4vZCVVkgTnUHv9eML1gQk5LyJvOeVItkqU+rchzWBM1wNs4kSQo+/sQt36XYDspb7rnq/2QM+Hdm0YKS/4+5Mrsd2x35Un1tWUdRPGxJh9DmjqeKHUvYEBKaM72BApyl7M1YTL5ONtJeeLOvXZbiJrnKSIBNGH/RQbyxwVLitn52Rh6k/xQ5BoKnS2qKcq7EklHUfNGESD9kq5IE5C7FdGyvrfZjoC5BCf3uDf4FMIGxdXeG2Gj935NwsZyv0dhM0Uu33FhAyKA7o2sUffjBlGjmd+jpBmcxO+YoHGnnPsjXGOqXU8gRM7Kl8WN6ZgffU4ffD5f7dv+5HP7Zoipt7t/ysf61tuL7zzNA+meiFCWQSJEUr8fEdKdvu62CImuTiMN37aF6EK6/SvT0uZt05bgOMSx5Al2M2swKxi9wo4pU6JT1S2M5rbl63fh0YpMD83Zrmx5DHcsCYPc24INWr3RjiBh4suKa3r/qe9LyvgVBX1BfcdfdT0xuHbjkw5+tboV4XorexruXoMoXoE1+WLOoaH7CtMJv+YAn/ZRH8PH0+UNcUtD70v0RGHXmoROhbV2oUJQ43q5fgJE7RHuMMs09haOHwg3RD8x4HZYHBNTM2BsZXMr9NzK3BLNt7ZGivS3SD+7tYZoMoRPchwEQzUq6FKhlgBFolp/QDUYMVlrErC0a40CZezNstMIn7aZ4dXaNitjb5sZp33apmu2tWlaxN4yu+PvJqxcMzKJKy9hEdi2kEe7thZ72vJohepZ5pZovrU15ibXcSB7BrFvAOHBk93d22+4TYTC0N5huAunK7DqZgTEbtS3V+vdN1cc1b+/AzMsUQR1fjje9orOEvOGawpvGM4Y/aaRSUDM15G2IxvSxq8G+4vUcS38nKHv1qszJhumSjlN7eu2qiAAUfDCOy8EZ9N7bLjcEa2bolbCg4tFmOPwZQNogjtcS7AfsYjTUs2zdN2oxkjhh4Xc6Exp9Y5+pkDH51tniqRfaUxhudGZwnbVfp4Ap7xbZ4moMWgcoZlx1gNKlWE9gM7WttDxba0N2lmYbaV3XOV9NqiQxXN4d4XIccbuGs524neXq/RK6LqI3ZXCqVm6bDyLCCHcbnWGENq8eAyQooxZGGA0nMfqhM3gDaHQnGBGAHZbgA191l2LfRdYh6E1eJTVXIti1uUdzegnJEvAP7VoZUezj5uc+H+lv05Rld5xCBIvPkcLyZbZlTnPb4vWpKpQ1BZR3ni9R3WyTOrkpKzT22RB3LsQJxZpfjedNO40iQPiG7Q8zy829XpT4y6j1U0mfSUQ06yt/aOZRvMRszrE6AImMyUucy9y5pmE0X0GvEIzQBCbL3O0SsayJg5X7x47pA9F7gjE2NeZqj+h1TrDYNVFfpUQj2r+tGHxe4fuksUjd8xpAukfCJntR6dpclcmq4ph8Pr4J5bh5erbX/4fs5VmTWI4AQA= + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161804526_more-relationship-shit.Designer.cs b/Project-Unite/Migrations/201703161804526_more-relationship-shit.Designer.cs new file mode 100644 index 0000000..adba4e4 --- /dev/null +++ b/Project-Unite/Migrations/201703161804526_more-relationship-shit.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class morerelationshipshit : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(morerelationshipshit)); + + string IMigrationMetadata.Id + { + get { return "201703161804526_more-relationship-shit"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161804526_more-relationship-shit.cs b/Project-Unite/Migrations/201703161804526_more-relationship-shit.cs new file mode 100644 index 0000000..6ce4ebe --- /dev/null +++ b/Project-Unite/Migrations/201703161804526_more-relationship-shit.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class morerelationshipshit : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161804526_more-relationship-shit.resx b/Project-Unite/Migrations/201703161804526_more-relationship-shit.resx new file mode 100644 index 0000000..f084ebc --- /dev/null +++ b/Project-Unite/Migrations/201703161804526_more-relationship-shit.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.Designer.cs b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.Designer.cs new file mode 100644 index 0000000..31a883b --- /dev/null +++ b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class FUCKFUCKFUCK : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(FUCKFUCKFUCK)); + + string IMigrationMetadata.Id + { + get { return "201703161812076_FUCKFUCKFUCK"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.cs b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.cs new file mode 100644 index 0000000..9cb7803 --- /dev/null +++ b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class FUCKFUCKFUCK : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.resx b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.resx new file mode 100644 index 0000000..f084ebc --- /dev/null +++ b/Project-Unite/Migrations/201703161812076_FUCKFUCKFUCK.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.Designer.cs b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.Designer.cs new file mode 100644 index 0000000..37fc32d --- /dev/null +++ b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class TAKEMEWITHYOUWHENYOUGO : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(TAKEMEWITHYOUWHENYOUGO)); + + string IMigrationMetadata.Id + { + get { return "201703161820307_TAKEMEWITHYOUWHENYOUGO"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.cs b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.cs new file mode 100644 index 0000000..6e1dc70 --- /dev/null +++ b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class TAKEMEWITHYOUWHENYOUGO : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.resx b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.resx new file mode 100644 index 0000000..33f1367 --- /dev/null +++ b/Project-Unite/Migrations/201703161820307_TAKEMEWITHYOUWHENYOUGO.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.Designer.cs b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.Designer.cs new file mode 100644 index 0000000..2233011 --- /dev/null +++ b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class jonathan_ladouceur_would_be_better_at_this_than_me_ffs : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(jonathan_ladouceur_would_be_better_at_this_than_me_ffs)); + + string IMigrationMetadata.Id + { + get { return "201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.cs b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.cs new file mode 100644 index 0000000..a856820 --- /dev/null +++ b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class jonathan_ladouceur_would_be_better_at_this_than_me_ffs : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.resx b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.resx new file mode 100644 index 0000000..33f1367 --- /dev/null +++ b/Project-Unite/Migrations/201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161844454_jonny_please.Designer.cs b/Project-Unite/Migrations/201703161844454_jonny_please.Designer.cs new file mode 100644 index 0000000..3085edf --- /dev/null +++ b/Project-Unite/Migrations/201703161844454_jonny_please.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class jonny_please : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(jonny_please)); + + string IMigrationMetadata.Id + { + get { return "201703161844454_jonny_please"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161844454_jonny_please.cs b/Project-Unite/Migrations/201703161844454_jonny_please.cs new file mode 100644 index 0000000..f80e473 --- /dev/null +++ b/Project-Unite/Migrations/201703161844454_jonny_please.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class jonny_please : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161844454_jonny_please.resx b/Project-Unite/Migrations/201703161844454_jonny_please.resx new file mode 100644 index 0000000..33f1367 --- /dev/null +++ b/Project-Unite/Migrations/201703161844454_jonny_please.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161854009_app.Designer.cs b/Project-Unite/Migrations/201703161854009_app.Designer.cs new file mode 100644 index 0000000..4f02975 --- /dev/null +++ b/Project-Unite/Migrations/201703161854009_app.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class app : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(app)); + + string IMigrationMetadata.Id + { + get { return "201703161854009_app"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161854009_app.cs b/Project-Unite/Migrations/201703161854009_app.cs new file mode 100644 index 0000000..f10f443 --- /dev/null +++ b/Project-Unite/Migrations/201703161854009_app.cs @@ -0,0 +1,40 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class app : DbMigration + { + public override void Up() + { + //Column names in each table must be unique. Column name 'Parent_Id' in table 'dbo.ACLForumPermissions' is specified more than once. + //Cannot drop the table 'dbo.ACLForumPermissionForumCategories', because it does not exist or you do not have permission. + + + DropForeignKey("dbo.ACLForumPermissionForumCategories", "ACLForumPermission_Id", "dbo.ACLForumPermissions"); + DropForeignKey("dbo.ACLForumPermissionForumCategories", "ForumCategory_Id", "dbo.ForumCategories"); + DropIndex("dbo.ACLForumPermissionForumCategories", new[] { "ACLForumPermission_Id" }); + DropIndex("dbo.ACLForumPermissionForumCategories", new[] { "ForumCategory_Id" }); + } + + public override void Down() + { + CreateTable( + "dbo.ACLForumPermissionForumCategories", + c => new + { + ACLForumPermission_Id = c.String(nullable: false, maxLength: 128), + ForumCategory_Id = c.String(nullable: false, maxLength: 128), + }) + .PrimaryKey(t => new { t.ACLForumPermission_Id, t.ForumCategory_Id }); + + DropForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories"); + DropIndex("dbo.ACLForumPermissions", new[] { "Parent_Id" }); + DropColumn("dbo.ACLForumPermissions", "Parent_Id"); + CreateIndex("dbo.ACLForumPermissionForumCategories", "ForumCategory_Id"); + CreateIndex("dbo.ACLForumPermissionForumCategories", "ACLForumPermission_Id"); + AddForeignKey("dbo.ACLForumPermissionForumCategories", "ForumCategory_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + AddForeignKey("dbo.ACLForumPermissionForumCategories", "ACLForumPermission_Id", "dbo.ACLForumPermissions", "Id", cascadeDelete: true); + } + } +} diff --git a/Project-Unite/Migrations/201703161854009_app.resx b/Project-Unite/Migrations/201703161854009_app.resx new file mode 100644 index 0000000..f084ebc --- /dev/null +++ b/Project-Unite/Migrations/201703161854009_app.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161905556_dingdong.Designer.cs b/Project-Unite/Migrations/201703161905556_dingdong.Designer.cs new file mode 100644 index 0000000..0c76284 --- /dev/null +++ b/Project-Unite/Migrations/201703161905556_dingdong.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class dingdong : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(dingdong)); + + string IMigrationMetadata.Id + { + get { return "201703161905556_dingdong"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161905556_dingdong.cs b/Project-Unite/Migrations/201703161905556_dingdong.cs new file mode 100644 index 0000000..cb2f247 --- /dev/null +++ b/Project-Unite/Migrations/201703161905556_dingdong.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class dingdong : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703161905556_dingdong.resx b/Project-Unite/Migrations/201703161905556_dingdong.resx new file mode 100644 index 0000000..f084ebc --- /dev/null +++ b/Project-Unite/Migrations/201703161905556_dingdong.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161941448_help_me.Designer.cs b/Project-Unite/Migrations/201703161941448_help_me.Designer.cs new file mode 100644 index 0000000..6ada8ec --- /dev/null +++ b/Project-Unite/Migrations/201703161941448_help_me.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class help_me : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(help_me)); + + string IMigrationMetadata.Id + { + get { return "201703161941448_help_me"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161941448_help_me.cs b/Project-Unite/Migrations/201703161941448_help_me.cs new file mode 100644 index 0000000..ba387cd --- /dev/null +++ b/Project-Unite/Migrations/201703161941448_help_me.cs @@ -0,0 +1,22 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class help_me : DbMigration + { + public override void Up() + { + RenameColumn(table: "dbo.ForumCategories", name: "Parent_Id", newName: "ForumCategory_Id"); + RenameIndex(table: "dbo.ForumCategories", name: "IX_Parent_Id", newName: "IX_ForumCategory_Id"); + AddColumn("dbo.ForumCategories", "Parent", c => c.String()); + } + + public override void Down() + { + DropColumn("dbo.ForumCategories", "Parent"); + RenameIndex(table: "dbo.ForumCategories", name: "IX_ForumCategory_Id", newName: "IX_Parent_Id"); + RenameColumn(table: "dbo.ForumCategories", name: "ForumCategory_Id", newName: "Parent_Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161941448_help_me.resx b/Project-Unite/Migrations/201703161941448_help_me.resx new file mode 100644 index 0000000..e6cd6fa --- /dev/null +++ b/Project-Unite/Migrations/201703161941448_help_me.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.Designer.cs b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.Designer.cs new file mode 100644 index 0000000..956d4d1 --- /dev/null +++ b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class do_dodododo_do_do : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(do_dodododo_do_do)); + + string IMigrationMetadata.Id + { + get { return "201703161947569_do_dodododo_do_do"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.cs b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.cs new file mode 100644 index 0000000..2a2651f --- /dev/null +++ b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.cs @@ -0,0 +1,34 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class do_dodododo_do_do : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + DropForeignKey("dbo.ForumTopics", new[] { "Parent_Id", "Parent_Parent" }, "dbo.ForumCategories"); + DropForeignKey("dbo.ACLForumPermissions", new[] { "Parent_Id", "Parent_Parent" }, "dbo.ForumCategories"); + DropForeignKey("dbo.ForumCategories", new[] { "ForumCategory_Id", "ForumCategory_Parent" }, "dbo.ForumCategories"); + DropIndex("dbo.ForumTopics", new[] { "Parent_Id", "Parent_Parent" }); + DropIndex("dbo.ACLForumPermissions", new[] { "Parent_Id", "Parent_Parent" }); + DropIndex("dbo.ForumCategories", new[] { "ForumCategory_Id", "ForumCategory_Parent" }); + DropPrimaryKey("dbo.ForumCategories"); + AlterColumn("dbo.ForumCategories", "Parent", c => c.String()); + DropColumn("dbo.ForumTopics", "Parent_Parent"); + DropColumn("dbo.ACLForumPermissions", "Parent_Parent"); + DropColumn("dbo.ForumCategories", "ForumCategory_Parent"); + AddPrimaryKey("dbo.ForumCategories", "Id"); + CreateIndex("dbo.ForumTopics", "Parent_Id"); + CreateIndex("dbo.ACLForumPermissions", "Parent_Id"); + CreateIndex("dbo.ForumCategories", "ForumCategory_Id"); + AddForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + AddForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumCategories", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.resx b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.resx new file mode 100644 index 0000000..ea7942a --- /dev/null +++ b/Project-Unite/Migrations/201703161947569_do_dodododo_do_do.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703162001254_jonny___.Designer.cs b/Project-Unite/Migrations/201703162001254_jonny___.Designer.cs new file mode 100644 index 0000000..83c9a34 --- /dev/null +++ b/Project-Unite/Migrations/201703162001254_jonny___.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class jonny___ : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(jonny___)); + + string IMigrationMetadata.Id + { + get { return "201703162001254_jonny___"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703162001254_jonny___.cs b/Project-Unite/Migrations/201703162001254_jonny___.cs new file mode 100644 index 0000000..910eae9 --- /dev/null +++ b/Project-Unite/Migrations/201703162001254_jonny___.cs @@ -0,0 +1,33 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class jonny___ : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + AddColumn("dbo.ForumTopics", "Parent_Parent", c => c.String(nullable: false, maxLength: 128)); + AddColumn("dbo.ACLForumPermissions", "Parent_Parent", c => c.String(nullable: false, maxLength: 128)); + AddColumn("dbo.ForumCategories", "ForumCategory_Parent", c => c.String(maxLength: 128)); + AddColumn("dbo.ForumCategories", "ForumCategory_Id", c => c.String(maxLength: 128)); + DropForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories"); + DropForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumTopics", new[] { "Parent_Id" }); + DropIndex("dbo.ACLForumPermissions", new[] { "Parent_Id" }); + DropPrimaryKey("dbo.ForumCategories"); + AlterColumn("dbo.ForumCategories", "Parent", c => c.String(nullable: false, maxLength: 128)); + AddPrimaryKey("dbo.ForumCategories", new[] { "Id", "Parent" }); + CreateIndex("dbo.ForumTopics", new[] { "Parent_Id", "Parent_Parent" }); + CreateIndex("dbo.ACLForumPermissions", new[] { "Parent_Id", "Parent_Parent" }); + CreateIndex("dbo.ForumCategories", new[] { "ForumCategory_Id", "ForumCategory_Parent" }); + AddForeignKey("dbo.ForumTopics", new[] { "Parent_Id", "Parent_Parent" }, "dbo.ForumCategories", new[] { "Id", "Parent" }, cascadeDelete: true); + AddForeignKey("dbo.ACLForumPermissions", new[] { "Parent_Id", "Parent_Parent" }, "dbo.ForumCategories", new[] { "Id", "Parent" }, cascadeDelete: true); + AddForeignKey("dbo.ForumCategories", new[] { "ForumCategory_Id", "ForumCategory_Parent" }, "dbo.ForumCategories", new[] { "Id", "Parent" }); + } + } +} diff --git a/Project-Unite/Migrations/201703162001254_jonny___.resx b/Project-Unite/Migrations/201703162001254_jonny___.resx new file mode 100644 index 0000000..1aa4039 --- /dev/null +++ b/Project-Unite/Migrations/201703162001254_jonny___.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703162003429_running_out_of_names.Designer.cs b/Project-Unite/Migrations/201703162003429_running_out_of_names.Designer.cs new file mode 100644 index 0000000..07d6061 --- /dev/null +++ b/Project-Unite/Migrations/201703162003429_running_out_of_names.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class running_out_of_names : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(running_out_of_names)); + + string IMigrationMetadata.Id + { + get { return "201703162003429_running_out_of_names"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703162003429_running_out_of_names.cs b/Project-Unite/Migrations/201703162003429_running_out_of_names.cs new file mode 100644 index 0000000..8980a80 --- /dev/null +++ b/Project-Unite/Migrations/201703162003429_running_out_of_names.cs @@ -0,0 +1,30 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class running_out_of_names : DbMigration + { + public override void Up() + { + DropForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumTopics", new[] { "Parent_Id" }); + RenameColumn(table: "dbo.ForumTopics", name: "Parent_Id", newName: "ForumCategory_Id"); + AddColumn("dbo.ForumTopics", "Parent", c => c.String(nullable: false)); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id"); + AddForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + } + + public override void Down() + { + DropForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories"); + DropIndex("dbo.ForumTopics", new[] { "ForumCategory_Id" }); + AlterColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(nullable: false, maxLength: 128)); + DropColumn("dbo.ForumTopics", "Parent"); + RenameColumn(table: "dbo.ForumTopics", name: "ForumCategory_Id", newName: "Parent_Id"); + CreateIndex("dbo.ForumTopics", "Parent_Id"); + AddForeignKey("dbo.ForumTopics", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + } + } +} diff --git a/Project-Unite/Migrations/201703162003429_running_out_of_names.resx b/Project-Unite/Migrations/201703162003429_running_out_of_names.resx new file mode 100644 index 0000000..7b1b799 --- /dev/null +++ b/Project-Unite/Migrations/201703162003429_running_out_of_names.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1d3W7cOpK+X2DfodFXM4Mcd37mBGcDewaOHZ9jbH6MOMnuXhlyN+1o0y31SOok3sE82V7sI+0rLClSEn+KFClWq7vPBgECt0h9LBaLRapYrPrf//6f479+Xy0nX0lRpnl2Mn1y9Hg6Idk8X6TZ/cl0U9399Mv0r3/55386frVYfZ98auo9Y/Xom1l5Mv1cVesXs1k5/0xWSXm0SudFXuZ31dE8X82SRT57+vjxv8yePJkRCjGlWJPJ8ftNVqUrUv+gP8/ybE7W1SZZvskXZFmK57TkukadvE1WpFwnc3IyvSry/yTz6uZjllbkiNefTk6XaUJpuSbLu+kkybK8SipK6YuPJbmuijy7v17TB8nyw8Oa0Hp3ybIkogcvuuq+nXn8lHVm1r3YQM03ZZWvAgGfPBPcmemvD+LxtOUe5d8ryufqgfW65uHJ9CIvNquzpCL3efEwnegtvjhbFqw2zOcj5e1HE1Hnp7rOo1Y8qBSxf48mZ5tltSnISUY2VZEs6Qub22U6/1fy8CH/QrKTbLNcyuRSgmmZ8oA+oq2sSVE9vCd3ohOXi+lkpr43019sX5Pe4T2jAkGlezp5k3x/TbL76jOV+6e/TCcX6XeyaJ4ICaE9o5OBvlQVG/rzLSU4uV2StnzmbJP972iV/unVqruRc1LOi3TN5WXLbb1Osy8fi+XW27lKCpJV+M28Tb6m97Wg6w2SYpWWTHqpMnlPlnWd8nO65jrl6PTsdS37Xb2bhsaLIl+9z5lMWCvdfEiKe8L6k/fVvM43xTyA8A/5Op3DNCuT9aap2JELlbftN5SClZruyEQezzpd49RAZt+D1ZAJ8UMX9U0pNpzOdnFm7lmSXZNW6b3MaatJFkwsRXlP1ssHBJyrvKyCYex6Qkx6fBWhT7x+ZTJo9tWY9TQetvjXr/6YbaMtYIHtfsorUjbNXmbVs6fBENdVUlRkcdpSf061/4d0FU7M9eaWCcnWdc7ppvqcFyMot8vyukrnX6LV0mV5SifdJptHK8rL8mO2TEs6XvFIvy7z22SJqCtzOsetGxNWCihIvczYOhkVQndMbEFwbJhYsZ2utsxGV1cBoitMTXMGDtHS7M0fSnqfvpzolJ9X6dfoCX+6XObf3tCBS79SVY+CxtaMs89Jdt+tHPGT/13NVuc8Wy55pRsu54AOkMrtekCuFKwL7Nu5ICUFfjVBWixOGbwTsjpUJfD3fyiG3dhtIhbKkIlilUVoNvmSKPaVLhpZlZtGQgEapXL7ZJYr4Sygn2o1OXTGsLd/zJdQtY8nKFZhhqTJl8iPJSk8SOTVbASy0h7y6ipxtrL1mspRTSanJtRQpr7/Q5J7DUb01XWeZpX8Ef38z8E4L9N861vKl1QMSDGGOf70a1Ilo7R0npbrZfIwysHJBR3SURr6N3JbptX22/mPfFNtbskY43T9UFZkNQr3Xq2S1NWhpz8/x2rlLM/u0mIVb0y5SsryW14sfkvKz9sfCzLfFHTduK6S1Xr7R3Of84y83axu2XI0XltoQ/PhW36RzKu8eJWxt6LxXufzL3TevcoWzE76sZqbZlNPABRyTudzUpYXVJjJ4izfdDboYcZgtmvomeW+82/wnvJsmaQry7Gsur+5aapKBy5gDfO0Ba4WurN8nd+nthNkrYWmqp1UXqOXVFEtlFQG5kepqGkntK7QSyevFbUdvlyQ+hHDq0fItSF+0zrJnJbrt6Q6at4+4rgXBcWkSvrLkQH7aOL9creHfuq7h3725Pbu2S8/P08Wz57/mTz7efz9tE0XSGy8phqS/EroBpOqscVVUlWkyLoR8NEbO9m/s+FjjW7/oJu19ClZbrCbGjQbaiWAPxtq2P2fDTWZ9PHXdMF2JbP+N5rKFN6rfiPPoXNOo2z0Y2i5m2M3Po4OGDRd2FqEP1sY6v5PFliUwaqNz1Co1O9K+/f6OI0rce2R8FD7c1n9sNjtjfPHy3zhUqJIX7x5OdD3xrrRf7VIq99SKn7M39vl9cAqujwfpHK794NcKfQ09nX6xfJJwkpu+EzqCGsfGtR0JfgHwn7eIZaDAdN9JE6xMG4PVy7s7R8KJnobg2TmpIPxniTlCL4oVwX5muab8pqKywj2W9oxZJXmM0tDtJl1tkIqb9CMZRopeKKyl37MzzDPviHLhz785sISfbJcQ+oHyu1DmIL44+O+zxxQ6vhXDIrUTV4mJRHywLjQfAnVdO2Na95ZvsyL38j3EfRumhe18SzGJH+WZJ9S8o0+vUuXA1z2TDim5d59ywQiEiAyfWwyZNJBBBIcBnmXZbkhL5MMC+ryChGsPtdExHuzifc6rW/30DdL8nKTLqOPvCjcy2V+jwDDD8+oHjy7QkM7XazSDBHvnHxFQWOzQL7cl6LMhXM6rhXBx2WrcXODEQWMOWlhYbGranjdZLvyTYmmOMXpHdLI4qLRRQdtUDkiMhxbFfl1ESRAXDRKHqK0cExk8cMcYoaHCoY4vPWWBxELd2iZO+plhqXzuKCwLRQG2mmWZw+r9L/QAGsl+qV2rkAbCkQ4LKxOBaACYqF9XLMLSmi05d8yTDx+jxNTOXFENLjmgigmiQ0mGiC/MYpJIkdEg3uTf0XlIMNDA+M3dzHJ44hocMwzEZk8ZERGITJ5Q+CCfRDw/Q8Ow/dgb23KWpu7dnkVWyHAkCyP942o1lmUzVLDtAxUCbExn5ZlPk9rqpoDeGvcE7Wzr7LFxDsISmczhsIF1fefmXcpJfBk+ieDrz5NtWfGXVNabDS1lSdTXbzfiR3ThN3sZrHezpJynizMYaasXCislZjo5i14AdTWV/dtUK2b8nVif3a6b2YDTewXF+Wbh71dBK8hAl3kF0wH8BC8EOs9TDvhpMXf3jr7epzvpVmuX3TcVmd96AMGA/A87xtxuuoRpmnShN0rKumammaVuUSm2TxdJ0svjmlvey6xjAltO3rJOVmTjHXOiyU+BFj9C2dtW9oI9XEqQkDFLQtfAdCvXOybgGp3PSwCKpzBRxFQlWM7EFCVJQcnoNyg7jv+2k2bfRNP9YqPRTr5t88owqmwaweyqfBj70UTiH7gt4dRXVjQt0iKH8wuZH4ID/u+gewhhDx20Y+Pjp74sK/vW0fEgdT5hjIXbUSMMA1tvB3e9HizT3Vc7BlhixejIUGNo3DwDLQ4fQMN7MXs6/z8bP0CnP66znAnTX8mAQ7oe80Zp0oHnBEjOXOAerv0n3k+s27QjBuotHfFND3AuLN/1mjjnkY4n4XPFqzci4/aCAUwAzDM2sh0WWktzrLj7OcdtuHxN/N2Lo2whbBzwqdx+N7kVjYS3EpP36noG6QwvzLPb1kh+Q7dE6IdE0dOpTiy0CWDgV+TCpjwtcNbd0YAz15jpqp4pnUewoROAHqAuwluJVJMfx8g4TcD4/D9uS9MGxbVDtaYe30hRWhGOyD/+uqBE0dJJvP1xboHxzCUQqCANTUAtomc4oQVNrAAWOHa6ETl6s5vZGpfMNuolOalEisM24I7ofjmvgdOXK40UPjWruflPt6AfJE0lmvKt5e0pPq9KRV0xRpyuNh2zqKADK0dcpwogRvaUl+JVQZ5MA+OB2vyrf/YELYXQAeHeocULeZglfOoEAJFZZASY9TBIOuJoMMepZ0JQn0ROtmHPdApYADPBzDJFjQLmH8ex30+B2oAq8R645pr7sM5CQtac9C51Kw6/VyCzpxCTp2iuKSdEFm41HQGnUtioehnEnDuEXDyEcUi9ZTCwiHREWSNxLdQffrItNP4Gt8xdJFituljdAxHHAu/24zuZ0j3WmP87OY6VPNlgcUL7ba6lR8O47C/edjkS7vF7OcNbBCGIDHYI93bNnliMfb2mHslUsWO2NFp08C71Z7atIPFeNtjvg3v6Ugzv/SS9AAp95FwT+ked+YbyRkt/HDaWP2trP7fJv5W1a0xCHJ0NdnTZ3X1tbtK3QBXfl8zKdJuovG+be16bdnxjKdEFg+OZ5bcycdvkvU6ze6lXMriyeSaJ1I+++k6PL/wimPMVCHUrZBtS1VeJPdEK+VR9i/SoqzOkyq5TZhn9NliZVQDrZgWQ0XTJGyoNMeyMWQ077G/mygNfYmPARuwgLmg3V0xK3IdPtUy34D3JyzTdbJMCsD3/SxfblaZ3aptf5t7scvv8yf+CEoYDhlIKfDHa/MHy1jtQ3+cZv2QYZpnJsrxTBsewyxvyINxZqKKmZcQQsalaEEEjOHh0ugDsh2RbE5GZATbaYkdpUkyK6M0z4JQRJJZDUc8DULiu1QNCLLzcoHaiUDKCzSORuSHKAPVoeXl7QhemMawoYhvaRnE8nltx5Dyq8o40uMArCbDqoLUPPTH6YJoykDdU3+kLkWqMlbt0xCkLkmqitU9D0HrEqWqaN3zELQmWaqK1TzdrynPLR84Mx46SvCd8PC725nv2DuXLn+nJoviacBc0zJ4KjNOKwtEVTJ5GrhK6f5JaHPAgSen8LlOiLTaEHa9X9/1WPFFD2+kaheFiHGC348bpR3x2GbECP1O0Pw2Bnwk9CFsZxLIGfiU7bT03B+tzsMnw9QPAt7vcuwpKN3jABXdZdFTdHP3OGB5k/PkKcubXOCP1+XCk8G6p/5IbbI7Gah96I8jJ7OToeTnARtlKV+dsleWnvujiZR0MpB4FIghZTUzwKSykM8cOfGc+rEjlwRwTs0upzBPLQqgUs4hpxApFwzCs3AUruHfgpk1TkY3SwNMYmb+OMU4ZhYPwAZo1ssC9JiZYk7RZ2axP3aXb06G7J7uzTIN+JxEr9mmW2T4qu2BsZ11u7m6qI9b4Orf5e9SFv/ucSCWyNBlgInneylPVgeiCHni/rBx8mTBsGsfJfeVqnycCbvsmFdyQitFwbsSetnxwqR2D2TD5jcVIRpmNPZgyYAhtqsqwo4SdvvFzPwPsL6WTYcX/y9l6N3tLAd4FmWed0n5+qqfBCiNNqmSojHap/snLdwfC09i6hsCEVIDv7/PGwk5nY7yaSU9D1l2lIw56sKjFIVRaEpl93RvpJJ7j0ULY33RJFwG4dcO0rSHtHZHrtdha/V+ncJ0qVpU02DzNGRGN7lY1MncPA06/FfzsWhOAGphEK6emEVD1ouDsa00q4XBuF2yFgC3KxyMCxMslQYhd/lbNNCuIBxPJHGBEEVROGaXywWC7UrDkXlWFwiVlwQ61ci5XQzfGrkwCJcnedHw+MMgHCXLiwanlA1AbbO9gLht6QBkkfcFxBVlwfPJ8AIGZlWvp7CzFUs+GK0dS61gB6zG+Rhww4L9kj0wxbURANJyoaQXsU0XA2C2ZcGoXbYIALYrDJYR4boMSIbFUdpDHmBMpWwAqhRYHESWygegO6EjcLscJDaiLdcXPLBdwMNRldQkNqIHSpyegwaEj5Bmu4xopcHIDtjBmFbZUAvD931W0KGILpkwysP21nLqGn1rLZcNkDNxrQQUMsu9UieqnspGX6y14nAdz7OfQAr+C3Cf13PcQFC1MBjXDjoEUU91Y1U6g7FdwENQlew3GqpSFkarmgVHp1YtDXOn1/Ph6K71evkAdCf0IFwgSY4x5Ywag1rogR+EbWTP0cCN8gHoTuhBuFpKHQ1YKw1GdsAOwjRy7OhzUS8fgO6EHoSrJd7RgLXSUIqd2EZ5MN0OoiModpLrxD3LM7rqsDh99ZF/kxRb85mbFyn9NE+qHDyNjrUX91h5L0v297u7PziPahndfzwQu+9bw/j31mLx2zJrezm6fww1BFYNsjWq4PYddKgXmPuuP7bX/oPvOLZvht9kZPe29bPpviheJh+9hlSAwJEfJTJiKLSGwBwsdHbS9AvqwSIAxysLu74hXgq8ogHw1BWQbOiAMwiE4XYFYDuwkVYCr4Vc/2hfCrrk4WImEFltIDMFCOZIA5HkDnGkeciaoHHmr+COshy5ZiAbawj0EZYj8hzU+GohqUIcjayLtdOdyM5KMObUzpdoV4ytwxhpKbqWh+uOqOnjngNwy4ikNXjFLVFGzwgMdkBD5qVzpZoxQ7ZHitWIcHYYQ2YGPfPVpf16NESH7q3+PEjdCYdvCwki1b7kHxvFxkVLvLeBnFQhsUbaEj9ulNFWjCqXJcvK3GZkDul5v9QYcdv0Kq1BRjxpf7dx20TMNCWYW80WFpqtZkcp4rfpQdR4lenkSlyFaW63HrEKR9d/W54t01qfNBXeJFl6R5iNmuX3nj59/OTpdHK6TJOSR9cT4eFe6HkjvOLFPXnG4sWRxWqmvx4edY6hlOVCCR5iJld3xFgbIzt59jUp5p+TwsxPHpF8vAH9wyr5/kcZiScYdwMpTrYIeG2gNgQseTEMgrIlJjfEoc80eFAy0VxsQuB8EyiNQ92y1BGBxHQh0qIwuk+PYRDSXkTntpHp5jJbkO8n07/Xr76YXP77Tfv2o8m7girDF5PHk38EjpO3LNrW9IOSQc8p64UloqZxqDQLH3wpXBoHWVDFX6VMc4YiNeHSEOZWd78NAawLmjZ8jsjB0mJQuiBpMShNeLThGOYWbcDU10F8NUDEYmSJfzbu/PdgTZQ63P4OpIu3NlyE9BhrkUhKVDVfrHC5gY65Dmr1QNvVtoduQxZ9/u5oSz58oHFQ4yadfQ1gePs2qlppTYoDKBLvjiECzghqByUEcvC1RsfdD9m21eHXEJSAFIANY9vWhWDD+OyWQ7Ah4HVR2BDA2khsCFhyKDYEODkWGwKciMjmmAlPf34+CFSKIBbz9SrHY8NgnxqNDWOllaOx4eKhsNAMuzYcC4izZv+u9DKWafHVIraZZkC14d/NXSi10LWzebN+/GjCvgnTv21owQfKDW0R1WZWzCLaE9BsjGU0bQ/hfiV01aECsbhKqooUWUfeoIGI2MIg76ikAGsYJkYpwtr2DLw9ocn8JKMnEhnwxpUr0hhQH45d0y9/GmXYxjy5F8jYuxTtQdJjenL7CY8tLJF3Svh+KdgvNQEfQ3hRw18d8ctbd484qA8uVEMyj5eGYnopcWzuh3Z0AzstHpREwYpk2JeVFEMNQ6rUCGpIBP5/k1PTq++gxLN17Bxk1S0juXywJkb7XbSDGv1hX6Ss03hfpNs/veri1KFozSZUHWgM8PQEUYPTgTYKTyQ9GF0sFh5VXcA5LKRIorq4ctEoIpZcNE4XPC4aikeMi4FRY8TFIPHocDEISkC4eKA2Alw8lAj6FivTRtS1GEBLILcYSDl4WyyOiBQUC9MGaYsF6kIixY6iiJoWP3ZoQFIMiXgwPKQualY8FhqQEh0rHg5PrJAGUQ6ChrHHiOe7FOsMgSAchivRzOKlQAQZi1potIBl0fqOR6bC4DgOEgKMHnwMYfrGAykhxqIoUmOKxUAZIcTiwTCQgAhhGHAYWEYAsHgwDCQtxlcsFAaOEcYrHgwDSYvUFUkUHpgcjCueqGgkLYxRlG3JZjmTbu41RyzWKEMqsa+yRW1p0i+YCTrZRbkjraT2Lma+f5QQSrRxj/Od0PQT5s3M7tOdJeU8WZiMYlcabdQA95tkkqBila4/Gc29J3eEcSBNmI9TWRVJaoaMuirSbJ6ukyXIFa22p9GRdbXF1UvOyZpkzM5p77hPq86ry20bGv/7OKJcCXXLGxjXyClqXbgkWcz401FETPc+B2lpyrYnXJac8+iC1Z84HJAqewioMWVKjqC0hdHctnx9km5iqPTwku3KVsBwY0mYJeG52aAz9NQIEqb5sN9AuU7lRUlzeVdWJL1sFBkz/QdlmoDSrchafzp2dFnzySYb4NK0C2GDEqEejLBxl0SbsInS36Ow2VLN7rmwAdnZDkbWeGhYi6jxwt+jpFkC+O6ZoAHhDw9Hyna7RduBfIVv0RwBzsaULi/rBY9BYQyjeKxLlD6Gg79PHx8dmWjDN+1gdKytCkNEY+PJgBp+s2foutgr8tCxp2PqFeFWC1LCS7b56Qem0t6WEFmzMO+fqaqL97nfQlT7vMoE8AeHLzKWXMmQ+ckaD3UsOTmwDc2YMrOD7Yu35OzFrqX0W63Cdi3bXa/8FB6m0hl7t+Op4na9SIHRVJ3DF350B+5bI4TzUI/cAuXQJ4TsCBIiX4644S5MfcYUqyEFMqL8jg07PSmS9sOqA9+p3YpwaWF92wsdWgheQ75EVGdoXkwnnacCrIt4QN+T6eKWBc3hLg89SbKNJiE3AKNdqBLUuFmvnwBZGcIdFoXW3sLp3eCGuPEBbkckErI1A6aRtbfSHJTa22oT2rha5JUC2uXWNnurvNzZpgi+2Sc5+vbcFBu9Bigz5fotqcCMt0aTwGmc0ShQx92sOLEMaVsczjjbFnXcbYsDrJC2uVJ3Ns2ruFsG06jbpIrtX20SVSf9sEsTkC7a3gq36Nhb4uXO1liV/hb5N53REH8M4bMS/3HqGaO+8YHHRo0t3+ukNpHqW9U4+HXl2hi3PTZKjEXW7YkmAUHF+nZI7bwHY0BvKoAn/V5XNru2zgr+1MEGy9IApqtDZICSPM3BAKuLEFYnYBx5vQIyfcUzwuKhAs0PD18Wt/VKlmq9zMEM67qm5BOVStGZ0ixE/UyBfC62zhRlwTWYIkrRmSL0cD9PANeArbNEXmMMjvBCZB3CyevTIJAhcwusGE9/GAeoLhZ4LqjK946e1cer237rz/Duaqn6rF12nCna7KMm4expf6fV/SGQMTC+81IiO7PHllMvtG7Km9IuERtSp2yT13JEs5U5u60OGocFLnEdaYb6SsDQ7hppwixddhrA0Xf6wawb0H3Aagt0vs+267DuAmsqtJ6OsjIbCcPasuMZ/4AUD+hPIzHY8ez9JmNxrfivc1Km9x0Ey3mWkbliyWzrXGZ3eWNQ1ShqqmiXtN6QKlkkVXJaVOldMmfxWVgUijS7nzaJ6l+tbsniMnu3qdabinaZrG6Xijwxw6yr/eOZQfOxMJBhdIGSmbJQYO8yEVpE0H0BXCOzQDCLrwgCy8ayYsFg7x9apLd55gkk2Ncaqj+Q1XpJwcp32XXCElyE00bF7zW5T+YPV23QUBtI/0CobD8+T5P7IlmVAqN7n/6kMrxYff/L/wHnKvG9TjYBAA== + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703162019023_killme.Designer.cs b/Project-Unite/Migrations/201703162019023_killme.Designer.cs new file mode 100644 index 0000000..47459f0 --- /dev/null +++ b/Project-Unite/Migrations/201703162019023_killme.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class killme : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(killme)); + + string IMigrationMetadata.Id + { + get { return "201703162019023_killme"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703162019023_killme.cs b/Project-Unite/Migrations/201703162019023_killme.cs new file mode 100644 index 0000000..a9163ca --- /dev/null +++ b/Project-Unite/Migrations/201703162019023_killme.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class killme : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703162019023_killme.resx b/Project-Unite/Migrations/201703162019023_killme.resx new file mode 100644 index 0000000..7b1b799 --- /dev/null +++ b/Project-Unite/Migrations/201703162019023_killme.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.Designer.cs b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.Designer.cs new file mode 100644 index 0000000..9a4df37 --- /dev/null +++ b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class jonathan_ladouceur : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(jonathan_ladouceur)); + + string IMigrationMetadata.Id + { + get { return "201703171437322_jonathan_ladouceur"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.cs b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.cs new file mode 100644 index 0000000..2ebb924 --- /dev/null +++ b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class jonathan_ladouceur : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.resx b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.resx new file mode 100644 index 0000000..5cadc48 --- /dev/null +++ b/Project-Unite/Migrations/201703171437322_jonathan_ladouceur.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1dW3PcuHJ+T1X+w9Q8nbPl1fhy1rVxyeeULNm7qtiWyrKd5ElFzUAyYw45h+TIVlL5ZXnIT8pfCECAJC4NEDdyZjYuV7k0uHwAGo0G2Gh0/+9//8/x376vs9k9Kqu0yF/Onxw9ns9QvixWaX73cr6tb3/+df63v/7jPxy/Xq2/zz635Z6RcrhmXr2cf6nrzYvFolp+QeukOlqny7Koitv6aFmsF8mqWDx9/PifFk+eLBCGmGOs2ez4wzav0zVqfuCfp0W+RJt6m2TvihXKKpaOc64a1Nn7ZI2qTbJEL+eXZfHvaFlff8rTGh3R8vPZSZYmuC9XKLudz5I8L+qkxj198alCV3VZ5HdXG5yQZB8fNgiXu02yCrERvOiL2w7m8VMymEVfsYVabqu6WDsCPnnGqLOQq3vReN5RD9PvNaZz/UBG3dDw5fzk9O2botyuL1G5TquqaURu9sVpVpIqMLGPVIhHM1bw56bgo45RMD+Rf49mp9us3pboZY62dZlkuML2JkuX/4wePhZfUf4y32YZ33HcdZwnJOAk3MoGlfXDB3TLhnO+ms8WYr2FXLGrxtWhw8Osgfl8PnuXfH+L8rv6C14BT3+dz96k39GqTWG8gkeGlwWuVJdb/PM97nByk6Euf2Fs80ORIWO7+E+rds3NnCb5FUJtM68K3GqSO3cWo3xAm+whAs5lUdXOMO+T+/Su4UQJ8DIpUY7xPqCsya6+pBu66AGmvG5LvymLNaE/xPys0PVVsS2XhHDFUMmPSXmHarHPx4t+nRlXX4N5mtTorigfnBeeUPvHmhtiP/L/6CvuDFXLMt1QaT1yW2/T/OunMhu9nXbhxG5Gv667VVaNsbjbJTu8uFsxYNvxj8UmXcJ9FhbrdVuw7y6Ur4ghsFC4BGqA/MRPU/WH7JlsCTm2+7moUdU2e57Xz546Q1zVSVmj1UnX+zPMfx/TtXtnrrY3hElGl1cn2/pLUU5wvDqvrup0+TX4YHReneBFt82XwUe18+pTnqUVnq9wpN+y4ibJIp7WCrzGtaKR5AJSXM5ThLdSwFVmkyOpQWSTbH2/ujxdv/oCUL/cxDQloI+UJjV/COl9OrvhJb+s0/vgBX+SZcW3d3ji0nss6qOgkT3j9EuS3/U7R/jiv2jIalxnWUYLXVM+B2QAl6+XA3whZ1mg/6B0ElLguQ2SYmHC4ILxqq9IoPV/CIbdfDkGbJQuC0XLi9Bqsu0iO1ea+kiKXLccCvSRy9cvZr5QnA30cyMmfVcMqf1jvbiK/XiMomVmiJtsO/mpQqVFF2kxXQdJ7kD3miJBkv9ks8F81HST9sZVVS/W/8HJgyprXHVTpHnNf0Q//4szzqu0GP1I+QqzASqnUAie3Cd1MklLZ2m1yZKHSVS3b/CUTtLQv6CbKq3Hb+ffim29vUFTzNPVQ1Wj9STUe71OUtOAnv7yPFYrp0V+m5brcGXKZVJV34py9XtSfRl/LtByW+J946pO1pvxLwe+FDl6v13fkO1ouraiTc3Hb8WbZFkX5euc1ArGe1ssv+J19zpfET3pp3qpqk0tAaJ052S5RFX1BjMzWp0W214H7acMJqeGgVVuu/68z5SnWZKuNRdD4vnmui3K3QqBJdT7XriY68nybXGX6u6wpBbaovqu0hKDXWXFXLtKwOx6ykrqO9oUGOwnLRV0HD5foSaJ4DUzZDoQv+uMZE6qzXtUH7W1jyjumxJjYiH99UiBfTSzrtyfoZ/anqGfPbm5ffbrL8+T1bPnf0HPfpn+PK2TBRwZr7CERL8hfMDEYmx1mdQ1KvN+Bmzkxk7O72T6SKPjm9qQlj4n2TZ2U16roREC8VdDA7v/q6HpJk6+T1fkVLIYrtEWxvBW5Vt+dl1zUs8mv4bmhzl149PIAK/lQvai+KuFoO7/YoFZGSzaWi26cv2upP+gleW0HNddCfvqn6v6h8Zub4w/XhUrkxCN9MVbVJ62N9qD/utVWv+eYvYjFqcmqwdS0GT5wOXrrR/4Qq63sW/Tr5pPEpJzTVdS37EuUelNnxP/QtjOOkRzMaCaj4QJFkJtf+FCav8QMMHHmEhqTjwZH1BSTWCLclmi+7TYVleYXSbQ3+KBRRZpNqvURZppVysk8rxWLJFIzguVVPqxPt0s+3y2D3n61Y0l+Ga5gZQvlLtEuAfh18dDnzkg19GvmChcN3uVVIjxA6FC+yXU9GtvTPNOi6wof0ffJ5C7aVE2yrMQlfxpkn9O0TeceptmHiZ7KhyRchffcoYYCTBy/8hiyLmLiEhwMbp3XlVb9CrJY0GdX0YEa+41I+K924ZbnTbvC3HNCr3aplnwlReGe5UVdxFg6OUZloOnl9HQTlbrNI+Id4buo6CRVcA/L0qjrIUzPK81io9LduP2DVUUMGKkFQuLPJaNN0xyKt9W0QQnu72LNLNx0fCmE21SKWJkOLIr0ucikQDjouHuReQWihmZ/WJOMcGLChZxepsjT0SsuFNLzFHP81gyjzIKOULFQDvJi/xhnf5HNMBGiH5tjCuiTUVEuFhYvQiIChgL7dOGPFCK1rfiWx4Tj77jjCmcKGI0uPaBaMwutpjRAOmL0ZhdpIjR4N4V91EpSPCigdGXuzG7RxGjwRHLxMjdi4xIehi5ez5wzjYI8e0PDsP2YG91ylKbuzZ5ZUchQJHMz/c1K9ZrlNVcRbUMFHHRMZ9UVbFMm16Jl5HiI0VxnK/z1czmxWKvKVaevDZPnolBKe7Ty/lPCikHmuhuiIEmZPAnc5mRL9jZaEbecBOvbqdJtUxW6oRioq0EInLksqQi/zpucIjgUzlgiPQRpAcNwUeb1tO0E0pqbMJ1Qx0yEO8HqzzGG2uwNv0DJgOwjh6acSyZEbncTBPy9qXCcj/Na1WMp/ky3SSZFcWk2pbbACFC146cc4Y2KCeDsyKJTQe0NnCLri1phoYoFcCg7CWALQPIzwL2jUGl9wgaBmUGy5MwqEixHTCoSJKDY1Cq9LWdf+k1yL6xp/gMRcOd9Hw+CXMK5NoBbwr02HvWBF7o251hRDOL6EckwVZjFzzvQ8PWPGpwiIqdlMUp+vHR0RMb8ikWpRI281Uo0y3KWtR1YoJlqKOtf9PTrT7RuG5ghjWWdgoHtcaszitQY5gMNLAXq6+3RdONCzBM6wdDDQntiQQYSe81ZYwiHTCYC6TMAcrtyn7l2aw6rxXnKbR3RTTZDa9xfFqfvNIYezfe7hufzqWvFR1/kjV19gd7rR9l7el52GM6t2iA2AL2zGXhv9lyBnbCaIBiVjdSk5ZWYyw7zbeSQTc8/YeSnkoTHM/0lLBpHH43OcohjWrpcZ0a10Cl+gV/dkMy0XfonRAeGLtyqtiVhcwZBPwK1Vr5Uc1n/T2BQQwoq14EVgwGFVBpwdvgtTd5MBYTrTZAzG4GxqHfPrYwnVtUPVirSreFZK4Z9YD0y3YAjl0lqZMpH4QGcBQlNAQKaKodYFvPKUZYpl90gGWmjUZUKu7sZqaxBdPNSqU+KtHCkM8bIxT9cBqAY48rFRR6bB6oPEQbkC6cxNKuBObSlCtqcn0qi1PLe8VuNNBCVGS05U0iBKrACWIbl3UhkOAm00Ag7YWhQV0lXRlCY2FixYY80CWhA809iKTz+6SSyeY20Oa+DSAVE5kGCg3c3XFYkNiMTqVWcA5TCbqScrmUCqKSdIGkoVI7mOhUYrJumEjAtYjDxUgQicRLDA2F2EAiSyR6ChiSR6oax1Y3H0MWCVqdIUKHUKR7YGygB/iJbadnt9pj7NTqMlR7OI5FC+nBtZYeBt2xvfZYpUt3ShqmDawvhiBjkId7eqzSRKMLHtAGc11lhzrDoFX976gj1UkHjW53QLvrPtKJVn5lxekOXG7D4ZbcPe3KVyKcaehhVMHaK2HlwfA6gyHi6JSuoxHIELYOOF3Y6WYdtbPc2EDljenMMaiPtZ8MD+JBhq4q1Ya0rrZ6V24o4LHJVk0a6SjWWt92er0u73hBQyKzhOOFJnby8btks0nzOy6WMkuZXdFAyqc/X7nHF15TjIW4gmUtZNdSXZTJHZJyqZf9N2lZ1WdJndwkxDL6dLVWioFaTI2iom1Sr6hU57NVZrR1yd+tpwaruMeAMphhvcHjXhN1cuNH1bgKVZAZiXudZEkJWMKfFtl2net13PrarVKaR9ApqvUobYRhHqVNc0JhEYYlHJbqhERPVxIQpGKjC0aaIUVFr/CFcn8ispwVQ8ryMZgZRX24Ox8O1B+HBemzCr4+TbFHEPzC8EBChj1eF1KXx+oS7XHafZ2HadP2iwm15y8fBqSXKJ7cp6k8Duu5TZAOhSkieBCNbkKPwcVX5XG4ZAesNsKqgNQm2uP0TjR5oD7VHqkPkSrMVZfqgtQHSRWx+nQXtD5QqojWp7ugtcFSRaw2db+WPFUbxVnx0D2M7YKH646z3mNvFH38TokXWarDWpMieAorTspzRBUieSq4Qu7+cWh7OxSPT+FLMRdu1SHs+ni067mim168mWpMFALmCa4fNks7orFOieH6sSrZbXh8qQ4hjLMI+Ah8wjcdl26P1sTh42GaBIf6fYw9AaVPdhDRfRQ9QTb3yQ7bGx8nT9je+Ax7vD4WHg/Wp9ojdcHueKAu0R6HD2bHQ/HpDgdlLl6dcFbm0u3RWEg6HoglOWJwUc0UMC7P5TOHDzwnfuzwOQ6UE6PLCcQTsxx6yceQEzrJZ3jhaSgKl7BvQY0ax6OruQ4aCDV+nKCLULM9sIE+y3kOckwNMSfIMzXbHruPN8dD9ql7s00DBjvBe7ZqFum+a1tgjLNvt89C5Xlz3P37+F3C5t8nO2KxCF0KGEvfS37SWl8F8BO1hw3jJw2GXvoIsa9E4WMM2KXHvOQDWgkC3hTQS4/nxrV7wBs6o7MA1lC9sTtzBgwxrqhwu8/a7RczMd6I9bWsWgvZfylDdcfZDuJplGncJeHrq0lxEBpdUCVBYnSp+8ct1JgtHsc0LwQCuAauv88HCT6cjvBpxaW7bDtCxBxx4xGy3HqocmWfujdcSU3vgpmxeWjizoNwtYNU7UXauwP3a7e9er9uYfpQLaJqsE11WdFtLBZxMbepThYoYjwWyRJFzHTClQOzSMhytjO2ts9ipjNuH6wFwO0zvXHhDnO5Tsh9/BYJtM9wx2NBXCBEluWO2cdygWD7XHdkGtUFQqU5jpZdfGwXxcCLz3TCpUFeJDya6IQjRHmR4IQ8D9Qu2guI2+V6ILO4LyAuy3NeT4rVLrCqBs2sja1o4sFI7WhKOVsBtpbbgC0gbNRtgcne3ACQmtc4g4hduBgAs8tzRu2jRQCwfaYzjzDTZYAzNIbSFvwAYwp5HqicY3EQmcv3QDdCB+D2MUh0nda8/bDANgH7owqhSXSd9uQ4OQYNCB/AzXoekXKdkQ2w3pha3hAz3c99WlBfRBNPKPluZ2s+dI18tObzPPiMPSsBmUzzKNeIKoeykTdrKdtdxtPoJ5CA/wo8hracNxBUzHTG1YP6IMqhbrRCxxvbBOyDKkS/kVCFPLe+ilFw5N6KuW5vOuR4OPL7DjnfA90I7YULBMlRlpxSwquFAXgvbCV6jgSu5HugG6G9cKWQOhKwlOuMbID1wlRi7MhrUc73QDdCe+FKgXckYCnXtcdGbCXfud+GTgf02NhdI+5pkeNdh/jpa67826DYks3cskzxp3lSF+BtdKi+eEDLe16Rvy9u/2S8qiX9/vOB6H3fK8q/9xqN38ikHaTo/hFUYVjRydakjDt00SE+YDYa9jNPX262+6ySo30+eaot27caXHmpVLOawAYC9vLIte/ZNa2nS2/e0vdKfofuP9OCyzIX2/+ukpOFv4mYgE8yT2IykJgzDfhgO8SZps5enOaZVok7y7zPF08yNhDRZ5j3ZXNQ8ys5c3KxMukqOdmS6EkJemvyldgUJN48g96pDmOmOb9UFnYbrKSNbQZALcUHlfeOW0WZPcWl1gFNmZXM5UqGTNkeCVbFN9hhTJnqLsxWlg7LURcZurfy8yBlJ+z4zMVhS1fJ3jGGjooaT2melBQhY820xvPaJLMtfFGfVyQkbxeO12XkwVxj8Abn7HhKKx2G3UsBczTo6W3n8mLQ0d2eCA7Fb5tcpFPIsJTud+e3jflME5y5NcMhrtmaYVTMf5vsRI0Wmc8u2VOY9nXrESlwdPX37DRLG6ZpC7xL8vQWER01ie89f/r4ydP57CRLk4p612Pu4V7IcSOs/MU9eUb8xaHVeiFXd/c6R1CqaiU4D1GDqw/x/hQhyvP7pFx+SUo1SLljBPL2JYsI+6d18v3PPBaNM26Gat2zUagbEivAsTO9Y7YgjP5zww+CkycytZXQJuf5Cn1/Of/PpuqL2fm/Xne1H80uSsz9L2aPZ//lOE+6qOgKLxrcqx0UG1K1fQQmFAy+I+B1PtoiYPHbsBOUGzsAx7qD4gVLMllhMa9pFCrN3WUB5y6NgqzwYqtTwq2uSK27tAic1L9viwDWO03zF5m8s7QQlN5JWghK6x7NH0M9pXvsBDKI7YYQKgBU/2fTrn8L0gTtjuNL/d7fmj8LyT7WApEEr2q2WO58A910HtTuEe0k0d27+pwBad3JToDwndZBzRt3/elB8K52VLHSaZU9esTqTsECRg9qB8UEvPO1Vsbd+RzbGvdrEYQA54AtxrGtd8EW41OHd8EWAa/3whYBrPPEFgGLd8UWAY73xRYBjnlkM6yEp7889wLlPIiFKDN4f2wxyCd6Y4ux0/Le2OLiRSGh6nbNHwvws6b/rrRSUEj+1QKOmapDNf/v5t6Vmuve2dZskh/NyDdh+vctzviIqSFtotLKCtlEBxyaTbGNpt1Ny28I7zqYIVaXSV2jMu+75zURAUeYyCcqzsFaDI0z52FtPKXagGsyO84Y8EQG1Lg0eRoDysO+a4b5T+pZbGUeP4rI2LtkbS/uUS257ZhH55bIOiT8MBfsl5iAb6WsekOrTvjlLVvIHNQHV1RFMvWXFkX1UsXRuR/aTR5st3pQHAULEr8vK86HWgyuEj2oRerg/zc+VQ07D4o9O9teL61uFUjlg1Ux6t+iHdTs+32RkkHH+yId//aq91MXRWq2rupAZYClYZDonA7UUVgiyc7oQrHi9ap3OBcLKbBTvV+5YBTmSy4Yp3ceFwxFPcaFwIg+4kKQqHe4EATBIVw4UOcBLhyKOX0L5WnF61oIoMaRWwgk77wtFId5CgqF6Zy0hQL1LpFCZ5F5TQufu2hAnA+JcLB4SL3XrHCsaECCd6xwuHhsFWkSeSdoMc4Y4XTnfJ1F6FAcggvezMK5gDkZC9poJIdlwfKOeqaKQfE4SBFgZOdjEZZvOJDgYiyoR6JPsRAoxYVYOFgMJMBDWAy4GFiKA7BwsBhIko+vUKgYOIobr3CwGEiSp67ATsUD451xhXcqGElyYxSkW9JpzriXe6JiX3Q1JPbzdb5qlEy8/TbrHnkfx0XEnjUGxcTcD7eN+6m8urxgwn1GDJjJE7rTpFomK5U25PXhYC8uBKWU2Jc2T+zRT0pDH9AtIvrpNCEGTVVdJqnqH+qyTPNlukkyhQ5SSUvtIhlghynnnKENyolCUzNcmyYNXpk6eIngQ4QQnn1a8hTv1GiE2Rybvz5zlvFif2jOuLzlMN2xOEwTgFpt0OgNagIOk2yKr6HYk9yMyibI/JwqeZPwmGrPxfcJyB2F14bDY0fnNZvong4mJrtgNigw5cEwGzUR0zEby/0jMpsu9OeeMxsQLetgeI266tSwGs38I3KaxqHqnjEa4JHwcLhst0e0HfCX+xHN4HNsSu5qffQYZ5L6BFCmkSXLHCXPoff36eOjIxXN/9AOOqwalRkCGpuOB0SPmANT17tG4aeOpE4pV5iZI9gTmjPmpx8Y2ngsJtJGxQWUCiZHVhPwU++Cc7+ZqLFB5DtAEw6fZTSxayH1k9ZF6VR8cmAHmil5ZgfHF2vO2YtTS2W3W7mdWsbdr+wEXkyhM/Vpx1LE7XqTAh2cGqev84+mTGGfY3FuDWDOmGwBe3sbkTPs+dDGq+sUGh6tH9PIbDKSzAEcTAr7J5D9x2C3Ya+yeymR+McR19SEaUh5p1XcQUq7P7AicSBE0n5oEeE3taMwl+TWt3vQIbngVfiLOWbWCsD5rDdXMIgR6tr35Xx1Q9znUOMHtZwSAk3pgCQ1lbalfKjZgSjdcJNs84XbY5naxuDwbnBDVNkFt8NiSemaAcPI6ltpL+b1bXUxjUwt0kIO7VLtrr5Vmm9skznfHGhR+RxUOVUuAbJptXmPajDirdIkcPurNAqUMTfLbshd2maXgca2WRlz2+zC1KVtKtSNTdMi5pbBMOo6riLfSzqOauK+6LkJCBetb4VqEPUt0Xxja6TIcItUh6A0RJMhfJJjP08DczQ0P/DciL7lTUZqM64oLHQAYzbddUE3RiFV2VINZksQQpsnH3vEQboQQAgTZyCA1vIq1iBgHF4sAzHNwgmhMfwBSGFjImRWCnLDUPIMxNCKbyFsJpcbnSitvB0mCmTKMjpRhH1FIQrLjU4UJm6GaQJYXIxOEl6UKhShmZFlCO3ekASB9MMjkGI6+aHcS5tIAOpltKo2udcs2WbYdvuP/3CloITaIRuuanVqZ7XjJHV40OIxCIiNGD54LmSfOmLNZWK0YfJnrz7kXKRB6Rav5uZrlDU71gCVOxgTu060Qm05wHe4SkA0zZCN9womlbHc+T5naPAupPPZpfVBvYCd2k5zHp0QeoWVLtpYOGEArS1AkSHdrkG7Cxw2oIPGJEcWJWBYl3e8oB+QLAH/VAKDHS8+bHPi14r+OkNVetdDkLB3OVoKmsyuzHl+W7QKValHbRHpkdY7VCerpE5Oyjq9TZbEPwvxQpHmd/M2UP3r9Q1anecX23qzrfGQ0fomE/iLKGZN7R8vlD4fMwVZjCHgbqbEFdhFzlyLsH6/AZ6RaSCIxpc5gSVzWRNnsHcPHdL7IrcEYuTrFNUf0XqTYbDqIr9KSIAL975h9nuL7pLlw2XnNFQHMjwRItmPz9LkrkzWFcPo6+OfmIdX6+9//T/1sRk+TjYBAA== + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703171722189_aclrevamps.Designer.cs b/Project-Unite/Migrations/201703171722189_aclrevamps.Designer.cs new file mode 100644 index 0000000..76f608b --- /dev/null +++ b/Project-Unite/Migrations/201703171722189_aclrevamps.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class aclrevamps : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(aclrevamps)); + + string IMigrationMetadata.Id + { + get { return "201703171722189_aclrevamps"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703171722189_aclrevamps.cs b/Project-Unite/Migrations/201703171722189_aclrevamps.cs new file mode 100644 index 0000000..408ae2a --- /dev/null +++ b/Project-Unite/Migrations/201703171722189_aclrevamps.cs @@ -0,0 +1,22 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class aclrevamps : DbMigration + { + + public override void Up() + { + AddColumn("dbo.ACLForumPermissions", "CategoryId", c => c.String()); + } + + public override void Down() + { + AddColumn("dbo.ACLForumPermissions", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + DropColumn("dbo.ACLForumPermissions", "CategoryId"); + CreateIndex("dbo.ACLForumPermissions", "Parent_Id"); + AddForeignKey("dbo.ACLForumPermissions", "Parent_Id", "dbo.ForumCategories", "Id", cascadeDelete: true); + } + } +} diff --git a/Project-Unite/Migrations/201703171722189_aclrevamps.resx b/Project-Unite/Migrations/201703171722189_aclrevamps.resx new file mode 100644 index 0000000..f2a2c0d --- /dev/null +++ b/Project-Unite/Migrations/201703171722189_aclrevamps.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703172018334_banandmute.Designer.cs b/Project-Unite/Migrations/201703172018334_banandmute.Designer.cs new file mode 100644 index 0000000..fde5b39 --- /dev/null +++ b/Project-Unite/Migrations/201703172018334_banandmute.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class banandmute : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(banandmute)); + + string IMigrationMetadata.Id + { + get { return "201703172018334_banandmute"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703172018334_banandmute.cs b/Project-Unite/Migrations/201703172018334_banandmute.cs new file mode 100644 index 0000000..6e74d05 --- /dev/null +++ b/Project-Unite/Migrations/201703172018334_banandmute.cs @@ -0,0 +1,38 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class banandmute : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetUsers", "JoinedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.AspNetUsers", "LastLogin", c => c.DateTime(nullable: false)); + AddColumn("dbo.AspNetUsers", "IsBanned", c => c.Boolean(nullable: false)); + AddColumn("dbo.AspNetUsers", "IsMuted", c => c.Boolean(nullable: false)); + AddColumn("dbo.AspNetUsers", "BannedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.AspNetUsers", "MutedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.AspNetUsers", "BannedBy", c => c.String()); + AddColumn("dbo.AspNetUsers", "MutedBy", c => c.String()); + AddColumn("dbo.AspNetUsers", "Interests", c => c.String()); + AddColumn("dbo.AspNetUsers", "Hobbies", c => c.String()); + AddColumn("dbo.AspNetRoles", "CanViewUserInfo", c => c.Boolean()); + } + + public override void Down() + { + DropColumn("dbo.AspNetRoles", "CanViewUserInfo"); + DropColumn("dbo.AspNetUsers", "Hobbies"); + DropColumn("dbo.AspNetUsers", "Interests"); + DropColumn("dbo.AspNetUsers", "MutedBy"); + DropColumn("dbo.AspNetUsers", "BannedBy"); + DropColumn("dbo.AspNetUsers", "MutedAt"); + DropColumn("dbo.AspNetUsers", "BannedAt"); + DropColumn("dbo.AspNetUsers", "IsMuted"); + DropColumn("dbo.AspNetUsers", "IsBanned"); + DropColumn("dbo.AspNetUsers", "LastLogin"); + DropColumn("dbo.AspNetUsers", "JoinedAt"); + } + } +} diff --git a/Project-Unite/Migrations/201703172018334_banandmute.resx b/Project-Unite/Migrations/201703172018334_banandmute.resx new file mode 100644 index 0000000..d744369 --- /dev/null +++ b/Project-Unite/Migrations/201703172018334_banandmute.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703172305217_auditlogs.Designer.cs b/Project-Unite/Migrations/201703172305217_auditlogs.Designer.cs new file mode 100644 index 0000000..7297b6a --- /dev/null +++ b/Project-Unite/Migrations/201703172305217_auditlogs.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class auditlogs : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(auditlogs)); + + string IMigrationMetadata.Id + { + get { return "201703172305217_auditlogs"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703172305217_auditlogs.cs b/Project-Unite/Migrations/201703172305217_auditlogs.cs new file mode 100644 index 0000000..bdac4bc --- /dev/null +++ b/Project-Unite/Migrations/201703172305217_auditlogs.cs @@ -0,0 +1,29 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class auditlogs : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.AuditLogs", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Level = c.Int(nullable: false), + Timestamp = c.DateTime(nullable: false), + UserId = c.String(), + Description = c.String(), + }) + .PrimaryKey(t => t.Id); + + } + + public override void Down() + { + DropTable("dbo.AuditLogs"); + } + } +} diff --git a/Project-Unite/Migrations/201703172305217_auditlogs.resx b/Project-Unite/Migrations/201703172305217_auditlogs.resx new file mode 100644 index 0000000..eb429ae --- /dev/null +++ b/Project-Unite/Migrations/201703172305217_auditlogs.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703172359467_banning.Designer.cs b/Project-Unite/Migrations/201703172359467_banning.Designer.cs new file mode 100644 index 0000000..28d9aad --- /dev/null +++ b/Project-Unite/Migrations/201703172359467_banning.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class banning : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(banning)); + + string IMigrationMetadata.Id + { + get { return "201703172359467_banning"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703172359467_banning.cs b/Project-Unite/Migrations/201703172359467_banning.cs new file mode 100644 index 0000000..68ee688 --- /dev/null +++ b/Project-Unite/Migrations/201703172359467_banning.cs @@ -0,0 +1,26 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class banning : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.BannedIPs", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + Address = c.String(), + }) + .PrimaryKey(t => t.Id); + + } + + public override void Down() + { + DropTable("dbo.BannedIPs"); + } + } +} diff --git a/Project-Unite/Migrations/201703172359467_banning.resx b/Project-Unite/Migrations/201703172359467_banning.resx new file mode 100644 index 0000000..6130559 --- /dev/null +++ b/Project-Unite/Migrations/201703172359467_banning.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703181305313_ip-logging.Designer.cs b/Project-Unite/Migrations/201703181305313_ip-logging.Designer.cs new file mode 100644 index 0000000..ade603d --- /dev/null +++ b/Project-Unite/Migrations/201703181305313_ip-logging.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class iplogging : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(iplogging)); + + string IMigrationMetadata.Id + { + get { return "201703181305313_ip-logging"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703181305313_ip-logging.cs b/Project-Unite/Migrations/201703181305313_ip-logging.cs new file mode 100644 index 0000000..cedb3c5 --- /dev/null +++ b/Project-Unite/Migrations/201703181305313_ip-logging.cs @@ -0,0 +1,18 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class iplogging : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetUsers", "LastKnownIPAddress", c => c.String()); + } + + public override void Down() + { + DropColumn("dbo.AspNetUsers", "LastKnownIPAddress"); + } + } +} diff --git a/Project-Unite/Migrations/201703181305313_ip-logging.resx b/Project-Unite/Migrations/201703181305313_ip-logging.resx new file mode 100644 index 0000000..4707353 --- /dev/null +++ b/Project-Unite/Migrations/201703181305313_ip-logging.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703181331309_acl_revamps.Designer.cs b/Project-Unite/Migrations/201703181331309_acl_revamps.Designer.cs new file mode 100644 index 0000000..68d184f --- /dev/null +++ b/Project-Unite/Migrations/201703181331309_acl_revamps.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class acl_revamps : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(acl_revamps)); + + string IMigrationMetadata.Id + { + get { return "201703181331309_acl_revamps"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703181331309_acl_revamps.cs b/Project-Unite/Migrations/201703181331309_acl_revamps.cs new file mode 100644 index 0000000..222c288 --- /dev/null +++ b/Project-Unite/Migrations/201703181331309_acl_revamps.cs @@ -0,0 +1,30 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class acl_revamps : DbMigration + { + public override void Up() + { + DropTable("dbo.ACLForumPermissions"); + } + + public override void Down() + { + CreateTable( + "dbo.ACLForumPermissions", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + CategoryId = c.String(), + RoleId = c.String(), + CanSee = c.Boolean(nullable: false), + CanReply = c.Boolean(nullable: false), + CanPost = c.Boolean(nullable: false), + }) + .PrimaryKey(t => t.Id); + + } + } +} diff --git a/Project-Unite/Migrations/201703181331309_acl_revamps.resx b/Project-Unite/Migrations/201703181331309_acl_revamps.resx new file mode 100644 index 0000000..8759650 --- /dev/null +++ b/Project-Unite/Migrations/201703181331309_acl_revamps.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703181335599_more_fucking_acl.Designer.cs b/Project-Unite/Migrations/201703181335599_more_fucking_acl.Designer.cs new file mode 100644 index 0000000..2e6125c --- /dev/null +++ b/Project-Unite/Migrations/201703181335599_more_fucking_acl.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class more_fucking_acl : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(more_fucking_acl)); + + string IMigrationMetadata.Id + { + get { return "201703181335599_more_fucking_acl"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703181335599_more_fucking_acl.cs b/Project-Unite/Migrations/201703181335599_more_fucking_acl.cs new file mode 100644 index 0000000..861f4a3 --- /dev/null +++ b/Project-Unite/Migrations/201703181335599_more_fucking_acl.cs @@ -0,0 +1,28 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class more_fucking_acl : DbMigration + { + public override void Up() + { + CreateTable( + "dbo.ForumPermissions", + c => new + { + Id = c.String(nullable: false, maxLength: 128), + CategoryId = c.String(nullable: false), + RoleId = c.String(nullable: false), + Permissions = c.Int(nullable: false), + }) + .PrimaryKey(t => t.Id); + + } + + public override void Down() + { + DropTable("dbo.ForumPermissions"); + } + } +} diff --git a/Project-Unite/Migrations/201703181335599_more_fucking_acl.resx b/Project-Unite/Migrations/201703181335599_more_fucking_acl.resx new file mode 100644 index 0000000..120d652 --- /dev/null +++ b/Project-Unite/Migrations/201703181335599_more_fucking_acl.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703181626523_bonfire.Designer.cs b/Project-Unite/Migrations/201703181626523_bonfire.Designer.cs new file mode 100644 index 0000000..2469b9f --- /dev/null +++ b/Project-Unite/Migrations/201703181626523_bonfire.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class bonfire : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(bonfire)); + + string IMigrationMetadata.Id + { + get { return "201703181626523_bonfire"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703181626523_bonfire.cs b/Project-Unite/Migrations/201703181626523_bonfire.cs new file mode 100644 index 0000000..366fdc8 --- /dev/null +++ b/Project-Unite/Migrations/201703181626523_bonfire.cs @@ -0,0 +1,16 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class bonfire : DbMigration + { + public override void Up() + { + } + + public override void Down() + { + } + } +} diff --git a/Project-Unite/Migrations/201703181626523_bonfire.resx b/Project-Unite/Migrations/201703181626523_bonfire.resx new file mode 100644 index 0000000..120d652 --- /dev/null +++ b/Project-Unite/Migrations/201703181626523_bonfire.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703181945337_posting.Designer.cs b/Project-Unite/Migrations/201703181945337_posting.Designer.cs new file mode 100644 index 0000000..d1375e9 --- /dev/null +++ b/Project-Unite/Migrations/201703181945337_posting.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class posting : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(posting)); + + string IMigrationMetadata.Id + { + get { return "201703181945337_posting"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703181945337_posting.cs b/Project-Unite/Migrations/201703181945337_posting.cs new file mode 100644 index 0000000..32d4a70 --- /dev/null +++ b/Project-Unite/Migrations/201703181945337_posting.cs @@ -0,0 +1,36 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class posting : DbMigration + { + public override void Up() + { + AddColumn("dbo.ForumPosts", "Parent", c => c.String(nullable: false)); + AddColumn("dbo.ForumPostEdits", "Parent", c => c.String(nullable: false)); + AddColumn("dbo.Likes", "User", c => c.String(nullable: false)); + AddColumn("dbo.Likes", "Post", c => c.String(nullable: false)); + } + + public override void Down() + { + AddColumn("dbo.Likes", "User_Id", c => c.String(nullable: false, maxLength: 128)); + AddColumn("dbo.Likes", "Post_Id", c => c.String(nullable: false, maxLength: 128)); + AddColumn("dbo.ForumPostEdits", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + AddColumn("dbo.ForumPosts", "Parent_Id", c => c.String(nullable: false, maxLength: 128)); + DropColumn("dbo.Likes", "Post"); + DropColumn("dbo.Likes", "User"); + DropColumn("dbo.ForumPostEdits", "Parent"); + DropColumn("dbo.ForumPosts", "Parent"); + CreateIndex("dbo.Likes", "User_Id"); + CreateIndex("dbo.Likes", "Post_Id"); + CreateIndex("dbo.ForumPostEdits", "Parent_Id"); + CreateIndex("dbo.ForumPosts", "Parent_Id"); + AddForeignKey("dbo.ForumPosts", "Parent_Id", "dbo.ForumTopics", "Id", cascadeDelete: true); + AddForeignKey("dbo.Likes", "User_Id", "dbo.AspNetUsers", "Id", cascadeDelete: true); + AddForeignKey("dbo.Likes", "Post_Id", "dbo.ForumPosts", "Id", cascadeDelete: true); + AddForeignKey("dbo.ForumPostEdits", "Parent_Id", "dbo.ForumPosts", "Id", cascadeDelete: true); + } + } +} diff --git a/Project-Unite/Migrations/201703181945337_posting.resx b/Project-Unite/Migrations/201703181945337_posting.resx new file mode 100644 index 0000000..5b261db --- /dev/null +++ b/Project-Unite/Migrations/201703181945337_posting.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703182010332_no-more-topic-fks.Designer.cs b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.Designer.cs new file mode 100644 index 0000000..a09980c --- /dev/null +++ b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class nomoretopicfks : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(nomoretopicfks)); + + string IMigrationMetadata.Id + { + get { return "201703182010332_no-more-topic-fks"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703182010332_no-more-topic-fks.cs b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.cs new file mode 100644 index 0000000..ee85ac9 --- /dev/null +++ b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.cs @@ -0,0 +1,20 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class nomoretopicfks : DbMigration + { + public override void Up() + { + DropColumn("dbo.ForumTopics", "ForumCategory_Id"); + } + + public override void Down() + { + AddColumn("dbo.ForumTopics", "ForumCategory_Id", c => c.String(maxLength: 128)); + CreateIndex("dbo.ForumTopics", "ForumCategory_Id"); + AddForeignKey("dbo.ForumTopics", "ForumCategory_Id", "dbo.ForumCategories", "Id"); + } + } +} diff --git a/Project-Unite/Migrations/201703182010332_no-more-topic-fks.resx b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.resx new file mode 100644 index 0000000..e4884ae --- /dev/null +++ b/Project-Unite/Migrations/201703182010332_no-more-topic-fks.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703182057594_topic_discriminator.Designer.cs b/Project-Unite/Migrations/201703182057594_topic_discriminator.Designer.cs new file mode 100644 index 0000000..66a9f77 --- /dev/null +++ b/Project-Unite/Migrations/201703182057594_topic_discriminator.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class topic_discriminator : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(topic_discriminator)); + + string IMigrationMetadata.Id + { + get { return "201703182057594_topic_discriminator"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703182057594_topic_discriminator.cs b/Project-Unite/Migrations/201703182057594_topic_discriminator.cs new file mode 100644 index 0000000..5970448 --- /dev/null +++ b/Project-Unite/Migrations/201703182057594_topic_discriminator.cs @@ -0,0 +1,18 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class topic_discriminator : DbMigration + { + public override void Up() + { + AddColumn("dbo.ForumTopics", "Discriminator", c => c.String()); + } + + public override void Down() + { + DropColumn("dbo.ForumTopics", "Discriminator"); + } + } +} diff --git a/Project-Unite/Migrations/201703182057594_topic_discriminator.resx b/Project-Unite/Migrations/201703182057594_topic_discriminator.resx new file mode 100644 index 0000000..d49a2f6 --- /dev/null +++ b/Project-Unite/Migrations/201703182057594_topic_discriminator.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703191415273_locking.Designer.cs b/Project-Unite/Migrations/201703191415273_locking.Designer.cs new file mode 100644 index 0000000..1e1a28a --- /dev/null +++ b/Project-Unite/Migrations/201703191415273_locking.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class locking : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(locking)); + + string IMigrationMetadata.Id + { + get { return "201703191415273_locking"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703191415273_locking.cs b/Project-Unite/Migrations/201703191415273_locking.cs new file mode 100644 index 0000000..ca2de5c --- /dev/null +++ b/Project-Unite/Migrations/201703191415273_locking.cs @@ -0,0 +1,18 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class locking : DbMigration + { + public override void Up() + { + AddColumn("dbo.ForumTopics", "IsLocked", c => c.Boolean(nullable: false)); + } + + public override void Down() + { + DropColumn("dbo.ForumTopics", "IsLocked"); + } + } +} diff --git a/Project-Unite/Migrations/201703191415273_locking.resx b/Project-Unite/Migrations/201703191415273_locking.resx new file mode 100644 index 0000000..30a0bd5 --- /dev/null +++ b/Project-Unite/Migrations/201703191415273_locking.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + H4sIAAAAAAAEAO1d3W7cOJa+X2DfoVBXM4O0K3amg97AnoFdjrs9E9uFOMnuXhlyFe1oo5JqJJUT72KfbC/2kfYVlhQp8V8ixaP6aRgBAhdJfSQPD/8Oye/83//87/FffyyT0RPKizhLT8aHB6/HI5TOs0WcPp6M1+XDT7+M//qXf/6n4/eL5Y/RlzrdG5IOf5kWJ+OvZbl6N5kU869oGRUHy3ieZ0X2UB7Ms+UkWmSTo9ev/2VyeDhBGGKMsUaj44/rtIyXqPqBf06zdI5W5TpKrrIFSgoWjmNuK9TRdbRExSqao5PxLM/+A83Lu89pXKIDmn48Ok3iCJflFiUP41GUplkZlbik7z4X6LbMs/TxdoUDouTT8wrhdA9RUiBWg3c8uWtlXh+Rykz4hzXUfF2U2dIT8PANk85E/byXjMeN9LD83mM5l8+k1pUMT8an60VcfsgexyM1s3fTJCcJzSI+qD98NWLRP1XRrxqlwLpD/r0aTddJuc7RSYrWZR4l+IP1fRLP/46eP2XfUHqSrpNELCQuJo6TAnAQzmWF8vL5I3pgRb9cjEcT+buJ+mHzmfANrRRWA6zT49FV9OMDSh/Lr1jbj34Zjy7iH2hRhzC9wDXDXQB/VOZr/PMaFzi6T1ATP2nN8wN6QkmTLdbIRnYsxhPvE+4pRRktVzXmeVQiEuiNhHtD3ioR/KeTRNqzOUfFPI9XVINB8zqecIVuVfMzrNdocTnzVvP6wxc172rl08UiR0WxrRa+yPL1cop7wmOWP3s3s/T1S1t3tTX5f4+HDcMYHaffPufJ4PnMohyl5Vb7yAzly7goKqn26SX8+5d+0tXc9YgCMsl65v0xS9A28uX6UUiLHh4+w/MEKjuAPZU6S5IbNlT0Uurm+xel3s7gfx09xY9Ve6n6hJtmPPqIkiqy+BqvmEIpDXdHE17k2ZKovqYYVfzdbbbO56T4WUuiT1H+SBTUtYhfshIV7WUkSe5qDTWUUYhvstfKKCaqKxLWZ/r3lpd+skvrl8vidF7GT02/PMuw5kSp/yI+SbLvV7jh4iesayBoRGmnX6P0ERXeeNYeRztBR5/zGResfc40eDgPXWy111bIuzqRoYAszj5o1QlMA5bfYPApW8XzfqNB9enLcLCxpb/vMBSTYWgZp1GZ5RsYiD5k829oETp0sCmVglym5Zsjb4jbMspLtDgtg+1kt+t7otqDC+90XX7NNmGRuyxuy3j+7Tm0lfC0g4eKdToPnioui89pEhdluOZcFr8m2X2UwE023StQl0HcOsOoo3zYiu5LNW/3XdWRr1+Gct91CNzS3zrTm/YHroUkZn6HItJktgKS2I7iVUmCliKnqxXWo6qYtDS+h1Ly9y+a3Gn3jIry72n2Pb2cDWO/17P8WxanILMyKfuH7DFOg5EuC3rMEz71XK0BZjBaGAAJVaUBwKEFOnseXDeqAm8gnylOucJ6WIpLzLd/9hdMnA1e1kr4+SYOJ06fIrxk3kROeE+ySqLnjRwjXeAm3UhG/4rui7gcPp9/z9bl+h5top1un/GKfLkR6eEOiPD8Uw4/Af2W3d/HaPh83i+juK2Jjn5+C5XLNEsf4nwZPvXMoqL4nuWL36Li6/DahebrHC8Ab8XLLMMdvX7NUnS9Xt6j4a0gQl5gTfPpe3YRzcssf5+Sr4LxiJ0GjyTv0wVZF3wu5/oywREApDin8zlefV5gZUaLabbmlrJ+xh+y/O8Yt1z7X+/N4TSJ4qXZRq1sVO7qpHz3ZU6h7cAsyXy3iNU62q2odVJ7UWmKzqKyZL5FJWBuJWUp7QWtEnSWk6YK2tdeLlAVRPCqFmrb2V41tzlPi9U1Kg/qrw8o7kWOMfEg/e1Ag301cv6Yb4aPXDfDbw7vH9788vPbaPHm7Z/Rm583vzG2jQWCGG/xCIl+RXjJjIexxSwq8bIi5S0QfCVyqJsipPlIpsPvfUhOX6JkDZ1Vr97ANvDQvaGC3f3eUBUTBz/FC7IqmXR/USfG8E7pa3327XNKyTZ+WCZWc9OZb2YM6NVdyFwE31sI6u53FrMqG5PWd998tX5bo3/nXb3Nahwz6xfl+0Vc9j1Mol+/mOB39V7Ahh5/ECX4iKJiA5egZjl6irN1cYvVdPh1FKlYD+u6fyfs3wFfOt+udr6N3fQ4yxbDH6cQXRuyK3Steoy9gC5qQDrA6CwqkHCVvV4YVeXamTug0yzJ8t/Qjw2Ms3GWV3vpEAvdNEq/xOg7Dn2Ikx53Q3U4MiLffE8ZIhAgcPnIrJsKdkkgOIjiXRbFGp1FKRTU5QwQrDrmAMQjJ80AWB8R/rJAZ+s4CbaAY7izhLzEDoahtnQ8Dk5nYGini2WcAuKdoycQNNILxNebMUhfOMftWiJ4XDJTVvelocDI5SsorI9olcBVk6zC1wXYwMmM+UAtC4uGJx2wRqWIwHBkVsyEs/VgQFg0XDxAbaGYwOoH2cQEDxQMsHmrJQ8gFmzTkmumlynUmEcVhSyhINBO0yx9Xsb/CQZYDaLf4hSyKQDhoLD4EAAKCIX2eUVewoGVLfueQuLRZxyQgxNFBIOr34dAFrHGBAOkD0Ygi0gRweCusidQCRI8MDD6cAeyeBQRDI5cVAIuHjAiKSFw8cDgiJGmOitIHzI/OGf73of4m799j3z0YuB2OeXZvHmbHlsMm6v3+Tn82fl+nJvvi6pu+7omW7cbLhaK7X3HkvFbhXqsdqXQkMTvPuF6KSi0Qh94WVwk0WNR178nj2MFBnVe8jldoDx5xk0onhDI7XCFyPXoukrEujgeVdfSTsavtUaTEpOS5/Q1O/vgsP0DOgiytEe6zKl0WyQ+07iLGqEzJfOUugq4NcFfZylylXtl744WrlKvkq+SZ5vkDenpvMGSv3FpqNOiyOZxJXL53Jw/ypazfJ8uRl00G/ykTyDKqVhRyM1g3EGxqA4O9Oq3YDevvxVsxrshg+vIeDRHBCeOyFuPAmtAnJb60B+n83gVJR2FUL5znDRICzQ5qDHnaIVSMsh1yLZ/1k0OykzWJZnjiaAijpojEsd0trCRXcqgQfULcLmp/+SiREaiGgclPVTlfXzDrCMjQhdE+IinUTGPFvosiTvbIlCK4rv3zioaH8EbqkjpDXrI0Eiw5dxMW5Gk5ZGIrapdL0Z4ZbVn9kNV1qV8hsYwPJfoavFeA2S7xDYwTLaLxKUA1kuxmxgwLU+DXBVAfSe0awqqPFCyKCh7wbARBZUltgUFlUWydwpKj31d2195HrZr6im/S7NoJzV6bEQ5JXFtQTcleey8ahq4d9zWMDIRD/gSSSLx2YbOe8jQYJexVbLNSGO52LmZXt1iGtp8l7ZLaQP92S4Jl8zNT34G6czUSIe/KfEX3ITFO8j5PYlEP0xX93HFmGmottipmkHAb1GpGPuK8YgbBxU/IobOLYPUXixMINw1RgeIdhtOg1J8MLjgzUS2cDPgTCCsd4JsdnF2SGGj5wrZCuYGU5/JmXGYKci1PIwh014mOg90wDFrtq5a6nDfgaNt2Uyghn2dB2xNPNAKy1bjHrDsKmArKh1y3VqGvntraZn6WZ0rXCtUJww5JjUh0DPXjo+7ZGOUizBqGtS2ocoUktnoNNWh3MF229RA7rnarOBgqlWh6t6rTu5yfX1kIRFUt8jDao90t0ia5NIMki7SMdkgnYQdIiCJOrNFQFZTo7ux0VQXNsS6iMdkXvSQeQ8h2ShkdDG52BF9LIlCvdj00SKhDqufgGWaQsClVE8i3VIyGbN8zFlBUlJMTxYp1ZUBlxIb97uFZDCoeJhUgkQkmz8sEmIVAR6R6IqoazzS9/Suu3qIsUjax3cJuodETHcidIl07dBd9+hCBYxN6rqlBlKT+qJGswds4o4n1EUpCzieWHyZHl9Fq1WcPgq+TVnI6JY6Np3+dOvv73NJMSZzSc7qjrXJqczy6BEpsZQe9SLOi/I8KqP7iNxvmC6WWjLjjteyoKyzVDe1eivWS836C/J3/e605f6KwUjAEC5wHZfEzFBRQwkaYP90RDzNRkmUG65FTbNkvUztFg/71+y+jgjAgtwxBOefIo4Q7I5V2z9FIJtN1I4iPXEWoaQIHe94orSPZrjRdEGzqsnK5aR63BQSrHqN5cRf9eyfDqN6Dbm3CNEE7kzjqCam4CaSLVL+7dTx/TCNRS9Cit/TkOH7pHXkqt1jSmNXHeiOU+/9RZg6bLeUULRLwmihYMbsqYdtCMNooui/UkQRw93RahO9iGQz27fokGgxlhRJjNgxbRJ2/kDaxC3YfbWpBWHb49q22wqylULaZ1MtAz1fcHeEUpmaUI+Fi+KQUFq/KHGeqJJjQg1Xit0tDWWGaBgVpadOPXXU8vEwSuq3eLCquuwOT1J2OcpH3Wund7K616HuSMzKI8JYDD92DMHvnYgjBHtg1Z7vJKQ60KPDNXxnUkdrQn1kXbuuk2Vdh3oNUo3zOmWYasJ90LgDOxmNh/ug1U7sZKw6dLcGJG6fhJs2q9PrgKnT/H3YyLQlGdvspr6WMuVIv4fBrAthILuZwUmZtBE1xLujc39kIiYP9Ssnu3+gFs94LaFVYo1LMnkAqEN9kJhTMhmIBbrjcK9kIhAPdUdq3JKJQE2gb4nOnk0lOvOaChq/Y1qJ/HBEv2LSflkI96gf8S4mVY0EeMon1+w2QrDHBM59g0kzOA/2WoJx71/KAoxHuONxD18iGA91R2pceIlATaA7juiiS4QSwz0WYYIXLmkdJoR7jAfc0ZY0IvBgd6zGlZaI1AS64zBXWSIKC/LEELwtaWBCnM+mQ3SIJW89xBiP1pS9XkkNKkd5lFL0bSUVUozohWeRqDmFxzmW5s1KOs7SYj1mYd2vlTQb69E9sA1lVuM8xlbd9ZU0xurRfmd8+sjBQ3dmkWu4/RO84tXvm/qveR0whln1wpzOCn6FpAUJD/bEYp6DNDAWvpP6ZL3KFaBPdEUfpk8WDPvoI/nkkQefVkdCdsyZ6GhHGuDbHA3Z8fy0dgd0w3aDLUA1dFp4b80wQww7VPgdz23X3lRfsoeyN7E7+b3tTbbvd9kSDqM1on8XackthPsMR5ILF3lAkqL8SqjbG3jo7uk2pF6H6PR+6TPcGQN1miLZTKoQjxo1HlGkOjWhO6NzQNNf4JTnN93t1lk3d7siW/zqUJ/Br/arIo97dajPvR3Ft4p8eUeJ9MJVnawoyGq0N7a1zHKkNy53vGLA5ZG9cc0FFmK9kLkvFgWUR/jjMYcsJkQW5Y/J/bKYYHmsPzL10GJCpTFeiLKfFgVUjvTCpQ5bFDwa6IUjeWxR4KS4HqiN5xYjbhPbA5n5cDHisjjv/qS9Mjf0Ki2NVy4W3y5KPpZUXjmJ3l4UeDHKG5O9szRAWp67diI2rl8MmE2cNyr3/GCA5ZHeOsKe6xg0w/I4yEEfzJhSXA9UgSTciCzE90BvhQ7A5f5EbIVm0T2w24D7o0puRmyF7qlxqj8ZI3yANtt1RIn1Rm6B7Y1p1Q050n/dZwXti9imE1q839padEOjLq3FuB56xp5SGpXM8ki2FVV1S6NO1kq0/xhPPZmYBvhvhsfJju1mBJUjvXHtoH0QVbc11kGnN3YbcB9UyZONgirF+ZVV9mijllaO9ULWfNso2Fp8D/RW6F64Boc3WpfTUvTKoQO+F7bmCUcB1+J7oLdC98JV3OMowEqsN3ILbC9MzV+O2hfV+B7ordC9cBUnOgqwEutb4lZsLd673C2FDihxa3F74cqudgw2Ox5pxJ1mKZ7NCD8io9Cn/ExebxxC7dAd1uPLgvx98/CH1lNUUu4/7ok9+VozKl5bLIkDi7ZTorsnUE1hZWKxjSpuzwMUyq8W3E4VHZt/+5g/G0bRKeuNelrseyqmn4htozFlZpfWF7uMns3vUS77yPPhLeGwUe82t/Cv6VJzavUKwkyVKuTfs2hWutjeCmkvlUrQ07+lJZ45nxdKzUde75DahGkgkuspTAYC2dIG4rx9bGnuFM+5neknsK0sUnT1FGMFAd7CIhnZjrSvxrilJmlmDBbS/G4YtxjblUTDVVWHkGpV1SgY85ZKf0WTjEf1ncj66cUBSXBw+49kmsTVZZU6wVWUxg+I7LSIa67x0evDo/HoNImjgvKiMWKvdyo7tBPT1+EbwvSFFsuJ+rk/XxhBKYqFRDSge1A0E2Vtwvtg+hTl869Rrvsf9HQuyIi2KGpM2soTQGDYoiCLqERlvOznklOv4R+W0Y8/iljUm187lHRlxRvP2YOmma1qr9q/eRg6nJRauKL2SlR0+7p17TT04ZpwCgCrvl44sDrMLJRNe6UQIttTh7yc8OpL5RBYM5H0yXV092xDy35tr9oQrFM3u0e1gJqni8t0gX6cjP+r+vDd6PLf7ti3r0Y3OV4kvRu9Hv23Z8X8W26bbeYgkiBpDD/kcsomCnYf+6+cVJqmQCSJmMkVy09vDLRGe9XZHSc3N42S7a4gOlXzIvXXBEaK1H85L7AhBS7nGzYkANHwxwogcq45kfrLWeRCCkHhHEghKDX70TC93mzH2auOL5j8esxFzdegU1JjoupRIvbtJhYMrdxGe6UEJjokgOGEMyIFDpgCH1IgEqdDChlVGBNSfwjOgRRYn4YDKRCHUyABtHtDgwSAJfIg1fJ+7DN9V0xIAAUSuJAgpm/OhgRhPhHZkADwOCESAFhDigSAJbIiAcCJtEgQyyhOjASA1pAjAWAxiqSW6ePo57e9QAVKn/7DokyQBNGwMj0ShDFDpEeCxQMRoc6D1B/LQHxkn2aczLEK4VHAvl5nOOq/s+PcRr4LzvrLKvjViOxa4n+sccQnLA1l5an0rJCVZwfD0CbWnpWcq8PtXxGeD7FCLGZRice9lBcP6JzLed0PvA0RGI8gFjIC5dFwRwgdXEFumtFBDWT4YtZG/ePsR71b/5SSQRvBxFoAY29TtXtpj35/0015bHwwzg64u7Vgt4YJ89mUU2nopxs83DCRDu2VpQLSTg14q0KkLoJYFMrERUAF7GEo8NevF92CN8tTKiGQk9hiUC2w3/3fK0XotxcglYbbCwx/UMv5hkBGrJpyyLgNcyqPSjJk3B06IqmkQqFYcKXixEFQSIGF4vxAwSiMEygYh5MABUNR5p8QGJnrJwSJsvyEIEjEPuFADZNPOBQj7wnVaY09JwTQQsgTAimS8ITiMMaHUJiGbCcUiFNbhLYiY78JbzswIOEtcDgYHBJnPwnHAgOSWE7C4eDUCqgRRTIbiDVGuNwFzhqAAsEIXGKlCdcCRhYTNNEoxDPB4x1lGIGQOAwSAIxKIgPQfcOBJKqYoBLJ3DAhUBoVTDgYBJKB6QUCDgJLI3IJB4NAUrhaQqEgcDQ6lnAwCCSFcSWwUHBgIqlKeKEgkGTilN5IrRehh7L06/wOe2V74w+tg9/5VEQR/kg2SQvvjWWjd5LcMdOxXJ736aIyCkpPBFiByJNe0ZvyqHrtQO6T4pyx5LTKKWCcYULEoqEy1OuDAx0NNzsiJY4jcnGnKPMo1gkzZnmczuNVlOi1UJI6KhSRbQOqxpyjFUqJ/VirZv/MGkxFr7uqLz0ud9QBkcUDqOkONX6AG7YoG5E3NuTx9zQq5tFC7wvk3XxnKW4kY7JcljpOLtGfADUpsG39FcnMoGLMsoXwZJM6JfKFDNCaQ+vXF+HxllweGjOsbnk0N5SGWTxQ6xm2Eq1sQMOUpwt3Jvd5QouqLx3ENtXiNqJj+g04sUyG2EF0rds/NriuuTgo9LiUsw1lM/nW2xtlk56haMrGYn+PymbzXrjjymbwVrQ3ukYpDS2qRiN/j5pmIZ7cMUUzkH3tj5Ztd4m2Bf3yX6K18KRtQLvEm1R39Lyja8SwjhamkeJ3PHp18NfuxtBl85I6gHIpLHjN7S+FsU7TL0ZZ2FxoZIRuI24dq4ewJoqy3p2MF/fEbEotbHWsxmytZdFwhulZ8ChTFnVsdxYy4ZaejxJvyqzDv5M5yxkndbJkKqawZjsTqYuc8hX2/pZ8hRT2fJtEHvm25diRl2MuzHRqzoZFWvMx063bq0PnQ3uVaHxrtRgFSUeO2opA73BqCmO/K1bXqDT6aNGyNOyXtUwNadqzZTYFn7zZ9qk1b5amPW+2xfTJm85IrVnTJO05Gx1/2bSKPcewalUd36JVtVtr5xzbcuvIyV2gHcLsEqSbEKuTLj0TGmwCp8TrKqzMI2s72hkJydSubzz+sR4ANdWQg7WVgPHYQP2YhqorNLlKPtWVuMhbqmw97QgpeLtd24RQx8EJQKLobhGA1TQPVYm2/ZoJhcYEC8JiGTaIwsWG3L4NFqqhxbUIwzpbSf4nhFhwodTTS7dQTLbOwYUiTaOaUFgsuFDYoN0tE5sD8SFFIk5ImkRoJPAYQovXNYKY7B8DiGJz44fBcGEQQpd5o8XAYWhDU/ttRBM0ivkm7nhCFyAsAP/UqOTxln6dktd39Nc5KuJHDkEc3aRoLm3mmzTkXlJtU1BKVCdRLsNcoTJa4J3+aV7GD9GcvGcirzbiFO/amSOd98t7vIlOb9blal3iKqPlfSK95ie2ibb8jydamY/ZrhGiCriYMXmweJOypzis3BeGKzwWCGL0YHQVpC1LQlvx+NwgXWepIxATX2Or+YSWqwSDFTfpbUS4T/3LhtXvA3qM5s+c3sAG0t0QstiPz+PoMY+WBcPg3+OfWIcXyx9/+X+bTluEyiEBAA== + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.Designer.cs b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.Designer.cs new file mode 100644 index 0000000..ce75663 --- /dev/null +++ b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class acl_unlistedtopics : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(acl_unlistedtopics)); + + string IMigrationMetadata.Id + { + get { return "201703191721171_acl_unlistedtopics"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.cs b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.cs new file mode 100644 index 0000000..cee6b81 --- /dev/null +++ b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.cs @@ -0,0 +1,18 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class acl_unlistedtopics : DbMigration + { + public override void Up() + { + AddColumn("dbo.AspNetRoles", "CanSeeUnlistedTopics", c => c.Boolean()); + } + + public override void Down() + { + DropColumn("dbo.AspNetRoles", "CanSeeUnlistedTopics"); + } + } +} diff --git a/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.resx b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.resx new file mode 100644 index 0000000..461f811 --- /dev/null +++ b/Project-Unite/Migrations/201703191721171_acl_unlistedtopics.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/201703192025145_dislikes.Designer.cs b/Project-Unite/Migrations/201703192025145_dislikes.Designer.cs new file mode 100644 index 0000000..ff1d2e2 --- /dev/null +++ b/Project-Unite/Migrations/201703192025145_dislikes.Designer.cs @@ -0,0 +1,29 @@ +// +namespace Project_Unite.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.1.3-40302")] + public sealed partial class dislikes : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(dislikes)); + + string IMigrationMetadata.Id + { + get { return "201703192025145_dislikes"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/Project-Unite/Migrations/201703192025145_dislikes.cs b/Project-Unite/Migrations/201703192025145_dislikes.cs new file mode 100644 index 0000000..e112f27 --- /dev/null +++ b/Project-Unite/Migrations/201703192025145_dislikes.cs @@ -0,0 +1,26 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity.Migrations; + + public partial class dislikes : DbMigration + { + public override void Up() + { + AddColumn("dbo.Likes", "LikedAt", c => c.DateTime(nullable: false)); + AddColumn("dbo.Likes", "Topic", c => c.String(nullable: false)); + AddColumn("dbo.Likes", "IsDislike", c => c.Boolean(nullable: false)); + DropColumn("dbo.ForumTopics", "Votes"); + DropColumn("dbo.Likes", "Post"); + } + + public override void Down() + { + AddColumn("dbo.Likes", "Post", c => c.String(nullable: false)); + AddColumn("dbo.ForumTopics", "Votes", c => c.Int(nullable: false)); + DropColumn("dbo.Likes", "IsDislike"); + DropColumn("dbo.Likes", "Topic"); + DropColumn("dbo.Likes", "LikedAt"); + } + } +} diff --git a/Project-Unite/Migrations/201703192025145_dislikes.resx b/Project-Unite/Migrations/201703192025145_dislikes.resx new file mode 100644 index 0000000..1ae814d --- /dev/null +++ b/Project-Unite/Migrations/201703192025145_dislikes.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/Project-Unite/Migrations/Configuration.cs b/Project-Unite/Migrations/Configuration.cs new file mode 100644 index 0000000..a53d73e --- /dev/null +++ b/Project-Unite/Migrations/Configuration.cs @@ -0,0 +1,32 @@ +namespace Project_Unite.Migrations +{ + using System; + using System.Data.Entity; + using System.Data.Entity.Migrations; + using System.Linq; + + internal sealed class Configuration : DbMigrationsConfiguration + { + public Configuration() + { + AutomaticMigrationsEnabled = false; + ContextKey = "Project_Unite.Models.ApplicationDbContext"; + } + + protected override void Seed(Project_Unite.Models.ApplicationDbContext context) + { + // This method will be called after migrating to the latest version. + + // You can use the DbSet.AddOrUpdate() helper extension method + // to avoid creating duplicate seed data. E.g. + // + // context.People.AddOrUpdate( + // p => p.FullName, + // new Person { FullName = "Andrew Peters" }, + // new Person { FullName = "Brice Lambson" }, + // new Person { FullName = "Rowan Miller" } + // ); + // + } + } +} diff --git a/Project-Unite/Models/AccountViewModels.cs b/Project-Unite/Models/AccountViewModels.cs new file mode 100644 index 0000000..7fe0248 --- /dev/null +++ b/Project-Unite/Models/AccountViewModels.cs @@ -0,0 +1,119 @@ +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; + +namespace Project_Unite.Models +{ + public class ExternalLoginConfirmationViewModel + { + [Required] + [Display(Name = "Email")] + public string Email { get; set; } + } + + public class ExternalLoginListViewModel + { + public string ReturnUrl { get; set; } + } + + public class SendCodeViewModel + { + public string SelectedProvider { get; set; } + public ICollection Providers { get; set; } + public string ReturnUrl { get; set; } + public bool RememberMe { get; set; } + } + + public class VerifyCodeViewModel + { + [Required] + public string Provider { get; set; } + + [Required] + [Display(Name = "Code")] + public string Code { get; set; } + public string ReturnUrl { get; set; } + + [Display(Name = "Remember this browser?")] + public bool RememberBrowser { get; set; } + + public bool RememberMe { get; set; } + } + + public class ForgotViewModel + { + [Required] + [Display(Name = "Email")] + public string Email { get; set; } + } + + public class LoginViewModel + { + [Required] + [Display(Name = "Email")] + [EmailAddress] + public string Email { get; set; } + + [Required] + [DataType(DataType.Password)] + [Display(Name = "Password")] + public string Password { get; set; } + + [Display(Name = "Remember me?")] + public bool RememberMe { get; set; } + } + + public class RegisterViewModel + { + [Required] + [EmailAddress] + [Display(Name = "Email")] + public string Email { get; set; } + + [Required] + [MaxLength(25, ErrorMessage ="Your username must be less than 25 characters long.")] + [MinLength(5, ErrorMessage ="Your username must have a minimum of 5 characters.")] + [Display(Name = "Username")] + public string Username { get; set; } + + + [Required] + [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] + [DataType(DataType.Password)] + [Display(Name = "Password")] + public string Password { get; set; } + + [DataType(DataType.Password)] + [Display(Name = "Confirm password")] + [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] + public string ConfirmPassword { get; set; } + } + + public class ResetPasswordViewModel + { + [Required] + [EmailAddress] + [Display(Name = "Email")] + public string Email { get; set; } + + [Required] + [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] + [DataType(DataType.Password)] + [Display(Name = "Password")] + public string Password { get; set; } + + [DataType(DataType.Password)] + [Display(Name = "Confirm password")] + [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] + public string ConfirmPassword { get; set; } + + public string Code { get; set; } + } + + public class ForgotPasswordViewModel + { + [Required] + [EmailAddress] + [Display(Name = "Email")] + public string Email { get; set; } + } +} diff --git a/Project-Unite/Models/AddUserToRoleViewModel.cs b/Project-Unite/Models/AddUserToRoleViewModel.cs new file mode 100644 index 0000000..4cd37ec --- /dev/null +++ b/Project-Unite/Models/AddUserToRoleViewModel.cs @@ -0,0 +1,17 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Linq; +using System.Web; + +namespace Project_Unite.Models +{ + public class AddUserToRoleViewModel + { + [DisplayName("Username")] + public string Username { get; set; } + + [DisplayName("Role")] + public string RoleId { get; set; } + } +} \ No newline at end of file diff --git a/Project-Unite/Models/AdminViewModels.cs b/Project-Unite/Models/AdminViewModels.cs new file mode 100644 index 0000000..56edbdd --- /dev/null +++ b/Project-Unite/Models/AdminViewModels.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Linq; +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite.Models +{ + public class AdminAccessControlViewModel + { + public AdminAccessControlViewModel() + { + + } + + public AdminAccessControlViewModel(Dictionary modelList) + { + ACLList = new List(); + foreach(var v in modelList.Values) + { + ACLList.AddRange(v); + } + IDs = modelList.Keys.ToList(); + } + + public List IDs { get; set; } + public List ACLList { get; set; } + } + + public class AddForumCategoryViewModel + { + public string Name { get; set; } + public string Description { get; set; } + public string Parent { get; set; } + + public string StealPermissionsFrom { get; set; } + + public IEnumerable PossibleParents { get; set; } + public string Id { get; internal set; } + } + + public enum PermissionPreset + { + None = 0, + CanRead = 1, + CanReply = 2, + CanPost = 3 + } + + public class ModeratorBanListViewModel + { + public IEnumerable UserBans { get; set; } + public IEnumerable IPBans { get; set; } + } + + public class AuditLog + { + public AuditLog() + { + + } + + public AuditLog(string uid, AuditLogLevel lvl, string desc) + { + Id = Guid.NewGuid().ToString(); + Level = lvl; + UserId = uid; + Description = desc; + Timestamp = DateTime.Now; + } + + public string Id { get; set; } + public AuditLogLevel Level { get; set; } + public DateTime Timestamp { get; set; } + public string UserId { get; set; } + public string Description { get; set; } + } + + [Flags] + public enum AuditLogLevel + { + Admin, + Moderator, + User + } +} \ No newline at end of file diff --git a/Project-Unite/Models/ForumCategory.cs b/Project-Unite/Models/ForumCategory.cs new file mode 100644 index 0000000..da5a9c9 --- /dev/null +++ b/Project-Unite/Models/ForumCategory.cs @@ -0,0 +1,211 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; +using System.Linq; +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite.Models +{ + public class ForumCategory + { + [Key] + [Column(Order = 0)] + public string Id { get; set; } + + public virtual ForumCategory[] Children + { + get + { + var db = new ApplicationDbContext(); + return db.ForumCategories.Where(x => x.Parent == this.Id).ToArray(); + } + } + + public string Name { get; set; } + + public string Description { get; set; } + + public string LinkUrl { get; set; } + + public ForumTopic[] Topics + { + get + { + return new ApplicationDbContext().ForumTopics.Where(x => x.Parent == this.Id).ToArray(); + } + } + + public virtual string Parent { get; set; } + + public ForumPermission[] Permissions { get + { + var db = new ApplicationDbContext(); + return db.ForumPermissions.Where(x => x.CategoryId == this.Id).ToArray(); + } + } + } + + public class ForumPermission + { + [Key] + public string Id { get; set; } + + [Required] + public string CategoryId { get; set; } + + [Required] + public string RoleId { get; set; } + + [Required] + [EnumDataType(typeof(PermissionPreset))] + public PermissionPreset Permissions { get; set; } + } + + public class ForumPost + { + public string Id { get; set; } + + [Required] + public string Parent { get; set; } + + public string AuthorId { get; set; } + [AllowHtml] + public string Body { get; set; } + public DateTime PostedAt { get; set; } + + public virtual ForumPostEdit[] EditHistory + { + get + { + return new ApplicationDbContext().ForumPostEdits.Where(e => e.Parent == this.Id).ToArray(); + } + } + } + + public class ForumPostEdit + { + public string Id { get; set; } + [Required] + public string Parent { get; set; } + + public string UserId { get; set; } + public string EditReason { get; set; } + [AllowHtml] + public string PreviousState { get; set; } + public DateTime EditedAt { get; set; } + } + + public class ForumTopic + { + public string Id { get; set; } + [Required] + public virtual string Parent { get; set; } + + public Like[] Likes + { + get + { + return new ApplicationDbContext().Likes.Where(l => l.Topic == this.Id).Where(x=>x.IsDislike==false).ToArray(); + } + } + + public Like[] Dislikes + { + get + { + return new ApplicationDbContext().Likes.Where(l => l.Topic == this.Id).Where(x => x.IsDislike == true).ToArray(); + } + } + + + public string Discriminator { get; set; } + + public bool IsLocked { get; set; } + + public DateTime StartedAt { get; set; } + public string Subject { get; set; } + public string AuthorId { get; set; } + public bool IsSticky { get; set; } + public bool IsAnnounce { get; set; } + public bool IsUnlisted { get; set; } + public bool IsGlobal { get; set; } + + public virtual ForumPost[] Posts + { + get + { + return new ApplicationDbContext().ForumPosts.Where(x => x.Parent == this.Id).ToArray(); + } + } + + public virtual ForumPoll Poll { get; set; } + + + } + + public class Like + { + public string Id { get; set; } + + [Required] + public string User { get; set; } + + public DateTime LikedAt { get; set; } + + [Required] + public string Topic { get; set; } + public bool IsDislike { get; set; } + } + + public class EditPostViewModel + { + public string Id { get; set; } + [AllowHtml] + public string Contents { get; set; } + public string EditReason { get; set; } + } + + public class ForumPoll + { + public string Id { get; set; } + public string Description { get; set; } + + [Required] + public virtual List Options { get; set; } + public bool IsActive { get; set; } + public bool AllowMultivote { get; set; } + public bool AllowVoteChanges { get; set; } + + [Required] + public virtual ForumTopic Parent { get; set; } + } + + public class ForumPollOption + { + public string Id { get; set; } + public string Name { get; set; } + + [Required] + public virtual List Votes { get; set; } + + + [Required] + public virtual ForumPoll Poll { get; set; } + } + + public class ForumPollVote + { + public string Id { get; set; } + + [Required] + public ApplicationUser User { get; set; } + + [Required] + public virtual ForumPollOption Option { get; set; } + } + + //Unable to generate an explicit migration because the following explicit migrations are pending: [201703161804526_more-relationship-shit]. Apply the pending explicit migrations before attempting to generate a new explicit migration. + +} \ No newline at end of file diff --git a/Project-Unite/Models/ForumViewModels.cs b/Project-Unite/Models/ForumViewModels.cs new file mode 100644 index 0000000..2a03c4a --- /dev/null +++ b/Project-Unite/Models/ForumViewModels.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Web.Mvc; + +namespace Project_Unite.Models +{ + public class CreateTopicViewModel + { + public string Category { get; set; } + + + public string Subject { get; set; } + [AllowHtml] + public string Body { get; set; } + + public bool IsAnnounce { get; set; } + public bool IsGlobal { get; set; } + public bool IsSticky { get; set; } + + public bool HasPoll { get; set; } + public string PollOptions { get; set; } + public bool VotesChangable { get; set; } + public bool Multivote { get; set; } + public string Question { get; set; } + } +} \ No newline at end of file diff --git a/Project-Unite/Models/IdentityModels.cs b/Project-Unite/Models/IdentityModels.cs new file mode 100644 index 0000000..1cf9577 --- /dev/null +++ b/Project-Unite/Models/IdentityModels.cs @@ -0,0 +1,134 @@ +using System; +using System.Collections.Generic; +using System.Data.Entity; +using System.Data.Entity.Infrastructure; +using System.Linq; +using System.Security.Claims; +using System.Threading.Tasks; +using System.Web.Mvc; +using Microsoft.AspNet.Identity; +using Microsoft.AspNet.Identity.EntityFramework; + +namespace Project_Unite.Models +{ + // You can add profile data for the user by adding more properties to your ApplicationUser class, please visit http://go.microsoft.com/fwlink/?LinkID=317594 to learn more. + public class ApplicationUser : IdentityUser + { + public async Task GenerateUserIdentityAsync(UserManager manager) + { + // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType + var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie); + // Add custom user claims here + return userIdentity; + + } + + public Role HighestRole + { + get + { + var roleList = new List(); + foreach (var role in this.Roles) + { + roleList.Add(new ApplicationDbContext().Roles.First(r => r.Id == role.RoleId) as Role); + + } + return roleList.OrderByDescending(x => x.Priority).First(); + } + } + + public string LastKnownIPAddress { get; set; } + + public DateTime JoinedAt { get; set; } + public DateTime LastLogin { get; set; } + + public bool IsBanned { get; set; } + public bool IsMuted { get; set; } + + public DateTime BannedAt { get; set; } + public DateTime MutedAt { get; set; } + public string BannedBy { get; set; } + public string MutedBy { get; set; } + + public int PostCount + { + get + { + using(var db = new ApplicationDbContext()) + { + return db.ForumPosts.Where(x=>x.AuthorId == this.Id).Count(); + } + } + } + + public int TopicCount + { + get + { + using (var db = new ApplicationDbContext()) + { + return db.ForumTopics.Where(x => x.AuthorId == this.Id).Count(); + } + } + } + + public long Codepoints { get; set; } + + [AllowHtml] + public string Bio { get; set; } + + public string BannerUrl { get; set; } + public string AvatarUrl { get; set; } + + public string DisplayName { get; set; } + public string FullName { get; set; } + public string Website { get; set; } + public string YoutubeUrl { get; set; } + public string SystemName { get; set; } + + public string Interests { get; set; } + public string Hobbies { get; set; } + + + + } + + public class BannedIP + { + public string Id { get; set; } + public string Address { get; set; } + } + + public class ApplicationDbContext : IdentityDbContext + { + public ApplicationDbContext() + : base("DefaultConnection", throwIfV1Schema: false) + { + + } + + public void DeleteObject(object obj) + { + ((IObjectContextAdapter)this).ObjectContext.DeleteObject(obj); + } + + public static ApplicationDbContext Create() + { + return new ApplicationDbContext(); + } + + public DbSet ForumPostEdits { get; set; } + public DbSet Likes { get; set; } + public DbSet ForumPermissions { get; set; } + public DbSet BannedIPs { get; set; } + public DbSet AuditLogs { get; set; } + public System.Data.Entity.DbSet IdentityRoles { get; set; } + public DbSet ForumCategories { get; set; } + public DbSet ForumTopics { get; set; } + public DbSet ForumPolls { get; set; } + public DbSet ForumPollOptions { get; set; } + public DbSet ForumPollVotes { get; set; } + public DbSet ForumPosts { get; set; } + + } +} \ No newline at end of file diff --git a/Project-Unite/Models/ManageViewModels.cs b/Project-Unite/Models/ManageViewModels.cs new file mode 100644 index 0000000..7a84bda --- /dev/null +++ b/Project-Unite/Models/ManageViewModels.cs @@ -0,0 +1,86 @@ +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using Microsoft.AspNet.Identity; +using Microsoft.Owin.Security; + +namespace Project_Unite.Models +{ + public class IndexViewModel + { + public bool HasPassword { get; set; } + public IList Logins { get; set; } + public string PhoneNumber { get; set; } + public bool TwoFactor { get; set; } + public bool BrowserRemembered { get; set; } + } + + public class ManageLoginsViewModel + { + public IList CurrentLogins { get; set; } + public IList OtherLogins { get; set; } + } + + public class FactorViewModel + { + public string Purpose { get; set; } + } + + public class SetPasswordViewModel + { + [Required] + [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] + [DataType(DataType.Password)] + [Display(Name = "New password")] + public string NewPassword { get; set; } + + [DataType(DataType.Password)] + [Display(Name = "Confirm new password")] + [Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")] + public string ConfirmPassword { get; set; } + } + + public class ChangePasswordViewModel + { + [Required] + [DataType(DataType.Password)] + [Display(Name = "Current password")] + public string OldPassword { get; set; } + + [Required] + [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] + [DataType(DataType.Password)] + [Display(Name = "New password")] + public string NewPassword { get; set; } + + [DataType(DataType.Password)] + [Display(Name = "Confirm new password")] + [Compare("NewPassword", ErrorMessage = "The new password and confirmation password do not match.")] + public string ConfirmPassword { get; set; } + } + + public class AddPhoneNumberViewModel + { + [Required] + [Phone] + [Display(Name = "Phone Number")] + public string Number { get; set; } + } + + public class VerifyPhoneNumberViewModel + { + [Required] + [Display(Name = "Code")] + public string Code { get; set; } + + [Required] + [Phone] + [Display(Name = "Phone Number")] + public string PhoneNumber { get; set; } + } + + public class ConfigureTwoFactorViewModel + { + public string SelectedProvider { get; set; } + public ICollection Providers { get; set; } + } +} \ No newline at end of file diff --git a/Project-Unite/Models/Role.cs b/Project-Unite/Models/Role.cs new file mode 100644 index 0000000..1d5cac7 --- /dev/null +++ b/Project-Unite/Models/Role.cs @@ -0,0 +1,80 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using System.Data.Entity; +using Microsoft.AspNet.Identity.EntityFramework; + +namespace Project_Unite.Models +{ + public class Role : IdentityRole + { + public string Description { get; set; } + public string ColorHex { get; set; } + + public int Priority { get; set; } + + public bool CanViewProfiles { get; set; } + public bool CanEditOwnProfile { get; set; } + public bool CanEditProfiles { get; set; } + public bool CanEditUsername { get; set; } + public bool CanEditUsernames { get; set; } + public bool CanIssueBan { get; set; } + public bool CanIssueIPBan { get; set; } + public bool CanIssueEmailBan { get; set; } + public bool CanIssueMute { get; set; } + public bool CanReleaseBuild { get; set; } + public bool CanBlog { get; set; } + public bool CanAccessModCP { get; set; } + public bool CanAccessAdminCP { get; set; } + public bool CanAccessDevCP { get; set; } + public bool CanEditForumCategories { get; set; } + public bool CanDeleteForumCategories { get; set; } + public bool CanPostTopics { get; set; } + public bool CanPostPolls { get; set; } + public bool CanPostReplies { get; set; } + public bool CanPostStatuses { get; set; } + public bool CanEditRoles { get; set; } + public bool CanDeleteRoles { get; set; } + public bool CanDeleteOwnTopics { get; set; } + public bool CanDeleteTopics { get; set; } + public bool CanDeleteOwnPosts { get; set; } + public bool CanDeletePosts { get; set; } + public bool CanDeleteOwnStatuses { get; set; } + public bool CanDeleteStatuses { get; set; } + public bool CanEditOwnTopics { get; set; } + public bool CanEditTopics { get; set; } + public bool CanEditOwnPosts { get; set; } + public bool CanEditPosts { get; set; } + public bool CanEditOwnStatuses { get; set; } + public bool CanVoteInPolls { get; set; } + public bool CanDeleteUsers { get; set; } + public bool CanAnonymizeUsers { get; set; } + public bool CanPostSkins { get; set; } + public bool CanEditOwnSkins { get; set; } + public bool CanEditSkins { get; set; } + public bool CanDeleteOwnSkins { get; set; } + public bool CanDeleteSkins { get; set; } + public bool CanUpvoteSkins { get; set; } + public bool CanDownvoteSkins { get; set; } + public bool CanStickyOwnTopics { get; set; } + public bool CanStickyTopics { get; set; } + public bool CanAnnounceOwnTopics { get; set; } + public bool CanAnnounceTopics { get; set; } + public bool CanGlobalOwnTopics { get; set; } + public bool CanGlobalTopics { get; set; } + public bool CanMoveOwnTopics { get; set; } + public bool CanMoveTopics { get; set; } + public bool CanUnlistOwnTopics { get; set; } + public bool CanUnlistTopics { get; set; } + public bool CanLockOwnTopics { get; set; } + public bool CanUnlockOwnTopics { get; set; } + public bool CanLockTopics { get; set; } + public bool CanUnlockTopics { get; set; } + + public bool CanViewUserInfo { get; set; } + + public bool CanSeeUnlistedTopics { get; set; } + + } +} \ No newline at end of file diff --git a/Project-Unite/Project-Unite.csproj b/Project-Unite/Project-Unite.csproj new file mode 100644 index 0000000..703410e --- /dev/null +++ b/Project-Unite/Project-Unite.csproj @@ -0,0 +1,663 @@ + + + + + + + Debug + AnyCPU + + + 2.0 + {0C571DE1-E76B-4C3E-84A8-00E8938406E1} + {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} + Library + Properties + Project_Unite + Project-Unite + v4.5.2 + false + true + 44388 + + + + + + + /subscriptions/7874077a-fffc-4bd0-ba2c-d22f6861f58d/resourcegroups/Default-ApplicationInsights-EastUS/providers/microsoft.insights/components/Project-Unite + + + true + full + false + bin\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\ + TRACE + prompt + 4 + + + + ..\packages\CommonMark.NET.0.15.1\lib\net45\CommonMark.dll + True + + + ..\packages\Microsoft.ApplicationInsights.Agent.Intercept.1.2.1\lib\net45\Microsoft.AI.Agent.Intercept.dll + True + + + ..\packages\Microsoft.ApplicationInsights.DependencyCollector.2.0.0\lib\net45\Microsoft.AI.DependencyCollector.dll + True + + + ..\packages\Microsoft.ApplicationInsights.PerfCounterCollector.2.0.0\lib\net45\Microsoft.AI.PerfCounterCollector.dll + True + + + ..\packages\Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.2.0.0\lib\net45\Microsoft.AI.ServerTelemetryChannel.dll + True + + + ..\packages\Microsoft.ApplicationInsights.Web.2.0.0\lib\net45\Microsoft.AI.Web.dll + True + + + ..\packages\Microsoft.ApplicationInsights.WindowsServer.2.0.0\lib\net45\Microsoft.AI.WindowsServer.dll + True + + + ..\packages\Microsoft.ApplicationInsights.2.0.0\lib\net45\Microsoft.ApplicationInsights.dll + True + + + ..\packages\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.1.0.0\lib\net45\Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll + True + + + + + + + + + + + + + + + + + + + + + + True + ..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll + + + + + + + True + ..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.Helpers.dll + + + True + ..\packages\Microsoft.AspNet.Mvc.5.2.3\lib\net45\System.Web.Mvc.dll + + + ..\packages\Microsoft.AspNet.Web.Optimization.1.1.3\lib\net40\System.Web.Optimization.dll + + + True + ..\packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll + + + True + ..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.dll + + + True + ..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Deployment.dll + + + True + ..\packages\Microsoft.AspNet.WebPages.3.2.3\lib\net45\System.Web.WebPages.Razor.dll + + + True + ..\packages\WebGrease.1.5.2\lib\WebGrease.dll + + + True + ..\packages\Antlr.3.4.1.9004\lib\Antlr3.Runtime.dll + + + + + ..\packages\Newtonsoft.Json.6.0.4\lib\net45\Newtonsoft.Json.dll + + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll + + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll + + + ..\packages\Microsoft.AspNet.Identity.Core.2.2.1\lib\net45\Microsoft.AspNet.Identity.Core.dll + + + ..\packages\Microsoft.AspNet.Identity.Owin.2.2.1\lib\net45\Microsoft.AspNet.Identity.Owin.dll + + + ..\packages\Microsoft.AspNet.Identity.EntityFramework.2.2.1\lib\net45\Microsoft.AspNet.Identity.EntityFramework.dll + + + ..\packages\Owin.1.0\lib\net40\Owin.dll + + + ..\packages\Microsoft.Owin.3.0.1\lib\net45\Microsoft.Owin.dll + + + ..\packages\Microsoft.Owin.Host.SystemWeb.3.0.1\lib\net45\Microsoft.Owin.Host.SystemWeb.dll + + + ..\packages\Microsoft.Owin.Security.3.0.1\lib\net45\Microsoft.Owin.Security.dll + + + ..\packages\Microsoft.Owin.Security.Facebook.3.0.1\lib\net45\Microsoft.Owin.Security.Facebook.dll + + + ..\packages\Microsoft.Owin.Security.Cookies.3.0.1\lib\net45\Microsoft.Owin.Security.Cookies.dll + + + ..\packages\Microsoft.Owin.Security.OAuth.3.0.1\lib\net45\Microsoft.Owin.Security.OAuth.dll + + + ..\packages\Microsoft.Owin.Security.Google.3.0.1\lib\net45\Microsoft.Owin.Security.Google.dll + + + ..\packages\Microsoft.Owin.Security.Twitter.3.0.1\lib\net45\Microsoft.Owin.Security.Twitter.dll + + + ..\packages\Microsoft.Owin.Security.MicrosoftAccount.3.0.1\lib\net45\Microsoft.Owin.Security.MicrosoftAccount.dll + + + + + + + + + + + + + + + + + + Global.asax + + + + 201703151602344_InitialCreate.cs + + + + 201703151901273_CustomRoleSystem.cs + + + + 201703152047370_acl_rsi_inducing_booleans_jesus_christ.cs + + + + 201703152115389_role-priority.cs + + + + 201703160106134_forum_backend_base.cs + + + + 201703160141526_forum_relations.cs + + + + 201703161150361_voting-system-forums.cs + + + + 201703161217271_candeleteforumcategories.cs + + + + 201703161328360_more-acl-stuff.cs + + + + 201703161505425_relationfix.cs + + + + 201703161515127_mistake.cs + + + + 201703161536324_morerelationfix.cs + + + + 201703161607158_cdelete.cs + + + + 201703161645354_fuck..cs + + + + 201703161804526_more-relationship-shit.cs + + + + 201703161812076_FUCKFUCKFUCK.cs + + + + 201703161820307_TAKEMEWITHYOUWHENYOUGO.cs + + + + 201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.cs + + + + 201703161844454_jonny_please.cs + + + + 201703161854009_app.cs + + + + 201703161905556_dingdong.cs + + + + 201703161941448_help_me.cs + + + + 201703161947569_do_dodododo_do_do.cs + + + + 201703162001254_jonny___.cs + + + + 201703162003429_running_out_of_names.cs + + + + 201703162019023_killme.cs + + + + 201703171437322_jonathan_ladouceur.cs + + + + 201703171722189_aclrevamps.cs + + + + 201703172018334_banandmute.cs + + + + 201703172305217_auditlogs.cs + + + + 201703172359467_banning.cs + + + + 201703181305313_ip-logging.cs + + + + 201703181331309_acl_revamps.cs + + + + 201703181335599_more_fucking_acl.cs + + + + 201703181626523_bonfire.cs + + + + 201703181945337_posting.cs + + + + 201703182010332_no-more-topic-fks.cs + + + + 201703182057594_topic_discriminator.cs + + + + 201703191415273_locking.cs + + + + 201703191721171_acl_unlistedtopics.cs + + + + 201703192025145_dislikes.cs + + + + + + + + + + + + + + + + + + + + + + + + + + + PreserveNewest + + + + + + + + + + + + + + + + + + Web.config + + + Web.config + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 201703151602344_InitialCreate.cs + + + 201703151901273_CustomRoleSystem.cs + + + 201703152047370_acl_rsi_inducing_booleans_jesus_christ.cs + + + 201703152115389_role-priority.cs + + + 201703160106134_forum_backend_base.cs + + + 201703160141526_forum_relations.cs + + + 201703161150361_voting-system-forums.cs + + + 201703161217271_candeleteforumcategories.cs + + + 201703161328360_more-acl-stuff.cs + + + 201703161505425_relationfix.cs + + + 201703161515127_mistake.cs + + + 201703161536324_morerelationfix.cs + + + 201703161607158_cdelete.cs + + + 201703161645354_fuck..cs + + + 201703161804526_more-relationship-shit.cs + + + 201703161812076_FUCKFUCKFUCK.cs + + + 201703161820307_TAKEMEWITHYOUWHENYOUGO.cs + + + 201703161841223_jonathan_ladouceur_would_be_better_at_this_than_me_ffs.cs + + + 201703161844454_jonny_please.cs + + + 201703161854009_app.cs + + + 201703161905556_dingdong.cs + + + 201703161941448_help_me.cs + + + 201703161947569_do_dodododo_do_do.cs + + + 201703162001254_jonny___.cs + + + 201703162003429_running_out_of_names.cs + + + 201703162019023_killme.cs + + + 201703171437322_jonathan_ladouceur.cs + + + 201703171722189_aclrevamps.cs + + + 201703172018334_banandmute.cs + + + 201703172305217_auditlogs.cs + + + 201703172359467_banning.cs + + + 201703181305313_ip-logging.cs + + + 201703181331309_acl_revamps.cs + + + 201703181335599_more_fucking_acl.cs + + + 201703181626523_bonfire.cs + + + 201703181945337_posting.cs + + + 201703182010332_no-more-topic-fks.cs + + + 201703182057594_topic_discriminator.cs + + + 201703191415273_locking.cs + + + 201703191721171_acl_unlistedtopics.cs + + + 201703192025145_dislikes.cs + + + + 10.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + + + + + + + + + + True + True + 53520 + / + https://localhost:44388/ + False + False + + + False + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/Project-Unite/Project_Readme.html b/Project-Unite/Project_Readme.html new file mode 100644 index 0000000..6bd853c --- /dev/null +++ b/Project-Unite/Project_Readme.html @@ -0,0 +1,151 @@ + + + + + Your ASP.NET application + + + + + + +
+
+

This application consists of:

+
    +
  • Sample pages showing basic nav between Home, About, and Contact
  • +
  • Theming using Bootstrap
  • +
  • Authentication, if selected, shows how to register and sign in
  • +
  • ASP.NET features managed using NuGet
  • +
+
+ + + + + +
+

Get help

+ +
+
+ + + \ No newline at end of file diff --git a/Project-Unite/Properties/AssemblyInfo.cs b/Project-Unite/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8ac8e47 --- /dev/null +++ b/Project-Unite/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("Project_Unite")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Project_Unite")] +[assembly: AssemblyCopyright("Copyright © 2017")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("a5d4b068-dbf5-450d-a433-16956f314e90")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Project-Unite/Scripts/_references.js b/Project-Unite/Scripts/_references.js new file mode 100644 index 0000000..4609623 Binary files /dev/null and b/Project-Unite/Scripts/_references.js differ diff --git a/Project-Unite/Scripts/ai.0.22.9-build00167.js b/Project-Unite/Scripts/ai.0.22.9-build00167.js new file mode 100644 index 0000000..6a79fef --- /dev/null +++ b/Project-Unite/Scripts/ai.0.22.9-build00167.js @@ -0,0 +1,3524 @@ +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + (function (LoggingSeverity) { + LoggingSeverity[LoggingSeverity["CRITICAL"] = 0] = "CRITICAL"; + LoggingSeverity[LoggingSeverity["WARNING"] = 1] = "WARNING"; + })(ApplicationInsights.LoggingSeverity || (ApplicationInsights.LoggingSeverity = {})); + var LoggingSeverity = ApplicationInsights.LoggingSeverity; + (function (_InternalMessageId) { + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserDoesNotSupportLocalStorage"] = 0] = "NONUSRACT_BrowserDoesNotSupportLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotReadLocalStorage"] = 1] = "NONUSRACT_BrowserCannotReadLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotReadSessionStorage"] = 2] = "NONUSRACT_BrowserCannotReadSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotWriteLocalStorage"] = 3] = "NONUSRACT_BrowserCannotWriteLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotWriteSessionStorage"] = 4] = "NONUSRACT_BrowserCannotWriteSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserFailedRemovalFromLocalStorage"] = 5] = "NONUSRACT_BrowserFailedRemovalFromLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserFailedRemovalFromSessionStorage"] = 6] = "NONUSRACT_BrowserFailedRemovalFromSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_CannotSendEmptyTelemetry"] = 7] = "NONUSRACT_CannotSendEmptyTelemetry"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ClientPerformanceMathError"] = 8] = "NONUSRACT_ClientPerformanceMathError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ErrorParsingAISessionCookie"] = 9] = "NONUSRACT_ErrorParsingAISessionCookie"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ErrorPVCalc"] = 10] = "NONUSRACT_ErrorPVCalc"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ExceptionWhileLoggingError"] = 11] = "NONUSRACT_ExceptionWhileLoggingError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedAddingTelemetryToBuffer"] = 12] = "NONUSRACT_FailedAddingTelemetryToBuffer"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxAbort"] = 13] = "NONUSRACT_FailedMonitorAjaxAbort"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxDur"] = 14] = "NONUSRACT_FailedMonitorAjaxDur"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxOpen"] = 15] = "NONUSRACT_FailedMonitorAjaxOpen"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxRSC"] = 16] = "NONUSRACT_FailedMonitorAjaxRSC"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxSend"] = 17] = "NONUSRACT_FailedMonitorAjaxSend"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToAddHandlerForOnBeforeUnload"] = 18] = "NONUSRACT_FailedToAddHandlerForOnBeforeUnload"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToSendQueuedTelemetry"] = 19] = "NONUSRACT_FailedToSendQueuedTelemetry"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToReportDataLoss"] = 20] = "NONUSRACT_FailedToReportDataLoss"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FlushFailed"] = 21] = "NONUSRACT_FlushFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_MessageLimitPerPVExceeded"] = 22] = "NONUSRACT_MessageLimitPerPVExceeded"; + _InternalMessageId[_InternalMessageId["NONUSRACT_MissingRequiredFieldSpecification"] = 23] = "NONUSRACT_MissingRequiredFieldSpecification"; + _InternalMessageId[_InternalMessageId["NONUSRACT_NavigationTimingNotSupported"] = 24] = "NONUSRACT_NavigationTimingNotSupported"; + _InternalMessageId[_InternalMessageId["NONUSRACT_OnError"] = 25] = "NONUSRACT_OnError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_SessionRenewalDateIsZero"] = 26] = "NONUSRACT_SessionRenewalDateIsZero"; + _InternalMessageId[_InternalMessageId["NONUSRACT_SenderNotInitialized"] = 27] = "NONUSRACT_SenderNotInitialized"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StartTrackEventFailed"] = 28] = "NONUSRACT_StartTrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StopTrackEventFailed"] = 29] = "NONUSRACT_StopTrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StartTrackFailed"] = 30] = "NONUSRACT_StartTrackFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StopTrackFailed"] = 31] = "NONUSRACT_StopTrackFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TelemetrySampledAndNotSent"] = 32] = "NONUSRACT_TelemetrySampledAndNotSent"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackEventFailed"] = 33] = "NONUSRACT_TrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackExceptionFailed"] = 34] = "NONUSRACT_TrackExceptionFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackMetricFailed"] = 35] = "NONUSRACT_TrackMetricFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackPVFailed"] = 36] = "NONUSRACT_TrackPVFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackPVFailedCalc"] = 37] = "NONUSRACT_TrackPVFailedCalc"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackTraceFailed"] = 38] = "NONUSRACT_TrackTraceFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TransmissionFailed"] = 39] = "NONUSRACT_TransmissionFailed"; + _InternalMessageId[_InternalMessageId["USRACT_CannotSerializeObject"] = 40] = "USRACT_CannotSerializeObject"; + _InternalMessageId[_InternalMessageId["USRACT_CannotSerializeObjectNonSerializable"] = 41] = "USRACT_CannotSerializeObjectNonSerializable"; + _InternalMessageId[_InternalMessageId["USRACT_CircularReferenceDetected"] = 42] = "USRACT_CircularReferenceDetected"; + _InternalMessageId[_InternalMessageId["USRACT_ClearAuthContextFailed"] = 43] = "USRACT_ClearAuthContextFailed"; + _InternalMessageId[_InternalMessageId["USRACT_ExceptionTruncated"] = 44] = "USRACT_ExceptionTruncated"; + _InternalMessageId[_InternalMessageId["USRACT_IllegalCharsInName"] = 45] = "USRACT_IllegalCharsInName"; + _InternalMessageId[_InternalMessageId["USRACT_ItemNotInArray"] = 46] = "USRACT_ItemNotInArray"; + _InternalMessageId[_InternalMessageId["USRACT_MaxAjaxPerPVExceeded"] = 47] = "USRACT_MaxAjaxPerPVExceeded"; + _InternalMessageId[_InternalMessageId["USRACT_MessageTruncated"] = 48] = "USRACT_MessageTruncated"; + _InternalMessageId[_InternalMessageId["USRACT_NameTooLong"] = 49] = "USRACT_NameTooLong"; + _InternalMessageId[_InternalMessageId["USRACT_SampleRateOutOfRange"] = 50] = "USRACT_SampleRateOutOfRange"; + _InternalMessageId[_InternalMessageId["USRACT_SetAuthContextFailed"] = 51] = "USRACT_SetAuthContextFailed"; + _InternalMessageId[_InternalMessageId["USRACT_SetAuthContextFailedAccountName"] = 52] = "USRACT_SetAuthContextFailedAccountName"; + _InternalMessageId[_InternalMessageId["USRACT_StringValueTooLong"] = 53] = "USRACT_StringValueTooLong"; + _InternalMessageId[_InternalMessageId["USRACT_StartCalledMoreThanOnce"] = 54] = "USRACT_StartCalledMoreThanOnce"; + _InternalMessageId[_InternalMessageId["USRACT_StopCalledWithoutStart"] = 55] = "USRACT_StopCalledWithoutStart"; + _InternalMessageId[_InternalMessageId["USRACT_TelemetryInitializerFailed"] = 56] = "USRACT_TelemetryInitializerFailed"; + _InternalMessageId[_InternalMessageId["USRACT_TrackArgumentsNotSpecified"] = 57] = "USRACT_TrackArgumentsNotSpecified"; + _InternalMessageId[_InternalMessageId["USRACT_UrlTooLong"] = 58] = "USRACT_UrlTooLong"; + })(ApplicationInsights._InternalMessageId || (ApplicationInsights._InternalMessageId = {})); + var _InternalMessageId = ApplicationInsights._InternalMessageId; + var _InternalLogMessage = (function () { + function _InternalLogMessage(msgId, msg, properties) { + this.message = _InternalMessageId[msgId].toString(); + this.messageId = msgId; + var diagnosticText = (msg ? " message:" + _InternalLogMessage.sanitizeDiagnosticText(msg) : "") + + (properties ? " props:" + _InternalLogMessage.sanitizeDiagnosticText(JSON.stringify(properties)) : ""); + this.message += diagnosticText; + } + _InternalLogMessage.sanitizeDiagnosticText = function (text) { + return "\"" + text.replace(/\"/g, "") + "\""; + }; + return _InternalLogMessage; + })(); + ApplicationInsights._InternalLogMessage = _InternalLogMessage; + var _InternalLogging = (function () { + function _InternalLogging() { + } + _InternalLogging.throwInternalNonUserActionable = function (severity, message) { + if (this.enableDebugExceptions()) { + throw message; + } + else { + if (typeof (message) !== "undefined" && !!message) { + if (typeof (message.message) !== "undefined") { + message.message = this.AiNonUserActionablePrefix + message.message; + this.warnToConsole(message.message); + this.logInternalMessage(severity, message); + } + } + } + }; + _InternalLogging.throwInternalUserActionable = function (severity, message) { + if (this.enableDebugExceptions()) { + throw message; + } + else { + if (typeof (message) !== "undefined" && !!message) { + if (typeof (message.message) !== "undefined") { + message.message = this.AiUserActionablePrefix + message.message; + this.warnToConsole(message.message); + this.logInternalMessage(severity, message); + } + } + } + }; + _InternalLogging.warnToConsole = function (message) { + if (typeof console !== "undefined" && !!console) { + if (typeof console.warn === "function") { + console.warn(message); + } + else if (typeof console.log === "function") { + console.log(message); + } + } + }; + _InternalLogging.resetInternalMessageCount = function () { + this._messageCount = 0; + }; + _InternalLogging.clearInternalMessageLoggedTypes = function () { + if (ApplicationInsights.Util.canUseSessionStorage()) { + var sessionStorageKeys = ApplicationInsights.Util.getSessionStorageKeys(); + for (var i = 0; i < sessionStorageKeys.length; i++) { + if (sessionStorageKeys[i].indexOf(_InternalLogging.AIInternalMessagePrefix) === 0) { + ApplicationInsights.Util.removeSessionStorage(sessionStorageKeys[i]); + } + } + } + }; + _InternalLogging.setMaxInternalMessageLimit = function (limit) { + if (!limit) { + throw new Error('limit cannot be undefined.'); + } + this.MAX_INTERNAL_MESSAGE_LIMIT = limit; + }; + _InternalLogging.logInternalMessage = function (severity, message) { + if (this._areInternalMessagesThrottled()) { + return; + } + var logMessage = true; + if (ApplicationInsights.Util.canUseSessionStorage()) { + var storageMessageKey = _InternalLogging.AIInternalMessagePrefix + _InternalMessageId[message.messageId]; + var internalMessageTypeLogRecord = ApplicationInsights.Util.getSessionStorage(storageMessageKey); + if (internalMessageTypeLogRecord) { + logMessage = false; + } + else { + ApplicationInsights.Util.setSessionStorage(storageMessageKey, "1"); + } + } + if (logMessage) { + if (this.verboseLogging() || severity === LoggingSeverity.CRITICAL) { + this.queue.push(message); + this._messageCount++; + } + if (this._messageCount == this.MAX_INTERNAL_MESSAGE_LIMIT) { + var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app."; + var throttleMessage = new _InternalLogMessage(_InternalMessageId.NONUSRACT_MessageLimitPerPVExceeded, throttleLimitMessage); + this.queue.push(throttleMessage); + this.warnToConsole(throttleLimitMessage); + } + } + }; + _InternalLogging._areInternalMessagesThrottled = function () { + return this._messageCount >= this.MAX_INTERNAL_MESSAGE_LIMIT; + }; + _InternalLogging.AiUserActionablePrefix = "AI: "; + _InternalLogging.AIInternalMessagePrefix = "AITR_"; + _InternalLogging.AiNonUserActionablePrefix = "AI (Internal): "; + _InternalLogging.enableDebugExceptions = function () { return false; }; + _InternalLogging.verboseLogging = function () { return false; }; + _InternalLogging.queue = []; + _InternalLogging.MAX_INTERNAL_MESSAGE_LIMIT = 25; + _InternalLogging._messageCount = 0; + return _InternalLogging; + })(); + ApplicationInsights._InternalLogging = _InternalLogging; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var StorageType; + (function (StorageType) { + StorageType[StorageType["LocalStorage"] = 0] = "LocalStorage"; + StorageType[StorageType["SessionStorage"] = 1] = "SessionStorage"; + })(StorageType || (StorageType = {})); + var Util = (function () { + function Util() { + } + Util._getLocalStorageObject = function () { + return Util._getVerifiedStorageObject(StorageType.LocalStorage); + }; + Util._getVerifiedStorageObject = function (storageType) { + var storage = null; + var fail; + var uid; + try { + uid = new Date; + storage = storageType === StorageType.LocalStorage ? window.localStorage : window.sessionStorage; + storage.setItem(uid, uid); + fail = storage.getItem(uid) != uid; + storage.removeItem(uid); + if (fail) { + storage = null; + } + } + catch (exception) { + storage = null; + } + return storage; + }; + Util.canUseLocalStorage = function () { + return !!Util._getLocalStorageObject(); + }; + Util.getStorage = function (name) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + return storage.getItem(name); + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotReadLocalStorage, "Browser failed read of local storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return null; + }; + Util.setStorage = function (name, data) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + storage.setItem(name, data); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotWriteLocalStorage, "Browser failed write to local storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return false; + }; + Util.removeStorage = function (name) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + storage.removeItem(name); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromLocalStorage, "Browser failed removal of local storage item. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return false; + }; + Util._getSessionStorageObject = function () { + return Util._getVerifiedStorageObject(StorageType.SessionStorage); + }; + Util.canUseSessionStorage = function () { + return !!Util._getSessionStorageObject(); + }; + Util.getSessionStorageKeys = function () { + var keys = []; + if (Util.canUseSessionStorage()) { + for (var key in window.sessionStorage) { + keys.push(key); + } + } + return keys; + }; + Util.getSessionStorage = function (name) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + return storage.getItem(name); + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotReadSessionStorage, "Browser failed read of session storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return null; + }; + Util.setSessionStorage = function (name, data) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + storage.setItem(name, data); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotWriteSessionStorage, "Browser failed write to session storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return false; + }; + Util.removeSessionStorage = function (name) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + storage.removeItem(name); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromSessionStorage, "Browser failed removal of session storage item. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return false; + }; + Util.setCookie = function (name, value, domain) { + var domainAttrib = ""; + if (domain) { + domainAttrib = ";domain=" + domain; + } + Util.document.cookie = name + "=" + value + domainAttrib + ";path=/"; + }; + Util.stringToBoolOrDefault = function (str) { + if (!str) { + return false; + } + return str.toString().toLowerCase() === "true"; + }; + Util.getCookie = function (name) { + var value = ""; + if (name && name.length) { + var cookieName = name + "="; + var cookies = Util.document.cookie.split(";"); + for (var i = 0; i < cookies.length; i++) { + var cookie = cookies[i]; + cookie = Util.trim(cookie); + if (cookie && cookie.indexOf(cookieName) === 0) { + value = cookie.substring(cookieName.length, cookies[i].length); + break; + } + } + } + return value; + }; + Util.deleteCookie = function (name) { + Util.document.cookie = name + "=;path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT;"; + }; + Util.trim = function (str) { + if (typeof str !== "string") + return str; + return str.replace(/^\s+|\s+$/g, ""); + }; + Util.newId = function () { + var base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var result = ""; + var random = Math.random() * 1073741824; + while (random > 0) { + var char = base64chars.charAt(random % 64); + result += char; + random = Math.floor(random / 64); + } + return result; + }; + Util.isArray = function (obj) { + return Object.prototype.toString.call(obj) === "[object Array]"; + }; + Util.isError = function (obj) { + return Object.prototype.toString.call(obj) === "[object Error]"; + }; + Util.isDate = function (obj) { + return Object.prototype.toString.call(obj) === "[object Date]"; + }; + Util.toISOStringForIE8 = function (date) { + if (Util.isDate(date)) { + if (Date.prototype.toISOString) { + return date.toISOString(); + } + else { + function pad(number) { + var r = String(number); + if (r.length === 1) { + r = "0" + r; + } + return r; + } + return date.getUTCFullYear() + + "-" + pad(date.getUTCMonth() + 1) + + "-" + pad(date.getUTCDate()) + + "T" + pad(date.getUTCHours()) + + ":" + pad(date.getUTCMinutes()) + + ":" + pad(date.getUTCSeconds()) + + "." + String((date.getUTCMilliseconds() / 1000).toFixed(3)).slice(2, 5) + + "Z"; + } + } + }; + Util.getIEVersion = function (userAgentStr) { + if (userAgentStr === void 0) { userAgentStr = null; } + var myNav = userAgentStr ? userAgentStr.toLowerCase() : navigator.userAgent.toLowerCase(); + return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : null; + }; + Util.msToTimeSpan = function (totalms) { + if (isNaN(totalms) || totalms < 0) { + totalms = 0; + } + var ms = "" + totalms % 1000; + var sec = "" + Math.floor(totalms / 1000) % 60; + var min = "" + Math.floor(totalms / (1000 * 60)) % 60; + var hour = "" + Math.floor(totalms / (1000 * 60 * 60)) % 24; + ms = ms.length === 1 ? "00" + ms : ms.length === 2 ? "0" + ms : ms; + sec = sec.length < 2 ? "0" + sec : sec; + min = min.length < 2 ? "0" + min : min; + hour = hour.length < 2 ? "0" + hour : hour; + return hour + ":" + min + ":" + sec + "." + ms; + }; + Util.isCrossOriginError = function (message, url, lineNumber, columnNumber, error) { + return (message === "Script error." || message === "Script error") && error === null; + }; + Util.dump = function (object) { + var objectTypeDump = Object.prototype.toString.call(object); + var propertyValueDump = JSON.stringify(object); + if (objectTypeDump === "[object Error]") { + propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'"; + } + return objectTypeDump + propertyValueDump; + }; + Util.getExceptionName = function (object) { + var objectTypeDump = Object.prototype.toString.call(object); + if (objectTypeDump === "[object Error]") { + return object.name; + } + return ""; + }; + Util.addEventHandler = function (eventName, callback) { + if (!window || typeof eventName !== 'string' || typeof callback !== 'function') { + return false; + } + var verbEventName = 'on' + eventName; + if (window.addEventListener) { + window.addEventListener(eventName, callback, false); + } + else if (window["attachEvent"]) { + window["attachEvent"].call(verbEventName, callback); + } + else { + return false; + } + return true; + }; + Util.document = typeof document !== "undefined" ? document : {}; + Util.NotSpecified = "not_specified"; + return Util; + })(); + ApplicationInsights.Util = Util; + var UrlHelper = (function () { + function UrlHelper() { + } + UrlHelper.parseUrl = function (url) { + if (!UrlHelper.htmlAnchorElement) { + UrlHelper.htmlAnchorElement = UrlHelper.document.createElement('a'); + } + UrlHelper.htmlAnchorElement.href = url; + return UrlHelper.htmlAnchorElement; + }; + UrlHelper.getAbsoluteUrl = function (url) { + var result; + var a = UrlHelper.parseUrl(url); + if (a) { + result = a.href; + } + return result; + }; + UrlHelper.getPathName = function (url) { + var result; + var a = UrlHelper.parseUrl(url); + if (a) { + result = a.pathname; + } + return result; + }; + UrlHelper.document = typeof document !== "undefined" ? document : {}; + return UrlHelper; + })(); + ApplicationInsights.UrlHelper = UrlHelper; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var extensions = (function () { + function extensions() { + } + extensions.IsNullOrUndefined = function (obj) { + return typeof (obj) === "undefined" || obj === null; + }; + return extensions; + })(); + ApplicationInsights.extensions = extensions; + var stringUtils = (function () { + function stringUtils() { + } + stringUtils.GetLength = function (strObject) { + var res = 0; + if (!extensions.IsNullOrUndefined(strObject)) { + var stringified = ""; + try { + stringified = strObject.toString(); + } + catch (ex) { + } + res = stringified.length; + res = isNaN(res) ? 0 : res; + } + return res; + }; + return stringUtils; + })(); + ApplicationInsights.stringUtils = stringUtils; + var dateTime = (function () { + function dateTime() { + } + dateTime.Now = (window.performance && window.performance.now) ? + function () { + return performance.now(); + } + : + function () { + return new Date().getTime(); + }; + dateTime.GetDuration = function (start, end) { + var result = null; + if (start !== 0 && end !== 0 && !extensions.IsNullOrUndefined(start) && !extensions.IsNullOrUndefined(end)) { + result = end - start; + } + return result; + }; + return dateTime; + })(); + ApplicationInsights.dateTime = dateTime; + var EventHelper = (function () { + function EventHelper() { + } + EventHelper.AttachEvent = function (obj, eventNameWithoutOn, handlerRef) { + var result = false; + if (!extensions.IsNullOrUndefined(obj)) { + if (!extensions.IsNullOrUndefined(obj.attachEvent)) { + obj.attachEvent("on" + eventNameWithoutOn, handlerRef); + result = true; + } + else { + if (!extensions.IsNullOrUndefined(obj.addEventListener)) { + obj.addEventListener(eventNameWithoutOn, handlerRef, false); + result = true; + } + } + } + return result; + }; + EventHelper.DetachEvent = function (obj, eventNameWithoutOn, handlerRef) { + if (!extensions.IsNullOrUndefined(obj)) { + if (!extensions.IsNullOrUndefined(obj.detachEvent)) { + obj.detachEvent("on" + eventNameWithoutOn, handlerRef); + } + else { + if (!extensions.IsNullOrUndefined(obj.removeEventListener)) { + obj.removeEventListener(eventNameWithoutOn, handlerRef, false); + } + } + } + }; + return EventHelper; + })(); + ApplicationInsights.EventHelper = EventHelper; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var XHRMonitoringState = (function () { + function XHRMonitoringState() { + this.openDone = false; + this.setRequestHeaderDone = false; + this.sendDone = false; + this.abortDone = false; + this.onreadystatechangeCallbackAttached = false; + } + return XHRMonitoringState; + })(); + ApplicationInsights.XHRMonitoringState = XHRMonitoringState; + var ajaxRecord = (function () { + function ajaxRecord(id) { + this.completed = false; + this.requestHeadersSize = null; + this.ttfb = null; + this.responseReceivingDuration = null; + this.callbackDuration = null; + this.ajaxTotalDuration = null; + this.aborted = null; + this.pageUrl = null; + this.requestUrl = null; + this.requestSize = 0; + this.method = null; + this.status = null; + this.requestSentTime = null; + this.responseStartedTime = null; + this.responseFinishedTime = null; + this.callbackFinishedTime = null; + this.endTime = null; + this.originalOnreadystatechage = null; + this.xhrMonitoringState = new XHRMonitoringState(); + this.clientFailure = 0; + this.CalculateMetrics = function () { + var self = this; + self.ajaxTotalDuration = ApplicationInsights.dateTime.GetDuration(self.requestSentTime, self.responseFinishedTime); + }; + this.id = id; + } + ajaxRecord.prototype.getAbsoluteUrl = function () { + return this.requestUrl ? ApplicationInsights.UrlHelper.getAbsoluteUrl(this.requestUrl) : null; + }; + ajaxRecord.prototype.getPathName = function () { + return this.requestUrl ? ApplicationInsights.UrlHelper.getPathName(this.requestUrl) : null; + }; + return ajaxRecord; + })(); + ApplicationInsights.ajaxRecord = ajaxRecord; + ; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +; +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var AjaxMonitor = (function () { + function AjaxMonitor(appInsights) { + this.currentWindowHost = window.location.host; + this.appInsights = appInsights; + this.initialized = false; + this.Init(); + } + AjaxMonitor.prototype.Init = function () { + if (this.supportsMonitoring()) { + this.instrumentOpen(); + this.instrumentSend(); + this.instrumentAbort(); + this.initialized = true; + } + }; + AjaxMonitor.prototype.isMonitoredInstance = function (xhr, excludeAjaxDataValidation) { + return this.initialized + && (excludeAjaxDataValidation === true || !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData)) + && xhr[AjaxMonitor.DisabledPropertyName] !== true; + }; + AjaxMonitor.prototype.supportsMonitoring = function () { + var result = false; + if (!ApplicationInsights.extensions.IsNullOrUndefined(XMLHttpRequest)) { + result = true; + } + return result; + }; + AjaxMonitor.prototype.instrumentOpen = function () { + var originalOpen = XMLHttpRequest.prototype.open; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.open = function (method, url, async) { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this, true) && + (!this.ajaxData || + !this.ajaxData.xhrMonitoringState.openDone)) { + ajaxMonitorInstance.openHandler(this, method, url, async); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxOpen, "Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalOpen.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.openHandler = function (xhr, method, url, async) { + var ajaxData = new ApplicationInsights.ajaxRecord(ApplicationInsights.Util.newId()); + ajaxData.method = method; + ajaxData.requestUrl = url; + ajaxData.xhrMonitoringState.openDone = true; + xhr.ajaxData = ajaxData; + this.attachToOnReadyStateChange(xhr); + }; + AjaxMonitor.getFailedAjaxDiagnosticsMessage = function (xhr) { + var result = ""; + try { + if (!ApplicationInsights.extensions.IsNullOrUndefined(xhr) && + !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData) && + !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData.requestUrl)) { + result += "(url: '" + xhr.ajaxData.requestUrl + "')"; + } + } + catch (e) { } + return result; + }; + AjaxMonitor.prototype.instrumentSend = function () { + var originalSend = XMLHttpRequest.prototype.send; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.send = function (content) { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this) && !this.ajaxData.xhrMonitoringState.sendDone) { + ajaxMonitorInstance.sendHandler(this, content); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxSend, "Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalSend.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.sendHandler = function (xhr, content) { + xhr.ajaxData.requestSentTime = ApplicationInsights.dateTime.Now(); + if (!this.appInsights.config.disableCorrelationHeaders && (ApplicationInsights.UrlHelper.parseUrl(xhr.ajaxData.getAbsoluteUrl()).host == this.currentWindowHost)) { + xhr.setRequestHeader("x-ms-request-id", xhr.ajaxData.id); + } + xhr.ajaxData.xhrMonitoringState.sendDone = true; + }; + AjaxMonitor.prototype.instrumentAbort = function () { + var originalAbort = XMLHttpRequest.prototype.abort; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.abort = function () { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this) && !this.ajaxData.xhrMonitoringState.abortDone) { + this.ajaxData.aborted = 1; + this.ajaxData.xhrMonitoringState.abortDone = true; + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxAbort, "Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalAbort.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.attachToOnReadyStateChange = function (xhr) { + var ajaxMonitorInstance = this; + xhr.ajaxData.xhrMonitoringState.onreadystatechangeCallbackAttached = ApplicationInsights.EventHelper.AttachEvent(xhr, "readystatechange", function () { + try { + if (ajaxMonitorInstance.isMonitoredInstance(xhr)) { + if (xhr.readyState === 4) { + ajaxMonitorInstance.onAjaxComplete(xhr); + } + } + } + catch (e) { + var exceptionText = Microsoft.ApplicationInsights.Util.dump(e); + if (!exceptionText || exceptionText.toLowerCase().indexOf("c00c023f") == -1) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxRSC, "Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(xhr), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + } + }); + }; + AjaxMonitor.prototype.onAjaxComplete = function (xhr) { + xhr.ajaxData.responseFinishedTime = ApplicationInsights.dateTime.Now(); + xhr.ajaxData.status = xhr.status; + xhr.ajaxData.CalculateMetrics(); + if (xhr.ajaxData.ajaxTotalDuration < 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxDur, "Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(xhr), + requestSentTime: xhr.ajaxData.requestSentTime, + responseFinishedTime: xhr.ajaxData.responseFinishedTime + })); + } + else { + this.appInsights.trackAjax(xhr.ajaxData.id, xhr.ajaxData.getAbsoluteUrl(), xhr.ajaxData.getPathName(), xhr.ajaxData.ajaxTotalDuration, (+(xhr.ajaxData.status)) >= 200 && (+(xhr.ajaxData.status)) < 400, +xhr.ajaxData.status); + xhr.ajaxData = null; + } + }; + AjaxMonitor.instrumentedByAppInsightsName = "InstrumentedByAppInsights"; + AjaxMonitor.DisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation"; + return AjaxMonitor; + })(); + ApplicationInsights.AjaxMonitor = AjaxMonitor; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var HashCodeScoreGenerator = (function () { + function HashCodeScoreGenerator() { + } + HashCodeScoreGenerator.prototype.getHashCodeScore = function (key) { + var score = this.getHashCode(key) / HashCodeScoreGenerator.INT_MAX_VALUE; + return score * 100; + }; + HashCodeScoreGenerator.prototype.getHashCode = function (input) { + if (input == "") { + return 0; + } + while (input.length < HashCodeScoreGenerator.MIN_INPUT_LENGTH) { + input = input.concat(input); + } + var hash = 5381; + for (var i = 0; i < input.length; ++i) { + hash = ((hash << 5) + hash) + input.charCodeAt(i); + hash = hash & hash; + } + return Math.abs(hash); + }; + HashCodeScoreGenerator.INT_MAX_VALUE = 2147483647; + HashCodeScoreGenerator.MIN_INPUT_LENGTH = 8; + return HashCodeScoreGenerator; + })(); + ApplicationInsights.HashCodeScoreGenerator = HashCodeScoreGenerator; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + (function (FieldType) { + FieldType[FieldType["Default"] = 0] = "Default"; + FieldType[FieldType["Required"] = 1] = "Required"; + FieldType[FieldType["Array"] = 2] = "Array"; + FieldType[FieldType["Hidden"] = 4] = "Hidden"; + })(ApplicationInsights.FieldType || (ApplicationInsights.FieldType = {})); + var FieldType = ApplicationInsights.FieldType; + ; + var Serializer = (function () { + function Serializer() { + } + Serializer.serialize = function (input) { + var output = Serializer._serializeObject(input, "root"); + return JSON.stringify(output); + }; + Serializer._serializeObject = function (source, name) { + var circularReferenceCheck = "__aiCircularRefCheck"; + var output = {}; + if (!source) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CannotSerializeObject, "cannot serialize object because it is null or undefined", { name: name })); + return output; + } + if (source[circularReferenceCheck]) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CircularReferenceDetected, "Circular reference detected while serializing object", { name: name })); + return output; + } + if (!source.aiDataContract) { + if (name === "measurements") { + output = Serializer._serializeStringMap(source, "number", name); + } + else if (name === "properties") { + output = Serializer._serializeStringMap(source, "string", name); + } + else if (name === "tags") { + output = Serializer._serializeStringMap(source, "string", name); + } + else if (ApplicationInsights.Util.isArray(source)) { + output = Serializer._serializeArray(source, name); + } + else { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CannotSerializeObjectNonSerializable, "Attempting to serialize an object which does not implement ISerializable", { name: name })); + try { + JSON.stringify(source); + output = source; + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, e && typeof e.toString === 'function' ? e.toString() : "Error serializing object"); + } + } + return output; + } + source[circularReferenceCheck] = true; + for (var field in source.aiDataContract) { + var contract = source.aiDataContract[field]; + var isRequired = (typeof contract === "function") ? (contract() & FieldType.Required) : (contract & FieldType.Required); + var isHidden = (typeof contract === "function") ? (contract() & FieldType.Hidden) : (contract & FieldType.Hidden); + var isArray = contract & FieldType.Array; + var isPresent = source[field] !== undefined; + var isObject = typeof source[field] === "object" && source[field] !== null; + if (isRequired && !isPresent && !isArray) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_MissingRequiredFieldSpecification, "Missing required field specification. The field is required but not present on source", { field: field, name: name })); + continue; + } + if (isHidden) { + continue; + } + var value; + if (isObject) { + if (isArray) { + value = Serializer._serializeArray(source[field], field); + } + else { + value = Serializer._serializeObject(source[field], field); + } + } + else { + value = source[field]; + } + if (value !== undefined) { + output[field] = value; + } + } + delete source[circularReferenceCheck]; + return output; + }; + Serializer._serializeArray = function (sources, name) { + var output = undefined; + if (!!sources) { + if (!ApplicationInsights.Util.isArray(sources)) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_ItemNotInArray, "This field was specified as an array in the contract but the item is not an array.\r\n", { name: name })); + } + else { + output = []; + for (var i = 0; i < sources.length; i++) { + var source = sources[i]; + var item = Serializer._serializeObject(source, name + "[" + i + "]"); + output.push(item); + } + } + } + return output; + }; + Serializer._serializeStringMap = function (map, expectedType, name) { + var output = undefined; + if (map) { + output = {}; + for (var field in map) { + var value = map[field]; + if (expectedType === "string") { + if (value === undefined) { + output[field] = "undefined"; + } + else if (value === null) { + output[field] = "null"; + } + else if (!value.toString) { + output[field] = "invalid field: toString() is not defined."; + } + else { + output[field] = value.toString(); + } + } + else if (expectedType === "number") { + if (value === undefined) { + output[field] = "undefined"; + } + else if (value === null) { + output[field] = "null"; + } + else { + var num = parseFloat(value); + if (isNaN(num)) { + output[field] = "NaN"; + } + else { + output[field] = num; + } + } + } + else { + output[field] = "invalid field: " + name + " is of unknown type."; + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, output[field]); + } + } + } + return output; + }; + return Serializer; + })(); + ApplicationInsights.Serializer = Serializer; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Base = (function () { + function Base() { + } + return Base; + })(); + Telemetry.Base = Base; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Envelope = (function () { + function Envelope() { + this.ver = 1; + this.sampleRate = 100.0; + this.tags = {}; + } + return Envelope; + })(); + Telemetry.Envelope = Envelope; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var __extends = (this && this.__extends) || function (d, b) { + for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; + function __() { this.constructor = d; } + __.prototype = b.prototype; + d.prototype = new __(); +}; +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Envelope = (function (_super) { + __extends(Envelope, _super); + function Envelope(data, name) { + var _this = this; + _super.call(this); + this.name = name; + this.data = data; + this.time = ApplicationInsights.Util.toISOStringForIE8(new Date()); + this.aiDataContract = { + time: ApplicationInsights.FieldType.Required, + iKey: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Required, + sampleRate: function () { + return (_this.sampleRate == 100) ? ApplicationInsights.FieldType.Hidden : ApplicationInsights.FieldType.Required; + }, + tags: ApplicationInsights.FieldType.Required, + data: ApplicationInsights.FieldType.Required + }; + } + return Envelope; + })(Microsoft.Telemetry.Envelope); + Common.Envelope = Envelope; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Base = (function (_super) { + __extends(Base, _super); + function Base() { + _super.apply(this, arguments); + this.aiDataContract = {}; + } + return Base; + })(Microsoft.Telemetry.Base); + Common.Base = Base; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + var ContextTagKeys = (function () { + function ContextTagKeys() { + this.applicationVersion = "ai.application.ver"; + this.applicationBuild = "ai.application.build"; + this.applicationTypeId = "ai.application.typeId"; + this.applicationId = "ai.application.applicationId"; + this.deviceId = "ai.device.id"; + this.deviceIp = "ai.device.ip"; + this.deviceLanguage = "ai.device.language"; + this.deviceLocale = "ai.device.locale"; + this.deviceModel = "ai.device.model"; + this.deviceNetwork = "ai.device.network"; + this.deviceNetworkName = "ai.device.networkName"; + this.deviceOEMName = "ai.device.oemName"; + this.deviceOS = "ai.device.os"; + this.deviceOSVersion = "ai.device.osVersion"; + this.deviceRoleInstance = "ai.device.roleInstance"; + this.deviceRoleName = "ai.device.roleName"; + this.deviceScreenResolution = "ai.device.screenResolution"; + this.deviceType = "ai.device.type"; + this.deviceMachineName = "ai.device.machineName"; + this.deviceVMName = "ai.device.vmName"; + this.locationIp = "ai.location.ip"; + this.operationId = "ai.operation.id"; + this.operationName = "ai.operation.name"; + this.operationParentId = "ai.operation.parentId"; + this.operationRootId = "ai.operation.rootId"; + this.operationSyntheticSource = "ai.operation.syntheticSource"; + this.operationIsSynthetic = "ai.operation.isSynthetic"; + this.operationCorrelationVector = "ai.operation.correlationVector"; + this.sessionId = "ai.session.id"; + this.sessionIsFirst = "ai.session.isFirst"; + this.sessionIsNew = "ai.session.isNew"; + this.userAccountAcquisitionDate = "ai.user.accountAcquisitionDate"; + this.userAccountId = "ai.user.accountId"; + this.userAgent = "ai.user.userAgent"; + this.userId = "ai.user.id"; + this.userStoreRegion = "ai.user.storeRegion"; + this.userAuthUserId = "ai.user.authUserId"; + this.userAnonymousUserAcquisitionDate = "ai.user.anonUserAcquisitionDate"; + this.userAuthenticatedUserAcquisitionDate = "ai.user.authUserAcquisitionDate"; + this.sampleRate = "ai.sample.sampleRate"; + this.cloudName = "ai.cloud.name"; + this.cloudRoleVer = "ai.cloud.roleVer"; + this.cloudEnvironment = "ai.cloud.environment"; + this.cloudLocation = "ai.cloud.location"; + this.cloudDeploymentUnit = "ai.cloud.deploymentUnit"; + this.serverDeviceOS = "ai.serverDevice.os"; + this.serverDeviceOSVer = "ai.serverDevice.osVer"; + this.internalSdkVersion = "ai.internal.sdkVersion"; + this.internalAgentVersion = "ai.internal.agentVersion"; + this.internalDataCollectorReceivedTime = "ai.internal.dataCollectorReceivedTime"; + this.internalProfileId = "ai.internal.profileId"; + this.internalProfileClassId = "ai.internal.profileClassId"; + this.internalAccountId = "ai.internal.accountId"; + this.internalApplicationName = "ai.internal.applicationName"; + this.internalInstrumentationKey = "ai.internal.instrumentationKey"; + this.internalTelemetryItemId = "ai.internal.telemetryItemId"; + this.internalApplicationType = "ai.internal.applicationType"; + this.internalRequestSource = "ai.internal.requestSource"; + this.internalFlowType = "ai.internal.flowType"; + this.internalIsAudit = "ai.internal.isAudit"; + this.internalTrackingSourceId = "ai.internal.trackingSourceId"; + this.internalTrackingType = "ai.internal.trackingType"; + this.internalIsDiagnosticExample = "ai.internal.isDiagnosticExample"; + } + return ContextTagKeys; + })(); + AI.ContextTagKeys = ContextTagKeys; +})(AI || (AI = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Application = (function () { + function Application() { + } + return Application; + })(); + Context.Application = Application; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Device = (function () { + function Device() { + this.id = "browser"; + this.type = "Browser"; + } + return Device; + })(); + Context.Device = Device; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Internal = (function () { + function Internal() { + this.sdkVersion = "JavaScript:" + ApplicationInsights.Version; + } + return Internal; + })(); + Context.Internal = Internal; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Location = (function () { + function Location() { + } + return Location; + })(); + Context.Location = Location; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Operation = (function () { + function Operation() { + this.id = ApplicationInsights.Util.newId(); + if (window && window.location && window.location.pathname) { + this.name = window.location.pathname; + } + } + return Operation; + })(); + Context.Operation = Operation; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var SamplingScoreGenerator = (function () { + function SamplingScoreGenerator() { + this.hashCodeGeneragor = new ApplicationInsights.HashCodeScoreGenerator(); + } + SamplingScoreGenerator.prototype.getSamplingScore = function (envelope) { + var tagKeys = new AI.ContextTagKeys(); + var score = 0; + if (envelope.tags[tagKeys.userId]) { + score = this.hashCodeGeneragor.getHashCodeScore(envelope.tags[tagKeys.userId]); + } + else if (envelope.tags[tagKeys.operationId]) { + score = this.hashCodeGeneragor.getHashCodeScore(envelope.tags[tagKeys.operationId]); + } + else { + score = Math.random(); + } + return score; + }; + return SamplingScoreGenerator; + })(); + ApplicationInsights.SamplingScoreGenerator = SamplingScoreGenerator; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Sample = (function () { + function Sample(sampleRate) { + this.INT_MAX_VALUE = 2147483647; + if (sampleRate > 100 || sampleRate < 0) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SampleRateOutOfRange, "Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.", { samplingRate: sampleRate })); + this.sampleRate = 100; + } + this.sampleRate = sampleRate; + this.samplingScoreGenerator = new ApplicationInsights.SamplingScoreGenerator(); + } + Sample.prototype.isSampledIn = function (envelope) { + if (this.sampleRate == 100) + return true; + var score = this.samplingScoreGenerator.getSamplingScore(envelope); + return score < this.sampleRate; + }; + return Sample; + })(); + Context.Sample = Sample; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (SessionState) { + SessionState[SessionState["Start"] = 0] = "Start"; + SessionState[SessionState["End"] = 1] = "End"; + })(AI.SessionState || (AI.SessionState = {})); + var SessionState = AI.SessionState; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Session = (function () { + function Session() { + } + return Session; + })(); + Context.Session = Session; + var _SessionManager = (function () { + function _SessionManager(config) { + if (!config) { + config = {}; + } + if (!(typeof config.sessionExpirationMs === "function")) { + config.sessionExpirationMs = function () { return _SessionManager.acquisitionSpan; }; + } + if (!(typeof config.sessionRenewalMs === "function")) { + config.sessionRenewalMs = function () { return _SessionManager.renewalSpan; }; + } + this.config = config; + this.automaticSession = new Session(); + } + _SessionManager.prototype.update = function () { + if (!this.automaticSession.id) { + this.initializeAutomaticSession(); + } + var now = +new Date; + var acquisitionExpired = now - this.automaticSession.acquisitionDate > this.config.sessionExpirationMs(); + var renewalExpired = now - this.automaticSession.renewalDate > this.config.sessionRenewalMs(); + if (acquisitionExpired || renewalExpired) { + this.automaticSession.isFirst = undefined; + this.renew(); + } + else { + this.automaticSession.renewalDate = +new Date; + this.setCookie(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + } + }; + _SessionManager.prototype.backup = function () { + this.setStorage(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + }; + _SessionManager.prototype.initializeAutomaticSession = function () { + var cookie = ApplicationInsights.Util.getCookie('ai_session'); + if (cookie && typeof cookie.split === "function") { + this.initializeAutomaticSessionWithData(cookie); + } + else { + var storage = ApplicationInsights.Util.getStorage('ai_session'); + if (storage) { + this.initializeAutomaticSessionWithData(storage); + } + } + if (!this.automaticSession.id) { + this.automaticSession.isFirst = true; + this.renew(); + } + }; + _SessionManager.prototype.initializeAutomaticSessionWithData = function (sessionData) { + var params = sessionData.split("|"); + if (params.length > 0) { + this.automaticSession.id = params[0]; + } + try { + if (params.length > 1) { + var acq = +params[1]; + this.automaticSession.acquisitionDate = +new Date(acq); + this.automaticSession.acquisitionDate = this.automaticSession.acquisitionDate > 0 ? this.automaticSession.acquisitionDate : 0; + } + if (params.length > 2) { + var renewal = +params[2]; + this.automaticSession.renewalDate = +new Date(renewal); + this.automaticSession.renewalDate = this.automaticSession.renewalDate > 0 ? this.automaticSession.renewalDate : 0; + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ErrorParsingAISessionCookie, "Error parsing ai_session cookie, session will be reset: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + if (this.automaticSession.renewalDate == 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_SessionRenewalDateIsZero, "AI session renewal date is 0, session will be reset.")); + } + }; + _SessionManager.prototype.renew = function () { + var now = +new Date; + this.automaticSession.id = ApplicationInsights.Util.newId(); + this.automaticSession.acquisitionDate = now; + this.automaticSession.renewalDate = now; + this.setCookie(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + if (!ApplicationInsights.Util.canUseLocalStorage()) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserDoesNotSupportLocalStorage, "Browser does not support local storage. Session durations will be inaccurate.")); + } + }; + _SessionManager.prototype.setCookie = function (guid, acq, renewal) { + var acquisitionExpiry = acq + this.config.sessionExpirationMs(); + var renewalExpiry = renewal + this.config.sessionRenewalMs(); + var cookieExpiry = new Date(); + var cookie = [guid, acq, renewal]; + if (acquisitionExpiry < renewalExpiry) { + cookieExpiry.setTime(acquisitionExpiry); + } + else { + cookieExpiry.setTime(renewalExpiry); + } + var cookieDomnain = this.config.cookieDomain ? this.config.cookieDomain() : null; + ApplicationInsights.Util.setCookie('ai_session', cookie.join('|') + ';expires=' + cookieExpiry.toUTCString(), cookieDomnain); + }; + _SessionManager.prototype.setStorage = function (guid, acq, renewal) { + ApplicationInsights.Util.setStorage('ai_session', [guid, acq, renewal].join('|')); + }; + _SessionManager.acquisitionSpan = 86400000; + _SessionManager.renewalSpan = 1800000; + return _SessionManager; + })(); + Context._SessionManager = _SessionManager; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var User = (function () { + function User(config) { + var cookie = ApplicationInsights.Util.getCookie(User.userCookieName); + if (cookie) { + var params = cookie.split(User.cookieSeparator); + if (params.length > 0) { + this.id = params[0]; + } + } + this.config = config; + if (!this.id) { + this.id = ApplicationInsights.Util.newId(); + var date = new Date(); + var acqStr = ApplicationInsights.Util.toISOStringForIE8(date); + this.accountAcquisitionDate = acqStr; + date.setTime(date.getTime() + 31536000000); + var newCookie = [this.id, acqStr]; + var cookieDomain = this.config.cookieDomain ? this.config.cookieDomain() : undefined; + ApplicationInsights.Util.setCookie(User.userCookieName, newCookie.join(User.cookieSeparator) + ';expires=' + date.toUTCString(), cookieDomain); + ApplicationInsights.Util.removeStorage('ai_session'); + } + this.accountId = config.accountId ? config.accountId() : undefined; + var authCookie = ApplicationInsights.Util.getCookie(User.authUserCookieName); + if (authCookie) { + authCookie = decodeURI(authCookie); + var authCookieString = authCookie.split(User.cookieSeparator); + if (authCookieString[0]) { + this.authenticatedId = authCookieString[0]; + } + if (authCookieString.length > 1 && authCookieString[1]) { + this.accountId = authCookieString[1]; + } + } + } + User.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId) { + var isInvalidInput = !this.validateUserInput(authenticatedUserId) || (accountId && !this.validateUserInput(accountId)); + if (isInvalidInput) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailedAccountName, "Setting auth user context failed. " + + "User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.")); + return; + } + this.authenticatedId = authenticatedUserId; + var authCookie = this.authenticatedId; + if (accountId) { + this.accountId = accountId; + authCookie = [this.authenticatedId, this.accountId].join(User.cookieSeparator); + } + ApplicationInsights.Util.setCookie(User.authUserCookieName, encodeURI(authCookie), this.config.cookieDomain()); + }; + User.prototype.clearAuthenticatedUserContext = function () { + this.authenticatedId = null; + this.accountId = null; + ApplicationInsights.Util.deleteCookie(User.authUserCookieName); + }; + User.prototype.validateUserInput = function (id) { + if (typeof id !== 'string' || + !id || + id.match(/,|;|=| |\|/)) { + return false; + } + return true; + }; + User.cookieSeparator = '|'; + User.userCookieName = 'ai_user'; + User.authUserCookieName = 'ai_authUser'; + return User; + })(); + Context.User = User; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var DataLossAnalyzer = (function () { + function DataLossAnalyzer() { + } + DataLossAnalyzer.reset = function () { + if (DataLossAnalyzer.isEnabled()) { + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, "0"); + } + }; + DataLossAnalyzer.isEnabled = function () { + return DataLossAnalyzer.enabled && + DataLossAnalyzer.appInsights != null && + ApplicationInsights.Util.canUseSessionStorage(); + }; + DataLossAnalyzer.getIssuesReported = function () { + var result = (!DataLossAnalyzer.isEnabled() || isNaN(+ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY))) ? + 0 : + +ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY); + return result; + }; + DataLossAnalyzer.incrementItemsQueued = function () { + try { + if (DataLossAnalyzer.isEnabled()) { + var itemsQueued = DataLossAnalyzer.getNumberOfLostItems(); + ++itemsQueued; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, itemsQueued.toString()); + } + } + catch (e) { } + }; + DataLossAnalyzer.decrementItemsQueued = function (countOfItemsSentSuccessfully) { + try { + if (DataLossAnalyzer.isEnabled()) { + var itemsQueued = DataLossAnalyzer.getNumberOfLostItems(); + itemsQueued -= countOfItemsSentSuccessfully; + if (itemsQueued < 0) + itemsQueued = 0; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, itemsQueued.toString()); + } + } + catch (e) { } + }; + DataLossAnalyzer.getNumberOfLostItems = function () { + var result = 0; + try { + if (DataLossAnalyzer.isEnabled()) { + result = isNaN(+ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY)) ? + 0 : + +ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY); + } + } + catch (e) { + result = 0; + } + return result; + }; + DataLossAnalyzer.reportLostItems = function () { + try { + if (DataLossAnalyzer.isEnabled() && + DataLossAnalyzer.getIssuesReported() < DataLossAnalyzer.LIMIT_PER_SESSION && + DataLossAnalyzer.getNumberOfLostItems() > 0) { + DataLossAnalyzer.appInsights.trackTrace("AI (Internal): Internal report DATALOSS: " + + DataLossAnalyzer.getNumberOfLostItems(), null); + DataLossAnalyzer.appInsights.flush(); + var issuesReported = DataLossAnalyzer.getIssuesReported(); + ++issuesReported; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY, issuesReported.toString()); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToReportDataLoss, "Failed to report data loss: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + finally { + try { + DataLossAnalyzer.reset(); + } + catch (e) { } + } + }; + DataLossAnalyzer.enabled = false; + DataLossAnalyzer.LIMIT_PER_SESSION = 10; + DataLossAnalyzer.ITEMS_QUEUED_KEY = "AI_itemsQueued"; + DataLossAnalyzer.ISSUES_REPORTED_KEY = "AI_lossIssuesReported"; + return DataLossAnalyzer; + })(); + ApplicationInsights.DataLossAnalyzer = DataLossAnalyzer; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +; +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var Sender = (function () { + function Sender(config) { + this._buffer = []; + this._lastSend = 0; + this._config = config; + this._sender = null; + if (typeof XMLHttpRequest != "undefined") { + var testXhr = new XMLHttpRequest(); + if ("withCredentials" in testXhr) { + this._sender = this._xhrSender; + } + else if (typeof XDomainRequest !== "undefined") { + this._sender = this._xdrSender; + } + } + } + Sender.prototype.send = function (envelope) { + var _this = this; + try { + if (this._config.disableTelemetry()) { + return; + } + if (!envelope) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_CannotSendEmptyTelemetry, "Cannot send empty telemetry")); + return; + } + if (!this._sender) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_SenderNotInitialized, "Sender was not initialized")); + return; + } + var payload = ApplicationInsights.Serializer.serialize(envelope); + if (this._getSizeInBytes(this._buffer) + payload.length > this._config.maxBatchSizeInBytes()) { + this.triggerSend(); + } + this._buffer.push(payload); + if (!this._timeoutHandle) { + this._timeoutHandle = setTimeout(function () { + _this._timeoutHandle = null; + _this.triggerSend(); + }, this._config.maxBatchInterval()); + } + ApplicationInsights.DataLossAnalyzer.incrementItemsQueued(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedAddingTelemetryToBuffer, "Failed adding telemetry to the sender's buffer, some telemetry will be lost: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + Sender.prototype._getSizeInBytes = function (list) { + var size = 0; + if (list && list.length) { + for (var i = 0; i < list.length; i++) { + var item = list[i]; + if (item && item.length) { + size += item.length; + } + } + } + return size; + }; + Sender.prototype.triggerSend = function (async) { + var isAsync = true; + if (typeof async === 'boolean') { + isAsync = async; + } + try { + if (!this._config.disableTelemetry()) { + if (this._buffer.length) { + var batch = this._config.emitLineDelimitedJson() ? + this._buffer.join("\n") : + "[" + this._buffer.join(",") + "]"; + this._sender(batch, isAsync, this._buffer.length); + } + this._lastSend = +new Date; + } + this._buffer.length = 0; + clearTimeout(this._timeoutHandle); + this._timeoutHandle = null; + } + catch (e) { + if (!ApplicationInsights.Util.getIEVersion() || ApplicationInsights.Util.getIEVersion() > 9) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TransmissionFailed, "Telemetry transmission failed, some telemetry will be lost: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + } + }; + Sender.prototype._xhrSender = function (payload, isAsync, countOfItemsInPayload) { + var xhr = new XMLHttpRequest(); + xhr[ApplicationInsights.AjaxMonitor.DisabledPropertyName] = true; + xhr.open("POST", this._config.endpointUrl(), isAsync); + xhr.setRequestHeader("Content-type", "application/json"); + xhr.onreadystatechange = function () { return Sender._xhrReadyStateChange(xhr, payload, countOfItemsInPayload); }; + xhr.onerror = function (event) { return Sender._onError(payload, xhr.responseText || xhr.response || "", event); }; + xhr.send(payload); + }; + Sender.prototype._xdrSender = function (payload, isAsync) { + var xdr = new XDomainRequest(); + xdr.onload = function () { return Sender._xdrOnLoad(xdr, payload); }; + xdr.onerror = function (event) { return Sender._onError(payload, xdr.responseText || "", event); }; + xdr.open('POST', this._config.endpointUrl()); + xdr.send(payload); + }; + Sender._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) { + if (xhr.readyState === 4) { + if ((xhr.status < 200 || xhr.status >= 300) && xhr.status !== 0) { + Sender._onError(payload, xhr.responseText || xhr.response || ""); + } + else { + Sender._onSuccess(payload, countOfItemsInPayload); + } + } + }; + Sender._xdrOnLoad = function (xdr, payload) { + if (xdr && (xdr.responseText + "" === "200" || xdr.responseText === "")) { + Sender._onSuccess(payload, 0); + } + else { + Sender._onError(payload, xdr && xdr.responseText || ""); + } + }; + Sender._onError = function (payload, message, event) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_OnError, "Failed to send telemetry.", { message: message })); + }; + Sender._onSuccess = function (payload, countOfItemsInPayload) { + ApplicationInsights.DataLossAnalyzer.decrementItemsQueued(countOfItemsInPayload); + }; + return Sender; + })(); + ApplicationInsights.Sender = Sender; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var SplitTest = (function () { + function SplitTest() { + this.hashCodeGeneragor = new ApplicationInsights.HashCodeScoreGenerator(); + } + SplitTest.prototype.isEnabled = function (key, percentEnabled) { + return this.hashCodeGeneragor.getHashCodeScore(key) < percentEnabled; + }; + return SplitTest; + })(); + ApplicationInsights.SplitTest = SplitTest; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Domain = (function () { + function Domain() { + } + return Domain; + })(); + Telemetry.Domain = Domain; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (SeverityLevel) { + SeverityLevel[SeverityLevel["Verbose"] = 0] = "Verbose"; + SeverityLevel[SeverityLevel["Information"] = 1] = "Information"; + SeverityLevel[SeverityLevel["Warning"] = 2] = "Warning"; + SeverityLevel[SeverityLevel["Error"] = 3] = "Error"; + SeverityLevel[SeverityLevel["Critical"] = 4] = "Critical"; + })(AI.SeverityLevel || (AI.SeverityLevel = {})); + var SeverityLevel = AI.SeverityLevel; +})(AI || (AI = {})); +/// +/// +var AI; +(function (AI) { + "use strict"; + var MessageData = (function (_super) { + __extends(MessageData, _super); + function MessageData() { + this.ver = 2; + this.properties = {}; + _super.call(this); + } + return MessageData; + })(Microsoft.Telemetry.Domain); + AI.MessageData = MessageData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var DataSanitizer = (function () { + function DataSanitizer() { + } + DataSanitizer.sanitizeKeyAndAddUniqueness = function (key, map) { + var origLength = key.length; + var field = DataSanitizer.sanitizeKey(key); + if (field.length !== origLength) { + var i = 0; + var uniqueField = field; + while (map[uniqueField] !== undefined) { + i++; + uniqueField = field.substring(0, DataSanitizer.MAX_NAME_LENGTH - 3) + DataSanitizer.padNumber(i); + } + field = uniqueField; + } + return field; + }; + DataSanitizer.sanitizeKey = function (name) { + if (name) { + name = ApplicationInsights.Util.trim(name.toString()); + if (name.search(/[^0-9a-zA-Z-._()\/ ]/g) >= 0) { + name = name.replace(/[^0-9a-zA-Z-._()\/ ]/g, "_"); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_IllegalCharsInName, "name contains illegal characters. Illegal characters have been replaced with '_'.", { newName: name })); + } + if (name.length > DataSanitizer.MAX_NAME_LENGTH) { + name = name.substring(0, DataSanitizer.MAX_NAME_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_NameTooLong, "name is too long. It has been truncated to " + DataSanitizer.MAX_NAME_LENGTH + " characters.", { name: name })); + } + } + return name; + }; + DataSanitizer.sanitizeString = function (value) { + if (value) { + value = ApplicationInsights.Util.trim(value); + if (value.toString().length > DataSanitizer.MAX_STRING_LENGTH) { + value = value.toString().substring(0, DataSanitizer.MAX_STRING_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StringValueTooLong, "string value is too long. It has been truncated to " + DataSanitizer.MAX_STRING_LENGTH + " characters.", { value: value })); + } + } + return value; + }; + DataSanitizer.sanitizeUrl = function (url) { + if (url) { + if (url.length > DataSanitizer.MAX_URL_LENGTH) { + url = url.substring(0, DataSanitizer.MAX_URL_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_UrlTooLong, "url is too long, it has been trucated to " + DataSanitizer.MAX_URL_LENGTH + " characters.", { url: url })); + } + } + return url; + }; + DataSanitizer.sanitizeMessage = function (message) { + if (message) { + if (message.length > DataSanitizer.MAX_MESSAGE_LENGTH) { + message = message.substring(0, DataSanitizer.MAX_MESSAGE_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_MessageTruncated, "message is too long, it has been trucated to " + DataSanitizer.MAX_MESSAGE_LENGTH + " characters.", { message: message })); + } + } + return message; + }; + DataSanitizer.sanitizeException = function (exception) { + if (exception) { + if (exception.length > DataSanitizer.MAX_EXCEPTION_LENGTH) { + exception = exception.substring(0, DataSanitizer.MAX_EXCEPTION_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_ExceptionTruncated, "exception is too long, it has been trucated to " + DataSanitizer.MAX_EXCEPTION_LENGTH + " characters.", { exception: exception })); + } + } + return exception; + }; + DataSanitizer.sanitizeProperties = function (properties) { + if (properties) { + var tempProps = {}; + for (var prop in properties) { + var value = DataSanitizer.sanitizeString(properties[prop]); + prop = DataSanitizer.sanitizeKeyAndAddUniqueness(prop, tempProps); + tempProps[prop] = value; + } + properties = tempProps; + } + return properties; + }; + DataSanitizer.sanitizeMeasurements = function (measurements) { + if (measurements) { + var tempMeasurements = {}; + for (var measure in measurements) { + var value = measurements[measure]; + measure = DataSanitizer.sanitizeKeyAndAddUniqueness(measure, tempMeasurements); + tempMeasurements[measure] = value; + } + measurements = tempMeasurements; + } + return measurements; + }; + DataSanitizer.padNumber = function (num) { + var s = "00" + num; + return s.substr(s.length - 3); + }; + DataSanitizer.MAX_NAME_LENGTH = 150; + DataSanitizer.MAX_STRING_LENGTH = 1024; + DataSanitizer.MAX_URL_LENGTH = 2048; + DataSanitizer.MAX_MESSAGE_LENGTH = 32768; + DataSanitizer.MAX_EXCEPTION_LENGTH = 32768; + return DataSanitizer; + })(); + Common.DataSanitizer = DataSanitizer; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Trace = (function (_super) { + __extends(Trace, _super); + function Trace(message, properties) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + message: ApplicationInsights.FieldType.Required, + severityLevel: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default + }; + message = message || ApplicationInsights.Util.NotSpecified; + this.message = Telemetry.Common.DataSanitizer.sanitizeMessage(message); + this.properties = Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + } + Trace.envelopeType = "Microsoft.ApplicationInsights.{0}.Message"; + Trace.dataType = "MessageData"; + return Trace; + })(AI.MessageData); + Telemetry.Trace = Trace; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var EventData = (function (_super) { + __extends(EventData, _super); + function EventData() { + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return EventData; + })(Microsoft.Telemetry.Domain); + AI.EventData = EventData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Event = (function (_super) { + __extends(Event, _super); + function Event(name, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Required, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default + }; + this.name = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeString(name); + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + Event.envelopeType = "Microsoft.ApplicationInsights.{0}.Event"; + Event.dataType = "EventData"; + return Event; + })(AI.EventData); + Telemetry.Event = Event; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + var ExceptionDetails = (function () { + function ExceptionDetails() { + this.hasFullStack = true; + this.parsedStack = []; + } + return ExceptionDetails; + })(); + AI.ExceptionDetails = ExceptionDetails; +})(AI || (AI = {})); +/// +/// +/// +var AI; +(function (AI) { + "use strict"; + var ExceptionData = (function (_super) { + __extends(ExceptionData, _super); + function ExceptionData() { + this.ver = 2; + this.exceptions = []; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return ExceptionData; + })(Microsoft.Telemetry.Domain); + AI.ExceptionData = ExceptionData; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + var StackFrame = (function () { + function StackFrame() { + } + return StackFrame; + })(); + AI.StackFrame = StackFrame; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Exception = (function (_super) { + __extends(Exception, _super); + function Exception(exception, handledAt, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + handledAt: ApplicationInsights.FieldType.Required, + exceptions: ApplicationInsights.FieldType.Required, + severityLevel: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default + }; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + this.handledAt = handledAt || "unhandled"; + this.exceptions = [new _ExceptionDetails(exception)]; + } + Exception.CreateSimpleException = function (message, typeName, assembly, fileName, details, line, handledAt) { + return { + handledAt: handledAt || "unhandled", + exceptions: [ + { + hasFullStack: true, + message: message, + stack: details, + typeName: typeName, + parsedStack: [ + { + level: 0, + assembly: assembly, + fileName: fileName, + line: line, + method: "unknown" + } + ] + } + ] + }; + }; + Exception.envelopeType = "Microsoft.ApplicationInsights.{0}.Exception"; + Exception.dataType = "ExceptionData"; + return Exception; + })(AI.ExceptionData); + Telemetry.Exception = Exception; + var _ExceptionDetails = (function (_super) { + __extends(_ExceptionDetails, _super); + function _ExceptionDetails(exception) { + _super.call(this); + this.aiDataContract = { + id: ApplicationInsights.FieldType.Default, + outerId: ApplicationInsights.FieldType.Default, + typeName: ApplicationInsights.FieldType.Required, + message: ApplicationInsights.FieldType.Required, + hasFullStack: ApplicationInsights.FieldType.Default, + stack: ApplicationInsights.FieldType.Default, + parsedStack: ApplicationInsights.FieldType.Array + }; + this.typeName = Telemetry.Common.DataSanitizer.sanitizeString(exception.name || ApplicationInsights.Util.NotSpecified); + this.message = Telemetry.Common.DataSanitizer.sanitizeMessage(exception.message || ApplicationInsights.Util.NotSpecified); + var stack = exception["stack"]; + this.parsedStack = this.parseStack(stack); + this.stack = Telemetry.Common.DataSanitizer.sanitizeException(stack); + this.hasFullStack = ApplicationInsights.Util.isArray(this.parsedStack) && this.parsedStack.length > 0; + } + _ExceptionDetails.prototype.parseStack = function (stack) { + var parsedStack = undefined; + if (typeof stack === "string") { + var frames = stack.split('\n'); + parsedStack = []; + var level = 0; + var totalSizeInBytes = 0; + for (var i = 0; i <= frames.length; i++) { + var frame = frames[i]; + if (_StackFrame.regex.test(frame)) { + var parsedFrame = new _StackFrame(frames[i], level++); + totalSizeInBytes += parsedFrame.sizeInBytes; + parsedStack.push(parsedFrame); + } + } + var exceptionParsedStackThreshold = 32 * 1024; + if (totalSizeInBytes > exceptionParsedStackThreshold) { + var left = 0; + var right = parsedStack.length - 1; + var size = 0; + var acceptedLeft = left; + var acceptedRight = right; + while (left < right) { + var lSize = parsedStack[left].sizeInBytes; + var rSize = parsedStack[right].sizeInBytes; + size += lSize + rSize; + if (size > exceptionParsedStackThreshold) { + var howMany = acceptedRight - acceptedLeft + 1; + parsedStack.splice(acceptedLeft, howMany); + break; + } + acceptedLeft = left; + acceptedRight = right; + left++; + right--; + } + } + } + return parsedStack; + }; + return _ExceptionDetails; + })(AI.ExceptionDetails); + var _StackFrame = (function (_super) { + __extends(_StackFrame, _super); + function _StackFrame(frame, level) { + _super.call(this); + this.sizeInBytes = 0; + this.aiDataContract = { + level: ApplicationInsights.FieldType.Required, + method: ApplicationInsights.FieldType.Required, + assembly: ApplicationInsights.FieldType.Default, + fileName: ApplicationInsights.FieldType.Default, + line: ApplicationInsights.FieldType.Default + }; + this.level = level; + this.method = ""; + this.assembly = ApplicationInsights.Util.trim(frame); + var matches = frame.match(_StackFrame.regex); + if (matches && matches.length >= 5) { + this.method = ApplicationInsights.Util.trim(matches[2]) || this.method; + this.fileName = ApplicationInsights.Util.trim(matches[4]); + this.line = parseInt(matches[5]) || 0; + } + this.sizeInBytes += this.method.length; + this.sizeInBytes += this.fileName.length; + this.sizeInBytes += this.assembly.length; + this.sizeInBytes += _StackFrame.baseSize; + this.sizeInBytes += this.level.toString().length; + this.sizeInBytes += this.line.toString().length; + } + _StackFrame.regex = /^([\s]+at)?(.*?)(\@|\s\(|\s)([^\(\@\n]+):([0-9]+):([0-9]+)(\)?)$/; + _StackFrame.baseSize = 58; + return _StackFrame; + })(AI.StackFrame); + Telemetry._StackFrame = _StackFrame; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var MetricData = (function (_super) { + __extends(MetricData, _super); + function MetricData() { + this.ver = 2; + this.metrics = []; + this.properties = {}; + _super.call(this); + } + return MetricData; + })(Microsoft.Telemetry.Domain); + AI.MetricData = MetricData; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + (function (DataPointType) { + DataPointType[DataPointType["Measurement"] = 0] = "Measurement"; + DataPointType[DataPointType["Aggregation"] = 1] = "Aggregation"; + })(AI.DataPointType || (AI.DataPointType = {})); + var DataPointType = AI.DataPointType; +})(AI || (AI = {})); +/// +var AI; +(function (AI) { + "use strict"; + var DataPoint = (function () { + function DataPoint() { + this.kind = AI.DataPointType.Measurement; + } + return DataPoint; + })(); + AI.DataPoint = DataPoint; +})(AI || (AI = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var DataPoint = (function (_super) { + __extends(DataPoint, _super); + function DataPoint() { + _super.apply(this, arguments); + this.aiDataContract = { + name: ApplicationInsights.FieldType.Required, + kind: ApplicationInsights.FieldType.Default, + value: ApplicationInsights.FieldType.Required, + count: ApplicationInsights.FieldType.Default, + min: ApplicationInsights.FieldType.Default, + max: ApplicationInsights.FieldType.Default, + stdDev: ApplicationInsights.FieldType.Default + }; + } + return DataPoint; + })(AI.DataPoint); + Common.DataPoint = DataPoint; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Metric = (function (_super) { + __extends(Metric, _super); + function Metric(name, value, count, min, max, properties) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + metrics: ApplicationInsights.FieldType.Required, + properties: ApplicationInsights.FieldType.Default + }; + var dataPoint = new Microsoft.ApplicationInsights.Telemetry.Common.DataPoint(); + dataPoint.count = count > 0 ? count : undefined; + dataPoint.max = isNaN(max) || max === null ? undefined : max; + dataPoint.min = isNaN(min) || min === null ? undefined : min; + dataPoint.name = Telemetry.Common.DataSanitizer.sanitizeString(name); + dataPoint.value = value; + this.metrics = [dataPoint]; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + } + Metric.envelopeType = "Microsoft.ApplicationInsights.{0}.Metric"; + Metric.dataType = "MetricData"; + return Metric; + })(AI.MetricData); + Telemetry.Metric = Metric; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var PageViewData = (function (_super) { + __extends(PageViewData, _super); + function PageViewData() { + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return PageViewData; + })(AI.EventData); + AI.PageViewData = PageViewData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageView = (function (_super) { + __extends(PageView, _super); + function PageView(name, url, durationMs, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + url: ApplicationInsights.FieldType.Default, + duration: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default + }; + this.url = Telemetry.Common.DataSanitizer.sanitizeUrl(url); + this.name = Telemetry.Common.DataSanitizer.sanitizeString(name || ApplicationInsights.Util.NotSpecified); + if (!isNaN(durationMs)) { + this.duration = ApplicationInsights.Util.msToTimeSpan(durationMs); + } + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + PageView.envelopeType = "Microsoft.ApplicationInsights.{0}.Pageview"; + PageView.dataType = "PageviewData"; + return PageView; + })(AI.PageViewData); + Telemetry.PageView = PageView; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var PageViewPerfData = (function (_super) { + __extends(PageViewPerfData, _super); + function PageViewPerfData() { + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return PageViewPerfData; + })(AI.PageViewData); + AI.PageViewPerfData = PageViewPerfData; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageViewPerformance = (function (_super) { + __extends(PageViewPerformance, _super); + function PageViewPerformance(name, url, unused, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + url: ApplicationInsights.FieldType.Default, + duration: ApplicationInsights.FieldType.Default, + perfTotal: ApplicationInsights.FieldType.Default, + networkConnect: ApplicationInsights.FieldType.Default, + sentRequest: ApplicationInsights.FieldType.Default, + receivedResponse: ApplicationInsights.FieldType.Default, + domProcessing: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default + }; + this.isValid = false; + var timing = PageViewPerformance.getPerformanceTiming(); + if (timing) { + var total = PageViewPerformance.getDuration(timing.navigationStart, timing.loadEventEnd); + var network = PageViewPerformance.getDuration(timing.navigationStart, timing.connectEnd); + var request = PageViewPerformance.getDuration(timing.requestStart, timing.responseStart); + var response = PageViewPerformance.getDuration(timing.responseStart, timing.responseEnd); + var dom = PageViewPerformance.getDuration(timing.responseEnd, timing.loadEventEnd); + if (total == 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ErrorPVCalc, "error calculating page view performance.", { total: total, network: network, request: request, response: response, dom: dom })); + } + else if (total < Math.floor(network) + Math.floor(request) + Math.floor(response) + Math.floor(dom)) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ClientPerformanceMathError, "client performance math error.", { total: total, network: network, request: request, response: response, dom: dom })); + } + else { + this.durationMs = total; + this.perfTotal = this.duration = ApplicationInsights.Util.msToTimeSpan(total); + this.networkConnect = ApplicationInsights.Util.msToTimeSpan(network); + this.sentRequest = ApplicationInsights.Util.msToTimeSpan(request); + this.receivedResponse = ApplicationInsights.Util.msToTimeSpan(response); + this.domProcessing = ApplicationInsights.Util.msToTimeSpan(dom); + this.isValid = true; + } + } + this.url = Telemetry.Common.DataSanitizer.sanitizeUrl(url); + this.name = Telemetry.Common.DataSanitizer.sanitizeString(name || ApplicationInsights.Util.NotSpecified); + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + PageViewPerformance.prototype.getIsValid = function () { + return this.isValid; + }; + PageViewPerformance.prototype.getDurationMs = function () { + return this.durationMs; + }; + PageViewPerformance.getPerformanceTiming = function () { + if (typeof window != "undefined" && window.performance && window.performance.timing) { + return window.performance.timing; + } + return null; + }; + PageViewPerformance.isPerformanceTimingSupported = function () { + return typeof window != "undefined" && window.performance && window.performance.timing; + }; + PageViewPerformance.isPerformanceTimingDataReady = function () { + var timing = window.performance.timing; + return timing.domainLookupStart > 0 + && timing.navigationStart > 0 + && timing.responseStart > 0 + && timing.requestStart > 0 + && timing.loadEventEnd > 0 + && timing.responseEnd > 0 + && timing.connectEnd > 0 + && timing.domLoading > 0; + }; + PageViewPerformance.getDuration = function (start, end) { + var duration = 0; + if (!(isNaN(start) || isNaN(end))) { + duration = Math.max(end - start, 0); + } + return duration; + }; + PageViewPerformance.envelopeType = "Microsoft.ApplicationInsights.{0}.PageviewPerformance"; + PageViewPerformance.dataType = "PageviewPerformanceData"; + return PageViewPerformance; + })(AI.PageViewPerfData); + Telemetry.PageViewPerformance = PageViewPerformance; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var TelemetryContext = (function () { + function TelemetryContext(config) { + this._config = config; + this._sender = new ApplicationInsights.Sender(config); + if (typeof window !== 'undefined') { + this._sessionManager = new ApplicationInsights.Context._SessionManager(config); + this.application = new ApplicationInsights.Context.Application(); + this.device = new ApplicationInsights.Context.Device(); + this.internal = new ApplicationInsights.Context.Internal(); + this.location = new ApplicationInsights.Context.Location(); + this.user = new ApplicationInsights.Context.User(config); + this.operation = new ApplicationInsights.Context.Operation(); + this.session = new ApplicationInsights.Context.Session(); + this.sample = new ApplicationInsights.Context.Sample(config.sampleRate()); + } + } + TelemetryContext.prototype.addTelemetryInitializer = function (telemetryInitializer) { + this.telemetryInitializers = this.telemetryInitializers || []; + this.telemetryInitializers.push(telemetryInitializer); + }; + TelemetryContext.prototype.track = function (envelope) { + if (!envelope) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_TrackArgumentsNotSpecified, "cannot call .track() with a null or undefined argument")); + } + else { + if (envelope.name === ApplicationInsights.Telemetry.PageView.envelopeType) { + ApplicationInsights._InternalLogging.resetInternalMessageCount(); + } + if (this.session) { + if (typeof this.session.id !== "string") { + this._sessionManager.update(); + } + } + this._track(envelope); + } + return envelope; + }; + TelemetryContext.prototype._track = function (envelope) { + if (this.session) { + if (typeof this.session.id === "string") { + this._applySessionContext(envelope, this.session); + } + else { + this._applySessionContext(envelope, this._sessionManager.automaticSession); + } + } + this._applyApplicationContext(envelope, this.application); + this._applyDeviceContext(envelope, this.device); + this._applyInternalContext(envelope, this.internal); + this._applyLocationContext(envelope, this.location); + this._applySampleContext(envelope, this.sample); + this._applyUserContext(envelope, this.user); + this._applyOperationContext(envelope, this.operation); + envelope.iKey = this._config.instrumentationKey(); + var doNotSendItem = false; + try { + this.telemetryInitializers = this.telemetryInitializers || []; + var telemetryInitializersCount = this.telemetryInitializers.length; + for (var i = 0; i < telemetryInitializersCount; ++i) { + var telemetryInitializer = this.telemetryInitializers[i]; + if (telemetryInitializer) { + if (telemetryInitializer.apply(null, [envelope]) === false) { + doNotSendItem = true; + break; + } + } + } + } + catch (e) { + doNotSendItem = true; + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_TelemetryInitializerFailed, "One of telemetry initializers failed, telemetry item will not be sent: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + if (!doNotSendItem) { + if (envelope.name === ApplicationInsights.Telemetry.Metric.envelopeType || + this.sample.isSampledIn(envelope)) { + var iKeyNoDashes = this._config.instrumentationKey().replace(/-/g, ""); + envelope.name = envelope.name.replace("{0}", iKeyNoDashes); + this._sender.send(envelope); + } + else { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TelemetrySampledAndNotSent, "Telemetry is sampled and not sent to the AI service.", { SampleRate: this.sample.sampleRate })); + } + } + return envelope; + }; + TelemetryContext.prototype._applyApplicationContext = function (envelope, appContext) { + if (appContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof appContext.ver === "string") { + envelope.tags[tagKeys.applicationVersion] = appContext.ver; + } + if (typeof appContext.build === "string") { + envelope.tags[tagKeys.applicationBuild] = appContext.build; + } + } + }; + TelemetryContext.prototype._applyDeviceContext = function (envelope, deviceContext) { + var tagKeys = new AI.ContextTagKeys(); + if (deviceContext) { + if (typeof deviceContext.id === "string") { + envelope.tags[tagKeys.deviceId] = deviceContext.id; + } + if (typeof deviceContext.ip === "string") { + envelope.tags[tagKeys.deviceIp] = deviceContext.ip; + } + if (typeof deviceContext.language === "string") { + envelope.tags[tagKeys.deviceLanguage] = deviceContext.language; + } + if (typeof deviceContext.locale === "string") { + envelope.tags[tagKeys.deviceLocale] = deviceContext.locale; + } + if (typeof deviceContext.model === "string") { + envelope.tags[tagKeys.deviceModel] = deviceContext.model; + } + if (typeof deviceContext.network !== "undefined") { + envelope.tags[tagKeys.deviceNetwork] = deviceContext.network; + } + if (typeof deviceContext.oemName === "string") { + envelope.tags[tagKeys.deviceOEMName] = deviceContext.oemName; + } + if (typeof deviceContext.os === "string") { + envelope.tags[tagKeys.deviceOS] = deviceContext.os; + } + if (typeof deviceContext.osversion === "string") { + envelope.tags[tagKeys.deviceOSVersion] = deviceContext.osversion; + } + if (typeof deviceContext.resolution === "string") { + envelope.tags[tagKeys.deviceScreenResolution] = deviceContext.resolution; + } + if (typeof deviceContext.type === "string") { + envelope.tags[tagKeys.deviceType] = deviceContext.type; + } + } + }; + TelemetryContext.prototype._applyInternalContext = function (envelope, internalContext) { + if (internalContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof internalContext.agentVersion === "string") { + envelope.tags[tagKeys.internalAgentVersion] = internalContext.agentVersion; + } + if (typeof internalContext.sdkVersion === "string") { + envelope.tags[tagKeys.internalSdkVersion] = internalContext.sdkVersion; + } + } + }; + TelemetryContext.prototype._applyLocationContext = function (envelope, locationContext) { + if (locationContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof locationContext.ip === "string") { + envelope.tags[tagKeys.locationIp] = locationContext.ip; + } + } + }; + TelemetryContext.prototype._applyOperationContext = function (envelope, operationContext) { + if (operationContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof operationContext.id === "string") { + envelope.tags[tagKeys.operationId] = operationContext.id; + } + if (typeof operationContext.name === "string") { + envelope.tags[tagKeys.operationName] = operationContext.name; + } + if (typeof operationContext.parentId === "string") { + envelope.tags[tagKeys.operationParentId] = operationContext.parentId; + } + if (typeof operationContext.rootId === "string") { + envelope.tags[tagKeys.operationRootId] = operationContext.rootId; + } + if (typeof operationContext.syntheticSource === "string") { + envelope.tags[tagKeys.operationSyntheticSource] = operationContext.syntheticSource; + } + } + }; + TelemetryContext.prototype._applySampleContext = function (envelope, sampleContext) { + if (sampleContext) { + envelope.sampleRate = sampleContext.sampleRate; + } + }; + TelemetryContext.prototype._applySessionContext = function (envelope, sessionContext) { + if (sessionContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof sessionContext.id === "string") { + envelope.tags[tagKeys.sessionId] = sessionContext.id; + } + if (typeof sessionContext.isFirst !== "undefined") { + envelope.tags[tagKeys.sessionIsFirst] = sessionContext.isFirst; + } + } + }; + TelemetryContext.prototype._applyUserContext = function (envelope, userContext) { + if (userContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof userContext.accountId === "string") { + envelope.tags[tagKeys.userAccountId] = userContext.accountId; + } + if (typeof userContext.agent === "string") { + envelope.tags[tagKeys.userAgent] = userContext.agent; + } + if (typeof userContext.id === "string") { + envelope.tags[tagKeys.userId] = userContext.id; + } + if (typeof userContext.authenticatedId === "string") { + envelope.tags[tagKeys.userAuthUserId] = userContext.authenticatedId; + } + if (typeof userContext.storeRegion === "string") { + envelope.tags[tagKeys.userStoreRegion] = userContext.storeRegion; + } + } + }; + return TelemetryContext; + })(); + ApplicationInsights.TelemetryContext = TelemetryContext; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Data = (function (_super) { + __extends(Data, _super); + function Data() { + _super.call(this); + } + return Data; + })(Microsoft.Telemetry.Base); + Telemetry.Data = Data; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Data = (function (_super) { + __extends(Data, _super); + function Data(type, data) { + _super.call(this); + this.aiDataContract = { + baseType: ApplicationInsights.FieldType.Required, + baseData: ApplicationInsights.FieldType.Required + }; + this.baseType = type; + this.baseData = data; + } + return Data; + })(Microsoft.Telemetry.Data); + Common.Data = Data; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageViewManager = (function () { + function PageViewManager(appInsights, overridePageViewDuration) { + this.pageViewPerformanceSent = false; + this.overridePageViewDuration = false; + this.overridePageViewDuration = overridePageViewDuration; + this.appInsights = appInsights; + } + PageViewManager.prototype.trackPageView = function (name, url, properties, measurements, duration) { + var _this = this; + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + if (typeof url !== "string") { + url = window.location && window.location.href || ""; + } + var pageViewSent = false; + var customDuration = 0; + if (Telemetry.PageViewPerformance.isPerformanceTimingSupported()) { + var start = Telemetry.PageViewPerformance.getPerformanceTiming().navigationStart; + customDuration = Telemetry.PageViewPerformance.getDuration(start, +new Date); + } + else { + this.appInsights.sendPageViewInternal(name, url, !isNaN(duration) ? duration : 0, properties, measurements); + this.appInsights.flush(); + pageViewSent = true; + } + if (this.overridePageViewDuration || !isNaN(duration)) { + this.appInsights.sendPageViewInternal(name, url, !isNaN(duration) ? duration : customDuration, properties, measurements); + this.appInsights.flush(); + pageViewSent = true; + } + var maxDurationLimit = 60000; + if (!Telemetry.PageViewPerformance.isPerformanceTimingSupported()) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_NavigationTimingNotSupported, "trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.")); + return; + } + var handle = setInterval(function () { + try { + if (Telemetry.PageViewPerformance.isPerformanceTimingDataReady()) { + clearInterval(handle); + var pageViewPerformance = new Telemetry.PageViewPerformance(name, url, null, properties, measurements); + if (!pageViewPerformance.getIsValid() && !pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, customDuration, properties, measurements); + _this.appInsights.flush(); + } + else { + if (!pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, pageViewPerformance.getDurationMs(), properties, measurements); + } + if (!_this.pageViewPerformanceSent) { + _this.appInsights.sendPageViewPerformanceInternal(pageViewPerformance); + _this.pageViewPerformanceSent = true; + } + _this.appInsights.flush(); + } + } + else if (Telemetry.PageViewPerformance.getDuration(start, +new Date) > maxDurationLimit) { + clearInterval(handle); + if (!pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, maxDurationLimit, properties, measurements); + _this.appInsights.flush(); + } + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackPVFailedCalc, "trackPageView failed on page load calculation: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }, 100); + }; + return PageViewManager; + })(); + Telemetry.PageViewManager = PageViewManager; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageVisitTimeManager = (function () { + function PageVisitTimeManager(pageVisitTimeTrackingHandler) { + this.prevPageVisitDataKeyName = "prevPageVisitData"; + this.pageVisitTimeTrackingHandler = pageVisitTimeTrackingHandler; + } + PageVisitTimeManager.prototype.trackPreviousPageVisit = function (currentPageName, currentPageUrl) { + try { + var prevPageVisitTimeData = this.restartPageVisitTimer(currentPageName, currentPageUrl); + if (prevPageVisitTimeData) { + this.pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData.pageVisitTime); + } + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Auto track page visit time failed, metric will not be collected: " + ApplicationInsights.Util.dump(e)); + } + }; + PageVisitTimeManager.prototype.restartPageVisitTimer = function (pageName, pageUrl) { + try { + var prevPageVisitData = this.stopPageVisitTimer(); + this.startPageVisitTimer(pageName, pageUrl); + return prevPageVisitData; + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Call to restart failed: " + ApplicationInsights.Util.dump(e)); + return null; + } + }; + PageVisitTimeManager.prototype.startPageVisitTimer = function (pageName, pageUrl) { + try { + if (ApplicationInsights.Util.canUseSessionStorage()) { + if (ApplicationInsights.Util.getSessionStorage(this.prevPageVisitDataKeyName) != null) { + throw new Error("Cannot call startPageVisit consecutively without first calling stopPageVisit"); + } + var currPageVisitData = new PageVisitData(pageName, pageUrl); + var currPageVisitDataStr = JSON.stringify(currPageVisitData); + ApplicationInsights.Util.setSessionStorage(this.prevPageVisitDataKeyName, currPageVisitDataStr); + } + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Call to start failed: " + ApplicationInsights.Util.dump(e)); + } + }; + PageVisitTimeManager.prototype.stopPageVisitTimer = function () { + try { + if (ApplicationInsights.Util.canUseSessionStorage()) { + var pageVisitEndTime = Date.now(); + var pageVisitDataJsonStr = ApplicationInsights.Util.getSessionStorage(this.prevPageVisitDataKeyName); + if (pageVisitDataJsonStr) { + var prevPageVisitData = JSON.parse(pageVisitDataJsonStr); + prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData.pageVisitStartTime; + ApplicationInsights.Util.removeSessionStorage(this.prevPageVisitDataKeyName); + return prevPageVisitData; + } + else { + return null; + } + } + return null; + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Stop page visit timer failed: " + ApplicationInsights.Util.dump(e)); + return null; + } + }; + return PageVisitTimeManager; + })(); + Telemetry.PageVisitTimeManager = PageVisitTimeManager; + var PageVisitData = (function () { + function PageVisitData(pageName, pageUrl) { + this.pageVisitStartTime = Date.now(); + this.pageName = pageName; + this.pageUrl = pageUrl; + } + return PageVisitData; + })(); + Telemetry.PageVisitData = PageVisitData; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (DependencyKind) { + DependencyKind[DependencyKind["SQL"] = 0] = "SQL"; + DependencyKind[DependencyKind["Http"] = 1] = "Http"; + DependencyKind[DependencyKind["Other"] = 2] = "Other"; + })(AI.DependencyKind || (AI.DependencyKind = {})); + var DependencyKind = AI.DependencyKind; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + (function (DependencySourceType) { + DependencySourceType[DependencySourceType["Undefined"] = 0] = "Undefined"; + DependencySourceType[DependencySourceType["Aic"] = 1] = "Aic"; + DependencySourceType[DependencySourceType["Apmc"] = 2] = "Apmc"; + })(AI.DependencySourceType || (AI.DependencySourceType = {})); + var DependencySourceType = AI.DependencySourceType; +})(AI || (AI = {})); +/// +/// +/// +/// +var AI; +(function (AI) { + "use strict"; + var RemoteDependencyData = (function (_super) { + __extends(RemoteDependencyData, _super); + function RemoteDependencyData() { + this.ver = 2; + this.kind = AI.DataPointType.Aggregation; + this.dependencyKind = AI.DependencyKind.Other; + this.success = true; + this.dependencySource = AI.DependencySourceType.Apmc; + this.properties = {}; + _super.call(this); + } + return RemoteDependencyData; + })(Microsoft.Telemetry.Domain); + AI.RemoteDependencyData = RemoteDependencyData; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var RemoteDependencyData = (function (_super) { + __extends(RemoteDependencyData, _super); + function RemoteDependencyData(id, name, commandName, value, success, resultCode) { + _super.call(this); + this.aiDataContract = { + id: ApplicationInsights.FieldType.Required, + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + kind: ApplicationInsights.FieldType.Required, + value: ApplicationInsights.FieldType.Default, + count: ApplicationInsights.FieldType.Default, + min: ApplicationInsights.FieldType.Default, + max: ApplicationInsights.FieldType.Default, + stdDev: ApplicationInsights.FieldType.Default, + dependencyKind: ApplicationInsights.FieldType.Default, + success: ApplicationInsights.FieldType.Default, + async: ApplicationInsights.FieldType.Default, + dependencySource: ApplicationInsights.FieldType.Default, + commandName: ApplicationInsights.FieldType.Default, + dependencyTypeName: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + resultCode: ApplicationInsights.FieldType.Default + }; + this.id = id; + this.name = name; + this.commandName = commandName; + this.value = value; + this.success = success; + this.resultCode = resultCode + ""; + this.dependencyKind = AI.DependencyKind.Http; + this.dependencyTypeName = "Ajax"; + } + RemoteDependencyData.envelopeType = "Microsoft.ApplicationInsights.{0}.RemoteDependency"; + RemoteDependencyData.dataType = "RemoteDependencyData"; + return RemoteDependencyData; + })(AI.RemoteDependencyData); + Telemetry.RemoteDependencyData = RemoteDependencyData; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + ApplicationInsights.Version = "0.22.9"; + var AppInsights = (function () { + function AppInsights(config) { + var _this = this; + this._trackAjaxAttempts = 0; + this.config = config || {}; + var defaults = AppInsights.defaultConfig; + if (defaults !== undefined) { + for (var field in defaults) { + if (this.config[field] === undefined) { + this.config[field] = defaults[field]; + } + } + } + ApplicationInsights._InternalLogging.verboseLogging = function () { return _this.config.verboseLogging; }; + ApplicationInsights._InternalLogging.enableDebugExceptions = function () { return _this.config.enableDebug; }; + var configGetters = { + instrumentationKey: function () { return _this.config.instrumentationKey; }, + accountId: function () { return _this.config.accountId; }, + sessionRenewalMs: function () { return _this.config.sessionRenewalMs; }, + sessionExpirationMs: function () { return _this.config.sessionExpirationMs; }, + endpointUrl: function () { return _this.config.endpointUrl; }, + emitLineDelimitedJson: function () { return _this.config.emitLineDelimitedJson; }, + maxBatchSizeInBytes: function () { return _this.config.maxBatchSizeInBytes; }, + maxBatchInterval: function () { return _this.config.maxBatchInterval; }, + disableTelemetry: function () { return _this.config.disableTelemetry; }, + sampleRate: function () { return _this.config.samplingPercentage; }, + cookieDomain: function () { return _this.config.cookieDomain; } + }; + this.context = new ApplicationInsights.TelemetryContext(configGetters); + this._pageViewManager = new Microsoft.ApplicationInsights.Telemetry.PageViewManager(this, this.config.overridePageViewDuration); + this._eventTracking = new Timing("trackEvent"); + this._eventTracking.action = function (name, url, duration, properties, measurements) { + if (!measurements) { + measurements = { duration: duration }; + } + else { + if (isNaN(measurements["duration"])) { + measurements["duration"] = duration; + } + } + var event = new ApplicationInsights.Telemetry.Event(name, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Event.dataType, event); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Event.envelopeType); + _this.context.track(envelope); + }; + this._pageTracking = new Timing("trackPageView"); + this._pageTracking.action = function (name, url, duration, properties, measurements) { + _this.sendPageViewInternal(name, url, duration, properties, measurements); + }; + this._pageVisitTimeManager = new ApplicationInsights.Telemetry.PageVisitTimeManager(function (pageName, pageUrl, pageVisitTime) { return _this.trackPageVisitTime(pageName, pageUrl, pageVisitTime); }); + if (!this.config.disableAjaxTracking) { + new Microsoft.ApplicationInsights.AjaxMonitor(this); + } + } + AppInsights.prototype.sendPageViewInternal = function (name, url, duration, properties, measurements) { + var pageView = new ApplicationInsights.Telemetry.PageView(name, url, duration, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.PageView.dataType, pageView); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.PageView.envelopeType); + this.context.track(envelope); + this._trackAjaxAttempts = 0; + }; + AppInsights.prototype.sendPageViewPerformanceInternal = function (pageViewPerformance) { + var pageViewPerformanceData = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.PageViewPerformance.dataType, pageViewPerformance); + var pageViewPerformanceEnvelope = new ApplicationInsights.Telemetry.Common.Envelope(pageViewPerformanceData, ApplicationInsights.Telemetry.PageViewPerformance.envelopeType); + this.context.track(pageViewPerformanceEnvelope); + }; + AppInsights.prototype.startTrackPage = function (name) { + try { + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + this._pageTracking.start(name); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StartTrackFailed, "startTrackPage failed, page view may not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.stopTrackPage = function (name, url, properties, measurements) { + try { + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + if (typeof url !== "string") { + url = window.location && window.location.href || ""; + } + this._pageTracking.stop(name, url, properties, measurements); + if (this.config.autoTrackPageVisitTime) { + this._pageVisitTimeManager.trackPreviousPageVisit(name, url); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StopTrackFailed, "stopTrackPage failed, page view will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackPageView = function (name, url, properties, measurements, duration) { + try { + this._pageViewManager.trackPageView(name, url, properties, measurements, duration); + if (this.config.autoTrackPageVisitTime) { + this._pageVisitTimeManager.trackPreviousPageVisit(name, url); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackPVFailed, "trackPageView failed, page view will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.startTrackEvent = function (name) { + try { + this._eventTracking.start(name); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StartTrackEventFailed, "startTrackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.stopTrackEvent = function (name, properties, measurements) { + try { + this._eventTracking.stop(name, undefined, properties, measurements); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StopTrackEventFailed, "stopTrackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackEvent = function (name, properties, measurements) { + try { + var eventTelemetry = new ApplicationInsights.Telemetry.Event(name, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Event.dataType, eventTelemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Event.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackEventFailed, "trackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackAjax = function (id, absoluteUrl, pathName, totalTime, success, resultCode) { + if (this.config.maxAjaxCallsPerView === -1 || + this._trackAjaxAttempts < this.config.maxAjaxCallsPerView) { + var dependency = new ApplicationInsights.Telemetry.RemoteDependencyData(id, absoluteUrl, pathName, totalTime, success, resultCode); + var dependencyData = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.RemoteDependencyData.dataType, dependency); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(dependencyData, ApplicationInsights.Telemetry.RemoteDependencyData.envelopeType); + this.context.track(envelope); + } + else if (this._trackAjaxAttempts === this.config.maxAjaxCallsPerView) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_MaxAjaxPerPVExceeded, "Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.")); + } + ++this._trackAjaxAttempts; + }; + AppInsights.prototype.trackException = function (exception, handledAt, properties, measurements) { + try { + if (!ApplicationInsights.Util.isError(exception)) { + try { + throw new Error(exception); + } + catch (error) { + exception = error; + } + } + var exceptionTelemetry = new ApplicationInsights.Telemetry.Exception(exception, handledAt, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Exception.dataType, exceptionTelemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Exception.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackExceptionFailed, "trackException failed, exception will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackMetric = function (name, average, sampleCount, min, max, properties) { + try { + var telemetry = new ApplicationInsights.Telemetry.Metric(name, average, sampleCount, min, max, properties); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Metric.dataType, telemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Metric.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackMetricFailed, "trackMetric failed, metric will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackTrace = function (message, properties) { + try { + var telemetry = new ApplicationInsights.Telemetry.Trace(message, properties); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Trace.dataType, telemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Trace.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackTraceFailed, "trackTrace failed, trace will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackPageVisitTime = function (pageName, pageUrl, pageVisitTime) { + var properties = { PageName: pageName, PageUrl: pageUrl }; + this.trackMetric("PageVisitTime", pageVisitTime, 1, pageVisitTime, pageVisitTime, properties); + }; + AppInsights.prototype.flush = function () { + try { + this.context._sender.triggerSend(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FlushFailed, "flush failed, telemetry will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId) { + try { + this.context.user.setAuthenticatedUserContext(authenticatedUserId, accountId); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailed, "Setting auth user context failed. " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.clearAuthenticatedUserContext = function () { + try { + this.context.user.clearAuthenticatedUserContext(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailed, "Clearing auth user context failed. " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.SendCORSException = function (properties) { + var exceptionData = Microsoft.ApplicationInsights.Telemetry.Exception.CreateSimpleException("Script error.", "Error", "unknown", "unknown", "The browser’s same-origin policy prevents us from getting the details of this exception.The exception occurred in a script loaded from an origin different than the web page.For cross- domain error reporting you can use crossorigin attribute together with appropriate CORS HTTP headers.For more information please see http://www.w3.org/TR/cors/.", 0, null); + exceptionData.properties = properties; + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Exception.dataType, exceptionData); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Exception.envelopeType); + this.context.track(envelope); + }; + AppInsights.prototype._onerror = function (message, url, lineNumber, columnNumber, error) { + try { + var properties = { url: url ? url : document.URL }; + if (ApplicationInsights.Util.isCrossOriginError(message, url, lineNumber, columnNumber, error)) { + this.SendCORSException(properties); + } + else { + if (!ApplicationInsights.Util.isError(error)) { + var stack = "window.onerror@" + properties.url + ":" + lineNumber + ":" + (columnNumber || 0); + error = new Error(message); + error["stack"] = stack; + } + this.trackException(error, null, properties); + } + } + catch (exception) { + var errorString = error ? (error.name + ", " + error.message) : "null"; + var exceptionDump = ApplicationInsights.Util.dump(exception); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ExceptionWhileLoggingError, "_onerror threw exception while logging error, error will not be collected: " + ApplicationInsights.Util.getExceptionName(exception), { exception: exceptionDump, errorString: errorString })); + } + }; + return AppInsights; + })(); + ApplicationInsights.AppInsights = AppInsights; + var Timing = (function () { + function Timing(name) { + this._name = name; + this._events = {}; + } + Timing.prototype.start = function (name) { + if (typeof this._events[name] !== "undefined") { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StartCalledMoreThanOnce, "start was called more than once for this event without calling stop.", { name: this._name, key: name })); + } + this._events[name] = +new Date; + }; + Timing.prototype.stop = function (name, url, properties, measurements) { + var start = this._events[name]; + if (isNaN(start)) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StopCalledWithoutStart, "stop was called without a corresponding start.", { name: this._name, key: name })); + } + else { + var end = +new Date; + var duration = ApplicationInsights.Telemetry.PageViewPerformance.getDuration(start, end); + this.action(name, url, duration, properties, measurements); + } + delete this._events[name]; + this._events[name] = undefined; + }; + return Timing; + })(); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var AjaxCallData = (function (_super) { + __extends(AjaxCallData, _super); + function AjaxCallData() { + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return AjaxCallData; + })(AI.PageViewData); + AI.AjaxCallData = AjaxCallData; +})(AI || (AI = {})); +/// +var AI; +(function (AI) { + "use strict"; + var RequestData = (function (_super) { + __extends(RequestData, _super); + function RequestData() { + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return RequestData; + })(Microsoft.Telemetry.Domain); + AI.RequestData = RequestData; +})(AI || (AI = {})); +/// +/// +var AI; +(function (AI) { + "use strict"; + var SessionStateData = (function (_super) { + __extends(SessionStateData, _super); + function SessionStateData() { + this.ver = 2; + this.state = AI.SessionState.Start; + _super.call(this); + } + return SessionStateData; + })(Microsoft.Telemetry.Domain); + AI.SessionStateData = SessionStateData; +})(AI || (AI = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var Initialization = (function () { + function Initialization(snippet) { + snippet.queue = snippet.queue || []; + var config = snippet.config || {}; + if (config && !config.instrumentationKey) { + config = snippet; + if (config["iKey"]) { + Microsoft.ApplicationInsights.Version = "0.10.0.0"; + config.instrumentationKey = config["iKey"]; + } + else if (config["applicationInsightsId"]) { + Microsoft.ApplicationInsights.Version = "0.7.2.0"; + config.instrumentationKey = config["applicationInsightsId"]; + } + else { + throw new Error("Cannot load Application Insights SDK, no instrumentationKey was provided."); + } + } + config = Initialization.getDefaultConfig(config); + this.snippet = snippet; + this.config = config; + } + Initialization.prototype.loadAppInsights = function () { + var appInsights = new Microsoft.ApplicationInsights.AppInsights(this.config); + if (this.config["iKey"]) { + var originalTrackPageView = appInsights.trackPageView; + appInsights.trackPageView = function (pagePath, properties, measurements) { + originalTrackPageView.apply(appInsights, [null, pagePath, properties, measurements]); + }; + } + var legacyPageView = "logPageView"; + if (typeof this.snippet[legacyPageView] === "function") { + appInsights[legacyPageView] = function (pagePath, properties, measurements) { + appInsights.trackPageView(null, pagePath, properties, measurements); + }; + } + var legacyEvent = "logEvent"; + if (typeof this.snippet[legacyEvent] === "function") { + appInsights[legacyEvent] = function (name, properties, measurements) { + appInsights.trackEvent(name, properties, measurements); + }; + } + return appInsights; + }; + Initialization.prototype.emptyQueue = function () { + try { + if (Microsoft.ApplicationInsights.Util.isArray(this.snippet.queue)) { + var length = this.snippet.queue.length; + for (var i = 0; i < length; i++) { + var call = this.snippet.queue[i]; + call(); + } + this.snippet.queue = undefined; + delete this.snippet.queue; + } + } + catch (exception) { + var properties = {}; + if (exception && typeof exception.toString === "function") { + properties.exception = exception.toString(); + } + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToSendQueuedTelemetry, "Failed to send queued telemetry", properties); + Microsoft.ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + }; + Initialization.prototype.pollInteralLogs = function (appInsightsInstance) { + return setInterval(function () { + var queue = Microsoft.ApplicationInsights._InternalLogging.queue; + var length = queue.length; + for (var i = 0; i < length; i++) { + appInsightsInstance.trackTrace(queue[i].message); + } + queue.length = 0; + }, this.config.diagnosticLogInterval); + }; + Initialization.prototype.addHousekeepingBeforeUnload = function (appInsightsInstance) { + // Add callback to push events when the user navigates away + if (!appInsightsInstance.config.disableFlushOnBeforeUnload && ('onbeforeunload' in window)) { + var performHousekeeping = function () { + appInsightsInstance.context._sender.triggerSend(); + appInsightsInstance.context._sessionManager.backup(); + }; + if (!Microsoft.ApplicationInsights.Util.addEventHandler('beforeunload', performHousekeeping)) { + Microsoft.ApplicationInsights._InternalLogging.throwInternalNonUserActionable(Microsoft.ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToAddHandlerForOnBeforeUnload, 'Could not add handler for beforeunload')); + } + } + }; + Initialization.getDefaultConfig = function (config) { + if (!config) { + config = {}; + } + config.endpointUrl = config.endpointUrl || "//dc.services.visualstudio.com/v2/track"; + config.sessionRenewalMs = 30 * 60 * 1000; + config.sessionExpirationMs = 24 * 60 * 60 * 1000; + config.maxBatchSizeInBytes = config.maxBatchSizeInBytes > 0 ? config.maxBatchSizeInBytes : 1000000; + config.maxBatchInterval = !isNaN(config.maxBatchInterval) ? config.maxBatchInterval : 15000; + config.enableDebug = ApplicationInsights.Util.stringToBoolOrDefault(config.enableDebug); + config.disableExceptionTracking = (config.disableExceptionTracking !== undefined && config.disableExceptionTracking !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableExceptionTracking) : + false; + config.disableTelemetry = ApplicationInsights.Util.stringToBoolOrDefault(config.disableTelemetry); + config.verboseLogging = ApplicationInsights.Util.stringToBoolOrDefault(config.verboseLogging); + config.emitLineDelimitedJson = ApplicationInsights.Util.stringToBoolOrDefault(config.emitLineDelimitedJson); + config.diagnosticLogInterval = config.diagnosticLogInterval || 10000; + config.autoTrackPageVisitTime = ApplicationInsights.Util.stringToBoolOrDefault(config.autoTrackPageVisitTime); + if (isNaN(config.samplingPercentage) || config.samplingPercentage <= 0 || config.samplingPercentage >= 100) { + config.samplingPercentage = 100; + } + config.disableAjaxTracking = (config.disableAjaxTracking !== undefined && config.disableAjaxTracking !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableAjaxTracking) : + false; + config.maxAjaxCallsPerView = !isNaN(config.maxAjaxCallsPerView) ? config.maxAjaxCallsPerView : 500; + config.disableCorrelationHeaders = (config.disableCorrelationHeaders !== undefined && config.disableCorrelationHeaders !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableCorrelationHeaders) : + true; + config.disableFlushOnBeforeUnload = (config.disableFlushOnBeforeUnload !== undefined && config.disableFlushOnBeforeUnload !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableFlushOnBeforeUnload) : + false; + return config; + }; + return Initialization; + })(); + ApplicationInsights.Initialization = Initialization; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + try { + if (typeof window !== "undefined" && typeof JSON !== "undefined") { + var aiName = "appInsights"; + if (window[aiName] === undefined) { + Microsoft.ApplicationInsights.AppInsights.defaultConfig = Microsoft.ApplicationInsights.Initialization.getDefaultConfig(); + } + else { + var snippet = window[aiName] || {}; + var init = new Microsoft.ApplicationInsights.Initialization(snippet); + var appInsightsLocal = init.loadAppInsights(); + for (var field in appInsightsLocal) { + snippet[field] = appInsightsLocal[field]; + } + init.emptyQueue(); + init.pollInteralLogs(appInsightsLocal); + init.addHousekeepingBeforeUnload(appInsightsLocal); + } + } + } + catch (e) { + Microsoft.ApplicationInsights._InternalLogging.warnToConsole('Failed to initialize AppInsights JS SDK: ' + e.message); + } + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); diff --git a/Project-Unite/Scripts/ai.0.22.9-build00167.min.js b/Project-Unite/Scripts/ai.0.22.9-build00167.min.js new file mode 100644 index 0000000..4283fa3 --- /dev/null +++ b/Project-Unite/Scripts/ai.0.22.9-build00167.min.js @@ -0,0 +1 @@ +var __extends,AI,Microsoft;(function(n){var t;(function(n){var r,t,i,u;(function(n){n[n.CRITICAL=0]="CRITICAL";n[n.WARNING=1]="WARNING"})(n.LoggingSeverity||(n.LoggingSeverity={}));r=n.LoggingSeverity,function(n){n[n.NONUSRACT_BrowserDoesNotSupportLocalStorage=0]="NONUSRACT_BrowserDoesNotSupportLocalStorage";n[n.NONUSRACT_BrowserCannotReadLocalStorage=1]="NONUSRACT_BrowserCannotReadLocalStorage";n[n.NONUSRACT_BrowserCannotReadSessionStorage=2]="NONUSRACT_BrowserCannotReadSessionStorage";n[n.NONUSRACT_BrowserCannotWriteLocalStorage=3]="NONUSRACT_BrowserCannotWriteLocalStorage";n[n.NONUSRACT_BrowserCannotWriteSessionStorage=4]="NONUSRACT_BrowserCannotWriteSessionStorage";n[n.NONUSRACT_BrowserFailedRemovalFromLocalStorage=5]="NONUSRACT_BrowserFailedRemovalFromLocalStorage";n[n.NONUSRACT_BrowserFailedRemovalFromSessionStorage=6]="NONUSRACT_BrowserFailedRemovalFromSessionStorage";n[n.NONUSRACT_CannotSendEmptyTelemetry=7]="NONUSRACT_CannotSendEmptyTelemetry";n[n.NONUSRACT_ClientPerformanceMathError=8]="NONUSRACT_ClientPerformanceMathError";n[n.NONUSRACT_ErrorParsingAISessionCookie=9]="NONUSRACT_ErrorParsingAISessionCookie";n[n.NONUSRACT_ErrorPVCalc=10]="NONUSRACT_ErrorPVCalc";n[n.NONUSRACT_ExceptionWhileLoggingError=11]="NONUSRACT_ExceptionWhileLoggingError";n[n.NONUSRACT_FailedAddingTelemetryToBuffer=12]="NONUSRACT_FailedAddingTelemetryToBuffer";n[n.NONUSRACT_FailedMonitorAjaxAbort=13]="NONUSRACT_FailedMonitorAjaxAbort";n[n.NONUSRACT_FailedMonitorAjaxDur=14]="NONUSRACT_FailedMonitorAjaxDur";n[n.NONUSRACT_FailedMonitorAjaxOpen=15]="NONUSRACT_FailedMonitorAjaxOpen";n[n.NONUSRACT_FailedMonitorAjaxRSC=16]="NONUSRACT_FailedMonitorAjaxRSC";n[n.NONUSRACT_FailedMonitorAjaxSend=17]="NONUSRACT_FailedMonitorAjaxSend";n[n.NONUSRACT_FailedToAddHandlerForOnBeforeUnload=18]="NONUSRACT_FailedToAddHandlerForOnBeforeUnload";n[n.NONUSRACT_FailedToSendQueuedTelemetry=19]="NONUSRACT_FailedToSendQueuedTelemetry";n[n.NONUSRACT_FailedToReportDataLoss=20]="NONUSRACT_FailedToReportDataLoss";n[n.NONUSRACT_FlushFailed=21]="NONUSRACT_FlushFailed";n[n.NONUSRACT_MessageLimitPerPVExceeded=22]="NONUSRACT_MessageLimitPerPVExceeded";n[n.NONUSRACT_MissingRequiredFieldSpecification=23]="NONUSRACT_MissingRequiredFieldSpecification";n[n.NONUSRACT_NavigationTimingNotSupported=24]="NONUSRACT_NavigationTimingNotSupported";n[n.NONUSRACT_OnError=25]="NONUSRACT_OnError";n[n.NONUSRACT_SessionRenewalDateIsZero=26]="NONUSRACT_SessionRenewalDateIsZero";n[n.NONUSRACT_SenderNotInitialized=27]="NONUSRACT_SenderNotInitialized";n[n.NONUSRACT_StartTrackEventFailed=28]="NONUSRACT_StartTrackEventFailed";n[n.NONUSRACT_StopTrackEventFailed=29]="NONUSRACT_StopTrackEventFailed";n[n.NONUSRACT_StartTrackFailed=30]="NONUSRACT_StartTrackFailed";n[n.NONUSRACT_StopTrackFailed=31]="NONUSRACT_StopTrackFailed";n[n.NONUSRACT_TelemetrySampledAndNotSent=32]="NONUSRACT_TelemetrySampledAndNotSent";n[n.NONUSRACT_TrackEventFailed=33]="NONUSRACT_TrackEventFailed";n[n.NONUSRACT_TrackExceptionFailed=34]="NONUSRACT_TrackExceptionFailed";n[n.NONUSRACT_TrackMetricFailed=35]="NONUSRACT_TrackMetricFailed";n[n.NONUSRACT_TrackPVFailed=36]="NONUSRACT_TrackPVFailed";n[n.NONUSRACT_TrackPVFailedCalc=37]="NONUSRACT_TrackPVFailedCalc";n[n.NONUSRACT_TrackTraceFailed=38]="NONUSRACT_TrackTraceFailed";n[n.NONUSRACT_TransmissionFailed=39]="NONUSRACT_TransmissionFailed";n[n.USRACT_CannotSerializeObject=40]="USRACT_CannotSerializeObject";n[n.USRACT_CannotSerializeObjectNonSerializable=41]="USRACT_CannotSerializeObjectNonSerializable";n[n.USRACT_CircularReferenceDetected=42]="USRACT_CircularReferenceDetected";n[n.USRACT_ClearAuthContextFailed=43]="USRACT_ClearAuthContextFailed";n[n.USRACT_ExceptionTruncated=44]="USRACT_ExceptionTruncated";n[n.USRACT_IllegalCharsInName=45]="USRACT_IllegalCharsInName";n[n.USRACT_ItemNotInArray=46]="USRACT_ItemNotInArray";n[n.USRACT_MaxAjaxPerPVExceeded=47]="USRACT_MaxAjaxPerPVExceeded";n[n.USRACT_MessageTruncated=48]="USRACT_MessageTruncated";n[n.USRACT_NameTooLong=49]="USRACT_NameTooLong";n[n.USRACT_SampleRateOutOfRange=50]="USRACT_SampleRateOutOfRange";n[n.USRACT_SetAuthContextFailed=51]="USRACT_SetAuthContextFailed";n[n.USRACT_SetAuthContextFailedAccountName=52]="USRACT_SetAuthContextFailedAccountName";n[n.USRACT_StringValueTooLong=53]="USRACT_StringValueTooLong";n[n.USRACT_StartCalledMoreThanOnce=54]="USRACT_StartCalledMoreThanOnce";n[n.USRACT_StopCalledWithoutStart=55]="USRACT_StopCalledWithoutStart";n[n.USRACT_TelemetryInitializerFailed=56]="USRACT_TelemetryInitializerFailed";n[n.USRACT_TrackArgumentsNotSpecified=57]="USRACT_TrackArgumentsNotSpecified";n[n.USRACT_UrlTooLong=58]="USRACT_UrlTooLong"}(n._InternalMessageId||(n._InternalMessageId={}));t=n._InternalMessageId;i=function(){function n(i,r,u){this.message=t[i].toString();this.messageId=i;var f=(r?" message:"+n.sanitizeDiagnosticText(r):"")+(u?" props:"+n.sanitizeDiagnosticText(JSON.stringify(u)):"");this.message+=f}return n.sanitizeDiagnosticText=function(n){return'"'+n.replace(/\"/g,"")+'"'},n}();n._InternalLogMessage=i;u=function(){function u(){}return u.throwInternalNonUserActionable=function(n,t){if(this.enableDebugExceptions())throw t;else typeof t=="undefined"||!t||typeof t.message!="undefined"&&(t.message=this.AiNonUserActionablePrefix+t.message,this.warnToConsole(t.message),this.logInternalMessage(n,t))},u.throwInternalUserActionable=function(n,t){if(this.enableDebugExceptions())throw t;else typeof t=="undefined"||!t||typeof t.message!="undefined"&&(t.message=this.AiUserActionablePrefix+t.message,this.warnToConsole(t.message),this.logInternalMessage(n,t))},u.warnToConsole=function(n){typeof console=="undefined"||!console||(typeof console.warn=="function"?console.warn(n):typeof console.log=="function"&&console.log(n))},u.resetInternalMessageCount=function(){this._messageCount=0},u.clearInternalMessageLoggedTypes=function(){var i,t;if(n.Util.canUseSessionStorage())for(i=n.Util.getSessionStorageKeys(),t=0;t=this.MAX_INTERNAL_MESSAGE_LIMIT},u.AiUserActionablePrefix="AI: ",u.AIInternalMessagePrefix="AITR_",u.AiNonUserActionablePrefix="AI (Internal): ",u.enableDebugExceptions=function(){return!1},u.verboseLogging=function(){return!1},u.queue=[],u.MAX_INTERNAL_MESSAGE_LIMIT=25,u._messageCount=0,u}();n._InternalLogging=u})(t=n.ApplicationInsights||(n.ApplicationInsights={}))})(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t,i,r;(function(n){n[n.LocalStorage=0]="LocalStorage";n[n.SessionStorage=1]="SessionStorage"})(t||(t={}));i=function(){function i(){}return i._getLocalStorageObject=function(){return i._getVerifiedStorageObject(t.LocalStorage)},i._getVerifiedStorageObject=function(n){var i=null,u,r;try{r=new Date;i=n===t.LocalStorage?window.localStorage:window.sessionStorage;i.setItem(r,r);u=i.getItem(r)!=r;i.removeItem(r);u&&(i=null)}catch(f){i=null}return i},i.canUseLocalStorage=function(){return!!i._getLocalStorageObject()},i.getStorage=function(t){var r=i._getLocalStorageObject(),f;if(r!==null)try{return r.getItem(t)}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotReadLocalStorage,"Browser failed read of local storage. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,f)}return null},i.setStorage=function(t,r){var u=i._getLocalStorageObject(),e;if(u!==null)try{return u.setItem(t,r),!0}catch(f){e=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotWriteLocalStorage,"Browser failed write to local storage. "+i.getExceptionName(f),{exception:i.dump(f)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,e)}return!1},i.removeStorage=function(t){var r=i._getLocalStorageObject(),f;if(r!==null)try{return r.removeItem(t),!0}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromLocalStorage,"Browser failed removal of local storage item. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,f)}return!1},i._getSessionStorageObject=function(){return i._getVerifiedStorageObject(t.SessionStorage)},i.canUseSessionStorage=function(){return!!i._getSessionStorageObject()},i.getSessionStorageKeys=function(){var n=[],t;if(i.canUseSessionStorage())for(t in window.sessionStorage)n.push(t);return n},i.getSessionStorage=function(t){var r=i._getSessionStorageObject(),f;if(r!==null)try{return r.getItem(t)}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotReadSessionStorage,"Browser failed read of session storage. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,f)}return null},i.setSessionStorage=function(t,r){var u=i._getSessionStorageObject(),e;if(u!==null)try{return u.setItem(t,r),!0}catch(f){e=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotWriteSessionStorage,"Browser failed write to session storage. "+i.getExceptionName(f),{exception:i.dump(f)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,e)}return!1},i.removeSessionStorage=function(t){var r=i._getSessionStorageObject(),f;if(r!==null)try{return r.removeItem(t),!0}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromSessionStorage,"Browser failed removal of session storage item. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,f)}return!1},i.setCookie=function(n,t,r){var u="";r&&(u=";domain="+r);i.document.cookie=n+"="+t+u+";path=/"},i.stringToBoolOrDefault=function(n){return n?n.toString().toLowerCase()==="true":!1},i.getCookie=function(n){var e="",f,u,r,t;if(n&&n.length)for(f=n+"=",u=i.document.cookie.split(";"),r=0;r0;)i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n%64),t+=i,n=Math.floor(n/64);return t},i.isArray=function(n){return Object.prototype.toString.call(n)==="[object Array]"},i.isError=function(n){return Object.prototype.toString.call(n)==="[object Error]"},i.isDate=function(n){return Object.prototype.toString.call(n)==="[object Date]"},i.toISOStringForIE8=function(n){if(i.isDate(n)){function t(n){var t=String(n);return t.length===1&&(t="0"+t),t}return Date.prototype.toISOString?n.toISOString():n.getUTCFullYear()+"-"+t(n.getUTCMonth()+1)+"-"+t(n.getUTCDate())+"T"+t(n.getUTCHours())+":"+t(n.getUTCMinutes())+":"+t(n.getUTCSeconds())+"."+String((n.getUTCMilliseconds()/1e3).toFixed(3)).slice(2,5)+"Z"}},i.getIEVersion=function(n){n===void 0&&(n=null);var t=n?n.toLowerCase():navigator.userAgent.toLowerCase();return t.indexOf("msie")!=-1?parseInt(t.split("msie")[1]):null},i.msToTimeSpan=function(n){(isNaN(n)||n<0)&&(n=0);var t=""+n%1e3,i=""+Math.floor(n/1e3)%60,r=""+Math.floor(n/6e4)%60,u=""+Math.floor(n/36e5)%24;return t=t.length===1?"00"+t:t.length===2?"0"+t:t,i=i.length<2?"0"+i:i,r=r.length<2?"0"+r:r,u=u.length<2?"0"+u:u,u+":"+r+":"+i+"."+t},i.isCrossOriginError=function(n,t,i,r,u){return(n==="Script error."||n==="Script error")&&u===null},i.dump=function(n){var t=Object.prototype.toString.call(n),i=JSON.stringify(n);return t==="[object Error]"&&(i="{ stack: '"+n.stack+"', message: '"+n.message+"', name: '"+n.name+"'"),t+i},i.getExceptionName=function(n){var t=Object.prototype.toString.call(n);return t==="[object Error]"?n.name:""},i.addEventHandler=function(n,t){if(!window||typeof n!="string"||typeof t!="function")return!1;var i="on"+n;if(window.addEventListener)window.addEventListener(n,t,!1);else if(window.attachEvent)window.attachEvent.call(i,t);else return!1;return!0},i.document=typeof document!="undefined"?document:{},i.NotSpecified="not_specified",i}();n.Util=i;r=function(){function n(){}return n.parseUrl=function(t){return n.htmlAnchorElement||(n.htmlAnchorElement=n.document.createElement("a")),n.htmlAnchorElement.href=t,n.htmlAnchorElement},n.getAbsoluteUrl=function(t){var i,r=n.parseUrl(t);return r&&(i=r.href),i},n.getPathName=function(t){var i,r=n.parseUrl(t);return r&&(i=r.pathname),i},n.document=typeof document!="undefined"?document:{},n}();n.UrlHelper=r})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function n(){}return n.IsNullOrUndefined=function(n){return typeof n=="undefined"||n===null},n}(),i,r,u;n.extensions=t;i=function(){function n(){}return n.GetLength=function(n){var i=0,r;if(!t.IsNullOrUndefined(n)){r="";try{r=n.toString()}catch(u){}i=r.length;i=isNaN(i)?0:i}return i},n}();n.stringUtils=i;r=function(){function n(){}return n.Now=window.performance&&window.performance.now?function(){return performance.now()}:function(){return(new Date).getTime()},n.GetDuration=function(n,i){var r=null;return n===0||i===0||t.IsNullOrUndefined(n)||t.IsNullOrUndefined(i)||(r=i-n),r},n}();n.dateTime=r;u=function(){function n(){}return n.AttachEvent=function(n,i,r){var u=!1;return t.IsNullOrUndefined(n)||(t.IsNullOrUndefined(n.attachEvent)?t.IsNullOrUndefined(n.addEventListener)||(n.addEventListener(i,r,!1),u=!0):(n.attachEvent("on"+i,r),u=!0)),u},n.DetachEvent=function(n,i,r){t.IsNullOrUndefined(n)||(t.IsNullOrUndefined(n.detachEvent)?t.IsNullOrUndefined(n.removeEventListener)||n.removeEventListener(i,r,!1):n.detachEvent("on"+i,r))},n}();n.EventHelper=u})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function n(){this.openDone=!1;this.setRequestHeaderDone=!1;this.sendDone=!1;this.abortDone=!1;this.onreadystatechangeCallbackAttached=!1}return n}(),i;n.XHRMonitoringState=t;i=function(){function i(i){this.completed=!1;this.requestHeadersSize=null;this.ttfb=null;this.responseReceivingDuration=null;this.callbackDuration=null;this.ajaxTotalDuration=null;this.aborted=null;this.pageUrl=null;this.requestUrl=null;this.requestSize=0;this.method=null;this.status=null;this.requestSentTime=null;this.responseStartedTime=null;this.responseFinishedTime=null;this.callbackFinishedTime=null;this.endTime=null;this.originalOnreadystatechage=null;this.xhrMonitoringState=new t;this.clientFailure=0;this.CalculateMetrics=function(){var t=this;t.ajaxTotalDuration=n.dateTime.GetDuration(t.requestSentTime,t.responseFinishedTime)};this.id=i}return i.prototype.getAbsoluteUrl=function(){return this.requestUrl?n.UrlHelper.getAbsoluteUrl(this.requestUrl):null},i.prototype.getPathName=function(){return this.requestUrl?n.UrlHelper.getPathName(this.requestUrl):null},i}();n.ajaxRecord=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){"use strict";var i=function(){function i(n){this.currentWindowHost=window.location.host;this.appInsights=n;this.initialized=!1;this.Init()}return i.prototype.Init=function(){this.supportsMonitoring()&&(this.instrumentOpen(),this.instrumentSend(),this.instrumentAbort(),this.initialized=!0)},i.prototype.isMonitoredInstance=function(n,r){return this.initialized&&(r===!0||!t.extensions.IsNullOrUndefined(n.ajaxData))&&n[i.DisabledPropertyName]!==!0},i.prototype.supportsMonitoring=function(){var n=!1;return t.extensions.IsNullOrUndefined(XMLHttpRequest)||(n=!0),n},i.prototype.instrumentOpen=function(){var u=XMLHttpRequest.prototype.open,r=this;XMLHttpRequest.prototype.open=function(f,e,o){try{!r.isMonitoredInstance(this,!0)||this.ajaxData&&this.ajaxData.xhrMonitoringState.openDone||r.openHandler(this,f,e,o)}catch(s){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxOpen,"Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(s)}))}return u.apply(this,arguments)}},i.prototype.openHandler=function(n,i,r){var u=new t.ajaxRecord(t.Util.newId());u.method=i;u.requestUrl=r;u.xhrMonitoringState.openDone=!0;n.ajaxData=u;this.attachToOnReadyStateChange(n)},i.getFailedAjaxDiagnosticsMessage=function(n){var i="";try{t.extensions.IsNullOrUndefined(n)||t.extensions.IsNullOrUndefined(n.ajaxData)||t.extensions.IsNullOrUndefined(n.ajaxData.requestUrl)||(i+="(url: '"+n.ajaxData.requestUrl+"')")}catch(r){}return i},i.prototype.instrumentSend=function(){var u=XMLHttpRequest.prototype.send,r=this;XMLHttpRequest.prototype.send=function(f){try{r.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.sendDone&&r.sendHandler(this,f)}catch(e){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxSend,"Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(e)}))}return u.apply(this,arguments)}},i.prototype.sendHandler=function(n){n.ajaxData.requestSentTime=t.dateTime.Now();this.appInsights.config.disableCorrelationHeaders||t.UrlHelper.parseUrl(n.ajaxData.getAbsoluteUrl()).host!=this.currentWindowHost||n.setRequestHeader("x-ms-request-id",n.ajaxData.id);n.ajaxData.xhrMonitoringState.sendDone=!0},i.prototype.instrumentAbort=function(){var r=XMLHttpRequest.prototype.abort,u=this;XMLHttpRequest.prototype.abort=function(){try{u.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.abortDone&&(this.ajaxData.aborted=1,this.ajaxData.xhrMonitoringState.abortDone=!0)}catch(f){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxAbort,"Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(f)}))}return r.apply(this,arguments)}},i.prototype.attachToOnReadyStateChange=function(r){var u=this;r.ajaxData.xhrMonitoringState.onreadystatechangeCallbackAttached=t.EventHelper.AttachEvent(r,"readystatechange",function(){try{if(u.isMonitoredInstance(r)&&r.readyState===4)u.onAjaxComplete(r)}catch(f){var e=n.ApplicationInsights.Util.dump(f);e&&e.toLowerCase().indexOf("c00c023f")!=-1||t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxRSC,"Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(r),exception:n.ApplicationInsights.Util.dump(f)}))}})},i.prototype.onAjaxComplete=function(n){n.ajaxData.responseFinishedTime=t.dateTime.Now();n.ajaxData.status=n.status;n.ajaxData.CalculateMetrics();n.ajaxData.ajaxTotalDuration<0?t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.WARNING,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxDur,"Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(n),requestSentTime:n.ajaxData.requestSentTime,responseFinishedTime:n.ajaxData.responseFinishedTime})):(this.appInsights.trackAjax(n.ajaxData.id,n.ajaxData.getAbsoluteUrl(),n.ajaxData.getPathName(),n.ajaxData.ajaxTotalDuration,+n.ajaxData.status>=200&&+n.ajaxData.status<400,+n.ajaxData.status),n.ajaxData=null)},i.instrumentedByAppInsightsName="InstrumentedByAppInsights",i.DisabledPropertyName="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",i}();t.AjaxMonitor=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t=function(){function n(){}return n.prototype.getHashCodeScore=function(t){var i=this.getHashCode(t)/n.INT_MAX_VALUE;return i*100},n.prototype.getHashCode=function(t){var i,r;if(t=="")return 0;while(t.length100||t<0)&&(n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_SampleRateOutOfRange,"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.",{samplingRate:t})),this.sampleRate=100);this.sampleRate=t;this.samplingScoreGenerator=new n.SamplingScoreGenerator}return t.prototype.isSampledIn=function(n){if(this.sampleRate==100)return!0;var t=this.samplingScoreGenerator.getSamplingScore(n);return tthis.config.sessionExpirationMs(),i=n-this.automaticSession.renewalDate>this.config.sessionRenewalMs();t||i?(this.automaticSession.isFirst=undefined,this.renew()):(this.automaticSession.renewalDate=+new Date,this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate))},t.prototype.backup=function(){this.setStorage(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate)},t.prototype.initializeAutomaticSession=function(){var t=n.Util.getCookie("ai_session"),i;t&&typeof t.split=="function"?this.initializeAutomaticSessionWithData(t):(i=n.Util.getStorage("ai_session"),i&&this.initializeAutomaticSessionWithData(i));this.automaticSession.id||(this.automaticSession.isFirst=!0,this.renew())},t.prototype.initializeAutomaticSessionWithData=function(t){var i=t.split("|"),r,u;i.length>0&&(this.automaticSession.id=i[0]);try{i.length>1&&(r=+i[1],this.automaticSession.acquisitionDate=+new Date(r),this.automaticSession.acquisitionDate=this.automaticSession.acquisitionDate>0?this.automaticSession.acquisitionDate:0);i.length>2&&(u=+i[2],this.automaticSession.renewalDate=+new Date(u),this.automaticSession.renewalDate=this.automaticSession.renewalDate>0?this.automaticSession.renewalDate:0)}catch(f){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_ErrorParsingAISessionCookie,"Error parsing ai_session cookie, session will be reset: "+n.Util.getExceptionName(f),{exception:n.Util.dump(f)}))}this.automaticSession.renewalDate==0&&n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_SessionRenewalDateIsZero,"AI session renewal date is 0, session will be reset."))},t.prototype.renew=function(){var t=+new Date;this.automaticSession.id=n.Util.newId();this.automaticSession.acquisitionDate=t;this.automaticSession.renewalDate=t;this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate);n.Util.canUseLocalStorage()||n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserDoesNotSupportLocalStorage,"Browser does not support local storage. Session durations will be inaccurate."))},t.prototype.setCookie=function(t,i,r){var f=i+this.config.sessionExpirationMs(),e=r+this.config.sessionRenewalMs(),u=new Date,s=[t,i,r],o;f0&&(this.id=e[0]));this.config=i;this.id||(this.id=n.Util.newId(),u=new Date,o=n.Util.toISOStringForIE8(u),this.accountAcquisitionDate=o,u.setTime(u.getTime()+31536e6),h=[this.id,o],c=this.config.cookieDomain?this.config.cookieDomain():undefined,n.Util.setCookie(t.userCookieName,h.join(t.cookieSeparator)+";expires="+u.toUTCString(),c),n.Util.removeStorage("ai_session"));this.accountId=i.accountId?i.accountId():undefined;f=n.Util.getCookie(t.authUserCookieName);f&&(f=decodeURI(f),r=f.split(t.cookieSeparator),r[0]&&(this.authenticatedId=r[0]),r.length>1&&r[1]&&(this.accountId=r[1]))}return t.prototype.setAuthenticatedUserContext=function(i,r){var f=!this.validateUserInput(i)||r&&!this.validateUserInput(r),u;if(f){n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_SetAuthContextFailedAccountName,"Setting auth user context failed. User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars."));return}this.authenticatedId=i;u=this.authenticatedId;r&&(this.accountId=r,u=[this.authenticatedId,this.accountId].join(t.cookieSeparator));n.Util.setCookie(t.authUserCookieName,encodeURI(u),this.config.cookieDomain())},t.prototype.clearAuthenticatedUserContext=function(){this.authenticatedId=null;this.accountId=null;n.Util.deleteCookie(t.authUserCookieName)},t.prototype.validateUserInput=function(n){return typeof n!="string"||!n||n.match(/,|;|=| |\|/)?!1:!0},t.cookieSeparator="|",t.userCookieName="ai_user",t.authUserCookieName="ai_authUser",t}();t.User=i})(t=n.Context||(n.Context={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(){}return t.reset=function(){t.isEnabled()&&n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,"0")},t.isEnabled=function(){return t.enabled&&t.appInsights!=null&&n.Util.canUseSessionStorage()},t.getIssuesReported=function(){return!t.isEnabled()||isNaN(+n.Util.getSessionStorage(t.ISSUES_REPORTED_KEY))?0:+n.Util.getSessionStorage(t.ISSUES_REPORTED_KEY)},t.incrementItemsQueued=function(){try{if(t.isEnabled()){var i=t.getNumberOfLostItems();++i;n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,i.toString())}}catch(r){}},t.decrementItemsQueued=function(i){try{if(t.isEnabled()){var r=t.getNumberOfLostItems();r-=i;r<0&&(r=0);n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,r.toString())}}catch(u){}},t.getNumberOfLostItems=function(){var i=0;try{t.isEnabled()&&(i=isNaN(+n.Util.getSessionStorage(t.ITEMS_QUEUED_KEY))?0:+n.Util.getSessionStorage(t.ITEMS_QUEUED_KEY))}catch(r){i=0}return i},t.reportLostItems=function(){try{if(t.isEnabled()&&t.getIssuesReported()0){t.appInsights.trackTrace("AI (Internal): Internal report DATALOSS: "+t.getNumberOfLostItems(),null);t.appInsights.flush();var i=t.getIssuesReported();++i;n.Util.setSessionStorage(t.ISSUES_REPORTED_KEY,i.toString())}}catch(r){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailedToReportDataLoss,"Failed to report data loss: "+n.Util.getExceptionName(r),{exception:n.Util.dump(r)}))}finally{try{t.reset()}catch(r){}}},t.enabled=!1,t.LIMIT_PER_SESSION=10,t.ITEMS_QUEUED_KEY="AI_itemsQueued",t.ISSUES_REPORTED_KEY="AI_lossIssuesReported",t}();n.DataLossAnalyzer=t})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(n){if(this._buffer=[],this._lastSend=0,this._config=n,this._sender=null,typeof XMLHttpRequest!="undefined"){var t=new XMLHttpRequest;"withCredentials"in t?this._sender=this._xhrSender:typeof XDomainRequest!="undefined"&&(this._sender=this._xdrSender)}}return t.prototype.send=function(t){var r=this,i;try{if(this._config.disableTelemetry())return;if(!t){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_CannotSendEmptyTelemetry,"Cannot send empty telemetry"));return}if(!this._sender){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_SenderNotInitialized,"Sender was not initialized"));return}i=n.Serializer.serialize(t);this._getSizeInBytes(this._buffer)+i.length>this._config.maxBatchSizeInBytes()&&this.triggerSend();this._buffer.push(i);this._timeoutHandle||(this._timeoutHandle=setTimeout(function(){r._timeoutHandle=null;r.triggerSend()},this._config.maxBatchInterval()));n.DataLossAnalyzer.incrementItemsQueued()}catch(u){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailedAddingTelemetryToBuffer,"Failed adding telemetry to the sender's buffer, some telemetry will be lost: "+n.Util.getExceptionName(u),{exception:n.Util.dump(u)}))}},t.prototype._getSizeInBytes=function(n){var r=0,t,i;if(n&&n.length)for(t=0;t9)&&n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_TransmissionFailed,"Telemetry transmission failed, some telemetry will be lost: "+n.Util.getExceptionName(u),{exception:n.Util.dump(u)}))}},t.prototype._xhrSender=function(i,r,u){var f=new XMLHttpRequest;f[n.AjaxMonitor.DisabledPropertyName]=!0;f.open("POST",this._config.endpointUrl(),r);f.setRequestHeader("Content-type","application/json");f.onreadystatechange=function(){return t._xhrReadyStateChange(f,i,u)};f.onerror=function(n){return t._onError(i,f.responseText||f.response||"",n)};f.send(i)},t.prototype._xdrSender=function(n){var i=new XDomainRequest;i.onload=function(){return t._xdrOnLoad(i,n)};i.onerror=function(r){return t._onError(n,i.responseText||"",r)};i.open("POST",this._config.endpointUrl());i.send(n)},t._xhrReadyStateChange=function(n,i,r){n.readyState===4&&((n.status<200||n.status>=300)&&n.status!==0?t._onError(i,n.responseText||n.response||""):t._onSuccess(i,r))},t._xdrOnLoad=function(n,i){n&&(n.responseText+""=="200"||n.responseText==="")?t._onSuccess(i,0):t._onError(i,n&&n.responseText||"")},t._onError=function(t,i){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_OnError,"Failed to send telemetry.",{message:i}))},t._onSuccess=function(t,i){n.DataLossAnalyzer.decrementItemsQueued(i)},t}();n.Sender=t})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(){this.hashCodeGeneragor=new n.HashCodeScoreGenerator}return t.prototype.isEnabled=function(n,t){return this.hashCodeGeneragor.getHashCodeScore(n)=0&&(i=i.replace(/[^0-9a-zA-Z-._()\/ ]/g,"_"),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_IllegalCharsInName,"name contains illegal characters. Illegal characters have been replaced with '_'.",{newName:i}))),i.length>t.MAX_NAME_LENGTH&&(i=i.substring(0,t.MAX_NAME_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_NameTooLong,"name is too long. It has been truncated to "+t.MAX_NAME_LENGTH+" characters.",{name:i})))),i},t.sanitizeString=function(i){return i&&(i=n.Util.trim(i),i.toString().length>t.MAX_STRING_LENGTH&&(i=i.toString().substring(0,t.MAX_STRING_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_StringValueTooLong,"string value is too long. It has been truncated to "+t.MAX_STRING_LENGTH+" characters.",{value:i})))),i},t.sanitizeUrl=function(i){return i&&i.length>t.MAX_URL_LENGTH&&(i=i.substring(0,t.MAX_URL_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_UrlTooLong,"url is too long, it has been trucated to "+t.MAX_URL_LENGTH+" characters.",{url:i}))),i},t.sanitizeMessage=function(i){return i&&i.length>t.MAX_MESSAGE_LENGTH&&(i=i.substring(0,t.MAX_MESSAGE_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_MessageTruncated,"message is too long, it has been trucated to "+t.MAX_MESSAGE_LENGTH+" characters.",{message:i}))),i},t.sanitizeException=function(i){return i&&i.length>t.MAX_EXCEPTION_LENGTH&&(i=i.substring(0,t.MAX_EXCEPTION_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_ExceptionTruncated,"exception is too long, it has been trucated to "+t.MAX_EXCEPTION_LENGTH+" characters.",{exception:i}))),i},t.sanitizeProperties=function(n){var r,i,u;if(n){r={};for(i in n)u=t.sanitizeString(n[i]),i=t.sanitizeKeyAndAddUniqueness(i,r),r[i]=u;n=r}return n},t.sanitizeMeasurements=function(n){var r,i,u;if(n){r={};for(i in n)u=n[i],i=t.sanitizeKeyAndAddUniqueness(i,r),r[i]=u;n=r}return n},t.padNumber=function(n){var t="00"+n;return t.substr(t.length-3)},t.MAX_NAME_LENGTH=150,t.MAX_STRING_LENGTH=1024,t.MAX_URL_LENGTH=2048,t.MAX_MESSAGE_LENGTH=32768,t.MAX_EXCEPTION_LENGTH=32768,t}();t.DataSanitizer=i})(i=t.Common||(t.Common={}))})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(r,u){i.call(this);this.aiDataContract={ver:n.FieldType.Required,message:n.FieldType.Required,severityLevel:n.FieldType.Default,measurements:n.FieldType.Default,properties:n.FieldType.Default};r=r||n.Util.NotSpecified;this.message=t.Common.DataSanitizer.sanitizeMessage(r);this.properties=t.Common.DataSanitizer.sanitizeProperties(u)}return __extends(r,i),r.envelopeType="Microsoft.ApplicationInsights.{0}.Message",r.dataType="MessageData",r}(AI.MessageData);t.Trace=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.EventData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(t){function i(i,r,u){t.call(this);this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Required,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.name=n.Telemetry.Common.DataSanitizer.sanitizeString(i);this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(r);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(u)}return __extends(i,t),i.envelopeType="Microsoft.ApplicationInsights.{0}.Event",i.dataType="EventData",i}(AI.EventData);t.Event=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(){function n(){this.hasFullStack=!0;this.parsedStack=[]}return n}();n.ExceptionDetails=t}(AI||(AI={})),function(n){"use strict";var t=function(n){function t(){this.ver=2;this.exceptions=[];this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.ExceptionData=t}(AI||(AI={})),function(n){"use strict";var t=function(){function n(){}return n}();n.StackFrame=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var u=function(t){function i(i,u,f,e){t.call(this);this.aiDataContract={ver:n.FieldType.Required,handledAt:n.FieldType.Required,exceptions:n.FieldType.Required,severityLevel:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(f);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(e);this.handledAt=u||"unhandled";this.exceptions=[new r(i)]}return __extends(i,t),i.CreateSimpleException=function(n,t,i,r,u,f,e){return{handledAt:e||"unhandled",exceptions:[{hasFullStack:!0,message:n,stack:u,typeName:t,parsedStack:[{level:0,assembly:i,fileName:r,line:f,method:"unknown"}]}]}},i.envelopeType="Microsoft.ApplicationInsights.{0}.Exception",i.dataType="ExceptionData",i}(AI.ExceptionData),r,i;t.Exception=u;r=function(r){function u(i){r.call(this);this.aiDataContract={id:n.FieldType.Default,outerId:n.FieldType.Default,typeName:n.FieldType.Required,message:n.FieldType.Required,hasFullStack:n.FieldType.Default,stack:n.FieldType.Default,parsedStack:n.FieldType.Array};this.typeName=t.Common.DataSanitizer.sanitizeString(i.name||n.Util.NotSpecified);this.message=t.Common.DataSanitizer.sanitizeMessage(i.message||n.Util.NotSpecified);var u=i.stack;this.parsedStack=this.parseStack(u);this.stack=t.Common.DataSanitizer.sanitizeException(u);this.hasFullStack=n.Util.isArray(this.parsedStack)&&this.parsedStack.length>0}return __extends(u,r),u.prototype.parseStack=function(n){var t=undefined,e,l,o,r,a,s,h,p,w,b;if(typeof n=="string"){for(e=n.split("\n"),t=[],l=0,o=0,r=0;r<=e.length;r++)a=e[r],i.regex.test(a)&&(s=new i(e[r],l++),o+=s.sizeInBytes,t.push(s));if(h=32768,o>h)for(var u=0,f=t.length-1,v=0,c=u,y=f;uh){b=y-c+1;t.splice(c,b);break}c=u;y=f;u++;f--}}return t},u}(AI.ExceptionDetails);i=function(t){function i(r,u){t.call(this);this.sizeInBytes=0;this.aiDataContract={level:n.FieldType.Required,method:n.FieldType.Required,assembly:n.FieldType.Default,fileName:n.FieldType.Default,line:n.FieldType.Default};this.level=u;this.method="";this.assembly=n.Util.trim(r);var f=r.match(i.regex);f&&f.length>=5&&(this.method=n.Util.trim(f[2])||this.method,this.fileName=n.Util.trim(f[4]),this.line=parseInt(f[5])||0);this.sizeInBytes+=this.method.length;this.sizeInBytes+=this.fileName.length;this.sizeInBytes+=this.assembly.length;this.sizeInBytes+=i.baseSize;this.sizeInBytes+=this.level.toString().length;this.sizeInBytes+=this.line.toString().length}return __extends(i,t),i.regex=/^([\s]+at)?(.*?)(\@|\s\(|\s)([^\(\@\n]+):([0-9]+):([0-9]+)(\)?)$/,i.baseSize=58,i}(AI.StackFrame);t._StackFrame=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){this.ver=2;this.metrics=[];this.properties={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.MetricData=t}(AI||(AI={})),function(n){"use strict";(function(n){n[n.Measurement=0]="Measurement";n[n.Aggregation=1]="Aggregation"})(n.DataPointType||(n.DataPointType={}));var t=n.DataPointType}(AI||(AI={})),function(n){"use strict";var t=function(){function t(){this.kind=n.DataPointType.Measurement}return t}();n.DataPoint=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){var i;(function(t){"use strict";var i=function(t){function i(){t.apply(this,arguments);this.aiDataContract={name:n.FieldType.Required,kind:n.FieldType.Default,value:n.FieldType.Required,count:n.FieldType.Default,min:n.FieldType.Default,max:n.FieldType.Default,stdDev:n.FieldType.Default}}return __extends(i,t),i}(AI.DataPoint);t.DataPoint=i})(i=t.Common||(t.Common={}))})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){var i;(function(i){"use strict";var r=function(r){function u(u,f,e,o,s,h){r.call(this);this.aiDataContract={ver:t.FieldType.Required,metrics:t.FieldType.Required,properties:t.FieldType.Default};var c=new n.ApplicationInsights.Telemetry.Common.DataPoint;c.count=e>0?e:undefined;c.max=isNaN(s)||s===null?undefined:s;c.min=isNaN(o)||o===null?undefined:o;c.name=i.Common.DataSanitizer.sanitizeString(u);c.value=f;this.metrics=[c];this.properties=t.Telemetry.Common.DataSanitizer.sanitizeProperties(h)}return __extends(u,r),u.envelopeType="Microsoft.ApplicationInsights.{0}.Metric",u.dataType="MetricData",u}(AI.MetricData);i.Metric=r})(i=t.Telemetry||(t.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(n.EventData);n.PageViewData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(r,u,f,e,o){i.call(this);this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Default,url:n.FieldType.Default,duration:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.url=t.Common.DataSanitizer.sanitizeUrl(u);this.name=t.Common.DataSanitizer.sanitizeString(r||n.Util.NotSpecified);isNaN(f)||(this.duration=n.Util.msToTimeSpan(f));this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(e);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(o)}return __extends(r,i),r.envelopeType="Microsoft.ApplicationInsights.{0}.Pageview",r.dataType="PageviewData",r}(AI.PageViewData);t.PageView=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(n.PageViewData);n.PageViewPerfData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(u,f,e,o,s){var h;if(i.call(this),this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Default,url:n.FieldType.Default,duration:n.FieldType.Default,perfTotal:n.FieldType.Default,networkConnect:n.FieldType.Default,sentRequest:n.FieldType.Default,receivedResponse:n.FieldType.Default,domProcessing:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default},this.isValid=!1,h=r.getPerformanceTiming(),h){var c=r.getDuration(h.navigationStart,h.loadEventEnd),l=r.getDuration(h.navigationStart,h.connectEnd),a=r.getDuration(h.requestStart,h.responseStart),v=r.getDuration(h.responseStart,h.responseEnd),y=r.getDuration(h.responseEnd,h.loadEventEnd);c==0?n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_ErrorPVCalc,"error calculating page view performance.",{total:c,network:l,request:a,response:v,dom:y})):c0&&n.navigationStart>0&&n.responseStart>0&&n.requestStart>0&&n.loadEventEnd>0&&n.responseEnd>0&&n.connectEnd>0&&n.domLoading>0},r.getDuration=function(n,t){var i=0;return isNaN(n)||isNaN(t)||(i=Math.max(t-n,0)),i},r.envelopeType="Microsoft.ApplicationInsights.{0}.PageviewPerformance",r.dataType="PageviewPerformanceData",r}(AI.PageViewPerfData);t.PageViewPerformance=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(t){this._config=t;this._sender=new n.Sender(t);typeof window!="undefined"&&(this._sessionManager=new n.Context._SessionManager(t),this.application=new n.Context.Application,this.device=new n.Context.Device,this.internal=new n.Context.Internal,this.location=new n.Context.Location,this.user=new n.Context.User(t),this.operation=new n.Context.Operation,this.session=new n.Context.Session,this.sample=new n.Context.Sample(t.sampleRate()))}return t.prototype.addTelemetryInitializer=function(n){this.telemetryInitializers=this.telemetryInitializers||[];this.telemetryInitializers.push(n)},t.prototype.track=function(t){return t?(t.name===n.Telemetry.PageView.envelopeType&&n._InternalLogging.resetInternalMessageCount(),this.session&&typeof this.session.id!="string"&&this._sessionManager.update(),this._track(t)):n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.USRACT_TrackArgumentsNotSpecified,"cannot call .track() with a null or undefined argument")),t},t.prototype._track=function(t){var i,f,r,u,o;this.session&&(typeof this.session.id=="string"?this._applySessionContext(t,this.session):this._applySessionContext(t,this._sessionManager.automaticSession));this._applyApplicationContext(t,this.application);this._applyDeviceContext(t,this.device);this._applyInternalContext(t,this.internal);this._applyLocationContext(t,this.location);this._applySampleContext(t,this.sample);this._applyUserContext(t,this.user);this._applyOperationContext(t,this.operation);t.iKey=this._config.instrumentationKey();i=!1;try{for(this.telemetryInitializers=this.telemetryInitializers||[],f=this.telemetryInitializers.length,r=0;rl&&(clearInterval(a),s||(o.appInsights.sendPageViewInternal(i,r,l,u,f),o.appInsights.flush()))}catch(v){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_TrackPVFailedCalc,"trackPageView failed on page load calculation: "+n.Util.getExceptionName(v),{exception:n.Util.dump(v)}))}},100)},i}();t.PageViewManager=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(t){"use strict";var r=function(){function t(n){this.prevPageVisitDataKeyName="prevPageVisitData";this.pageVisitTimeTrackingHandler=n}return t.prototype.trackPreviousPageVisit=function(t,i){try{var r=this.restartPageVisitTimer(t,i);r&&this.pageVisitTimeTrackingHandler(r.pageName,r.pageUrl,r.pageVisitTime)}catch(u){n._InternalLogging.warnToConsole("Auto track page visit time failed, metric will not be collected: "+n.Util.dump(u))}},t.prototype.restartPageVisitTimer=function(t,i){try{var r=this.stopPageVisitTimer();return this.startPageVisitTimer(t,i),r}catch(u){return n._InternalLogging.warnToConsole("Call to restart failed: "+n.Util.dump(u)),null}},t.prototype.startPageVisitTimer=function(t,r){try{if(n.Util.canUseSessionStorage()){if(n.Util.getSessionStorage(this.prevPageVisitDataKeyName)!=null)throw new Error("Cannot call startPageVisit consecutively without first calling stopPageVisit");var u=new i(t,r),f=JSON.stringify(u);n.Util.setSessionStorage(this.prevPageVisitDataKeyName,f)}}catch(e){n._InternalLogging.warnToConsole("Call to start failed: "+n.Util.dump(e))}},t.prototype.stopPageVisitTimer=function(){var r,i,t;try{return n.Util.canUseSessionStorage()?(r=Date.now(),i=n.Util.getSessionStorage(this.prevPageVisitDataKeyName),i?(t=JSON.parse(i),t.pageVisitTime=r-t.pageVisitStartTime,n.Util.removeSessionStorage(this.prevPageVisitDataKeyName),t):null):null}catch(u){return n._InternalLogging.warnToConsole("Stop page visit timer failed: "+n.Util.dump(u)),null}},t}(),i;t.PageVisitTimeManager=r;i=function(){function n(n,t){this.pageVisitStartTime=Date.now();this.pageName=n;this.pageUrl=t}return n}();t.PageVisitData=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";(function(n){n[n.SQL=0]="SQL";n[n.Http=1]="Http";n[n.Other=2]="Other"})(n.DependencyKind||(n.DependencyKind={}));var t=n.DependencyKind}(AI||(AI={})),function(n){"use strict";(function(n){n[n.Undefined=0]="Undefined";n[n.Aic=1]="Aic";n[n.Apmc=2]="Apmc"})(n.DependencySourceType||(n.DependencySourceType={}));var t=n.DependencySourceType}(AI||(AI={})),function(n){"use strict";var t=function(t){function i(){this.ver=2;this.kind=n.DataPointType.Aggregation;this.dependencyKind=n.DependencyKind.Other;this.success=!0;this.dependencySource=n.DependencySourceType.Apmc;this.properties={};t.call(this)}return __extends(i,t),i}(Microsoft.Telemetry.Domain);n.RemoteDependencyData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(t){function i(i,r,u,f,e,o){t.call(this);this.aiDataContract={id:n.FieldType.Required,ver:n.FieldType.Required,name:n.FieldType.Default,kind:n.FieldType.Required,value:n.FieldType.Default,count:n.FieldType.Default,min:n.FieldType.Default,max:n.FieldType.Default,stdDev:n.FieldType.Default,dependencyKind:n.FieldType.Default,success:n.FieldType.Default,async:n.FieldType.Default,dependencySource:n.FieldType.Default,commandName:n.FieldType.Default,dependencyTypeName:n.FieldType.Default,properties:n.FieldType.Default,resultCode:n.FieldType.Default};this.id=i;this.name=r;this.commandName=u;this.value=f;this.success=e;this.resultCode=o+"";this.dependencyKind=AI.DependencyKind.Http;this.dependencyTypeName="Ajax"}return __extends(i,t),i.envelopeType="Microsoft.ApplicationInsights.{0}.RemoteDependency",i.dataType="RemoteDependencyData",i}(AI.RemoteDependencyData);t.RemoteDependencyData=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){"use strict";var r,i;t.Version="0.22.9";r=function(){function r(u){var f=this,e,o,s;if(this._trackAjaxAttempts=0,this.config=u||{},e=r.defaultConfig,e!==undefined)for(o in e)this.config[o]===undefined&&(this.config[o]=e[o]);t._InternalLogging.verboseLogging=function(){return f.config.verboseLogging};t._InternalLogging.enableDebugExceptions=function(){return f.config.enableDebug};s={instrumentationKey:function(){return f.config.instrumentationKey},accountId:function(){return f.config.accountId},sessionRenewalMs:function(){return f.config.sessionRenewalMs},sessionExpirationMs:function(){return f.config.sessionExpirationMs},endpointUrl:function(){return f.config.endpointUrl},emitLineDelimitedJson:function(){return f.config.emitLineDelimitedJson},maxBatchSizeInBytes:function(){return f.config.maxBatchSizeInBytes},maxBatchInterval:function(){return f.config.maxBatchInterval},disableTelemetry:function(){return f.config.disableTelemetry},sampleRate:function(){return f.config.samplingPercentage},cookieDomain:function(){return f.config.cookieDomain}};this.context=new t.TelemetryContext(s);this._pageViewManager=new n.ApplicationInsights.Telemetry.PageViewManager(this,this.config.overridePageViewDuration);this._eventTracking=new i("trackEvent");this._eventTracking.action=function(n,i,r,u,e){e?isNaN(e.duration)&&(e.duration=r):e={duration:r};var o=new t.Telemetry.Event(n,u,e),s=new t.Telemetry.Common.Data(t.Telemetry.Event.dataType,o),h=new t.Telemetry.Common.Envelope(s,t.Telemetry.Event.envelopeType);f.context.track(h)};this._pageTracking=new i("trackPageView");this._pageTracking.action=function(n,t,i,r,u){f.sendPageViewInternal(n,t,i,r,u)};this._pageVisitTimeManager=new t.Telemetry.PageVisitTimeManager(function(n,t,i){return f.trackPageVisitTime(n,t,i)});this.config.disableAjaxTracking||new n.ApplicationInsights.AjaxMonitor(this)}return r.prototype.sendPageViewInternal=function(n,i,r,u,f){var e=new t.Telemetry.PageView(n,i,r,u,f),o=new t.Telemetry.Common.Data(t.Telemetry.PageView.dataType,e),s=new t.Telemetry.Common.Envelope(o,t.Telemetry.PageView.envelopeType);this.context.track(s);this._trackAjaxAttempts=0},r.prototype.sendPageViewPerformanceInternal=function(n){var i=new t.Telemetry.Common.Data(t.Telemetry.PageViewPerformance.dataType,n),r=new t.Telemetry.Common.Envelope(i,t.Telemetry.PageViewPerformance.envelopeType);this.context.track(r)},r.prototype.startTrackPage=function(n){try{typeof n!="string"&&(n=window.document&&window.document.title||"");this._pageTracking.start(n)}catch(i){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StartTrackFailed,"startTrackPage failed, page view may not be collected: "+t.Util.getExceptionName(i),{exception:t.Util.dump(i)}))}},r.prototype.stopTrackPage=function(n,i,r,u){try{typeof n!="string"&&(n=window.document&&window.document.title||"");typeof i!="string"&&(i=window.location&&window.location.href||"");this._pageTracking.stop(n,i,r,u);this.config.autoTrackPageVisitTime&&this._pageVisitTimeManager.trackPreviousPageVisit(n,i)}catch(f){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StopTrackFailed,"stopTrackPage failed, page view will not be collected: "+t.Util.getExceptionName(f),{exception:t.Util.dump(f)}))}},r.prototype.trackPageView=function(n,i,r,u,f){try{this._pageViewManager.trackPageView(n,i,r,u,f);this.config.autoTrackPageVisitTime&&this._pageVisitTimeManager.trackPreviousPageVisit(n,i)}catch(e){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_TrackPVFailed,"trackPageView failed, page view will not be collected: "+t.Util.getExceptionName(e),{exception:t.Util.dump(e)}))}},r.prototype.startTrackEvent=function(n){try{this._eventTracking.start(n)}catch(i){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StartTrackEventFailed,"startTrackEvent failed, event will not be collected: "+t.Util.getExceptionName(i),{exception:t.Util.dump(i)}))}},r.prototype.stopTrackEvent=function(n,i,r){try{this._eventTracking.stop(n,undefined,i,r)}catch(u){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StopTrackEventFailed,"stopTrackEvent failed, event will not be collected: "+t.Util.getExceptionName(u),{exception:t.Util.dump(u)}))}},r.prototype.trackEvent=function(n,i,r){try{var f=new t.Telemetry.Event(n,i,r),e=new t.Telemetry.Common.Data(t.Telemetry.Event.dataType,f),o=new t.Telemetry.Common.Envelope(e,t.Telemetry.Event.envelopeType);this.context.track(o)}catch(u){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_TrackEventFailed,"trackEvent failed, event will not be collected: "+t.Util.getExceptionName(u),{exception:t.Util.dump(u)}))}},r.prototype.trackAjax=function(n,i,r,u,f,e){if(this.config.maxAjaxCallsPerView===-1||this._trackAjaxAttempts0?n.maxBatchSizeInBytes:1e6,n.maxBatchInterval=isNaN(n.maxBatchInterval)?15e3:n.maxBatchInterval,n.enableDebug=t.Util.stringToBoolOrDefault(n.enableDebug),n.disableExceptionTracking=n.disableExceptionTracking!==undefined&&n.disableExceptionTracking!==null?t.Util.stringToBoolOrDefault(n.disableExceptionTracking):!1,n.disableTelemetry=t.Util.stringToBoolOrDefault(n.disableTelemetry),n.verboseLogging=t.Util.stringToBoolOrDefault(n.verboseLogging),n.emitLineDelimitedJson=t.Util.stringToBoolOrDefault(n.emitLineDelimitedJson),n.diagnosticLogInterval=n.diagnosticLogInterval||1e4,n.autoTrackPageVisitTime=t.Util.stringToBoolOrDefault(n.autoTrackPageVisitTime),(isNaN(n.samplingPercentage)||n.samplingPercentage<=0||n.samplingPercentage>=100)&&(n.samplingPercentage=100),n.disableAjaxTracking=n.disableAjaxTracking!==undefined&&n.disableAjaxTracking!==null?t.Util.stringToBoolOrDefault(n.disableAjaxTracking):!1,n.maxAjaxCallsPerView=isNaN(n.maxAjaxCallsPerView)?500:n.maxAjaxCallsPerView,n.disableCorrelationHeaders=n.disableCorrelationHeaders!==undefined&&n.disableCorrelationHeaders!==null?t.Util.stringToBoolOrDefault(n.disableCorrelationHeaders):!0,n.disableFlushOnBeforeUnload=n.disableFlushOnBeforeUnload!==undefined&&n.disableFlushOnBeforeUnload!==null?t.Util.stringToBoolOrDefault(n.disableFlushOnBeforeUnload):!1,n},i}();t.Initialization=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(){"use strict";var r,u;try{if(typeof window!="undefined"&&typeof JSON!="undefined")if(r="appInsights",window[r]===undefined)n.ApplicationInsights.AppInsights.defaultConfig=n.ApplicationInsights.Initialization.getDefaultConfig();else{var f=window[r]||{},t=new n.ApplicationInsights.Initialization(f),i=t.loadAppInsights();for(u in i)f[u]=i[u];t.emptyQueue();t.pollInteralLogs(i);t.addHousekeepingBeforeUnload(i)}}catch(e){n.ApplicationInsights._InternalLogging.warnToConsole("Failed to initialize AppInsights JS SDK: "+e.message)}})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})) \ No newline at end of file diff --git a/Project-Unite/Scripts/bootstrap.js b/Project-Unite/Scripts/bootstrap.js new file mode 100644 index 0000000..5aa9982 --- /dev/null +++ b/Project-Unite/Scripts/bootstrap.js @@ -0,0 +1,2014 @@ +/* NUGET: BEGIN LICENSE TEXT + * + * Microsoft grants you the right to use these script files for the sole + * purpose of either: (i) interacting through your browser with the Microsoft + * website or online service, subject to the applicable licensing or use + * terms; or (ii) using the files as included with a Microsoft product subject + * to that product's license terms. Microsoft reserves all other rights to the + * files not expressly granted by Microsoft, whether by implication, estoppel + * or otherwise. Insofar as a script file is dual licensed under GPL, + * Microsoft neither took the code under GPL nor distributes it thereunder but + * under the terms set out in this paragraph. All notices and licenses + * below are for informational purposes only. + * + * NUGET: END LICENSE TEXT */ + +/** +* bootstrap.js v3.0.0 by @fat and @mdo +* Copyright 2013 Twitter Inc. +* http://www.apache.org/licenses/LICENSE-2.0 +*/ +if (!jQuery) { throw new Error("Bootstrap requires jQuery") } + +/* ======================================================================== + * Bootstrap: transition.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#transitions + * ======================================================================== + * Copyright 2013 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ + + function transitionEnd() { + var el = document.createElement('bootstrap') + + var transEndEventNames = { + 'WebkitTransition' : 'webkitTransitionEnd' + , 'MozTransition' : 'transitionend' + , 'OTransition' : 'oTransitionEnd otransitionend' + , 'transition' : 'transitionend' + } + + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } + } + } + + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false, $el = this + $(this).one($.support.transition.end, function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) + return this + } + + $(function () { + $.support.transition = transitionEnd() + }) + +}(window.jQuery); + +/* ======================================================================== + * Bootstrap: alert.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#alerts + * ======================================================================== + * Copyright 2013 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.hasClass('alert') ? $this : $this.parent() + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + $parent.trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one($.support.transition.end, removeElement) + .emulateTransitionEnd(150) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + var old = $.fn.alert + + $.fn.alert = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(window.jQuery); + +/* ======================================================================== + * Bootstrap: button.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#buttons + * ======================================================================== + * Copyright 2013 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + } + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state = state + 'Text' + + if (!data.resetText) $el.data('resetText', $el[val]()) + + $el[val](data[state] || this.options[state]) + + // push to event loop to allow forms to submit + setTimeout(function () { + state == 'loadingText' ? + $el.addClass(d).attr(d, d) : + $el.removeClass(d).removeAttr(d); + }, 0) + } + + Button.prototype.toggle = function () { + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + .prop('checked', !this.$element.hasClass('active')) + .trigger('change') + if ($input.prop('type') === 'radio') $parent.find('.active').removeClass('active') + } + + this.$element.toggleClass('active') + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + var old = $.fn.button + + $.fn.button = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) { + var $btn = $(e.target) + if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn') + $btn.button('toggle') + e.preventDefault() + }) + +}(window.jQuery); + +/* ======================================================================== + * Bootstrap: carousel.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#carousel + * ======================================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = + this.sliding = + this.interval = + this.$active = + this.$items = null + + this.options.pause == 'hover' && this.$element + .on('mouseenter', $.proxy(this.pause, this)) + .on('mouseleave', $.proxy(this.cycle, this)) + } + + Carousel.DEFAULTS = { + interval: 5000 + , pause: 'hover' + , wrap: true + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getActiveIndex = function () { + this.$active = this.$element.find('.item.active') + this.$items = this.$active.parent().children() + + return this.$items.index(this.$active) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getActiveIndex() + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid', function () { that.to(pos) }) + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos])) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition.end) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || $active[type]() + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var fallback = type == 'next' ? 'first' : 'last' + var that = this + + if (!$next.length) { + if (!this.options.wrap) return + $next = this.$element.find('.item')[fallback]() + } + + this.sliding = true + + isCycling && this.pause() + + var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction }) + + if ($next.hasClass('active')) return + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + this.$element.one('slid', function () { + var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()]) + $nextIndicator && $nextIndicator.addClass('active') + }) + } + + if ($.support.transition && this.$element.hasClass('slide')) { + this.$element.trigger(e) + if (e.isDefaultPrevented()) return + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one($.support.transition.end, function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { that.$element.trigger('slid') }, 0) + }) + .emulateTransitionEnd(600) + } else { + this.$element.trigger(e) + if (e.isDefaultPrevented()) return + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger('slid') + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + var old = $.fn.carousel + + $.fn.carousel = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) { + var $this = $(this), href + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7 + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + $target.carousel(options) + + if (slideIndex = $this.attr('data-slide-to')) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + }) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + $carousel.carousel($carousel.data()) + }) + }) + +}(window.jQuery); + +/* ======================================================================== + * Bootstrap: collapse.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#collapse + * ======================================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.transitioning = null + + if (this.options.parent) this.$parent = $(this.options.parent) + if (this.options.toggle) this.toggle() + } + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var actives = this.$parent && this.$parent.find('> .panel > .in') + + if (actives && actives.length) { + var hasData = actives.data('bs.collapse') + if (hasData && hasData.transitioning) return + actives.collapse('hide') + hasData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing') + [dimension](0) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('in') + [dimension]('auto') + this.transitioning = 0 + this.$element.trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one($.support.transition.end, $.proxy(complete, this)) + .emulateTransitionEnd(350) + [dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element + [dimension](this.$element[dimension]()) + [0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse') + .removeClass('in') + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .trigger('hidden.bs.collapse') + .removeClass('collapsing') + .addClass('collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one($.support.transition.end, $.proxy(complete, this)) + .emulateTransitionEnd(350) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + var old = $.fn.collapse + + $.fn.collapse = function (option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle=collapse]', function (e) { + var $this = $(this), href + var target = $this.attr('data-target') + || e.preventDefault() + || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7 + var $target = $(target) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + var parent = $this.attr('data-parent') + var $parent = parent && $(parent) + + if (!data || !data.transitioning) { + if ($parent) $parent.find('[data-toggle=collapse][data-parent="' + parent + '"]').not($this).addClass('collapsed') + $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed') + } + + $target.collapse(option) + }) + +}(window.jQuery); + +/* ======================================================================== + * Bootstrap: dropdown.js v3.0.0 + * http://twbs.github.com/bootstrap/javascript.html#dropdowns + * ======================================================================== + * Copyright 2012 Twitter, Inc. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ======================================================================== */ + + ++function ($) { "use strict"; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle=dropdown]' + var Dropdown = function (element) { + var $el = $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we we use a backdrop because click events don't delegate + $('