public ActionResult EditHql(int id) { if (!services.Authorizer.Authorize(Permissions.ManageQueries, T("Not authorized to list Reports"))) { return(new HttpUnauthorizedResult()); } var report = reportRepository.Table.FirstOrDefault(c => c.Id == id); if (report == null) { throw new ArgumentException(string.Format(CultureInfo.CurrentUICulture, "{0}={1}", T("There is no report with the Id"), id.ToString(CultureInfo.InvariantCulture))); } var model = new HqlReportViewModel { ReportId = report.Id, Title = report.Title, Name = report.Name, ColumnAliases = report.ColumnAliases, QueryId = report.Query != null ? (int?)report.Query.Id : null }; FillRelatedData(model); return(View(model)); }
public ActionResult CreateHqlPost(HqlReportViewModel model) { if (!services.Authorizer.Authorize(Permissions.ManageQueries, T("Not authorized to list Reports"))) { return(new HttpUnauthorizedResult()); } if (!ModelState.IsValid) { model = model ?? new HqlReportViewModel(); FillRelatedData(model); return(View("CreateHql", model)); } ReportRecord newReport = new ReportRecord { Title = model.Title, Name = model.Name, Query = new QueryPartRecord { Id = model.QueryId.Value }, GroupByCategory = "", GroupByType = "", AggregateMethod = 0, ColumnAliases = model.ColumnAliases, GUID = Guid.NewGuid().ToString() }; reportRepository.Create(newReport); reportRepository.Flush(); return(RedirectToAction("Index")); }
public ActionResult CreateHql() { if (!services.Authorizer.Authorize(Permissions.ManageQueries, T("Not authorized to list Reports"))) { return(new HttpUnauthorizedResult()); } var model = new HqlReportViewModel(); FillRelatedData(model); return(View(model)); }
private void FillRelatedData(HqlReportViewModel model) { var queries = services.ContentManager.Query().ForType("MyCustomQuery").List(); // Fill queries foreach (var query in queries) { var title = query.As <TitlePart>(); model.Queries.Add(new SelectListItem { Text = title != null ? title.Title : T("[No Name]").Text, Value = query.Id.ToString() }); } }
public ActionResult EditHqlPost(HqlReportViewModel model) { if (!services.Authorizer.Authorize(Permissions.ManageQueries, T("Not authorized to list Reports"))) { return(new HttpUnauthorizedResult()); } if (!ModelState.IsValid) { model = model ?? new HqlReportViewModel(); FillRelatedData(model); return(View("EditHql", model)); } ReportRecord report = reportRepository.Get(model.ReportId); if (report == null) { if (!ModelState.IsValid) { ModelState.AddModelError("ReportId", T("There is no report with the given Id").Text); FillRelatedData(model); return(View("EditHql", model)); } } report.Title = model.Title; report.Name = model.Name; report.Query = model.QueryId.HasValue ? new QueryPartRecord { Id = model.QueryId.Value } : null; report.GroupByCategory = ""; report.GroupByType = ""; report.AggregateMethod = 0; report.ColumnAliases = model.ColumnAliases; if (string.IsNullOrWhiteSpace(report.GUID)) { report.GUID = Guid.NewGuid().ToString(); } reportRepository.Update(report); reportRepository.Flush(); return(RedirectToAction("Index")); }