// Copyright 1998-2015 Epic Games, Inc. All Rights Reserved.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Mvc;
namespace Tools.CrashReporter.CrashReportWebSite.Models
{
///
/// The view model for the Bugg index page.
///
/// // @TODO yrx 2014-08-14 Add base class
public class BuggsViewModel
{
/// Tooltip for "Crash Groups" tab
public const string Tooltip = "Collections of crashes that have the exact same callstack.";
/// A container of sorted Buggs.
public IEnumerable Results { get; set; }
/// Information to paginate the list of Buggs.
public PagingInfo PagingInfo { get; set; }
/// The criterion to sort by e.g. Game.
public string SortTerm { get; set; }
/// Either ascending or descending.
public string SortOrder { get; set; }
/// The current user group name.
public string UserGroup { get; set; }
/// The type of report to filter by. e.g. Asserts.
public string CrashType { get; set; }
/// The query that filtered the results.
public string SearchQuery { get; set; }
/// The date of the earliest crash in a Bugg.
public long DateFrom { get; set; }
/// The date of the most recent crash in a Bugg.
public long DateTo { get; set; }
/// The build version of the most recent crash in a Bugg.
public string BuildVersion { get; set; }
/// A dictionary of the number of Buggs per user group.
public SortedDictionary GroupCounts { get; set; }
/// The set of statuses a Bugg could have its status set to.
public IEnumerable SetStatus
{
get
{
return new List
(
new string[]
{
"Unset",
"Reviewed",
"New",
"Coder",
"Tester"
}
);
}
}
/// User input from the client.
public FormCollection FormCollection { get; set; }
/// Build versions.
public IEnumerable BuildVersions
{
get
{
return new List(
new string[]
{
"",
"4.1.0",
"4.2.0",
"4.2.1",
"4.3.0",
"4.3.1",
"4.4.0"
} );
}
}
///
public string GenerationTime { get; set; }
}
}