IEnumerable <AutocompleteItem> CompleteClans(string term, ZkDataContext db) { if (string.IsNullOrEmpty(term)) { return(new List <AutocompleteItem>()); } return (db.Clans.Where(x => !x.IsDeleted && (x.ClanName.Contains(term) || x.Shortcut.Contains(term))) .OrderBy(x => x.ClanName).Take(autocompleteCount).ToList() .Select(x => new AutocompleteItem() { id = x.ClanID, url = Url.Action("Detail", "Clans", new { id = x.ClanID }), value = x.ClanName, label = HtmlHelperExtensions.PrintClan(null, x).ToString() })); }
public void RenderFunctionsCalledNonLazily() { var component = new Mock <IReactComponent>(); var fakeRenderFunctions = new Mock <IRenderFunctions>(); fakeRenderFunctions.Setup(x => x.PreRender(It.IsAny <Func <string, string> >())).Verifiable(); fakeRenderFunctions.Setup(x => x.PostRender(It.IsAny <Func <string, string> >())).Verifiable(); fakeRenderFunctions.Setup(x => x.TransformRenderedHtml(It.IsAny <string>())).Returns("HTML"); component.Setup(x => x.RenderHtml(It.IsAny <TextWriter>(), It.IsAny <bool>(), It.IsAny <bool>(), It.IsAny <Action <Exception, string, string> >(), It.IsAny <IRenderFunctions>())) .Callback((TextWriter writer, bool renderContainerOnly, bool renderServerOnly, Action <Exception, string, string> exceptionHandler, IRenderFunctions renderFunctions) => { renderFunctions.PreRender(_ => "one"); writer.Write(renderFunctions.TransformRenderedHtml("HTML")); renderFunctions.PostRender(_ => "two"); }).Verifiable(); var environment = ConfigureMockEnvironment(); environment.Setup(x => x.CreateComponent( "ComponentName", new { }, null, false, true, false )).Returns(component.Object); var result = HtmlHelperExtensions.React( htmlHelper: null, componentName: "ComponentName", props: new { }, htmlTag: "span", clientOnly: false, serverOnly: true, renderFunctions: fakeRenderFunctions.Object ); // JS calls must happen right away so thrown exceptions do not crash the app. component.Verify(x => x.RenderHtml(It.IsAny <TextWriter>(), It.Is <bool>(y => y == false), It.Is <bool>(z => z == true), It.IsAny <Action <Exception, string, string> >(), It.IsAny <IRenderFunctions>()), Times.Once); fakeRenderFunctions.Verify(x => x.PreRender(It.IsAny <Func <string, string> >()), Times.Once); fakeRenderFunctions.Verify(x => x.PostRender(It.IsAny <Func <string, string> >()), Times.Once); Assert.Equal("HTML", result.ToHtmlString()); }
protected void Update(bool showCropper = true) { string str; GetSrc(out str); SheerResponse.SetAttribute(string.Concat(this.ID, "_image"), "src", str); var updateModel = new AdvancedImageEditorUpdateModel { Details = GetDetails(), Thumbnails = GetThumbnails() }; var updateView = HtmlHelperExtensions.GetRazorViewAsString("~/Views/Shared/Fields/AdvancedImageUpdate.cshtml", updateModel); SheerResponse.SetInnerHtml(string.Concat(ID, "_details"), updateView); SheerResponse.Eval("scContent.startValidators()"); }
public void ShouldRedirectPermanent() { var mocks = ConfigureMockReactEnvironment(); ConfigureMockConfiguration(); mocks.Engine.Setup(x => x.Evaluate <string>("JSON.stringify(context);")) .Returns(@"{ status: 301, url: ""/foo"" }"); var htmlHelperMock = new HtmlHelperMocks(); HtmlHelperExtensions.ReactRouterWithContext( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/" ); htmlHelperMock.httpResponse.Verify(x => x.RedirectPermanent(It.IsAny <string>())); }
public void TestCalculateColor() { MvcHtmlString result = HtmlHelperExtensions.CalculateColor(null, 1); Assert.IsTrue(!result.Equals(string.Empty)); Assert.AreEqual(result.ToString(), "background-color:rgba(0,0, 0, 1); color:rgb(255,255, 255);"); result = HtmlHelperExtensions.CalculateColor(null, -1); Assert.IsTrue(!result.Equals(string.Empty)); Assert.AreEqual(result.ToString(), "background-color:rgba(255,140, 0, 1); color:rgb(255,255, 255);"); result = HtmlHelperExtensions.CalculateColor(null, 0.5); Assert.IsTrue(!result.Equals(string.Empty)); Assert.AreEqual(result.ToString(), "background-color:rgba(0,0, 0, 0.5); color:rgb(0,0, 0);"); result = HtmlHelperExtensions.CalculateColor(null, -0.5); Assert.IsTrue(!result.Equals(string.Empty)); Assert.AreEqual(result.ToString(), "background-color:rgba(255,140, 0, 0.5); color:rgb(0,0, 0);"); }
public void ShouldModifyStatusCode() { var mocks = ConfigureMockReactEnvironment(); ConfigureMockConfiguration(); mocks.Engine.Setup(x => x.Evaluate <string>("JSON.stringify(context);")) .Returns("{ status: 200 }"); var htmlHelperMock = new HtmlHelperMocks(); HtmlHelperExtensions.ReactRouterWithContext( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/" ); htmlHelperMock.httpResponse.VerifySet(x => x.StatusCode = 200); }
string GetThreadTooltip(int id) { var db = new ZkDataContext(); var thread = db.ForumThreads.Single(x => x.ForumThreadID == id); ForumPost post = null; ForumThreadLastRead last; if (thread.RestrictedClanID != null && thread.RestrictedClanID != Global.ClanID) { return("<span>This is a secret clan thread :-)</span>"); } var postTitle = "Starting post "; if (Global.IsAccountAuthorized && (last = thread.ForumThreadLastReads.SingleOrDefault(x => x.AccountID == Global.AccountID)) != null) { if (last.LastRead < thread.LastPost) { postTitle = "First unread post "; post = thread.ForumPosts.Where(x => x.Created > last.LastRead).OrderBy(x => x.ForumPostID).FirstOrDefault(); } else { postTitle = "Last post "; post = thread.ForumPosts.OrderByDescending(x => x.ForumPostID).FirstOrDefault(); } } else { post = thread.ForumPosts.OrderBy(x => x.ForumPostID).FirstOrDefault(); } var sb = new StringBuilder(); if (post != null) { sb.AppendFormat("{0} {1}, {2}", postTitle, HtmlHelperExtensions.PrintAccount(null, post.Account).ToHtmlString(), post.Created.ToAgoString()); sb.AppendFormat("<br/><span>{0}</span><br/>", HtmlHelperExtensions.BBCode(null, post.Text).ToHtmlString()); } sb.AppendFormat("<small>Thread by {0}, {1}</small>", HtmlHelperExtensions.PrintAccount(null, thread.AccountByCreatedAccountID).ToHtmlString(), thread.Created.ToAgoString()); return(sb.ToString()); }
private static string GetDisplayString(IHtmlHelper htmlHelper, dynamic obj, string displayExpression) { string value = displayExpression; if (!value.Contains("{") && !value.Contains(" ")) { value = "{" + value + "}"; } var replacementTokens = GetReplacementTokens(value); foreach (var token in replacementTokens) { var propertyName = token.Substring(1, token.Length - 2); var displayString = HtmlHelperExtensions.ToString(ModelHelperExtensions.Display(htmlHelper, obj, propertyName)); value = value.Replace(token, displayString); } return(value); }
public void EngineIsReturnedToPoolAfterRender() { var config = ConfigureMockConfiguration(); var environment = ConfigureMockEnvironment(); var routerMocks = new ReactRouterMocks(config, environment); var htmlHelperMock = new HtmlHelperMocks(); environment.Verify(x => x.ReturnEngineToPool(), Times.Never); var result = HtmlHelperExtensions.ReactRouterWithContext( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/", htmlTag: "span", clientOnly: true, serverOnly: true ); environment.Verify(x => x.ReturnEngineToPool(), Times.Once); }
public void ReactWithServerOnlyTrueShouldCallRenderHtmlWithTrue() { var config = ConfigureMockConfiguration(); var htmlHelperMock = new HtmlHelperMocks(); var environment = ConfigureMockEnvironment(); var routerMocks = new ReactRouterMocks(config, environment); var result = HtmlHelperExtensions.ReactRouterWithContext( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/", htmlTag: "span", clientOnly: false, serverOnly: true ); routerMocks.component.Verify(x => x.RenderRouterWithContext(It.Is <bool>(y => y == false), It.Is <bool>(z => z == true)), Times.Once); }
//[Route("dokument/versjon/{parentRegister}/{parentRegisterOwner}/{registername}/{itemOwner}/{itemname}/ny")] //[Route("dokument/versjon/{registername}/{itemOwner}/{itemname}/ny")] public ActionResult CreateNewVersion(Document document, HttpPostedFileBase documentfile, HttpPostedFileBase thumbnail, string parentRegisterOwner, string parentRegister, string registername, string itemname) { document.register = _registerService.GetSubregisterByName(parentRegister, registername); if (_accessControlService.AddToRegister(document.register)) { if (!NameIsValid(document)) { ModelState.AddModelError("ErrorMessage", HtmlHelperExtensions.ErrorMessageValidationName()); } else if (ModelState.IsValid) { document = initialisationDocument(document, documentfile, thumbnail); if (ModelState.IsValid) { return(Redirect(document.GetObjectUrl())); } } } return(View(document)); }
// GET: CustomersOrdersChart/fromDate/toDate public ActionResult CustomersOrdersChart(string fromDate, string toDate) { ViewBag.FromDate = fromDate ?? DateTime.Now.GetPersianDateByDashSpliter(); ViewBag.ToDate = toDate ?? DateTime.Now.GetPersianDateByDashSpliter(); try { lock (CurrentUser) { // Fill Chart Data ------------------------------------------ #region Chart Data var opt = new ChartOption() { Name = "customersOrdersChart", ChartType = ChartTypes.Column, Tilte = "درخواست مشتریان هر متصدی", SubTitle = "جمع درخواست ها: ", YAxisTitle = "جمع ریالی", SeriesName = "پرسنل", ShowLegend = false, ShowDataLabels = true, AjaxLoading = true, LoadDataUrl = $"GetOfficerOrderStatisticsChart/{fromDate}/{toDate}", SubTitleFunc = "sum" }; #endregion //---------------------------------------------------------- return(PartialView("CustomersOrders/CustomersOrdersChart", HtmlHelperExtensions.GetHighChart(opt))); } } catch (Exception exp) { Elmah.ErrorSignal.FromCurrentContext().Raise(exp); } return(PartialView("CustomersOrders/CustomersOrdersChart")); }
IEnumerable <AutocompleteItem> CompleteMaps(string term, ZkDataContext db) { if (string.IsNullOrEmpty(term)) { return(new List <AutocompleteItem>()); } return (db.Resources.Where(x => x.InternalName.Contains(term) && x.TypeID == ResourceType.Map) .OrderByDescending(x => x.MapSupportLevel) .Take(autocompleteCount) .ToList() .Select( x => new AutocompleteItem { label = HtmlHelperExtensions.PrintMap(null, x.InternalName).ToString(), url = Url.Action("Detail", "Maps", new { id = x.ResourceID }), value = x.InternalName, id = x.ResourceID })); }
public void ShouldRunCustomContextHandler() { var mocks = ConfigureMockReactEnvironment(); ConfigureMockConfiguration(); ConfigureReactIdGenerator(); mocks.Engine.Setup(x => x.Evaluate <string>("JSON.stringify(context);")) .Returns("{ status: 200 }"); var htmlHelperMock = new HtmlHelperMocks(); HtmlHelperExtensions.ReactRouter( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/", contextHandler: (response, context) => response.StatusCode = context.status.Value ); htmlHelperMock.httpResponse.VerifySet(x => x.StatusCode = 200); }
public void ShouldFailRedirectWithNoUrl() { var mocks = ConfigureMockReactEnvironment(); ConfigureMockConfiguration(); mocks.Engine.Setup(x => x.Evaluate <string>("JSON.stringify(context);")) .Returns("{ status: 301 }"); var htmlHelperMock = new HtmlHelperMocks(); Assert.Throws <ReactRouterException>(() => HtmlHelperExtensions.ReactRouterWithContext( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: "/" ) ); }
IEnumerable <AutocompleteItem> CompleteThreads(string term, int?categoryID, ZkDataContext db) { if (string.IsNullOrEmpty(term)) { return(new List <AutocompleteItem>()); } return (db.ForumThreads.Where(x => x.ForumCategoryID == categoryID || (categoryID == null && x.ForumCategory.ForumMode != ForumMode.Archive)).Where(x => (x.WikiKey != null && x.WikiKey.Contains(term)) || x.Title.Contains(term)) .OrderByDescending(x => x.LastPost) .Take(autocompleteCount) .ToList() .Select( x => new AutocompleteItem { label = HtmlHelperExtensions.Print(null, x).ToString(), url = x.WikiKey != null? Url.Action("Index", "Wiki", new { node = x.WikiKey }): Url.Action("Thread", "Forum", new { id = x.ForumThreadID }), value = x.WikiKey ?? x.Title, id = x.ForumThreadID })); }
public static CampaignEvent CreateCampaignEvent(int accountID, int campaignID, string format, params object[] args) { var ev = new CampaignEvent() { AccountID = accountID, CampaignID = campaignID, Time = DateTime.UtcNow }; ev.PlainText = string.Format(format, args); var orgArgs = new List <object>(args); for (var i = 0; i < args.Length; i++) { var arg = args[i]; var url = Global.UrlHelper(); if (arg is Account) { /* * var acc = (Account)arg; * args[i] = HtmlHelperExtensions.PrintAccount(null, acc); * if (acc.AccountID != 0) * { * if (!ev.EventAccounts.Any(x => x.AccountID == acc.AccountID)) ev.EventAccounts.Add(new EventAccount() { AccountID = acc.AccountID }); * } * else if (!ev.EventAccounts.Any(x => x.Account == acc)) ev.EventAccounts.Add(new EventAccount() { Account = acc }); */ } else if (arg is CampaignPlanet) { var planet = (CampaignPlanet)arg; args[i] = HtmlHelperExtensions.PrintCampaignPlanet(null, planet); ev.PlanetID = planet.PlanetID; } } ev.Text = string.Format(format, args); return(ev); }
public void ShouldHandleQueryParams(bool withOverriddenPath) { var mocks = ConfigureMockReactEnvironment(); ConfigureMockConfiguration(); ConfigureReactIdGenerator(); mocks.Engine.Setup(x => x.Evaluate <string>("JSON.stringify(context);")) .Returns("{ status: 200 }"); var requestMock = new Mock <HttpRequestBase>(); requestMock.SetupGet(x => x.Path).Returns("/test"); var queryStringMock = new Mock <NameValueCollection>(); queryStringMock.Setup(x => x.ToString()).Returns("?a=1&b=2"); requestMock.SetupGet(x => x.QueryString).Returns(queryStringMock.Object); var htmlHelperMock = new HtmlHelperMocks(requestMock.Object); var result = HtmlHelperExtensions.ReactRouter( htmlHelper: htmlHelperMock.htmlHelper.Object, componentName: "ComponentName", props: new { }, path: withOverriddenPath ? "/test2?b=1&c=2" : null, contextHandler: (response, context) => response.StatusCode = context.status.Value ); htmlHelperMock.httpResponse.VerifySet(x => x.StatusCode = 200); if (withOverriddenPath) { mocks.Engine.Verify(x => x.Evaluate <string>(@"ReactDOMServer.renderToString(React.createElement(ComponentName, Object.assign({}, { location: '/test2?b=1&c=2', context: context })))")); } else { mocks.Engine.Verify(x => x.Evaluate <string>(@"ReactDOMServer.renderToString(React.createElement(ComponentName, Object.assign({}, { location: '/test?a=1&b=2', context: context })))")); } }
private static string GetMapTooltip(int id) { var db = new ZkDataContext(); var sb = new StringBuilder(); var r = db.Resources.Single(x => x.ResourceID == id); sb.Append("<span>"); sb.AppendFormat("{0}<br/>", r.InternalName); sb.AppendFormat("by {0}<br/>", r.AuthorName); //if (r.MapIsFfa == true) sb.AppendFormat("<img src='/img/map_tags/ffa.png' class='icon32' />"); //if (r.MapWaterLevel > 0) sb.AppendFormat("<img src='/img/map_tags/sea{0}.png' class='icon32' />", r.MapWaterLevel); //if (r.MapHills > 0) sb.AppendFormat("<img src='/img/map_tags/hill{0}.png' class='icon32' />", r.MapHills); //if (r.MapIsSpecial == true) sb.AppendFormat("<img src='/img/map_tags/special.png' class='icon32' />"); //if (r.MapIsAssymetrical == true) sb.AppendFormat("<img src='/img/map_tags/assymetrical.png' class='icon32' />"); sb.Append("<br/>"); sb.AppendFormat("<img src='/Resources/{0}' /><br/>", r.ThumbnailName); sb.AppendFormat("Rating: {0}", HtmlHelperExtensions.Stars(null, StarType.GreenStarSmall, r.MapRating).ToHtmlString()); sb.Append("</span>"); return(sb.ToString()); }
public void ReactWithClientOnlyTrueShouldCallRenderHtmlWithTrue() { var component = new Mock <IReactComponent>(); component.Setup(x => x.RenderHtml(true)).Returns("HTML"); var environment = ConfigureMockEnvironment(); environment.Setup(x => x.CreateComponent( "ComponentName", new {}, null )).Returns(component.Object); var result = HtmlHelperExtensions.React( htmlHelper: null, componentName: "ComponentName", props: new { }, htmlTag: "span", clientOnly: true ); component.Verify(x => x.RenderHtml(It.Is <bool>(y => y == true)), Times.Once); }
public void ReactGetScriptPaths(bool withNonce) { var config = new Mock <IReactSiteConfiguration>(); var environment = ConfigureMockEnvironment(config.Object); if (withNonce) { config.Setup(x => x.ScriptNonceProvider).Returns(() => "test1234"); } environment.Setup(x => x.GetScriptPaths()).Returns(new[] { "/dist/vendor.js", "/dist/app.js" }); var result = HtmlHelperExtensions.ReactGetScriptPaths(null); if (withNonce) { Assert.Equal("<script nonce=\"test1234\" src=\"/dist/vendor.js\"></script><script nonce=\"test1234\" src=\"/dist/app.js\"></script>", result.ToHtmlString()); } else { Assert.Equal("<script src=\"/dist/vendor.js\"></script><script src=\"/dist/app.js\"></script>", result.ToHtmlString()); } }
//[Route("dokument/{parentregister}/{registerowner}/{registername}/{itemowner}/{documentname}/rediger")] //[Route("dokument/{registername}/{itemowner}/{documentname}/rediger")] public ActionResult Edit(Document document, string parentregister, string registerowner, string registername, string itemowner, string documentname, HttpPostedFileBase documentfile, HttpPostedFileBase thumbnail, bool retired, bool sosi) { var originalDocument = (Document)_registerItemService.GetRegisterItem(parentregister, registername, documentname, document.versionNumber); if (originalDocument != null) { if (!_registerItemService.ItemNameIsValid(document)) { ModelState.AddModelError("ErrorMessage", HtmlHelperExtensions.ErrorMessageValidationName()); } else if (ModelState.IsValid) { var url = System.Web.Configuration.WebConfigurationManager.AppSettings["RegistryUrl"] + "data/" + Document.DataDirectory; document.documentUrl = documentUrl(url, documentfile, document.documentUrl, document.name, originalDocument.register.name, document.versionNumber, document.Accepted?.ToString(), originalDocument?.Accepted.ToString()); if (document.documentUrl == "IllegalSchemaLocation") { ModelState.AddModelError("ErrorMessageFileName", ErrorMessageIllegalSchemaLocation); document.documentUrl = ""; } else { if (document.register == null) { document.register = originalDocument.register; } document.thumbnail = GetThumbnail(document, documentfile, url, thumbnail); originalDocument = _documentService.UpdateDocument(originalDocument, document, documentfile, thumbnail, retired, sosi); //document = initialisationDocument(document, documentfile, thumbnail, retired, sosi, originalDocument); return(Redirect(originalDocument.GetObjectUrl())); } } } Viewbags(document); return(View(originalDocument)); }
public ActionResult WriteTemplate(string appName, string json, bool setValues = false) { try { object rehydrated = JsonConvert.DeserializeObject(json); string name = GetName((JObject)rehydrated); string path = Server.MapPath("~/bam/apps/{0}/dust/{1}.dust"._Format(appName, name)); string html = HtmlHelperExtensions.FieldsetFor(null, rehydrated, name, null, setValues).ToString().XmlToHumanReadable(); FileInfo file = new System.IO.FileInfo(path); int i = 1; while (System.IO.File.Exists(path)) { path = Path.Combine(file.Directory.FullName, "{0}_{1}.dust"._Format(Path.GetFileNameWithoutExtension(file.Name), i)); i++; } html.SafeWriteToFile(path); return(Json(new { Success = true })); } catch (Exception ex) { return(Json(new { Success = false, Message = ex.Message })); } }
public static MvcHtmlString FieldSetFor(Type type, object defaults = null, string legendText = null, object wrapperAttrs = null) { return(HtmlHelperExtensions.FieldSetFor(null, type, defaults, legendText, wrapperAttrs)); }
private IEnumerable<Employer> getSortedList(EmployerSearchViewModel esvm, out string sortedColumn, out string currentSortedColumn, out HtmlHelperExtensions.SortDirection sortDirection) { if (esvm.SortedColumn==null || esvm.SortedColumn =="") //no new sorting requested { if (esvm.CurrentSortedColumn == null || esvm.CurrentSortedColumn == "") //there is no current sorting { sortedColumn = null; currentSortedColumn = "ID"; sortDirection = HtmlHelperExtensions.SortDirection.Ascending; return esvm.ResultSet.OrderBy(cc => cc.ID); } else //there is a current sorting { currentSortedColumn = esvm.CurrentSortedColumn; sortedColumn = null; sortDirection = esvm.SortDirection; if (esvm.SortDirection == HtmlHelperExtensions.SortDirection.Ascending || esvm.SortDirection == null) return esvm.ResultSet.OrderBy(cc => (GetPropertyValue(cc, esvm.CurrentSortedColumn))); else return esvm.ResultSet.OrderByDescending(cc => (GetPropertyValue(cc, esvm.CurrentSortedColumn))); } } else //a new sorting is requested { if (esvm.SortedColumn == null || esvm.SortedColumn == "") //currently no sorting { currentSortedColumn = esvm.SortedColumn; sortedColumn = null; sortDirection = HtmlHelperExtensions.SortDirection.Ascending; return esvm.ResultSet.OrderBy(cc => (GetPropertyValue(cc, esvm.SortedColumn))); } else //already a sortimg { if (esvm.SortedColumn == esvm.CurrentSortedColumn) // toggle sorting asc /desc { currentSortedColumn = esvm.CurrentSortedColumn; sortedColumn = null; sortDirection = esvm.SortDirection == HtmlHelperExtensions.SortDirection.Ascending ? HtmlHelperExtensions.SortDirection.Descending : HtmlHelperExtensions.SortDirection.Ascending; if (sortDirection == HtmlHelperExtensions.SortDirection.Ascending) return esvm.ResultSet.OrderBy(cc => (GetPropertyValue(cc, esvm.SortedColumn))); else return esvm.ResultSet.OrderByDescending(cc => (GetPropertyValue(cc, esvm.SortedColumn))); } else //new sorting field { currentSortedColumn = esvm.SortedColumn; sortedColumn = null; sortDirection = HtmlHelperExtensions.SortDirection.Ascending; return esvm.ResultSet.OrderBy(cc => (GetPropertyValue(cc, esvm.SortedColumn))); } } } }
public VersionsItem Versions(string registername, string parantRegister, string itemname) { // Finn versjonsgruppen Models.Version versjonsGruppe = new Models.Version(); if (parantRegister != null) { var queryResultsRegisteritem = from ri in _dbContext.RegisterItems where ri.register.seoname == registername && ri.register.parentRegister.seoname == parantRegister && ri.seoname == itemname select ri.versioning; versjonsGruppe = queryResultsRegisteritem.FirstOrDefault(); } else { var queryResultsRegisteritem = from ri in _dbContext.RegisterItems where ri.register.seoname == registername && ri.register.parentRegister == null && ri.seoname == itemname select ri.versioning; versjonsGruppe = queryResultsRegisteritem.FirstOrDefault(); } Guid?versjonsGruppeId = versjonsGruppe.systemId; Guid currentVersionId = versjonsGruppe.currentVersion; List <Models.RegisterItem> suggestionsItems = new List <Models.RegisterItem>(); List <Models.RegisterItem> historicalItems = new List <Models.RegisterItem>(); // finne Gjeldende versjon i versjonsgruppen var queryResults = from ri in _dbContext.RegisterItems where ri.systemId == currentVersionId select ri; Models.RegisterItem currentVersion = queryResults.FirstOrDefault(); // Finne alle versjoner som står som forslag queryResults = from ri in _dbContext.RegisterItems where ri.register.seoname == registername && ri.versioningId == versjonsGruppeId && (ri.status.value == "Submitted" //|| ri.status.value == "Proposal" //|| ri.status.value == "InProgress" || ri.status.value == "Draft") //|| ri.status.value == "Accepted" //|| ri.status.value == "Experimental" //|| ri.status.value == "Candidate" select ri; foreach (Models.RegisterItem item in queryResults.ToList()) { if ((item.statusId != "Submitted") || HtmlHelperExtensions.AccessRegisterItem(item)) { suggestionsItems.Add(item); } } //finne alle historiske versjoner var queryResultsHistorical = from ri in _dbContext.RegisterItems where ri.register.seoname == registername && ri.versioningId == currentVersion.versioningId && (ri.status.value == "Superseded" || ri.status.value == "Retired") //ri.status.value == "Deprecated" select ri; if (queryResultsHistorical.Any()) { foreach (Models.RegisterItem item in queryResultsHistorical.ToList()) { historicalItems.Add(item); } } return(new VersionsItem { currentVersion = currentVersion, historical = historicalItems, suggestions = suggestionsItems }); }
public double Percent(int numberOf) { return(HtmlHelperExtensions.Percent(numberOf, NumberOfItems)); }
protected internal static MvcHtmlString FieldSetFor(dynamic obj, string legendText, object wrapperAttrs = null, bool setValues = false) { return(HtmlHelperExtensions.FieldsetFor(null, obj, legendText, wrapperAttrs, setValues)); }
public static Event CreateEvent(string format, params object[] args) { var ev = new Event() { Time = DateTime.UtcNow }; ev.PlainText = string.Format(format, args); var orgArgs = new List <object>(args); List <object> alreadyAddedEvents = new List <object>(); for (var i = 0; i < args.Length; i++) { bool dontDuplicate = false; // set to true for args that have their own Event table in DB, e.g. accounts, factions, clans, planets var arg = args[i]; if (arg == null) { continue; } var url = Global.UrlHelper(); bool eventAlreadyExists = alreadyAddedEvents.Contains(arg); if (arg is Account) { var acc = (Account)arg; args[i] = HtmlHelperExtensions.PrintAccount(null, acc); if (!eventAlreadyExists) { if (acc.AccountID != 0) { if (!ev.EventAccounts.Any(x => x.AccountID == acc.AccountID)) { ev.EventAccounts.Add(new EventAccount() { AccountID = acc.AccountID }); } } else if (!ev.EventAccounts.Any(x => x.Account == acc)) { ev.EventAccounts.Add(new EventAccount() { Account = acc }); } dontDuplicate = true; } } else if (arg is Clan) { var clan = (Clan)arg; args[i] = HtmlHelperExtensions.PrintClan(null, clan); if (!eventAlreadyExists) { if (clan.ClanID != 0) { ev.EventClans.Add(new EventClan() { ClanID = clan.ClanID }); } else { ev.EventClans.Add(new EventClan() { Clan = clan }); } dontDuplicate = true; } } else if (arg is Planet) { var planet = (Planet)arg; args[i] = HtmlHelperExtensions.PrintPlanet(null, planet); if (!eventAlreadyExists) { if (planet.PlanetID != 0) { ev.EventPlanets.Add(new EventPlanet() { PlanetID = planet.PlanetID }); } else { ev.EventPlanets.Add(new EventPlanet() { Planet = planet }); } dontDuplicate = true; } } else if (arg is SpringBattle) { var bat = (SpringBattle)arg; args[i] = string.Format("<a href='{0}'>B{1}</a>", url.Action("Detail", "Battles", new { id = bat.SpringBattleID }), bat.SpringBattleID); //todo no proper helper for this if (!eventAlreadyExists) { if (bat.SpringBattleID != 0) { ev.EventSpringBattles.Add(new EventSpringBattle() { SpringBattleID = bat.SpringBattleID }); } else { ev.EventSpringBattles.Add(new EventSpringBattle() { SpringBattle = bat }); } foreach (Account acc in bat.SpringBattlePlayers.Where(sb => !sb.IsSpectator).Select(x => x.Account).Where(y => !ev.EventAccounts.Any(z => z.AccountID == y.AccountID))) { if (acc.AccountID != 0) { if (!ev.EventAccounts.Any(x => x.AccountID == acc.AccountID)) { ev.EventAccounts.Add(new EventAccount() { AccountID = acc.AccountID }); } } else if (!ev.EventAccounts.Any(x => x.Account == acc)) { ev.EventAccounts.Add(new EventAccount() { Account = acc }); } } dontDuplicate = true; } } else if (arg is Faction) { var fac = (Faction)arg; args[i] = HtmlHelperExtensions.PrintFaction(null, fac, false); if (!eventAlreadyExists) { if (fac.FactionID != 0) { ev.EventFactions.Add(new EventFaction() { FactionID = fac.FactionID }); } else { ev.EventFactions.Add(new EventFaction() { Faction = fac }); } dontDuplicate = true; } } else if (arg is StructureType) { var stype = (StructureType)arg; args[i] = HtmlHelperExtensions.PrintStructureType(null, stype); } else if (arg is FactionTreaty) { var tr = (FactionTreaty)arg; args[i] = HtmlHelperExtensions.PrintFactionTreaty(null, tr); } else if (arg is RoleType) { var rt = (RoleType)arg; args[i] = HtmlHelperExtensions.PrintRoleType(null, rt); } if (dontDuplicate) { alreadyAddedEvents.Add(arg); } } ev.Text = string.Format(format, args); try { var tas = nightwatch.Tas; if (tas != null) { foreach (var clan in orgArgs.OfType <Clan>().Where(x => x != null)) { tas.Say(TasClient.SayPlace.Channel, clan.GetClanChannel(), ev.PlainText, true); } foreach (var faction in orgArgs.OfType <Faction>().Where(x => x != null)) { tas.Say(TasClient.SayPlace.Channel, faction.Shortcut, ev.PlainText, true); } } } catch (Exception ex) { Trace.TraceError("Error sending event to channels: {0}", ex); } return(ev); }
public override void ExecuteResult(ControllerContext context) { HttpResponseBase response = context.HttpContext.Response; response.Write(HtmlHelperExtensions.FieldsetFor(null, Data, Legend)); }
protected internal static MvcHtmlString InputsFor(Type type, object defaults = null, object wrapperAttrs = null) { return(HtmlHelperExtensions.InputsFor(null, type, defaults, wrapperAttrs)); }