public ActionResult Index(int page=1)
 {
     ViewBag.id = 4;
     List<NhomSanPham> nhomsp = null;
     List<HangSX> hangsx = null;
     String orderby = TextLibrary.ToString(front_timkiem_sanpham["front_orderby"]);
     Boolean desc = TextLibrary.ToBoolean(front_timkiem_sanpham["front_desc"]);
     if(!front_timkiem_sanpham["front_nhomsanpham_id"].Equals(""))
     {
         nhomsp = new List<NhomSanPham>();
         NhomSanPhamController ctr2 = new NhomSanPhamController(ctr._db);
         NhomSanPham tmp = ctr2.get_by_id(TextLibrary.ToInt(front_timkiem_sanpham["front_nhomsanpham_id"]));
         nhomsp = ctr2.get_tree2(tmp);
     }
     if(!front_timkiem_sanpham["front_hangsx_ten"].Equals(""))
     {
         hangsx = new List<HangSX>();
         HangSXController ctr3 = new HangSXController(ctr._db);
         hangsx=ctr3.timkiem("",TextLibrary.ToString(front_timkiem_sanpham["front_hangsx_ten"]),"1","id",false,0,-1);
     }
     //calculate offset
     if (TextLibrary.ToString(Request["front_current_page"]) != "") page = int.Parse(TextLibrary.ToString(Request["front_current_page"]));
     int max_item_per_page = TextLibrary.ToInt(this.front_timkiem_sanpham["front_max_item_per_page"]);
         int start_point = (page - 1) * max_item_per_page;
         if (start_point <= 0) start_point = 0;
     //get list
         List<SanPham> listnew = ctr.timkiem("", "", this.front_timkiem_sanpham["front_ten"], front_timkiem_sanpham["front_mota"],  TextLibrary.ToInt(front_timkiem_sanpham["front_gia_from"]),
             TextLibrary.ToInt(front_timkiem_sanpham["front_gia_to"]), hangsx, nhomsp , "1", orderby,desc, start_point, max_item_per_page);
         ViewBag.SanPham_List = listnew;
         ViewBag.front_timkiem_sanpham = this.front_timkiem_sanpham;
     //pagination
         int Current_Page = page;
      //   int Result_Count = listnew.Count;
         int Result_Count = ctr.timkiem_count(
             "",
             front_timkiem_sanpham["front_masp"],
             front_timkiem_sanpham["front_ten"],
             front_timkiem_sanpham["front_mota"],
             TextLibrary.ToInt(front_timkiem_sanpham["front_gia_from"]),
             TextLibrary.ToInt(front_timkiem_sanpham["front_gia_to"]), hangsx, nhomsp, "1");
         int Total_Page = (int)(Math.Ceiling((double)Result_Count / max_item_per_page));
         Boolean CanNextPage = Current_Page >= Total_Page ? false : true;
         Boolean CanPrevPage = Current_Page == 1 ? false : true;
         ViewBag.Result_Count = Result_Count;
         ViewBag.CanNextPage = CanNextPage;
         ViewBag.CanPrevPage = CanPrevPage;
         ViewBag.Current_Page = Current_Page;
         ViewBag.Total_page = Total_Page;
     return View();
 }
        protected override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            base.OnActionExecuting(filterContext);
            ViewBag.Title += " - Sản phẩm";
            //đặt activetab cố định cho controller này
            this._current_activetab();
            //load những dữ liệu common

                //active only
                NhomSanPhamController ctr_nhom = new NhomSanPhamController();
                ViewBag.NhomSanpham2_ListAll = ctr_nhom.timkiem();
                //active only
                HangSXController ctr_hangsx = new HangSXController();
                ViewBag.HangSX_ListAll = ctr_hangsx.timkiem();
                //
                KichThuocController ctr_kichthuoc = new KichThuocController();
                ViewBag.KichThuoc_ListAll = ctr_kichthuoc.timkiem();
                //
                MauSacController ctr_mausac = new MauSacController();
                ViewBag.MauSac_ListAll = ctr_mausac.timkiem();
                ViewBag.ChiTietSP = new ChiTietSP();//may be override by action
        }
 public ActionResult Index(int page=1)
 {
     //check
     if (!this._nhanvien_permission.Contains("hangsx_view"))
     {
         return this._fail_permission("hangsx_view");
     }
     //Chọn danh sách để hiển thị theo cookies tìm kiếm
     HangSXController ctr = new HangSXController();
     ViewBag.HangSX_List = ctr.timkiem(
         timkiem_hangsx["id"],
         timkiem_hangsx["ten"],
         timkiem_hangsx["active"], "id", true, 0, -1
         );
     //set search cookies
     ViewBag.timkiem_hangsx = this.timkiem_hangsx;
     ViewBag.Title += " - Quản lý";
     return View();
 }
 protected override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     NhomSanPhamController ctr = new NhomSanPhamController();
     List<NhomSanPham2> list1 = ctr.timkiem("", "", "", "1");
     ViewBag.loaisp = list1;
     HangSXController ctr2 = new HangSXController(ctr._db);
     List<HangSX> list2 = ctr2.timkiem("", "", "1", "id", false, 0, -1);
     ViewBag.hangsx = list2;
     base.OnActionExecuting(filterContext);
     ViewBag.Title += " - Tìm kiếm sản phẩm";
     if (Request.Cookies.Get("front_sanpham") == null)
     {
         //chưa set cookies trước => tiến hành set cookies
         this.khoitao_cookie();
         this.luu_cookie();
     }
     else
     {
         try
         {
             this.front_sanpham = CookieLibrary.Base64Decode(Request.Cookies.Get("front_sanpham"));
         }
         catch (Exception)
         {
             this.khoitao_cookie();
             this.luu_cookie();
         }
     }
     ViewBag.front_sanpham = this.front_sanpham;
 }
 protected override void OnActionExecuting(ActionExecutingContext filterContext)
 {
     NhomSanPhamController ctr = new NhomSanPhamController();
     List<NhomSanPham2> list1 = ctr.timkiem("", "", "", "1");
     ViewBag.loaisp = list1;
     HangSXController ctr2 = new HangSXController(ctr._db);
     List<HangSX> list2 = ctr2.timkiem("", "", "1", "id", false, 0, -1);
     ViewBag.hangsx = list2;
     base.OnActionExecuting(filterContext);
     ViewBag.Title += " - Tìm kiếm sản phẩm";
 }
        public ActionResult Index(int page=1)
        {
            //check
            if (!this._nhanvien_permission.Contains("sanpham_view"))
            {
                return this._fail_permission("sanpham_view");
            }
            SanPhamController ctr = new SanPhamController();
            NhomSanPhamController ctr_nhom = new NhomSanPhamController();
            HangSXController ctr_hangsx = new HangSXController();
            List<HangSX> hangsx_list = ctr_hangsx.timkiem(timkiem_sanpham["hangsx_id"]);
            NhomSanPham nhom_obj = ctr_nhom.get_by_id(TextLibrary.ToInt(timkiem_sanpham["nhomsanpham_id"]));
            List<NhomSanPham> nhomsanpham_list = ctr_nhom.get_tree2(nhom_obj);
            //pagination
                int max_item_per_page = TextLibrary.ToInt(this.timkiem_sanpham["max_item_per_page"]);
                Pagination pg = new Pagination();
                pg.set_current_page(page);
                pg.set_max_item_per_page(max_item_per_page);
                pg.set_total_item(
                    ctr.timkiem_count(
                        timkiem_sanpham["id"],
                        timkiem_sanpham["masp"],
                        timkiem_sanpham["ten"],
                        "",
                        TextLibrary.ToInt(timkiem_sanpham["gia_from"]),
                        TextLibrary.ToInt(timkiem_sanpham["gia_to"]),
                        hangsx_list, nhomsanpham_list, timkiem_sanpham["active"]
                        )
                    );
                pg.update();
            //Chọn danh sách nhân viên để hiển thị theo cookies tìm kiếm

            ViewBag.SanPham_List = ctr.timkiem(
                timkiem_sanpham["id"],
                timkiem_sanpham["masp"],
                timkiem_sanpham["ten"],
                "",
                TextLibrary.ToInt( timkiem_sanpham["gia_from"]),
                TextLibrary.ToInt(timkiem_sanpham["gia_to"]),
                hangsx_list, nhomsanpham_list, timkiem_sanpham["active"], timkiem_sanpham["order_by"], TextLibrary.ToBoolean(timkiem_sanpham["order_desc"]), pg.start_point, max_item_per_page
                );
            //set search cookies
            ViewBag.timkiem_sanpham = this.timkiem_sanpham;
            ViewBag.Title += " - Quản lý";
            ViewBag.pagination = pg;
            ViewBag.NhomSanPham2_List = ctr_nhom.timkiem();
            ViewBag.HangSX_List = ctr_hangsx.timkiem();
            return View();
        }