public ActionResult Edit(WebsiteBanner Obj_WebsiteBanner, HttpPostedFileBase BannerImage)
 {
     try
     {
         string BannerName = string.Empty;
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             var           WebsitebanneridPara     = new SqlParameter("@Websitebannerid", Obj_WebsiteBanner.WebsiteBannerID);
             WebsiteBanner obj_WebsiteBannerResult = context.Database.SqlQuery <WebsiteBanner>("sp_WebsiteBanner_select @Websitebannerid", WebsitebanneridPara).FirstOrDefault();
             if (SessionUtilities.SaveImage(BannerImage, "Banner"))
             {
                 BannerName = Path.GetFileName(BannerImage.FileName);
                 Obj_WebsiteBanner.BannerImage = BannerName;
             }
             else
             {
                 Obj_WebsiteBanner.BannerImage = obj_WebsiteBannerResult.BannerImage;
             }
             var WebsitebannerSequenceidPara = new SqlParameter("@Websitebannerid", Obj_WebsiteBanner.WebsiteBannerID);
             var WebsitebannerSequencePara   = new SqlParameter("@Sequence", Obj_WebsiteBanner.Sequence);
             context.Database.ExecuteSqlCommand("sp_WebsiteBanner_updateSequenceEdit @Sequence,@Websitebannerid", WebsitebannerSequencePara, WebsitebannerSequenceidPara);
             context.WebsiteBanners.Attach(Obj_WebsiteBanner);
             context.Entry(Obj_WebsiteBanner).State = System.Data.Entity.EntityState.Modified;
             context.SaveChanges();
             TempData["WebsiteBannerSuccess"] = "Record has been update successfully.";
             return(RedirectToAction("Index"));
         }
     }
     catch (Exception ex)
     {
         if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
         {
             ViewBag.WebsiteBannerError = ex.Message;
         }
         return(View(Obj_WebsiteBanner));
     }
     //try
     //{
     //    string BannerName = string.Empty;
     //    using (WebsiteBannerCtl db = new WebsiteBannerCtl())
     //    {
     //        if (SessionUtilities.SaveImage(BannerImage, "Banner"))
     //        {
     //            BannerName = Path.GetFileName(BannerImage.FileName);
     //            Obj_WebsiteBanner.BannerImage = BannerName;
     //        }
     //        db.update(Obj_WebsiteBanner);
     //        TempData["WebsiteBannerSuccess"] = "Record has been updated successfully.";
     //    }
     //    return RedirectToAction("Index");
     //}
     //catch (Exception ex)
     //{
     //    return View(Obj_WebsiteBanner);
     //}
 }
        public string Responsive(Context context, string Responsive)
        {
            var responsive = !Responsive.ToBool();

            SessionUtilities.Set(
                context: context,
                key: "Responsive",
                value: responsive.ToString());
            return(new ResponseCollection().ToJson());
        }
        public ContentResult Get(Context context)
        {
            var log    = new SysLogModel(context: context);
            var result = context.Authenticated
                ? SessionUtilities.GetByApi(context: context)
                : ApiResults.Unauthorized(context: context);

            log.Finish(context: context, responseSize: result.Content.Length);
            return(result);
        }
示例#4
0
        public async Task CreateWithNameAndPassword(string username, string password)
        {
            if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply))
            {
                return;
            }

            if (!SessionUtilities.AcquireSession(ply, out var session))
            {
                return;
            }

            if (session.TryGetAccount(out var accref))
            {
                ply.SendErrorMessage($"You are already logged in!");
                accref.Dispose();
                return;
            }

            //TODO: Determine if this brings any benefit when uncommented.

            //var (findresult, xrefn) = await AccountUtilities.TryFindAccount(username);

            //if (findresult == FindAccountResult.Found)
            //{
            //    ply.SendErrorMessage($"This account is already registered.");
            //    xrefn.Dispose();
            //    return;
            //}

            //The above attempts to short-circuit when an account is verifiably present in memory.
            //A creation attempt will confirm whether or not the account exists in storage.

            (AccountCreateResult result, ObjectReference <Account> refn) = await AccountantPlugin.Instance.Accounts.CreateAccount(username, password);

            switch (result)
            {
            case AccountCreateResult.Success:
                session.Account = refn;
                ply.SendSuccessMessage($"The account {username} was successfully created, and you have been logged in.");
                break;

            case AccountCreateResult.AlreadyExists:
                ply.SendErrorMessage($"This account is already registered.");
                break;

            case AccountCreateResult.PluginBlocked:
                ply.SendErrorMessage($"Account creation denied by another plugin.");
                break;

            case AccountCreateResult.StorageError:
                ply.SendErrorMessage($"Account creation failed due to a database error. Try again later.");
                break;
            }
        }
示例#5
0
        public ActionResult Edit(AdsBanner Obj_AdsBanner, HttpPostedFileBase AdsBannerImage)
        {
            try
            {
                string AdsBannerName = string.Empty;
                using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
                {
                    var AdsBannerNamePara     = new SqlParameter("@adsbannername", Obj_AdsBanner.AdsBannerName);
                    var AdsBannerVendorIdPara = new SqlParameter("@vendorid", Obj_AdsBanner.VendorID);
                    var AdsBannerIdPara       = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID);
                    var result = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_CheckVendorExistsUpdate @adsbannername,@vendorid,@adsbannerid", AdsBannerNamePara, AdsBannerVendorIdPara, AdsBannerIdPara).ToList();
                    if (result.Count > 0)
                    {
                        ViewBag.AdsBannerExists = "Banner name is already exists.";
                        GetCateory();
                        GetVendor();
                        GetPosition();
                        return(View(Obj_AdsBanner));
                    }
                    else
                    {
                        var       AdsGetBannerIdPara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID);
                        AdsBanner obj_AdsBanners     = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_select @adsbannerid", AdsGetBannerIdPara).FirstOrDefault();
                        if (SessionUtilities.SaveImage(AdsBannerImage, "AdsBanner", Obj_AdsBanner.AdsBannerName.Trim()))
                        {
                            AdsBannerName = Path.GetFileName(AdsBannerImage.FileName);
                            Obj_AdsBanner.AdsBannerImage = AdsBannerName;
                        }
                        else
                        {
                            Obj_AdsBanner.AdsBannerImage = obj_AdsBanners.AdsBannerImage;
                        }

                        var adsbannerSequenceidPara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID);
                        var adsbannerSequencePara   = new SqlParameter("@priority", Obj_AdsBanner.Priority);
                        context.Database.ExecuteSqlCommand("sp_AdsBanner_updateSequenceEdit @priority,@adsbannerid", adsbannerSequencePara, adsbannerSequenceidPara);
                        context.AdsBanners.Attach(Obj_AdsBanner);
                        context.Entry(Obj_AdsBanner).State = System.Data.Entity.EntityState.Modified;
                        context.SaveChanges();
                        TempData["AdsBannerSuccess"] = "Record has been update successfully.";
                        return(RedirectToAction("Index"));
                    }
                }
            }
            catch (Exception ex)
            {
                if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
                {
                    ViewBag.AdsBannerExists = ex.Message;
                }
                return(View(Obj_AdsBanner));
            }
        }
示例#6
0
 private static void SetSession(
     Context context, SiteSettings ss, View view, bool setSession)
 {
     if (setSession)
     {
         SessionUtilities.Set(
             context: context,
             ss: ss,
             key: "View",
             view: view);
     }
 }
示例#7
0
        public async Task <HttpResponseMessage> Delete()
        {
            var body = await Request.Content.ReadAsStringAsync();

            var context = new Context(apiRequestBody: body);
            var log     = new SysLogModel(context: context);
            var result  = context.Authenticated
                ? SessionUtilities.DeleteByApi(context: context)
                : ApiResults.Unauthorized(context: context);

            log.Finish(context: context, responseSize: result.Content.Length);
            return(result.ToHttpResponse(Request));
        }
        public ActionResult Create(WebsiteBanner Obj_WebsiteBanner, string command, HttpPostedFileBase BannerImage)
        {
            try
            {
                string BannerName = string.Empty;
                using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
                {
                    if (SessionUtilities.SaveImage(BannerImage, "Banner"))
                    {
                        BannerName = Path.GetFileName(BannerImage.FileName);
                        Obj_WebsiteBanner.BannerImage = BannerName;
                    }
                    Obj_WebsiteBanner.CreatedOn = System.DateTime.Now;
                    Obj_WebsiteBanner.IsDeleted = false;
                    context.WebsiteBanners.Add(Obj_WebsiteBanner);
                    context.SaveChanges();
                    var WebsitebannerSequenceidPara = new SqlParameter("@websitebannerid", Obj_WebsiteBanner.WebsiteBannerID);
                    context.Database.ExecuteSqlCommand("sp_WebsiteBanner_UpdateSequence @websitebannerid", WebsitebannerSequenceidPara);
                    TempData["WebsiteBannerSuccess"] = "Record has been added successfully.";
                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception ex)
            {
                if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
                {
                    ViewBag.WebsiteBannerError = ex.Message;
                }
                return(View(Obj_WebsiteBanner));
            }
            //try
            //{
            //    string BannerName = string.Empty;
            //    using (WebsiteBannerCtl db = new WebsiteBannerCtl())
            //    {
            //        if (SessionUtilities.SaveImage(BannerImage, "Banner"))
            //        {
            //            BannerName = Path.GetFileName(BannerImage.FileName);
            //            Obj_WebsiteBanner.BannerImage = BannerName;
            //        }
            //        db.insert(Obj_WebsiteBanner);
            //        TempData["WebsiteBannerSuccess"] = "Record has been added successfully.";
            //    }
            //    return RedirectToAction("Index");

            //}
            //catch (Exception ex)
            //{
            //    return View(Obj_WebsiteBanner);
            //}
        }
示例#9
0
 public ActionResult Create(Location Obj_Location, string command)
 {
     try
     {
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             var LocationnamePara = new SqlParameter("@Locationname", Obj_Location.LocationName);
             var result           = context.Database.SqlQuery <Location>("sp_Location_CheckLocationExists @Locationname", LocationnamePara).ToList();
             if (result.Count > 0)
             {
                 ViewBag.LocationExists = "Location name is already exists.";
                 DataTable dt     = new DataTable();
                 var       Result = context.Database.SqlQuery <StateData>("sp_StateData_SelectAllForSelectInAddEditLocation").ToList();
                 dt = SessionUtilities.LINQResultToDataTable(Result);
                 List <SelectListItem> lstObj = new List <SelectListItem>();
                 SelectListItem        sl     = new SelectListItem();
                 sl.Text     = "--Please Select--";
                 sl.Value    = "0";
                 sl.Selected = true;
                 lstObj.Add(sl);
                 foreach (DataRow dr in dt.Rows)
                 {
                     sl          = new SelectListItem();
                     sl.Text     = Convert.ToString(dr["FullName"]);
                     sl.Value    = Convert.ToString(dr["FullName"]);
                     sl.Selected = false;
                     lstObj.Add(sl);
                 }
                 ViewBag.StateData = lstObj;
                 return(View(Obj_Location));
             }
             else
             {
                 Obj_Location.CreatedOn = System.DateTime.Now;
                 Obj_Location.IsDeleted = false;
                 context.Locations.Add(Obj_Location);
                 context.SaveChanges();
                 TempData["LocationSuccess"] = "Record has been added successfully.";
                 return(RedirectToAction("Index"));
             }
         }
     }
     catch (Exception ex)
     {
         if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
         {
             ViewBag.LocationExists = ex.Message;
         }
         return(View(Obj_Location));
     }
 }
        public static bool InRange(Context context, EnumerableRowCollection <DataRow> dataRows)
        {
            var inRange = dataRows.Count() <= Parameters.General.CalendarLimit;

            if (!inRange)
            {
                SessionUtilities.Set(
                    context: context,
                    message: Messages.TooManyCases(
                        context: context,
                        data: Parameters.General.CalendarLimit.ToString()));
            }
            return(inRange);
        }
示例#11
0
        public async Task LoginWithPassword(string password)
        {
            if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply))
            {
                return;
            }

            if (!SessionUtilities.AcquireSession(ply, out var session))
            {
                return;
            }

            if (session.TryGetAccount(out var accref))
            {
                ply.SendErrorMessage($"You are already logged in!");
                accref.Dispose();
                return;
            }

            var(result, refn) = await AccountUtilities.TryFindAccount(ply.Name);

            if (result != FindAccountResult.Found)
            {
                switch (result)
                {
                case FindAccountResult.NotFound:
                    ply.SendErrorMessage($"This account currently is not registered. Please use /register in order to claim it.");
                    break;

                case FindAccountResult.Error:
                    ply.SendErrorMessage("An internal server has occured while looking up this account.");
                    break;
                }
                return;
            }

            Account acc = refn.Object;

            //TODO: Put on another thread.
            if (!BCrypt.Net.BCrypt.EnhancedVerify(password, acc.Password))
            {
                ply.SendErrorMessage("The password you provided is invalid.");
                refn.Dispose();
                return;
            }
            else
            {
                await ply.TryPerformLogon(refn);
            }
        }
示例#12
0
        private void SetData()
        {
            var request = HttpContext.Current.Request;

            SessionData = SessionUtilities.Get(this);
            request.QueryString.AllKeys
            .Where(o => o != null)
            .ForEach(key =>
                     QueryStrings.Add(key, request.QueryString[key]));
            request.Form.AllKeys
            .Where(o => o != null)
            .ForEach(key =>
                     Forms.Add(key, request.Form[key]));
        }
示例#13
0
 public JsonResult GetBanner()
 {
     try
     {
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             var result = context.Database.SqlQuery <EF6.WebsiteBanner>("sp_WebSitebanner_select_Front").ToList();
             return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(result)), JsonRequestBehavior.AllowGet));
         }
     }
     catch (Exception ex)
     {
         return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet));
     }
 }
示例#14
0
 private static void SetSession(
     Context context, SiteSettings ss, View view, bool setSession, string key = "View", bool useUsersView = false)
 {
     if (setSession)
     {
         SessionUtilities.Set(
             context: context,
             ss: ss,
             key: key,
             view: view,
             sessionGuid: useUsersView
                 ? "@" + context.UserId
                 : null);
     }
 }
示例#15
0
 //select all data from database
 public string getAll()
 {
     try
     {
         obj_con.clearParameter();
         DataTable dt = ConvertDatareadertoDataTable(obj_con.ExecuteReader("sp_Admin_selectall", CommandType.StoredProcedure));
         obj_con.CommitTransaction();
         obj_con.closeConnection();
         return(SessionUtilities.ConvertDataTableTojSonString(dt));
     }
     catch (Exception ex)
     {
         throw new Exception("sp_Admin_selectall:" + ex.Message);
     }
 }
示例#16
0
 public string selectIndexPaging(Int64 PageSize, Int64 PageIndex, string Search)
 {
     try
     {
         obj_con.clearParameter();
         obj_con.addParameter("@PageSize", PageSize);
         obj_con.addParameter("@PageIndex", PageIndex);
         obj_con.addParameter("@Search", Search);
         return(SessionUtilities.ConvertDataTableTojSonString(ConvertDatareadertoDataTable(obj_con.ExecuteReader("sp_Location_selectIndexPaging", CommandType.StoredProcedure))));
     }
     catch (Exception ex)
     {
         throw new Exception("sp_Location_selectIndexPaging:" + ex.Message);
     }
 }
        public static bool InRangeY(Context context, int choicesCount)
        {
            var inRange = Parameters.General.CalendarYLimit == 0 ||
                          choicesCount <= Parameters.General.CalendarYLimit;

            if (!inRange)
            {
                SessionUtilities.Set(
                    context: context,
                    message: Messages.TooManyRowCases(
                        context: context,
                        data: Parameters.General.CalendarYLimit.ToString()));
            }
            return(inRange);
        }
        public static bool InRangeY(Context context, EnumerableRowCollection <DataRow> dataRows)
        {
            var inRange = dataRows.Select(o => o.String("GroupByY")).Distinct().Count() <=
                          Parameters.General.CrosstabYLimit;

            if (!inRange)
            {
                SessionUtilities.Set(
                    context: context,
                    message: Messages.TooManyCases(
                        context: context,
                        data: Parameters.General.CrosstabYLimit.ToString()));
            }
            return(inRange);
        }
        public async Task ChangePassword(string old_password, string new_password, string new_password_confirm)
        {
            if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply))
            {
                return;
            }

            if (!SessionUtilities.AcquireSession(ply, out var session))
            {
                return;
            }

            if (!session.TryGetAccount(out var accountref))
            {
                ply.SendErrorMessage($"You must be logged in to change an account's password.");
                return;
            }

            using (accountref)
            {
                if (new_password != new_password_confirm)
                {
                    ply.SendErrorMessage($"The new password and the confirmation password must be the same.");
                    return;
                }

                Account account = accountref.Object;

                if (!BCrypt.Net.BCrypt.EnhancedVerify(old_password, account.Password))
                {
                    ply.SendErrorMessage($"The current password you specified is incorrect.");
                    return;
                }

                var hash = BCrypt.Net.BCrypt.EnhancedHashPassword(new_password);

                account.Password = hash;

                if (await account.Save())
                {
                    ply.SendSuccessMessage($"Your account's password has been successfully updated.");
                }
                else
                {
                    ply.SendErrorMessage($"Your account's password was not updated due to a server error. Please try again.");
                }
            }
        }
示例#20
0
 public ActionResult Create(AdsBanner Obj_AdsBanner, string command, HttpPostedFileBase AdsBannerImage)
 {
     try
     {
         string AdsBannerName = string.Empty;
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             var AdsBannerNamePara     = new SqlParameter("@adsbannername", Obj_AdsBanner.AdsBannerName);
             var AdsBannerVendorIdPara = new SqlParameter("@vendorid", Obj_AdsBanner.VendorID);
             var result = context.Database.SqlQuery <AdsBanner>("sp_AdsBanner_CheckAdminExists @adsbannername,@vendorid", AdsBannerNamePara, AdsBannerVendorIdPara).ToList();
             if (result.Count > 0)
             {
                 ViewBag.AdsBannerExists = "Banner name is already exists.";
                 GetCateory();
                 GetVendor();
                 GetPosition();
                 return(View(Obj_AdsBanner));
             }
             else
             {
                 GetCateory();
                 GetVendor();
                 GetPosition();
                 if (SessionUtilities.SaveImage(AdsBannerImage, "AdsBanner", Obj_AdsBanner.AdsBannerName.Trim()))
                 {
                     AdsBannerName = Path.GetFileName(AdsBannerImage.FileName);
                     Obj_AdsBanner.AdsBannerImage = AdsBannerName;
                 }
                 Obj_AdsBanner.CreateAt  = System.DateTime.Now;
                 Obj_AdsBanner.IsDeleted = false;
                 context.AdsBanners.Add(Obj_AdsBanner);
                 context.SaveChanges();
                 var adsBannersequenceIdpara = new SqlParameter("@adsbannerid", Obj_AdsBanner.AdsBannerID);
                 context.Database.ExecuteSqlCommand("sp_AdsBanner_UpdateSequence @adsbannerid", adsBannersequenceIdpara);
                 TempData["AdsBannerSuccess"] = "Record has been added successfully.";
                 return(RedirectToAction("Index"));
             }
         }
     }
     catch (Exception ex)
     {
         if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
         {
             ViewBag.AdsBannerExists = ex.Message;
         }
         return(View(Obj_AdsBanner));
     }
 }
示例#21
0
        public static bool InRangeY(Context context, EnumerableRowCollection <DataRow> dataRows, Column groupBy)
        {
            var inRange = groupBy == null ||
                          dataRows.Select(o => o.String(groupBy.ColumnName)).Distinct().Count() <=
                          Parameters.General.CalendarYLimit;

            if (!inRange)
            {
                SessionUtilities.Set(
                    context: context,
                    message: Messages.TooManyRowCases(
                        context: context,
                        data: Parameters.General.CalendarYLimit.ToString()));
            }
            return(inRange);
        }
示例#22
0
        public static void Set(Context context, long siteId)
        {
            var data = SessionData(context: context);

            if (data.ContainsKey(siteId))
            {
                data[siteId] = context.Action;
            }
            else
            {
                data.Add(siteId, context.Action);
            }
            SessionUtilities.Set(
                context: context,
                key: "ViewMode",
                value: data.ToJson());
        }
示例#23
0
 public JsonResult Indexpaging(Int64 PageSize, Int64 PageIndex, string Search)
 {
     try
     {
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             var PageSizePara  = new SqlParameter("@PageSize", PageSize);
             var PageIndexPara = new SqlParameter("@PageIndex", PageIndex);
             var SearchPara    = new SqlParameter("@Search", Search);
             var result        = context.Database.SqlQuery <Listview>("sp_Admin_selectIndexPaging @PageSize,@PageIndex,@Search", PageSizePara, PageIndexPara, SearchPara).ToList();
             return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(result)), JsonRequestBehavior.AllowGet));
         }
     }
     catch (Exception ex)
     {
         return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet));
     }
 }
示例#24
0
 public ActionResult Create()
 {
     try
     {
         using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
         {
             ViewBag.StateData = SessionUtilities.GetState();
             return(View());
         }
     }
     catch (Exception ex)
     {
         if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
         {
             ViewBag.LocationExists = ex.Message;
         }
         return(View());
     }
 }
示例#25
0
 public ActionResult Edit(Int32?Locationid)
 {
     using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
     {
         try
         {
             var LocationidPara = new SqlParameter("@Locationid", Locationid);
             var ResultLocation = context.Database.SqlQuery <Location>("sp_Location_select @Locationid", LocationidPara).FirstOrDefault();
             ViewBag.StateData = SessionUtilities.GetState();
             return(View(ResultLocation));
         }
         catch (Exception ex)
         {
             if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
             {
                 ViewBag.LocationExists = ex.Message;
             }
             return(View());
         }
     }
 }
示例#26
0
        public static void Set(Context context, long siteId)
        {
            context.Forms.RemoveAll((key, value) =>
                                    key == "GridCheckAll" ||
                                    key == "GridUnCheckedItems" ||
                                    key == "GridCheckedItems");
            var data = SessionData(context: context);

            if (data.ContainsKey(siteId))
            {
                data[siteId] = context.Action;
            }
            else
            {
                data.Add(siteId, context.Action);
            }
            SessionUtilities.Set(
                context: context,
                key: "ViewMode",
                value: data.ToJson());
        }
示例#27
0
 public ActionResult Edit(Int32 Categoryid)
 {
     using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
     {
         try
         {
             ViewBag.Categories = SessionUtilities.GetCategories();
             var CategoryId     = new SqlParameter("@Categoryid", Categoryid);
             var ResultCategory = context.Database.SqlQuery <Category>("sp_Categories_select @Categoryid", CategoryId).FirstOrDefault();
             return(View(ResultCategory));
         }
         catch (Exception ex)
         {
             if (!ex.Message.Contains("See 'EntityValidationErrors' property"))
             {
                 ViewBag.Categories = ex.Message;
             }
             return(View());
         }
     }
 }
示例#28
0
        public void Logout()
        {
            if (!EntityAssertions.Assert_SenderPlayer(Sender, out Player ply))
            {
                return;
            }

            if (!SessionUtilities.AcquireSession(ply, out var session))
            {
                return;
            }

            if (ply.Signout())
            {
                ply.SendSuccessMessage("You have been succesfully logged out.");
            }
            else
            {
                ply.SendErrorMessage("You are not logged in!");
            }
        }
示例#29
0
        public async Task ActAsUserActsAppropriately()
        {
            Assert.IsTrue(await await SessionUtilities.StartAsync(
                              async(testSession) =>
            {
                AssertApi.Unauthorized(await testSession.ActAsUserGetAsync("http://example.com/authorize",
                                                                           (response, fetchActAsUserResources) => response));

                var superAdminSession = testSession.GetSuperAdmin();
                return(await await superAdminSession.ActAsUserGetAsync("http://example.com/authorize",
                                                                       async(responseGetActAsuser, fetchActAsUsers) =>
                {
                    AssertApi.Success(responseGetActAsuser);
                    var actAsUsers = fetchActAsUsers();
                    Assert.IsTrue(actAsUsers.Any());
                    var actAsUser = actAsUsers.First();

                    var actAsUserLinkParams = System.Web.HttpUtility.ParseQueryString(actAsUser.Link.ToUri().Query);
                    return await await superAdminSession.ActAsUserGetAsync(Guid.Parse(actAsUserLinkParams["token"]), actAsUserLinkParams["RedirectUri"],
                                                                           async(responseGetActAsUserRedirect) =>
                    {
                        var redirect = AssertApi.Redirect(responseGetActAsUserRedirect).Headers.Location;
                        var sessionId = Guid.Parse(redirect.GetQueryParam(EastFive.Api.Azure.AzureApplication.QueryRequestIdentfier));
                        // Fetching without a tokened session succeeds... (per UI dev's whining ;-))
                        return await testSession.AuthenticationRequestGetAsync(sessionId,
                                                                               (responseAuthRequestPopulatedGet, fetchPopulated) =>
                        {
                            var authRequestPopulated = fetchPopulated();
                            Assert.IsTrue(authRequestPopulated.authorization.HasValue);
                            var userSes = new TestSession(authRequestPopulated.authorization.id.Value);
                            Assert.IsFalse(authRequestPopulated.token.IsNullOrWhiteSpace());
                            userSes.LoadToken(authRequestPopulated.token);

                            return true;
                        });
                    });
                }));
            }));
        }
示例#30
0
        public JsonResult GetCategories()
        {
            try
            {
                using (var context = new ChossonKallahAdmin.EF6.ChossonKallah())
                {
                    var result = context.Database.SqlQuery <EF6.Category>("sp_Category_select_Front").ToList();
                    List <EF6.CategoryClass> LstCat = new List <EF6.CategoryClass>();
                    for (int i = 0; i < result.Count; i++)
                    {
                        EF6.CategoryClass childcat = new EF6.CategoryClass();
                        childcat.CategoryId   = result[i].CategoryId;
                        childcat.CategoryName = result[i].CategoryName;
                        LstCat.Add(childcat);
                    }
                    for (int i = 0; i < LstCat.Count; i++)
                    {
                        var CategoryIdPara = new SqlParameter("@CategoryId", LstCat[i].CategoryId);
                        var SubCat         = context.Database.SqlQuery <EF6.CategoryClass>("sp_Category_Sub_select_Front @CategoryId", CategoryIdPara).ToList();
                        LstCat[i].childCat = new List <EF6.CategoryClass>();
                        for (int j = 0; j < SubCat.Count; j++)
                        {
                            EF6.CategoryClass childcat = new EF6.CategoryClass();
                            childcat.CategoryId   = SubCat[j].CategoryId;
                            childcat.CategoryName = SubCat[j].CategoryName;
                            LstCat[i].childCat.Add(childcat);
                        }
                    }


                    return(Json(SessionUtilities.ConvertDataTableTojSonString(SessionUtilities.LINQResultToDataTable(LstCat)), JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception ex)
            {
                return(Json(string.Format("Exception {0}", ex.Message), JsonRequestBehavior.AllowGet));
            }
        }