예제 #1
0
 public string PostBuilding(string value)
 {
     try
     {
         //set activity user async
         ActivityFactory.SetActivityAsync(User.Identity.GetUserId());
         var          building = JsonConvert.DeserializeObject <Building>(value);
         SpaceService service  = new SpaceService(User.Identity.GetUserId());
         if (!db.Buildings.Where(b => b.Id == building.Id).Any())
         {
             building = (Building)EntityService.OnCreateEntity(building, User.Identity.GetUserId());
             db.Buildings.Add(building);
             db.SaveChanges();
             return(JsonConvert.SerializeObject(new { error = false, data = building }));
         }
         else
         {
             db.Entry(building).State = EntityState.Modified;
             db.SaveChanges();
             return(JsonConvert.SerializeObject(new { error = false, data = building }));
         }
     }
     catch (Exception ex)
     {
         logger.Error(ex.Message);
         return(JsonConvert.SerializeObject(new { error = true, errorMessage = "ServerError" }));
     }
 }
 public string PostEditTemplate(string value)
 {
     try
     {
         EmailTemplate template = JsonConvert.DeserializeObject <EmailTemplate>(value);
         db.Entry(template).State = EntityState.Modified;
         db.SaveChanges();
         return(JsonConvert.SerializeObject(new { error = false, template = template }));
     }
     catch (Exception ex)
     {
         logger.Error(ex.Message);
         return(JsonConvert.SerializeObject(new { error = true, errorMessage = ex.Message }));
     }
 }
예제 #3
0
        public static IEntity findEntity(Entity entity)
        {
            MySqlIdentityDbContext db = new MySqlIdentityDbContext();
            var ent = db.Entry(entity).Entity;

            return(ent);
        }
예제 #4
0
 public string PostRestore(string value)
 {
     try
     {
         var entities = JsonConvert.DeserializeObject <List <Entity> >(value);
         foreach (var entity in entities)
         {
             var entityModified = EntityService.findEntity(entity);
             entityModified                 = EntityService.OnRestoreEntity(entityModified);
             entityModified.Metadata        = ActivityFactory.SetMetadata(User.Identity.GetUserName(), value, "PostRestore", entityModified.Metadata);
             db.Entry(entityModified).State = EntityState.Modified;
         }
         db.SaveChanges();
         return(JsonConvert.SerializeObject(new { error = false, notification = "trashItemsRestoreSuccess" }));
     }
     catch (Exception ex)
     {
         logger.Error(ex.Message);
         return(JsonConvert.SerializeObject(new { error = true, notification = "trashItemsRestoreError" }));
     }
 }
예제 #5
0
        public string PostSpaceForCurrentUser(string value)
        {
            JObject obj = JObject.Parse(value);

            var Name          = obj["Name"];
            var Configuration = obj["Configuration"];

            ApplicationDbContext         context     = new ApplicationDbContext();
            IUserStore <ApplicationUser> store       = new UserStore <ApplicationUser>(context);
            ApplicationUserManager       UserManager = new ApplicationUserManager(store);
            var claims = UserManager.GetClaims(User.Identity.GetUserId());
            var claim  = claims.Where(a => a.Type == "SpaceId").FirstOrDefault();

            if (claim != null)
            {
                var space = db.Spaces.Find(claim.Value);
                if (space == null)
                {
                    logger.Info("NoSpaceFoundInDb - User : "******"NoSpaceFoundInDb" }));
                }

                DesignManager designManager = new DesignManager();
                // Create css file specific for this space with the colour provided by the user async
                designManager.CreateUpdateCssFileForSpace(space.Id, designManager.getColourDesignOfSpace(Configuration.ToString()));

                space.Name          = Name.ToString();
                space.Configuration = Configuration.ToString();
                space.Metadata      = ActivityFactory.SetMetadata(User.Identity.GetUserName(), value, "PostSpaceForCurrentUser", space.Metadata);

                db.Entry(space).State = EntityState.Modified;
                db.SaveChanges();

                return(JsonConvert.SerializeObject(new { error = false, space = space }));
            }

            logger.Info("NoSpaceFoundInUserConfig - User : "******"NoSpaceFoundInUserConfig" }));
        }