コード例 #1
0
        public ActionResult UpdateGridSortOrder(Dictionary <int, int> items)
        {
            var message = "Updated grid sortorder";

            try
            {
                var dbHelper = new DatabaseHelper();
                if (items.Count > 0)
                {
                    foreach (var item in items)
                    {
                        // Key = id, Value = SortOrder
                        dbHelper.UpdateGridSortOrder(item.Key, item.Value);
                    }
                }

                // Update runtimecache
                var editors = dbHelper.GetEditors();
                RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", editors, 1);
            }
            catch (Exception ex)
            {
                message = "Error while trying to update grid sortorder";
                LogHelper.Error <HelperController>("Error while trying to update grid sortorder in the database", ex);
            }
            return(Json(new { Message = message }));
        }
コード例 #2
0
        public ActionResult UpdateEditor(string editor)
        {
            var message = "Grid editor has been saved";

            try
            {
                var gridEditor            = JsonConvert.DeserializeObject <LeBlenderGridEditorModel>(editor);
                var dbHelper              = new DatabaseHelper();
                var LeBlenderGridEditorId = dbHelper.InsertOrUpdateGridEditor(gridEditor);

                if (gridEditor.Config.Count > 0)
                {
                    dbHelper.InsertOrUpdateConfig(LeBlenderGridEditorId, gridEditor.Config);
                }

                // Update runtimecache
                var editors = dbHelper.GetEditors();
                RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", editors, 1);
            }
            catch (Exception ex)
            {
                LogHelper.Error <HelperController>($"Error while trying to update editor", ex);
                message = $"{ex.Message} - {ex.InnerException?.Message}";
            }
            return(Json(new { Message = message }));
        }
コード例 #3
0
        public ActionResult GetEditors()
        {
            // Check if they exist in cache
            var editors = RuntimeCacheHelper.GetCachedItem <IOrderedEnumerable <LeBlenderGridEditorModel> >("LeBlenderEditors");

            if (editors == null)
            {
                var dbHelper = new DatabaseHelper();
                editors = dbHelper.GetEditors();
                RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", editors, 1);
            }
            return(Content(JsonConvert.SerializeObject(editors)));
        }
コード例 #4
0
        public ActionResult TransferAllEditors(string editors)
        {
            if (IsValidDomain(Request.Url))
            {
                Response.Headers.Remove("Access-Control-Allow-Origin");
                Response.AddHeader("Access-Control-Allow-Origin", Request.UrlReferrer.GetLeftPart(UriPartial.Authority));

                Response.Headers.Remove("Access-Control-Allow-Credentials");
                Response.AddHeader("Access-Control-Allow-Credentials", "true");

                Response.Headers.Remove("Access-Control-Allow-Methods");
                Response.AddHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
            }
            else
            {
                Response.StatusCode = 403;
                return(Content("Forbidden"));
            }

            var message = "Grideditors has been transferred successfully";

            try
            {
                var gridEditors = JsonConvert.DeserializeObject <List <LeBlenderGridEditorModel> >(editors);
                if (gridEditors != null && gridEditors.Any())
                {
                    var dbHelper = new DatabaseHelper();
                    foreach (var gridEditor in gridEditors)
                    {
                        var gridEditorId = dbHelper.InsertOrUpdateGridEditor(gridEditor);
                        if (gridEditor.Config.Count > 0)
                        {
                            dbHelper.InsertOrUpdateConfig(gridEditorId, gridEditor.Config);
                        }
                    }

                    var savedEditors = dbHelper.GetEditors();
                    RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", savedEditors, 1);
                }
            }
            catch (Exception ex)
            {
                message = $"Error while transferring editor for database storage. Message: {ex.Message}";
                LogHelper.Error <HelperController>(message, ex);
            }
            return(Content(message));
        }
コード例 #5
0
        public ActionResult DeleteEditor(int id)
        {
            var message = $"Successfully deleted editor from the database";

            try
            {
                var dbHelper = new DatabaseHelper();
                dbHelper.DelteGridEditor(id);
                var editors = dbHelper.GetEditors();
                RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", editors, 1);
            }
            catch (Exception ex)
            {
                message = $"Error while trying to delete GridEditor with id: {id} from the database";
                LogHelper.Error <HelperController>($"Error while trying to delete editor with id: {id} from the database", ex);
            }
            return(Content(message));
        }
コード例 #6
0
 public ActionResult DeleteAllEditors(string editors)
 {
     try
     {
         var gridEditors = JsonConvert.DeserializeObject <List <LeBlenderGridEditorModel> >(editors);
         if (gridEditors != null && gridEditors.Any())
         {
             var dbHelper = new DatabaseHelper();
             foreach (var gridEditor in gridEditors)
             {
                 dbHelper.DelteGridEditor(gridEditor.Id);
             }
             var updatedEditors = dbHelper.GetEditors();
             RuntimeCacheHelper.SetCacheItem("LeBlenderEditors", updatedEditors, 1);
         }
         return(Content("Deleted all editors from database"));
     }
     catch (Exception ex)
     {
         LogHelper.Error <HelperController>($"Error while trying to perform action: Delete All Editors", ex);
         return(Content($"Error while trying to delete all editors. Error: {ex.Message}"));
     }
 }