Example #1
0
        protected void Page_Load(object sender, EventArgs e)
        {
            this.OrderByMode = Request.QueryString["mode"] ?? "desc";
            this.OrderBy     = Request.QueryString["orderby"] ?? "";

            if (this.OrderByMode.ToLower() != "desc")
            {
                this.OrderByMode = "asc";
            }

            if (!this.OrderByDictionary.ContainsKey(this.OrderBy))
            {
                this.OrderBy = this.OrderByDictionary.Keys.First();
            }

            using (NpgsqlConnection conn = Classes.DB.InstBTCDB("instbtc"))
            {
                string txtType        = Request.QueryString["txtType"];
                string txtStatus      = Request.QueryString["txtStatus"];
                string txtClientId    = Request.QueryString["txtClientId"];
                string txtClientEmail = Request.QueryString["txtClientEmail"];
                string txtClientName  = Request.QueryString["txtClientName"];
                string txtCreatedDate = Request.QueryString["txtCreatedDate"];

                List <Documents>         docs            = new List <Documents>();
                Dictionary <string, int> pagerDictionary = new Dictionary <string, int>();
                string paginationString = "page";

                DocListPager.initialize(paginationString, 10);
                TotalDocs       = Utilities.Documents.DocumentsCount(conn);
                pagerDictionary = DocListPager.paginate(TotalDocs);
                docs            = Utilities.Documents.GetDocuments(conn, pagerDictionary["offset"], pagerDictionary["limit"], orderby: $"{this.OrderByDictionary[this.OrderBy]} {this.OrderByMode.ToUpper()}");

                string query = this.getQuery(conn, txtType, txtStatus, txtClientId, txtClientEmail, txtClientName, txtCreatedDate);

                if (query.Length > 0)
                {
                    TotalDocs = Utilities.Documents.DocumentsCount(conn, query);
                    DocListPager.AppendExistedQuery();
                    pagerDictionary = DocListPager.paginate(TotalDocs);
                    docs            = Utilities.Documents.GetDocuments(conn, query, pagerDictionary["offset"], pagerDictionary["limit"], orderby: $"{this.OrderByDictionary[this.OrderBy]} {this.OrderByMode.ToUpper()}");
                }
                rowCount.InnerText = $"{TotalDocs} Records Found";
                ShowDocuments(conn, docs);
            }
        }